Start work on fields editor

This commit is contained in:
Astatin3
2024-07-06 22:35:00 -06:00
parent 7587af3240
commit 0dfddb7f89
4 changed files with 207 additions and 5 deletions
@@ -37,7 +37,14 @@ public class dataFragment extends Fragment {
if(evcode.equals("unset")){
binding.noEventError.setVisibility(View.VISIBLE);
binding.buttons.setVisibility(View.GONE);
binding.buttons.setVisibility(View.VISIBLE);
binding.statusButton.setVisibility(View.GONE);
binding.teamsButton.setVisibility(View.GONE);
binding.compileButton.setVisibility(View.GONE);
binding.fieldsButton.setVisibility(View.VISIBLE);
binding.matchTable.setVisibility(View.GONE);
return root;
}
@@ -58,6 +65,22 @@ public class dataFragment extends Fragment {
submenu = true;
});
binding.compileButton.setOnClickListener(v -> {
// binding.buttons.setVisibility(View.GONE);
// binding.teamsView.setVisibility(View.VISIBLE);
// binding.teamsView.init(binding, event);
// submenu = true;
});
binding.fieldsButton.setOnClickListener(v -> {
binding.buttons.setVisibility(View.GONE);
binding.fieldsView.setVisibility(View.VISIBLE);
binding.fieldsView.init(binding);
submenu = true;
});
show_ui();
return root;
@@ -0,0 +1,89 @@
package com.astatin3.scoutingapp2025.ui.data;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.FrameLayout;
import android.widget.ScrollView;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.astatin3.scoutingapp2025.SettingsVersionStack.latestSettings;
import com.astatin3.scoutingapp2025.databinding.FragmentDataBinding;
import com.astatin3.scoutingapp2025.scoutingData.fields;
import com.astatin3.scoutingapp2025.scoutingData.transfer.transferType;
import com.astatin3.scoutingapp2025.types.frcEvent;
import com.astatin3.scoutingapp2025.types.frcTeam;
import com.astatin3.scoutingapp2025.types.input.inputType;
public class fieldsView extends ConstraintLayout {
public fieldsView(@NonNull Context context) {
super(context);
}
public fieldsView(Context context, AttributeSet attributeSet){
super(context, attributeSet);
}
FragmentDataBinding binding;
String filename;
inputType[][] values;
public void init(FragmentDataBinding binding) {
this.binding = binding;
binding.fieldsSelectButtons.setVisibility(VISIBLE);
binding.fieldsSelectButtons.bringToFront();
binding.fieldsArea.setStretchAllColumns(true);
binding.matchScoutingButton.setOnClickListener(v -> {
binding.fieldsSelectButtons.setVisibility(GONE);
filename = fields.matchFieldsFilename;
load_fields();
});
binding.pitScoutingButton.setOnClickListener(v -> {
binding.fieldsSelectButtons.setVisibility(GONE);
filename = fields.pitsFieldsFilename;
load_fields();
});
}
private void load_fields() {
values = fields.load(filename);
for(int i = 0; i < values.length; i++){
TableRow tr = new TableRow(getContext());
TableLayout.LayoutParams rowParams = new TableLayout.LayoutParams(
FrameLayout.LayoutParams.WRAP_CONTENT,
FrameLayout.LayoutParams.WRAP_CONTENT
);
rowParams.setMargins(20,20,20,20);
tr.setLayoutParams(rowParams);
tr.setPadding(20,20,20,20);
binding.fieldsArea.addView(tr);
tr.setBackgroundColor(0x1000ff00);
TextView tv = new TextView(getContext());
tv.setText("v" + i);
tv.setTextSize(20);
tr.addView(tv);
tv = new TextView(getContext());
tv.setText(values[i].length + " Fields");
tv.setTextSize(16);
tr.addView(tv);
// frcTeam finalTeam = team;
tr.setOnClickListener(v -> {
// loadTeam(finalTeam, latestSettings.settings.get_compiled_mode());
});
}
}
}