foxguib 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +0 -0
  3. data/changelog.txt +128 -0
  4. data/doc/www/index.html +173 -0
  5. data/doc/www/upload.rb +9 -0
  6. data/examples/event_handler.rb +67 -0
  7. data/examples/event_handlers.rbin +0 -0
  8. data/examples/guib_testdialog.rb +31 -0
  9. data/examples/testdialog.rb +29 -0
  10. data/exe/foxguib +1 -0
  11. data/foxGUIb-debug.rb +37 -0
  12. data/foxGUIb.rb +88 -0
  13. data/foxGUIb_win32.rbw +1 -0
  14. data/foxguib.gemspec +26 -0
  15. data/license.txt +49 -0
  16. data/readme.txt +1 -0
  17. data/release_notes.txt +68 -0
  18. data/src/assert.rb +8 -0
  19. data/src/cfgman.rb +27 -0
  20. data/src/code-gen/code-generator.rb +171 -0
  21. data/src/code-gen/property-generators.rb +65 -0
  22. data/src/code-gen/widget-generator.rb +22 -0
  23. data/src/convert.rb +60 -0
  24. data/src/direct_widget_manipulation.rb +343 -0
  25. data/src/docman.rb +260 -0
  26. data/src/document.rb +405 -0
  27. data/src/event_categories.yaml +85 -0
  28. data/src/event_listener.rb +57 -0
  29. data/src/events.yaml +77 -0
  30. data/src/events_docu.yaml +228 -0
  31. data/src/get_events.rb +64 -0
  32. data/src/gui/ArrowButton.tga +0 -0
  33. data/src/gui/BoxMinus.tga +0 -0
  34. data/src/gui/BoxPlus.tga +0 -0
  35. data/src/gui/Button.tga +0 -0
  36. data/src/gui/CheckButton.tga +0 -0
  37. data/src/gui/ComboBox.tga +0 -0
  38. data/src/gui/Dial.tga +0 -0
  39. data/src/gui/GroupBox.tga +0 -0
  40. data/src/gui/HorizontalFrame.tga +0 -0
  41. data/src/gui/HorizontalSeparator.tga +0 -0
  42. data/src/gui/Label.tga +0 -0
  43. data/src/gui/MDIChild.tga +0 -0
  44. data/src/gui/MDIClient.tga +0 -0
  45. data/src/gui/Matrix.tga +0 -0
  46. data/src/gui/MenuCaption.tga +0 -0
  47. data/src/gui/MenuCascade.tga +0 -0
  48. data/src/gui/MenuCheck.tga +0 -0
  49. data/src/gui/MenuCommand.tga +0 -0
  50. data/src/gui/MenuPane.tga +0 -0
  51. data/src/gui/MenuRadio.tga +0 -0
  52. data/src/gui/MenuSeparator.tga +0 -0
  53. data/src/gui/MenuTitle.tga +0 -0
  54. data/src/gui/Menubar.tga +0 -0
  55. data/src/gui/Packer.tga +0 -0
  56. data/src/gui/ProgressBar.tga +0 -0
  57. data/src/gui/RadioButton.tga +0 -0
  58. data/src/gui/RadioMutex.tga +0 -0
  59. data/src/gui/ScrollWindow.tga +0 -0
  60. data/src/gui/Scrollbar.tga +0 -0
  61. data/src/gui/Shutter.tga +0 -0
  62. data/src/gui/ShutterItem.tga +0 -0
  63. data/src/gui/Slider.tga +0 -0
  64. data/src/gui/Spinner.tga +0 -0
  65. data/src/gui/Splitter.tga +0 -0
  66. data/src/gui/StatusBar.tga +0 -0
  67. data/src/gui/Statusline.tga +0 -0
  68. data/src/gui/Switcher.tga +0 -0
  69. data/src/gui/TabBar.tga +0 -0
  70. data/src/gui/TabBook.tga +0 -0
  71. data/src/gui/TabItem.tga +0 -0
  72. data/src/gui/Text.tga +0 -0
  73. data/src/gui/TextField.tga +0 -0
  74. data/src/gui/ToggleButton.tga +0 -0
  75. data/src/gui/Toolbar.tga +0 -0
  76. data/src/gui/VerticalFrame.tga +0 -0
  77. data/src/gui/VerticalSeparator.tga +0 -0
  78. data/src/gui/_guib_event_editor.rb +185 -0
  79. data/src/gui/_guib_event_editor.rbin +0 -0
  80. data/src/gui/_guib_genruby.rb +414 -0
  81. data/src/gui/_guib_genruby.rbin +0 -0
  82. data/src/gui/_guib_mainwin.rb +574 -0
  83. data/src/gui/_guib_mainwin.rbin +0 -0
  84. data/src/gui/event_editor.rb +180 -0
  85. data/src/gui/genruby.rb +155 -0
  86. data/src/gui/guib__console.rb +265 -0
  87. data/src/gui/mainwin.rb +71 -0
  88. data/src/gui/ruby_console.rb +263 -0
  89. data/src/gui/svg/Matrix.svg +87 -0
  90. data/src/gui/svg/MenuCheck.svg +135 -0
  91. data/src/gui/svg/MenuRadio.svg +130 -0
  92. data/src/gui/svg/RadioMutex.svg +119 -0
  93. data/src/gui/textview.rb +101 -0
  94. data/src/gui/textview.rbin +0 -0
  95. data/src/minitest.rb +60 -0
  96. data/src/prop-lists.rb +323 -0
  97. data/src/prop-types.rb +606 -0
  98. data/src/properties.rb +119 -0
  99. data/src/propman.rb +88 -0
  100. data/src/relink_mechanisms.rb +95 -0
  101. data/src/serialize.rb +167 -0
  102. data/src/state_machine.rb +73 -0
  103. data/src/version.rb +6 -0
  104. data/src/widget-lists.rb +118 -0
  105. data/src/widget-selector.rb +85 -0
  106. data/src/widgettree-controls.rb +183 -0
  107. data.tar.gz.sig +0 -0
  108. metadata +236 -0
  109. metadata.gz.sig +0 -0
@@ -0,0 +1,414 @@
1
+ # source generated by foxGUIb 0.5.1
2
+
3
+ class GenRubyDialog
4
+ def initialize(parent)
5
+ construct_widget_tree(parent)
6
+ init if respond_to? :init
7
+ end
8
+
9
+ def construct_widget_tree(parent)
10
+ @topwin =
11
+ FX::DialogBox.new(parent) { |w|
12
+ @GenRubyDialog = w
13
+ w.wdg_name = "GenRubyDialog"
14
+ w.width = 367
15
+ w.shown = true
16
+ w.y = 408
17
+ w.height = 403
18
+ w.decorations = 16646144
19
+ w.title = "Code Generator Dialog"
20
+ w.x = 1065
21
+ FX::Packer.new(@GenRubyDialog) { |w|
22
+ @Packer = w
23
+ w.wdg_name = "Packer"
24
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
25
+ w.padLeft = 0
26
+ w.width = 367
27
+ w.padRight = 0
28
+ w.height = 403
29
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
30
+ FX::Label.new(@Packer) { |w|
31
+ @Label = w
32
+ w.wdg_name = "Label"
33
+ w.text = "Generate Ruby Code:"
34
+ w.backColor = Fox::FXRGBA(183, 225, 255, 255)
35
+ w.padLeft = 10
36
+ w.font = FX::Font.new.from_s("Sans|100|0|0|0|0|0").to_FXFont
37
+ w.width = 367
38
+ w.height = 29
39
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
40
+ w.padTop = 10
41
+ w.layoutHints = 1024
42
+ w.justify = 32768
43
+ }
44
+ FX::HorizontalSeparator.new(@Packer) { |w|
45
+ @HorizontalSeparator = w
46
+ w.wdg_name = "HorizontalSeparator"
47
+ w.backColor = Fox::FXRGBA(0, 0, 0, 255)
48
+ w.width = 367
49
+ w.separatorStyle = 131072
50
+ w.y = 29
51
+ w.height = 2
52
+ w.padTop = 1
53
+ }
54
+ FX::CheckButton.new(@Packer) { |w|
55
+ @locked = w
56
+ w.wdg_name = "locked"
57
+ w.baseColor = Fox::FXRGBA(230, 230, 230, 255)
58
+ w.text = "Lock settings"
59
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
60
+ w.width = 113
61
+ w.padRight = 10
62
+ w.hiliteColor = Fox::FXRGBA(168, 168, 168, 255)
63
+ w.borderColor = Fox::FXRGBA(230, 230, 230, 255)
64
+ w.y = 31
65
+ w.height = 19
66
+ w.shadowColor = Fox::FXRGBA(168, 168, 168, 255)
67
+ w.layoutHints = 4
68
+ w.state = true
69
+ w.boxColor = Fox::FXRGBA(230, 230, 230, 255)
70
+ w.x = 254
71
+ }
72
+ FX::GroupBox.new(@Packer) { |w|
73
+ @GroupBox3 = w
74
+ w.wdg_name = "GroupBox3"
75
+ w.text = "Starting point:"
76
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
77
+ w.padLeft = 10
78
+ w.frameStyle = 0
79
+ w.width = 367
80
+ w.padRight = 10
81
+ w.y = 50
82
+ w.height = 74
83
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
84
+ w.padBottom = 10
85
+ w.padTop = 0
86
+ w.vSpacing = 2
87
+ w.layoutHints = 1024
88
+ FX::HorizontalSeparator.new(@GroupBox3) { |w|
89
+ @horizontalseparator2 = w
90
+ w.wdg_name = "horizontalseparator2"
91
+ w.width = 347
92
+ w.separatorStyle = 131072
93
+ w.y = 19
94
+ w.x = 10
95
+ }
96
+ FX::HorizontalFrame.new(@GroupBox3) { |w|
97
+ @HorizontalFrame13 = w
98
+ w.wdg_name = "HorizontalFrame13"
99
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
100
+ w.padLeft = 4
101
+ w.width = 347
102
+ w.padRight = 4
103
+ w.y = 22
104
+ w.height = 42
105
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
106
+ w.x = 10
107
+ FX::GroupBox.new(@HorizontalFrame13) { |w|
108
+ @GroupBox11 = w
109
+ w.wdg_name = "GroupBox11"
110
+ w.text = ""
111
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
112
+ w.padLeft = 0
113
+ w.frameStyle = 0
114
+ w.font = FX::Font.new.from_s("Tahoma|80|400|1|0|0|0").to_FXFont
115
+ w.width = 122
116
+ w.padRight = 0
117
+ w.height = 42
118
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
119
+ w.padBottom = 0
120
+ w.padTop = 0
121
+ w.x = 4
122
+ FX::RadioButton.new(@GroupBox11) { |w|
123
+ @topmost = w
124
+ w.wdg_name = "topmost"
125
+ w.text = "Topmost widget"
126
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
127
+ w.width = 122
128
+ w.height = 19
129
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
130
+ w.state = true
131
+ }
132
+ FX::RadioButton.new(@GroupBox11) { |w|
133
+ @selected = w
134
+ w.wdg_name = "selected"
135
+ w.text = "Selected widget"
136
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
137
+ w.width = 122
138
+ w.y = 23
139
+ w.height = 19
140
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
141
+ w.state = true
142
+ }
143
+ }
144
+ FX::Label.new(@HorizontalFrame13) { |w|
145
+ @node = w
146
+ w.wdg_name = "node"
147
+ w.text = "root"
148
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
149
+ w.padLeft = 5
150
+ w.frameStyle = 12288
151
+ w.width = 38
152
+ w.padRight = 5
153
+ w.borderColor = Fox::FXRGBA(139, 137, 132, 255)
154
+ w.y = 10
155
+ w.height = 21
156
+ w.layoutHints = 40
157
+ w.x = 215
158
+ }
159
+ }
160
+ }
161
+ FX::HorizontalSeparator.new(@Packer) { |w|
162
+ @HorizontalSeparator2 = w
163
+ w.wdg_name = "HorizontalSeparator2"
164
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
165
+ w.width = 367
166
+ w.separatorStyle = 0
167
+ w.y = 124
168
+ w.height = 6
169
+ w.padTop = 5
170
+ }
171
+ FX::GroupBox.new(@Packer) { |w|
172
+ @GroupBox4 = w
173
+ w.wdg_name = "GroupBox4"
174
+ w.text = "Output:"
175
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
176
+ w.padLeft = 10
177
+ w.frameStyle = 0
178
+ w.width = 367
179
+ w.padRight = 10
180
+ w.y = 130
181
+ w.height = 103
182
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
183
+ w.padBottom = 10
184
+ w.padTop = 0
185
+ w.vSpacing = 2
186
+ w.layoutHints = 1024
187
+ FX::HorizontalSeparator.new(@GroupBox4) { |w|
188
+ @horizontalseparator3 = w
189
+ w.wdg_name = "horizontalseparator3"
190
+ w.width = 347
191
+ w.separatorStyle = 131072
192
+ w.y = 19
193
+ w.x = 10
194
+ }
195
+ FX::RadioButton.new(@GroupBox4) { |w|
196
+ @plain = w
197
+ w.wdg_name = "plain"
198
+ w.text = "Ruby sequence"
199
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
200
+ w.padLeft = 6
201
+ w.width = 122
202
+ w.y = 22
203
+ w.height = 19
204
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
205
+ w.state = true
206
+ w.x = 10
207
+ }
208
+ FX::RadioButton.new(@GroupBox4) { |w|
209
+ @to_class = w
210
+ w.wdg_name = "to_class"
211
+ w.text = "Ruby class"
212
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
213
+ w.padLeft = 6
214
+ w.width = 92
215
+ w.y = 43
216
+ w.height = 17
217
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
218
+ w.padBottom = 0
219
+ w.state = true
220
+ w.x = 10
221
+ }
222
+ FX::HorizontalSeparator.new(@GroupBox4) { |w|
223
+ @horizontalseparator4 = w
224
+ w.wdg_name = "horizontalseparator4"
225
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
226
+ w.padLeft = 20
227
+ w.width = 347
228
+ w.separatorStyle = 131072
229
+ w.shown = false
230
+ w.y = 62
231
+ w.height = 5
232
+ w.padBottom = 4
233
+ w.x = 10
234
+ }
235
+ FX::HorizontalFrame.new(@GroupBox4) { |w|
236
+ @HorizontalFrame = w
237
+ w.wdg_name = "HorizontalFrame"
238
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
239
+ w.padLeft = 10
240
+ w.width = 271
241
+ w.padRight = 10
242
+ w.hSpacing = 4
243
+ w.y = 62
244
+ w.height = 31
245
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
246
+ w.padBottom = 10
247
+ w.layoutHints = 8
248
+ w.x = 48
249
+ FX::Label.new(@HorizontalFrame) { |w|
250
+ @Label3 = w
251
+ w.wdg_name = "Label3"
252
+ w.text = "Class name:"
253
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
254
+ w.padLeft = 0
255
+ w.width = 81
256
+ w.height = 19
257
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
258
+ w.padBottom = 0
259
+ w.padTop = 4
260
+ w.x = 10
261
+ }
262
+ FX::TextField.new(@HorizontalFrame) { |w|
263
+ @className = w
264
+ w.wdg_name = "className"
265
+ w.width = 166
266
+ w.hiliteColor = Fox::FXRGBA(128, 128, 128, 255)
267
+ w.height = 21
268
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
269
+ w.numColumns = 20
270
+ w.x = 95
271
+ }
272
+ }
273
+ }
274
+ FX::Label.new(@Packer) { |w|
275
+ @Label33 = w
276
+ w.wdg_name = "Label33"
277
+ w.text = "Write source code to file:"
278
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
279
+ w.padLeft = 12
280
+ w.width = 171
281
+ w.y = 233
282
+ w.height = 22
283
+ w.padBottom = 0
284
+ w.padTop = 7
285
+ }
286
+ FX::HorizontalSeparator.new(@Packer) { |w|
287
+ @horizontalseparator5 = w
288
+ w.wdg_name = "horizontalseparator5"
289
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
290
+ w.padLeft = 10
291
+ w.width = 367
292
+ w.padRight = 10
293
+ w.separatorStyle = 131072
294
+ w.y = 255
295
+ w.height = 5
296
+ w.padBottom = 4
297
+ }
298
+ FX::HorizontalFrame.new(@Packer) { |w|
299
+ @HorizontalFrame6 = w
300
+ w.wdg_name = "HorizontalFrame6"
301
+ w.packingHints = 65536
302
+ w.backColor = Fox::FXRGBA(230, 230, 230, 255)
303
+ w.padLeft = 4
304
+ w.width = 367
305
+ w.padRight = 4
306
+ w.y = 362
307
+ w.height = 41
308
+ w.shadowColor = Fox::FXRGBA(128, 128, 128, 255)
309
+ w.padBottom = 10
310
+ w.padTop = 10
311
+ w.layoutHints = 1025
312
+ FX::Button.new(@HorizontalFrame6) { |w|
313
+ @cancel = w
314
+ w.wdg_name = "cancel"
315
+ w.text = "Cancel"
316
+ w.backColor = Fox::FXRGBA(255, 255, 168, 255)
317
+ w.padLeft = 4
318
+ w.frameStyle = 12288
319
+ w.width = 53
320
+ w.padRight = 4
321
+ w.hiliteColor = Fox::FXRGBA(168, 168, 168, 255)
322
+ w.buttonButtonStyle = 33554432
323
+ w.y = 10
324
+ w.height = 21
325
+ w.shadowColor = Fox::FXRGBA(168, 168, 168, 255)
326
+ w.layoutHints = 8
327
+ w.x = 54
328
+ }
329
+ FX::Button.new(@HorizontalFrame6) { |w|
330
+ @to_console = w
331
+ w.wdg_name = "to_console"
332
+ w.text = "Test"
333
+ w.backColor = Fox::FXRGBA(255, 255, 168, 255)
334
+ w.frameStyle = 12288
335
+ w.width = 53
336
+ w.hiliteColor = Fox::FXRGBA(168, 168, 168, 255)
337
+ w.buttonButtonStyle = 33554432
338
+ w.y = 10
339
+ w.height = 21
340
+ w.shadowColor = Fox::FXRGBA(168, 168, 168, 255)
341
+ w.x = 157
342
+ }
343
+ FX::Button.new(@HorizontalFrame6) { |w|
344
+ @OK = w
345
+ w.wdg_name = "OK"
346
+ w.text = "OK"
347
+ w.backColor = Fox::FXRGBA(255, 255, 168, 255)
348
+ w.padLeft = 4
349
+ w.frameStyle = 12288
350
+ w.width = 53
351
+ w.padRight = 4
352
+ w.hiliteColor = Fox::FXRGBA(168, 168, 168, 255)
353
+ w.buttonButtonStyle = 33554432
354
+ w.y = 10
355
+ w.height = 21
356
+ w.shadowColor = Fox::FXRGBA(168, 168, 168, 255)
357
+ w.layoutHints = 8
358
+ w.x = 260
359
+ }
360
+ }
361
+ FX::HorizontalSeparator.new(@Packer) { |w|
362
+ @horizontalseparator13 = w
363
+ w.wdg_name = "horizontalseparator13"
364
+ w.backColor = Fox::FXRGBA(0, 0, 0, 255)
365
+ w.width = 367
366
+ w.separatorStyle = 131072
367
+ w.y = 360
368
+ w.height = 2
369
+ w.padTop = 1
370
+ w.layoutHints = 1041
371
+ }
372
+ }
373
+ }
374
+ end
375
+ attr_reader :topwin
376
+ attr_reader :GenRubyDialog
377
+ attr_reader :Packer
378
+ attr_reader :Label
379
+ attr_reader :HorizontalSeparator
380
+ attr_reader :locked
381
+ attr_reader :GroupBox3
382
+ attr_reader :horizontalseparator2
383
+ attr_reader :HorizontalFrame13
384
+ attr_reader :GroupBox11
385
+ attr_reader :topmost
386
+ attr_reader :selected
387
+ attr_reader :node
388
+ attr_reader :HorizontalSeparator2
389
+ attr_reader :GroupBox4
390
+ attr_reader :horizontalseparator3
391
+ attr_reader :plain
392
+ attr_reader :to_class
393
+ attr_reader :horizontalseparator4
394
+ attr_reader :HorizontalFrame
395
+ attr_reader :Label3
396
+ attr_reader :className
397
+ attr_reader :Label33
398
+ attr_reader :horizontalseparator5
399
+ attr_reader :HorizontalFrame6
400
+ attr_reader :cancel
401
+ attr_reader :to_console
402
+ attr_reader :OK
403
+ attr_reader :horizontalseparator13
404
+ end
405
+
406
+ # unit test
407
+ if __FILE__ == $0
408
+ require "libGUIb14"
409
+ app = FX::App.new
410
+ w = GenRubyDialog.new app
411
+ w.topwin.show(Fox::PLACEMENT_SCREEN)
412
+ app.create
413
+ app.run
414
+ end
Binary file