diff --git a/README.md b/README.md
index 2be6df7..d059b5d 100644
--- a/README.md
+++ b/README.md
@@ -3,21 +3,21 @@ Ridgebotics 2025 scouting app in Android
## TODO:
#### Scouting:
-- Make the "Compare" menu, cross comparing team's stats.
- Make the "Report" menu, A tool that lets users select data to display from the the teams and compare menus.
- Make practice mode
#### Data Analysis:
-- Add CSV exporting of match scouting data.
- Statbotics intigration
- AI overview of scouting data for a team???
#### Functionality:
-- Improve the code scanning progress indicator. It has a rounding error, I think.
+- Make the system for blank and unselected fields better.
- Add more types of data fields.
- Make server software to allow for easy sync over wifi
## In Progress:
#### Scouting:
#### Data Analysis:
+- Add CSV exporting of match scouting data.
+- Make the "Compare" menu, cross comparing team's stats.
#### Functionality:
- Make pit and match data field builder UIs. I don't want to have to keep editing a variable
- Test the scouting app
@@ -30,6 +30,7 @@ Ridgebotics 2025 scouting app in Android
- Add "history" view type to the teams view menu.
- Sentiment analysis of text input type
#### Functionality:
+- Improve the code scanning progress indicator. It has a rounding error, I think.
- Fix navigation crashes.
- Make everything use Fragments instead of views that toggle visibility
- Make the file browser UI
diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/CompareFragment.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/CompareFragment.java
new file mode 100644
index 0000000..b412e96
--- /dev/null
+++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/CompareFragment.java
@@ -0,0 +1,24 @@
+package com.astatin3.scoutingapp2025.ui.data;
+
+import android.os.Bundle;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
+import com.astatin3.scoutingapp2025.databinding.FragmentDataCompareBinding;
+import com.astatin3.scoutingapp2025.databinding.FragmentDataReportBinding;
+
+public class CompareFragment extends Fragment {
+ FragmentDataCompareBinding binding;
+
+ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
+ @Nullable Bundle savedInstanceState) {
+
+ binding = FragmentDataCompareBinding.inflate(inflater, container, false);
+ return binding.getRoot();
+ }
+}
diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/dataFragment.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/DataFragment.java
similarity index 91%
rename from app/src/main/java/com/astatin3/scoutingapp2025/ui/data/dataFragment.java
rename to app/src/main/java/com/astatin3/scoutingapp2025/ui/data/DataFragment.java
index 1b2f5af..d913592 100644
--- a/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/dataFragment.java
+++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/data/DataFragment.java
@@ -21,7 +21,7 @@ import com.astatin3.scoutingapp2025.ui.TeamSelectorFragment;
import com.astatin3.scoutingapp2025.utility.fileEditor;
import com.astatin3.scoutingapp2025.types.frcEvent;
-public class dataFragment extends Fragment {
+public class DataFragment extends Fragment {
private FragmentDataBinding binding;
@@ -64,8 +64,12 @@ public class dataFragment extends Fragment {
findNavController(this).navigate(R.id.action_navigation_data_to_navigation_team_selector);
});
+ binding.compareButton.setOnClickListener(v -> {
+ findNavController(this).navigate(R.id.action_navigation_data_to_navigation_data_compare);
+ });
+
binding.reportButton.setOnClickListener(v -> {
- findNavController(this).navigate(R.id.action_navigation_data_to_navigation_data_compile);
+ findNavController(this).navigate(R.id.action_navigation_data_to_navigation_data_report);
});
binding.fieldsButton.setOnClickListener(v -> {
diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/ScoutingFragment.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/ScoutingFragment.java
index 24e76ad..6429d36 100644
--- a/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/ScoutingFragment.java
+++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/scouting/ScoutingFragment.java
@@ -65,7 +65,7 @@ public class ScoutingFragment extends Fragment {
});
binding.statusButton.setOnClickListener(v -> {
- findNavController(this).navigate(R.id.action_navigation_data_to_navigation_data_status);
+ findNavController(this).navigate(R.id.action_navigation_scouting_to_navigation_scouting_status);
});
return binding.getRoot();
diff --git a/app/src/main/java/com/astatin3/scoutingapp2025/ui/transfer/codes/CodeOverlayView.java b/app/src/main/java/com/astatin3/scoutingapp2025/ui/transfer/codes/CodeOverlayView.java
index 8c1d66b..4d18e38 100644
--- a/app/src/main/java/com/astatin3/scoutingapp2025/ui/transfer/codes/CodeOverlayView.java
+++ b/app/src/main/java/com/astatin3/scoutingapp2025/ui/transfer/codes/CodeOverlayView.java
@@ -60,7 +60,7 @@ public class CodeOverlayView extends View {
}
}
if(barColors != null){
- final int width = getWidth()/barColors.length;
+ final double width = getWidth()/barColors.length;
final int top = 0;
final int bottom = barHeight;
@@ -81,8 +81,8 @@ public class CodeOverlayView extends View {
p.setColor(c);
canvas.drawRect(new Rect(
- (i*width), top,
- ((i+1)*width), bottom
+ (int)(i*width), top,
+ (int)((i+1)*width), bottom
), p);
}
}
diff --git a/app/src/main/res/navigation/mobile_navigation.xml b/app/src/main/res/navigation/mobile_navigation.xml
index f44f65e..d17ea9e 100644
--- a/app/src/main/res/navigation/mobile_navigation.xml
+++ b/app/src/main/res/navigation/mobile_navigation.xml
@@ -24,6 +24,9 @@
app:exitAnim="@anim/exit_anim"
app:popEnterAnim="@anim/enter_anim"
app:popExitAnim="@anim/pop_exit_anim" />
+
+
@@ -103,7 +113,13 @@
+
+
+