From 6b1a2588ebece16924e23efca4c6827a2b2fb431 Mon Sep 17 00:00:00 2001 From: wildercayden Date: Sat, 4 Jul 2026 22:31:52 -0400 Subject: [PATCH] added color change and a new empety screen --- Generator/.idea/deploymentTargetSelector.xml | 8 + Generator/.idea/studiobot.xml | 6 + Generator/app/src/main/AndroidManifest.xml | 8 +- .../com/example/generator/ColorActivity.java | 205 ++++++++++++++++++ .../main/java/com/example/generator/Data.java | 22 ++ .../com/example/generator/MainActivity.java | 2 +- .../example/generator/MakeAutoActivity.java | 38 ++++ ...ctivity.java => MakeStartingActivity.java} | 3 +- .../example/generator/StartingPreview.java | 11 +- .../src/main/res/layout/activity_color.xml | 176 +++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 4 +- .../app/src/main/res/layout/activity_make.xml | 8 +- .../main/res/layout/activity_make_auto.xml | 40 ++++ .../res/layout/activity_starting_preview.xml | 8 +- .../app/src/main/res/values/coloroptions.xml | 21 ++ Generator/app/src/main/res/values/colors.xml | 22 +- Generator/app/src/main/res/values/themes.xml | 10 +- ...pe_transparent_background.png-autosave.kra | Bin 121077 -> 0 bytes .../app/src/main/res/layout/activity_auto.xml | 7 +- 19 files changed, 569 insertions(+), 30 deletions(-) create mode 100644 Generator/.idea/studiobot.xml create mode 100644 Generator/app/src/main/java/com/example/generator/ColorActivity.java create mode 100644 Generator/app/src/main/java/com/example/generator/MakeAutoActivity.java rename Generator/app/src/main/java/com/example/generator/{makeActivity.java => MakeStartingActivity.java} (97%) create mode 100644 Generator/app/src/main/res/layout/activity_color.xml create mode 100644 Generator/app/src/main/res/layout/activity_make_auto.xml create mode 100644 Generator/app/src/main/res/values/coloroptions.xml delete mode 100644 ScoutingApp/app/src/main/res/drawable/._025_reefscape_transparent_background.png-autosave.kra diff --git a/Generator/.idea/deploymentTargetSelector.xml b/Generator/.idea/deploymentTargetSelector.xml index b268ef3..2924fdb 100644 --- a/Generator/.idea/deploymentTargetSelector.xml +++ b/Generator/.idea/deploymentTargetSelector.xml @@ -4,6 +4,14 @@ diff --git a/Generator/.idea/studiobot.xml b/Generator/.idea/studiobot.xml new file mode 100644 index 0000000..539e3b8 --- /dev/null +++ b/Generator/.idea/studiobot.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/Generator/app/src/main/AndroidManifest.xml b/Generator/app/src/main/AndroidManifest.xml index 350c291..f82b5e0 100644 --- a/Generator/app/src/main/AndroidManifest.xml +++ b/Generator/app/src/main/AndroidManifest.xml @@ -12,11 +12,17 @@ android:roundIcon="@drawable/ic_launcher_background" android:supportsRtl="true" android:theme="@style/Theme.Generator"> + + { + Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); + return insets; + }); + + Spinner spinnerP = (Spinner) findViewById(R.id.ColorSelector); + ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.colorOptions, android.R.layout.simple_spinner_item); + adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + spinnerP.setAdapter(adapter); + + Spinner spinnerS = (Spinner) findViewById(R.id.ColorSelector2nd); + ArrayAdapter adapter2 = ArrayAdapter.createFromResource(this, R.array.colorOptions2nd, android.R.layout.simple_spinner_item); + adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + spinnerS.setAdapter(adapter2); + + Button backButton = (Button) findViewById(R.id.button_back); + Button nextButton = (Button) findViewById(R.id.button_next); + backButton.setOnClickListener((v) -> { + Intent intent = new Intent(this, MainActivity.class); + startActivity(intent); + }); + nextButton.setOnClickListener((v) -> { + Intent intent = new Intent(this, MakeStartingActivity.class); + startActivity(intent); + }); + + MaterialButton TeleExample1 = (MaterialButton) findViewById(R.id.button_tele_example); + MaterialButton TeleExample2 = (MaterialButton) findViewById(R.id.button_tele_example2); + MaterialButton AutoExample1 = (MaterialButton) findViewById(R.id.button_auto_example); + MaterialButton AutoExample2 = (MaterialButton) findViewById(R.id.button_auto_example2); + MaterialButton NavExample1 = (MaterialButton) findViewById(R.id.button_nav_example); + MaterialButton NavExample2 = (MaterialButton) findViewById(R.id.button_nav_example2); + RadioButton radioButton = (RadioButton) findViewById(R.id.radioButton); + CheckBox checkBox = (CheckBox) findViewById(R.id.checkBox); + + spinnerP.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parentView, android.view.View selectedItemView, int position, long id) { + String selectedItem = parentView.getItemAtPosition(position).toString(); + + int mainColorRes = 0; + int bgTintRes = 0; + String hexColor = ""; + + switch (selectedItem) { + case "Primary Orange": + hexColor = "#FF5722"; + mainColorRes = R.color.orangeMain; + bgTintRes = R.color.orangeMain_bg; + break; + case "Primary Green": + hexColor = "#0EE906"; + mainColorRes = R.color.greenMain; + bgTintRes = R.color.greenMain_bg; + break; + case "Primary Blue": + hexColor = "#205CDF"; + mainColorRes = R.color.blueMain; + bgTintRes = R.color.blueMain_bg; + break; + case "Primary Pink": + hexColor = "#F200DD"; + mainColorRes = R.color.pinkMain; + bgTintRes = R.color.pinkMain_bg; + break; + case "Primary Purple": + hexColor = "#A30096"; + mainColorRes = R.color.purpleMain; + bgTintRes = R.color.purpleMain_bg; + break; + case "Primary Red": + hexColor = "#DF2020"; + mainColorRes = R.color.redMain; + bgTintRes = R.color.redMain_bg; + break; + case "Primary Yellow": + hexColor = "#FFEB3B"; + mainColorRes = R.color.yellowMain; + bgTintRes = R.color.yellowMain_bg; + break; + } + + if (mainColorRes != 0) { + ColorStateList mainColorStateList = ContextCompat.getColorStateList(ColorActivity.this, mainColorRes); + ColorStateList bgTintStateList = ContextCompat.getColorStateList(ColorActivity.this, bgTintRes); + int mainColorInt = ContextCompat.getColor(ColorActivity.this, mainColorRes); + + MakeStartingActivity.Data.setColorP(hexColor); + + spinnerP.setBackgroundColor(mainColorInt); + radioButton.setButtonTintList(mainColorStateList); + checkBox.setButtonTintList(mainColorStateList); + + TeleExample1.setStrokeColor(mainColorStateList); + TeleExample1.setBackgroundTintList(bgTintStateList); + + AutoExample2.setStrokeColor(mainColorStateList); + AutoExample2.setBackgroundTintList(bgTintStateList); + NavExample2.setBackgroundColor(mainColorInt); + NavExample1.setBackgroundColor(mainColorInt); + } + } + + @Override + public void onNothingSelected(AdapterView parentView) {} + }); + + spinnerS.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { + @Override + public void onItemSelected(AdapterView parentView, android.view.View selectedItemView, int position, long id) { + String selectedItem = parentView.getItemAtPosition(position).toString(); + + int mainColorRes = 0; + int bgTintRes = 0; + String hexColor = ""; + + switch (selectedItem) { + case "Secondary Orange": + hexColor = "#FF5722"; + mainColorRes = R.color.orangeMain; + bgTintRes = R.color.orangeMain_bg; + break; + case "Secondary Green": + hexColor = "#0EE906"; + mainColorRes = R.color.greenMain; + bgTintRes = R.color.greenMain_bg; + break; + case "Secondary Blue": + hexColor = "#205CDF"; + mainColorRes = R.color.blueMain; + bgTintRes = R.color.blueMain_bg; + break; + case "Secondary Pink": + hexColor = "#F200DD"; + mainColorRes = R.color.pinkMain; + bgTintRes = R.color.pinkMain_bg; + break; + case "Secondary Purple": + hexColor = "#A30096"; + mainColorRes = R.color.purpleMain; + bgTintRes = R.color.purpleMain_bg; + break; + case "Secondary Red": + hexColor = "#DF2020"; + mainColorRes = R.color.redMain; + bgTintRes = R.color.redMain_bg; + break; + case "Secondary Yellow": + hexColor = "#FFEB3B"; + mainColorRes = R.color.yellowMain; + bgTintRes = R.color.yellowMain_bg; + break; + } + + if (mainColorRes != 0) { + ColorStateList mainColorStateList = ContextCompat.getColorStateList(ColorActivity.this, mainColorRes); + ColorStateList bgTintStateList = ContextCompat.getColorStateList(ColorActivity.this, bgTintRes); + int mainColorInt = ContextCompat.getColor(ColorActivity.this, mainColorRes); + + MakeStartingActivity.Data.setColorS(hexColor); + + spinnerS.setBackgroundColor(mainColorInt); + + TeleExample2.setStrokeColor(mainColorStateList); + TeleExample2.setBackgroundTintList(bgTintStateList); + + AutoExample1.setStrokeColor(mainColorStateList); + AutoExample1.setBackgroundTintList(bgTintStateList); + } + } + + @Override + public void onNothingSelected(AdapterView parentView) {} + }); + } +} diff --git a/Generator/app/src/main/java/com/example/generator/Data.java b/Generator/app/src/main/java/com/example/generator/Data.java index 974348e..ecbfc78 100644 --- a/Generator/app/src/main/java/com/example/generator/Data.java +++ b/Generator/app/src/main/java/com/example/generator/Data.java @@ -1,9 +1,15 @@ package com.example.generator; +import org.apache.commons.codec.binary.Hex; + public class Data { private String base64; private int numPos; + private String colorP; + private String colorS; + + public String getBase64() { return base64; @@ -19,5 +25,21 @@ public class Data { return Math.max(0, numPos); } + public String getColorP() { + return colorP; + } + + public void setColorP(String colorP) { + this.colorP = colorP; + } + + public String getColorS() { + return colorS; + } + + public void setColorS(String colorS) { + this.colorS = colorS; + } + } diff --git a/Generator/app/src/main/java/com/example/generator/MainActivity.java b/Generator/app/src/main/java/com/example/generator/MainActivity.java index 2f2ce81..2deb20a 100644 --- a/Generator/app/src/main/java/com/example/generator/MainActivity.java +++ b/Generator/app/src/main/java/com/example/generator/MainActivity.java @@ -24,7 +24,7 @@ public class MainActivity extends AppCompatActivity { }); Button makeButton = (Button) findViewById(R.id.button_next); makeButton.setOnClickListener((v) -> { - Intent intent = new Intent(this, makeActivity.class); + Intent intent = new Intent(this, ColorActivity.class); startActivity(intent); }); } diff --git a/Generator/app/src/main/java/com/example/generator/MakeAutoActivity.java b/Generator/app/src/main/java/com/example/generator/MakeAutoActivity.java new file mode 100644 index 0000000..2f78f8b --- /dev/null +++ b/Generator/app/src/main/java/com/example/generator/MakeAutoActivity.java @@ -0,0 +1,38 @@ +package com.example.generator; + +import android.content.Intent; +import android.os.Bundle; +import android.widget.Button; + +import androidx.activity.EdgeToEdge; +import androidx.appcompat.app.AppCompatActivity; +import androidx.core.graphics.Insets; +import androidx.core.view.ViewCompat; +import androidx.core.view.WindowInsetsCompat; + +public class MakeAutoActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + EdgeToEdge.enable(this); + setContentView(R.layout.activity_make_auto); + ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { + Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); + v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); + return insets; + }); + + + Button backButton = (Button) findViewById(R.id.button_back); + Button nextButton = (Button) findViewById(R.id.button_next); + backButton.setOnClickListener((v) -> { + Intent intent = new Intent(this, StartingPreview.class); + startActivity(intent); + }); + nextButton.setOnClickListener((v) -> { + Intent intent = new Intent(this, MakeAutoActivity.class); + startActivity(intent); + }); + } + } \ No newline at end of file diff --git a/Generator/app/src/main/java/com/example/generator/makeActivity.java b/Generator/app/src/main/java/com/example/generator/MakeStartingActivity.java similarity index 97% rename from Generator/app/src/main/java/com/example/generator/makeActivity.java rename to Generator/app/src/main/java/com/example/generator/MakeStartingActivity.java index 3fe64db..9845992 100644 --- a/Generator/app/src/main/java/com/example/generator/makeActivity.java +++ b/Generator/app/src/main/java/com/example/generator/MakeStartingActivity.java @@ -25,7 +25,7 @@ import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.util.Objects; -public class makeActivity extends AppCompatActivity { +public class MakeStartingActivity extends AppCompatActivity { public static Data Data = new Data(); private ImageView imageView; private int numPos = -1; @@ -80,7 +80,6 @@ public class makeActivity extends AppCompatActivity { Data.setNumPos(numPos); Data.setBase64(Base64img); Intent intent = new Intent(this, StartingPreview.class); - intent.putExtra("EXTRA_IMAGE_BASE64", Base64img); startActivity(intent); } } diff --git a/Generator/app/src/main/java/com/example/generator/StartingPreview.java b/Generator/app/src/main/java/com/example/generator/StartingPreview.java index ccff61b..6b33c7f 100644 --- a/Generator/app/src/main/java/com/example/generator/StartingPreview.java +++ b/Generator/app/src/main/java/com/example/generator/StartingPreview.java @@ -34,7 +34,7 @@ public class StartingPreview extends AppCompatActivity { }); ImageView imageView2 = findViewById(R.id.imageView2); - String imageBase64 = getIntent().getStringExtra("EXTRA_IMAGE_BASE64"); + String imageBase64 = MakeStartingActivity.Data.getBase64(); if (imageBase64 != null && !imageBase64.isEmpty()) { try { @@ -49,10 +49,9 @@ public class StartingPreview extends AppCompatActivity { RadioGroup radioGroup = findViewById(R.id.radioGroup); int totalPositions; - totalPositions = makeActivity.Data.getNumPos(); - + totalPositions = MakeStartingActivity.Data.getNumPos(); int whiteColor = ContextCompat.getColor(this, R.color.white); - int mainColor = ContextCompat.getColor(this, R.color.main); + int mainColor = ContextCompat.getColor(this, R.color.orangeMain); ColorStateList buttonTintList = ColorStateList.valueOf(mainColor); RadioGroup.LayoutParams layoutParams = new RadioGroup.LayoutParams( RadioGroup.LayoutParams.MATCH_PARENT, @@ -76,11 +75,11 @@ public class StartingPreview extends AppCompatActivity { Button backButton = (Button) findViewById(R.id.backButton); Button nextButton = (Button) findViewById(R.id.buttonNext); backButton.setOnClickListener((v) -> { - Intent intent = new Intent(this, makeActivity.class); + Intent intent = new Intent(this, MakeStartingActivity.class); startActivity(intent); }); nextButton.setOnClickListener((v) -> { - Intent intent = new Intent(this, MainActivity.class); + Intent intent = new Intent(this, MakeAutoActivity.class); startActivity(intent); }); } diff --git a/Generator/app/src/main/res/layout/activity_color.xml b/Generator/app/src/main/res/layout/activity_color.xml new file mode 100644 index 0000000..74c81ce --- /dev/null +++ b/Generator/app/src/main/res/layout/activity_color.xml @@ -0,0 +1,176 @@ + + + +