-
-
Save Redrield/35e3f5909551d01ea6afc8a66559bb91 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
linearLayout { | |
this.orientation = LinearLayout.VERTICAL | |
weightSum = 1f | |
scrollView { | |
gridLayout { | |
columnCount = 2 | |
alignmentMode = GridLayout.ALIGN_BOUNDS | |
// Pre game | |
textView { | |
text = "Team number" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
teamNumber = editText { | |
text = pref.getInt("TEAM_NUMBER", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Colour" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
colour = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.team_colour_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("COLOUR", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Match number" | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
matchNumber = editText { | |
text = pref.getInt("MATCH_NUMBER", 1).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Starting Location" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
startingLocation = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.starting_location_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("STARTING_LOCATION", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Autonomous High Goal" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
autoHighGoal = editText { | |
text = pref.getInt("AUTO_HIGH_GOAL", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Autonomous Low Goal" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginEnd = dip(20) | |
} | |
autoLowGoal = editText { | |
text = pref.getInt("AUTO_LOW_GOAL", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Delivered Gear (Autonomous)" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
autoDeliveredGear = checkBox { | |
isChecked = pref.getBoolean("AUTO_DELIVERED_GEAR", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Crossed baseline" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
autoCrossBaseline = checkBox { | |
isChecked = pref.getBoolean("AUTO_CROSS_BASELINE", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Activates hoppers (Autonomous)" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
autoActivatesHoppers = checkBox { | |
isChecked = pref.getBoolean("AUTO_ACTIVATES_HOPPERS", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Teleoperated High goal" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
teleHighGoal = editText { | |
text = pref.getInt("TELE_HIGH_GOAL", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Teleoperated Low Goal" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
teleLowGoal = editText { | |
text = pref.getInt("TELE_LOW_GOAL", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Accuracy" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
accuracy = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.accuracy_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("ACCURACY", "80-100%"))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Fuel off floor" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
fuelOffFloor = checkBox { | |
isChecked = pref.getBoolean("FUEL_OFF_FLOOR", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Holding Capacity" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
holdingCapacity = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.holding_capacity_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("HOLDING_CAPACITY", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Climbs" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
climbs = checkBox { | |
isChecked = pref.getBoolean("CLIMBS", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Rope grabbing efficency" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
climbingEfficiency = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.grab_rope_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("ROPE_GRABBING_EFFICIENCY", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Triggers touchpad" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
triggersTouchpad = checkBox { | |
isChecked = pref.getBoolean("TRIGGERS_TOUCHPAD", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Holds on touchpad" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
holdsOnTouchpad = checkBox { | |
isChecked = pref.getBoolean("HOLDS_ON_TOUCHPAD", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Time taken to trigger" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
timeTakenToTrigger = editText { | |
text = pref.getInt("TIME_TAKEN_TO_TRIGGER", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Number of gears delivered" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
numberOfGearsDelivered = editText { | |
text = pref.getInt("NUMBER_OF_GEARS_DELIVERED", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Number of gear cycles" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
gearCycles = editText { | |
text = pref.getInt("NUMBER_OF_CYCLES", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Can pick up gears off floor" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
gearsOffFloor = checkBox { | |
isChecked = pref.getBoolean("GEARS_OFF_FLOOR", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Time taken to load gear" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
timeTakenToLoad = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.speed_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("TIME_TAKEN_TO_LOAD", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Time taken to place gear" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
timeTakenToPlace = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.speed_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("TIME_TAKEN_TO_PLACE", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Defends" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
defends = checkBox { | |
isChecked = pref.getBoolean("DEFENDS", false) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Defence efficiency" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
defenceEfficiency = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.defence_efficiency_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("DEFENCE_EFFICIENCY", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Number of penalties caused" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
penaltiesCaused = editText { | |
text = pref.getInt("PENALTIES_CAUSED", 0).toString().toEditable() | |
inputType = InputType.TYPE_CLASS_PHONE | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Robot speed" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
robotSpeed = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.speed_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("MOVEMENT_SPEED", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
textView { | |
text = "Robot control" | |
}.lparams { | |
setGravity(Gravity.START) | |
marginStart = dip(20) | |
} | |
robotControl = spinner { | |
val mAdapter = ArrayAdapter.createFromResource(this@ConfirmationActivity, R.array.robot_control_selection, android.R.layout.simple_spinner_item) | |
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) | |
adapter = mAdapter | |
setSelection(mAdapter.getPosition(pref.getString("ROBOT_CONTROL", ""))) | |
}.lparams { | |
setGravity(Gravity.END) | |
marginEnd = dip(20) | |
} | |
}.lparams(width = matchParent) | |
}.lparams { | |
weight = 1f | |
} | |
button { | |
setText(R.string.button_text_submit) | |
onClick { | |
val tele = Teleoperated(lowGoalScored = teleLowGoal.text.toString().toIntOrNull() ?: 0, | |
highGoalScored = teleHighGoal.text.toString().toIntOrNull() ?: 0, accuracy = accuracy.selectedItem as String, | |
canPickUpFuel = fuelOffFloor.isChecked, climbs = climbs.isChecked, control = robotControl.selectedItem as String, | |
defends = defends.isChecked, efficiency = defenceEfficiency.selectedItem as String, | |
gearsOffFloor = gearsOffFloor.isChecked, holdOnTouchpad = holdsOnTouchpad.isChecked, | |
impressions = pref.getString("IMPRESSIONS", ""), movementSpeed = robotSpeed.selectedItem as String, | |
numberOfCycles = gearCycles.text.toString().toIntOrNull() ?: 0, numberOfGearsDelivered = numberOfGearsDelivered.text.toString().toIntOrNull() ?: 0, | |
penaltiesCaused = penaltiesCaused.text.toString().toIntOrNull() ?: 0, recommendation = pref.getInt("RECOMMENDATION", 0), | |
ropeGrabbing = climbingEfficiency.selectedItem as String, timeTakenToLoad = timeTakenToLoad.selectedItem as String, | |
timeTakenToPlace = timeTakenToPlace.selectedItem as String, timeTakenToTrigger = timeTakenToTrigger.text.toString().toIntOrNull() ?: 0, | |
triggerTouchpad = triggersTouchpad.isChecked, holdingCapacity = holdingCapacity.selectedItem as String) | |
val autonomous = Autonomous(startingLocation = startingLocation.selectedItem as String, lowGoalScored = autoLowGoal.text.toString().toIntOrNull() ?: 0, | |
highGoalScored = autoHighGoal.text.toString().toIntOrNull() ?: 0, activatesHoppers = autoActivatesHoppers.isChecked, | |
deliveredGear = autoDeliveredGear.isChecked, canCrossBaseline = autoCrossBaseline.isChecked) | |
val preGame = PreGame(teamNumber.text.toString().toIntOrNull() ?: 0, matchNumber.text.toString().toIntOrNull() ?: 0, colour.selectedItem as String) | |
val team = ScoutedTeam(preGame, autonomous, tele) | |
val gson = GsonBuilder().serializeNulls().create() | |
val json = gson.fromJson(gson.toJson(team), JsonElement::class.java) | |
val arrFile = File(applicationContext.filesDir, "completed.json") | |
if (arrFile.exists()) { | |
val arr = gson.fromJson(InputStreamReader(FileInputStream(arrFile)), JsonArray::class.java) | |
arr.add(json) | |
arrFile.delete() | |
arrFile.createNewFile() | |
arrFile.writeText(gson.toJson(arr)) | |
} else { | |
arrFile.createNewFile() | |
val arr = JsonArray() | |
arr.add(json) | |
arrFile.writeText(gson.toJson(arr)) | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment