88import SwiftUI
99
1010let blueSpeaker = " blue speaker "
11- let redSpeaker = " red speaker "
1211let blueAmp = " blue amp "
12+ let redSpeaker = " red speaker "
1313let redAmp = " red amp "
14+ let chain = " chain "
1415
1516let backgroundGradient = LinearGradient ( colors: [ Color . blue, Color . white] , startPoint: . top, endPoint: . bottom)
1617struct ContentView : View {
@@ -19,68 +20,73 @@ struct ContentView: View {
1920 @State private var mobile = false ;
2021 @State private var left = false ;
2122 @State private var middle = false ;
22- @State private var move = false ;
23+ @State private var move = true ;
24+ @State private var jank = true ;
2325 var body : some View {
24- if !move {
25- GeometryReader { geometry in
26- ZStack { //could make an array
26+ if !jank{
27+ FrontPageView ( )
28+ }
29+ else {
30+ if !move{
31+ TeleopView ( )
32+ } else {
33+ GeometryReader { geometry in
34+ ZStack { //could make an array
2735 backgroundGradient
28- VStack {
29- Text ( " AUTONOMOUS " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
30- HStack {
31- VStack ( ) {
32- Text ( " SPEAKER " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
33- Image ( blueSpeaker) . resizable ( ) . frame ( width: 318 , height: 318 ) . padding ( . bottom, 10 )
34- Stepper {
35- Text ( " \( value) " )
36- } onIncrement: {
37- value += 1
38-
39- } onDecrement: {
40- if ( value > 0 ) {
41- value -= 1
42- }
43- } . frame ( width: 150 )
36+ Image ( systemName: " arrow.left " ) . font ( . title) . offset ( y: - 60 ) . fontWeight ( . bold) . frame ( maxWidth: . infinity, maxHeight: . infinity, alignment: . topLeading) . padding ( . horizontal, 50 ) . padding ( . vertical, 100 ) . onTapGesture {
37+ jank = false
38+ }
39+ VStack {
40+ Text ( " AUTONOMOUS " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
41+ HStack {
42+ VStack ( ) {
43+ Text ( " SPEAKER " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
44+ Image ( blueSpeaker) . resizable ( ) . frame ( width: 318 , height: 318 ) . padding ( . bottom, 10 )
45+ Stepper {
46+ Text ( " \( value) " )
47+ } onIncrement: {
48+ value += 1
49+
50+ } onDecrement: {
51+ if ( value > 0 ) {
52+ value -= 1
53+ }
54+ } . frame ( width: 150 )
55+ }
56+ . padding ( 10 )
57+ VStack ( spacing: 10 ) {
58+ Text ( " AMP " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
59+ Image ( blueAmp) . resizable ( ) . frame ( width: 318 , height: 318 ) . padding ( . bottom, 10 )
60+ Stepper {
61+ Text ( " \( amp) " )
62+ } onIncrement: {
63+ amp += 1
64+
65+ } onDecrement: {
66+ if ( amp > 0 ) {
67+ amp -= 1
68+ }
69+ } . frame ( width: 150 )
70+ }
71+ . padding ( 10 )
4472 }
45- . padding ( 10 )
46- VStack ( spacing: 10 ) {
47- Text ( " AMP " ) . font ( . title) . fontWeight ( . bold) . font ( . system( . largeTitle) )
48- Image ( blueAmp) . resizable ( ) . frame ( width: 318 , height: 318 ) . padding ( . bottom, 10 )
49- Stepper {
50- Text ( " \( amp) " )
51- } onIncrement: {
52- amp += 1
53-
54- } onDecrement: {
55- if ( amp > 0 ) {
56- amp -= 1
57- }
58- } . frame ( width: 150 )
73+ HStack {
74+
75+ VStack {
76+ Toggle ( " Mobility: " , isOn: $mobile) . frame ( width: 150 )
77+ Toggle ( " Left Zone: " , isOn: $left) . frame ( width: 150 )
78+ Toggle ( " Middle Ring: " , isOn: $middle) . frame ( width: 150 )
79+ }
80+
5981 }
60- . padding ( 10 )
61- }
62- HStack {
63-
64- VStack {
65- Toggle ( " Mobility: " , isOn: $mobile) . frame ( width: 150 )
66- Toggle ( " Left Zone: " , isOn: $left) . frame ( width: 150 )
67- Toggle ( " Middle Ring: " , isOn: $middle) . frame ( width: 150 )
68- } . offset ( x: - 1 * geometry. size. width/ 3 )
6982
83+ Text ( " TO TELEOP " ) . font ( . title) . fontWeight ( . bold) . onTapGesture {
84+ move = false ;
85+ }
7086 }
71-
72- Text ( " TO TELEOP " ) . font ( . title) . fontWeight ( . bold) . onTapGesture {
73- move = true ;
74- }
75-
76-
77-
7887 }
7988 }
80-
8189 }
82- } else {
83- TeleopView ( )
8490 }
8591 }
8692}
0 commit comments