1
+ Rem
2
+ ---------------------------------------------------------------
3
+ CORTEX COMMAND COMMUNITY PROJECT BENDER v0.1 :
4
+ ---------------------------------------------------------------
5
+ TBA
6
+ EndRem
7
+
8
+ Strict
9
+
10
+ Import MaxGUI.Drivers
11
+ Import BRL.FileSystem
12
+
13
+ AppTitle = " CCCP Bender v0.1"
14
+
15
+ 'App quitting bool
16
+ Global quitResult = False
17
+
18
+ 'File I/O
19
+ Global importedFile:String = Null
20
+ Global fileFilers:String = " Image Files:png,jpg,bmp"
21
+
22
+ 'Output Settings
23
+ Global SCALE:String = " 1"
24
+ Global FRAMES:String = " 7"
25
+ Global BACKGROUND_RED:String = " 255"
26
+ Global BACKGROUND_GREEN:String = " 200"
27
+ Global BACKGROUND_BLUE:String = " 255"
28
+
29
+ 'GUI Elements
30
+ Type TAppGUI
31
+ 'Main Window
32
+ Global mainWindow:TGadget
33
+ Global mainWindowButtonPanel:TGadget
34
+ Global mainLoadButton:TGadget
35
+ Global mainQuitButton:TGadget
36
+ 'Main Window About Panel
37
+ Global mainAboutPanel:TGadget
38
+ Global mainAboutTextbox:TGadget
39
+
40
+ 'Main Window Label
41
+ 'Global mainWindowLabel:TGadget
42
+
43
+ 'Workspace Window
44
+ Global workWindow:TGadget
45
+ Global workWindowButtonPanel:TGadget
46
+ Global workLoadButton:TGadget
47
+ Global workSaveButton:TGadget
48
+ Global workQuitButton:TGadget
49
+ 'Workspace Window Settings Panel
50
+ Global settingsPalel:TGadget
51
+ Global settingsScaleTextbox:TGadget
52
+ Global settingFramesTextbox:TGadget
53
+ Global settingsColorRTextbox:TGadget
54
+ Global settingsColorGTextbox:TGadget
55
+ Global settingsColorBTextbox:TGadget
56
+ Global settingsScaleLabel:TGadget
57
+ Global settingsFramesLabel:TGadget
58
+ Global settingsColorLabel:TGadget
59
+ Global settingsColorRLabel:TGadget
60
+ Global settingsColorGLabel:TGadget
61
+ Global settingsColorBLabel:TGadget
62
+ 'Workspace Window Instructions Panel
63
+ Global workHelpPanel:TGadget
64
+ Global workHelpTextbox:TGadget
65
+
66
+ 'Tansition between windows bool
67
+ Global mainToWork = False
68
+
69
+ 'Transition between windows
70
+ Function FAppUpdate ()
71
+ If mainToWork = False
72
+ If importedFile <> Null Then
73
+ FAppWork()
74
+ mainToWork = True
75
+ EndIf
76
+ EndIf
77
+ EndFunction
78
+ EndType
79
+
80
+ FAppMain()
81
+
82
+ Function FAppMain ()
83
+ 'Create main app window
84
+ TAppGUI.mainWindow = CreateWindow(" CCCP Bender v0.1" ,DesktopWidth()/2 - 150 ,DesktopHeight()/2 - 180 ,300 ,360 ,Null ,WINDOW_TITLEBAR)
85
+
86
+ 'TAppGUI.mainWindowLabel = CreateLabel("",0,0,GadgetWidth(TAppGUI.mainWindow),100,TAppGUI.mainWindow,LABEL_LEFT)
87
+
88
+ TAppGUI.mainWindowButtonPanel = CreatePanel(GadgetWidth(TAppGUI.mainWindow)/2 - 80 ,10 ,150 ,97 ,TAppGUI.mainWindow,PANEL_GROUP)
89
+ TAppGUI.mainLoadButton = CreateButton(" Load Sprite" ,GadgetWidth(TAppGUI.mainWindowButtonPanel)/2 - 70 ,0 ,130 ,30 ,TAppGUI.mainWindowButtonPanel,BUTTON_PUSH)
90
+ TAppGUI.mainQuitButton = CreateButton(" Quit" ,GadgetWidth(TAppGUI.mainWindowButtonPanel)/2 - 70 ,40 ,130 ,30 ,TAppGUI.mainWindowButtonPanel,BUTTON_PUSH)
91
+ TAppGUI.mainAboutPanel = CreatePanel(GadgetWidth(TAppGUI.mainWindow)/2 - 143 ,125 ,280 ,200 ,TAppGUI.mainWindow,PANEL_GROUP," About : " )
92
+ TAppGUI.mainAboutTextbox = CreateTextArea(5 ,5 ,GadgetWidth(TAppGUI.mainAboutPanel)- 20 ,GadgetHeight(TAppGUI.mainAboutPanel)- 30 ,TAppGUI.mainAboutPanel,TEXTAREA_WORDWRAP| TEXTAREA_READONLY)
93
+ 'About textbox content
94
+ SetGadgetText(TAppGUI.mainAboutTextbox," Welcome to the CCCP Bender utility!~n~n It's purpose is to make the life of modders easier by automagically generating bent limb frames.~n~n The CC Bender was originally created by Arne Jansson (AndroidArts), the man behind all the Cortex Command artwork.~n The CCCommunityProject Bender, however, is a brand new tool that allows more control and convenience For the modder (hopefully).~n~n This tool utilizes Arne's original limb bend code, but also allows loading and saving sprites, along with other settings.~n~n Created by MaximDude using BlitzMax MaxIDE 1.52~n CCCP Bender version 0.1 - 17 Aug 2019" )
95
+ EndFunction
96
+
97
+ Function FAppWork ()
98
+ 'Create workspace window
99
+ TAppGUI.workWindow = CreateWindow(" CCCP Bender v0.1 - Editor" ,DesktopWidth()/2 - 152 ,DesktopHeight()/2 - 222 ,305 ,455 ,Null ,WINDOW_TITLEBAR)
100
+ TAppGUI.workWindowButtonPanel = CreatePanel(10 ,7 ,280 ,57 ,TAppGUI.workWindow,PANEL_GROUP)
101
+ TAppGUI.workLoadButton = CreateButton(" Load" ,5 ,0 ,80 ,30 ,TAppGUI.workWindowButtonPanel,BUTTON_PUSH)
102
+ TAppGUI.workSaveButton = CreateButton(" Save" ,95 ,0 ,80 ,30 ,TAppGUI.workWindowButtonPanel,BUTTON_PUSH)
103
+ TAppGUI.workQuitButton = CreateButton(" Quit" ,185 ,0 ,80 ,30 ,TAppGUI.workWindowButtonPanel,BUTTON_PUSH)
104
+ 'Create workspace settings panel
105
+ TAppGUI.settingsPalel = CreatePanel(10 ,73 ,280 ,87 ,TAppGUI.workWindow,PANEL_GROUP," Settings : " )
106
+ TAppGUI.settingsScaleTextbox = CreateTextField(80 ,12 ,30 ,20 ,TAppGUI.settingsPalel)
107
+ TAppGUI.settingFramesTextbox = CreateTextField(190 ,12 ,30 ,20 ,TAppGUI.settingsPalel)
108
+ TAppGUI.settingsColorRTextbox = CreateTextField(80 ,42 ,30 ,20 ,TAppGUI.settingsPalel)
109
+ TAppGUI.settingsColorGTextbox = CreateTextField(135 ,42 ,30 ,20 ,TAppGUI.settingsPalel)
110
+ TAppGUI.settingsColorBTextbox = CreateTextField(190 ,42 ,30 ,20 ,TAppGUI.settingsPalel)
111
+ 'Create workspace settings labels
112
+ TAppGUI.settingsScaleLabel = CreateLabel(" Scale:" ,10 ,15 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
113
+ TAppGUI.settingsFramesLabel = CreateLabel(" Frames:" ,120 ,15 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
114
+ TAppGUI.settingsColorLabel = CreateLabel(" BG Color:" ,10 ,45 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
115
+ TAppGUI.settingsColorRLabel = CreateLabel(" R:" ,65 ,45 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
116
+ TAppGUI.settingsColorGLabel = CreateLabel(" G:" ,120 ,45 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
117
+ TAppGUI.settingsColorBLabel = CreateLabel(" B:" ,175 ,45 ,50 ,20 ,TAppGUI.settingsPalel,LABEL_LEFT)
118
+ 'Settings textboxes default values
119
+ SetGadgetText(TAppGUI.settingsScaleTextbox,SCALE)
120
+ SetGadgetText(TAppGUI.settingFramesTextbox,FRAMES)
121
+ SetGadgetText(TAppGUI.settingsColorRTextbox,BACKGROUND_RED)
122
+ SetGadgetText(TAppGUI.settingsColorGTextbox,BACKGROUND_GREEN)
123
+ SetGadgetText(TAppGUI.settingsColorBTextbox,BACKGROUND_BLUE)
124
+
125
+ 'Create instructions panel
126
+ TAppGUI.workHelpPanel = CreatePanel(10 ,170 ,280 ,247 ,TAppGUI.workWindow,PANEL_GROUP," Instructions : " )
127
+ TAppGUI.workHelpTextbox = CreateTextArea(5 ,5 ,GadgetWidth(TAppGUI.workHelpPanel)- 20 ,GadgetHeight(TAppGUI.workHelpPanel)- 30 ,TAppGUI.workHelpPanel,TEXTAREA_WORDWRAP| TEXTAREA_READONLY)
128
+ 'Instructions textbox content
129
+ SetGadgetText(TAppGUI.workHelpTextbox," TBA" );
130
+
131
+ 'Delete no longer used MainWindow
132
+ FreeGadget(TAppGUI.mainWindow)
133
+ EndFunction
134
+
135
+ While True
136
+ TAppGUI.FAppUpdate()
137
+
138
+ 'Print appState
139
+ 'Print SCALE
140
+ 'Print FRAMES
141
+ 'Print importedFile
142
+
143
+ WaitEvent
144
+ 'Print CurrentEvent.ToString()
145
+
146
+ 'Event responses
147
+
148
+ If TAppGUI.mainToWork = False Then
149
+ Select EventID()
150
+ 'Quitting
151
+ Case EVENT_WINDOWCLOSE, EVENT_APPTERMINATE
152
+ End
153
+ Case EVENT_GADGETACTION
154
+ Select EventSource()
155
+ 'Quitting
156
+ Case TAppGUI.mainQuitButton
157
+ End
158
+ 'Loading
159
+ Case TAppGUI.mainLoadButton
160
+ importedFile = RequestFile(" Select graphic file to open" ,fileFilers)
161
+ EndSelect
162
+ EndSelect
163
+ ElseIf TAppGUI.mainToWork = True Then
164
+
165
+ 'Quitting
166
+ If quitResult Then
167
+ End
168
+ EndIf
169
+
170
+ Select EventID()
171
+ 'Quitting confirm
172
+ Case EVENT_WINDOWCLOSE, EVENT_APPTERMINATE
173
+ quitResult = Confirm(" Quit program?" )
174
+
175
+ Case EVENT_GADGETACTION
176
+ Select EventSource()
177
+ 'Quitting confirm
178
+ Case TAppGUI.workQuitButton
179
+ quitResult = Confirm(" Quit program?" )
180
+ 'Loading
181
+ Case TAppGUI.workLoadButton
182
+ importedFile = RequestFile(" Select graphic file to open" ,fileFilers)
183
+
184
+ 'Saving
185
+ Case TAppGUI.workSaveButton
186
+ RequestFile(" Save graphic file" ,fileFilers,True )
187
+
188
+ 'Settings textbox input
189
+ Case TAppGUI.settingsScaleTextbox
190
+ SCALE = GadgetText(TAppGUI.settingsScaleTextbox).ToInt()
191
+ Case TAppGUI.settingFramesTextbox
192
+ FRAMES = GadgetText(TAppGUI.settingFramesTextbox).ToInt()
193
+ Case TAppGUI.settingsColorRTextbox
194
+ BACKGROUND_RED = GadgetText(TAppGUI.settingsColorRTextbox).ToInt()
195
+ Case TAppGUI.settingsColorGTextbox
196
+ BACKGROUND_GREEN = GadgetText(TAppGUI.settingsColorGTextbox).ToInt()
197
+ Case TAppGUI.settingsColorBTextbox
198
+ BACKGROUND_BLUE = GadgetText(TAppGUI.settingsColorBTextbox).ToInt()
199
+ EndSelect
200
+ EndSelect
201
+ EndIf
202
+ Wend
0 commit comments