diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/FieldsFragment.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/FieldsFragment.java index 4bd3d44..b6db384 100644 --- a/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/FieldsFragment.java +++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/FieldsFragment.java @@ -1,7 +1,9 @@ package com.astatin3.scoutingapp2025.ui.data; +import android.annotation.SuppressLint; import android.os.Bundle; import android.view.LayoutInflater; +import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; @@ -25,16 +27,23 @@ public class FieldsFragment extends Fragment { filename = tmpfilename; } + @SuppressLint("ClickableViewAccessibility") public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { binding = FragmentDataFieldsBinding.inflate(inflater, container, false); + binding.revertVersionButton.setVisibility(View.VISIBLE); + binding.valueEditScrollview.setOnTouchListener((v, event) -> true); + + binding.saveButton.setVisibility(View.GONE); binding.editButton.setVisibility(View.GONE); binding.upButton.setVisibility(View.GONE); binding.addButton.setVisibility(View.GONE); binding.downButton.setVisibility(View.GONE); + binding.valueEditContainer.setVisibility(View.GONE); + load_field_menu(); return binding.getRoot(); @@ -96,12 +105,16 @@ public class FieldsFragment extends Fragment { binding.fieldsArea.removeAllViews(); binding.fieldsArea.setReorderingEnabled(false); + binding.revertVersionButton.setVisibility(View.GONE); + binding.saveButton.setVisibility(View.GONE); binding.editButton.setVisibility(View.GONE); binding.upButton.setVisibility(View.VISIBLE); binding.addButton.setVisibility(View.VISIBLE); binding.downButton.setVisibility(View.VISIBLE); + binding.valueEditContainer.setVisibility(View.GONE); + for(int i = 0; i < version_values.length; i++){ TableRow tr = new TableRow(getContext()); TableLayout.LayoutParams rowParams = new TableLayout.LayoutParams( @@ -174,5 +187,12 @@ public class FieldsFragment extends Fragment { private void onFieldSelect(inputType field){ System.out.println(field.name); + binding.editButton.setOnClickListener(v -> { + binding.valueEditContainer.setVisibility(View.VISIBLE); + TextView tv = new TextView(getContext()); + tv.setText("Test!"); + binding.ValueEditTable.addView(tv); + }); + } } diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/MatchScoutingFragment.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/MatchScoutingFragment.java index f52d2ee..8021b25 100644 --- a/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/MatchScoutingFragment.java +++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/MatchScoutingFragment.java @@ -3,8 +3,10 @@ package com.astatin3.scoutingapp2025.ui.scouting; import static com.astatin3.scoutingapp2025.utility.DataManager.evcode; import static com.astatin3.scoutingapp2025.utility.DataManager.event; +import android.annotation.SuppressLint; import android.os.Bundle; import android.view.LayoutInflater; +import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; @@ -20,6 +22,7 @@ import com.astatin3.scoutingapp2025.types.data.dataType; import com.astatin3.scoutingapp2025.types.frcMatch; import com.astatin3.scoutingapp2025.types.frcTeam; import com.astatin3.scoutingapp2025.types.input.inputType; +import com.astatin3.scoutingapp2025.utility.AlertManager; import com.astatin3.scoutingapp2025.utility.AutoSaveManager; import com.astatin3.scoutingapp2025.utility.DataManager; import com.astatin3.scoutingapp2025.utility.fileEditor; @@ -31,6 +34,7 @@ public class MatchScoutingFragment extends Fragment { private FragmentScoutingMatchBinding binding; + @SuppressLint("ClickableViewAccessibility") @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { @@ -41,7 +45,7 @@ public class MatchScoutingFragment extends Fragment { alliance_position = latestSettings.settings.get_alliance_pos(); username = latestSettings.settings.get_username(); - binding.eventcode.setText(evcode); + binding.username.setText(username); binding.alliancePosText.setText(alliance_position); binding.teamDescription.setVisibility(View.GONE); @@ -72,6 +76,22 @@ public class MatchScoutingFragment extends Fragment { update_scouting_data(); }); + + boolean fileIndicatorTapped = false; + binding.fileIndicator.setOnClickListener(v -> { +// if(e.getAction() != MotionEvent.ACTION_MOVE) return true; +// System.out.println(e.getAxisValue(0)); + if(edited) save(); + + alliance_position = incrementMatchPos(alliance_position); + latestSettings.settings.set_alliance_pos(alliance_position); + binding.alliancePosText.setText(alliance_position); + + update_match_num(); + update_scouting_data(); +// return true; + }); + binding.backButton.setOnClickListener(v -> { if(edited) save(); latestSettings.settings.set_match_num(cur_match_num-1); @@ -90,6 +110,23 @@ public class MatchScoutingFragment extends Fragment { return binding.getRoot(); } + private static String incrementMatchPos(String input){ + switch(input){ // There's probably a better solution than this. + case "red-1": + return "red-2"; + case "red-2": + return "red-3"; + case "red-3": + return "blue-1"; + case "blue-1": + return "blue-2"; + case "blue-2": + return "blue-3"; + case "blue-3": + return "red-1"; + } + return "red-1"; + } private static final int unsaved_color = 0x60ff0000; private static final int saved_color = 0x6000ff00; @@ -113,7 +150,7 @@ public class MatchScoutingFragment extends Fragment { System.out.println("Saved!"); edited = false; set_indicator_color(saved_color); -// fileEditor.createFile(filename); + AlertManager.toast("Saved " + filename); save_fields(); } diff --git a/app/src/main/res/layout/fragment_data_fields.xml b/app/src/main/res/layout/fragment_data_fields.xml index 622c25e..ba1b968 100644 --- a/app/src/main/res/layout/fragment_data_fields.xml +++ b/app/src/main/res/layout/fragment_data_fields.xml @@ -54,12 +54,19 @@ app:layout_constraintEnd_toEndOf="parent" /> - - - +