rbhex-core 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/CHANGELOG +2000 -0
  4. data/LICENSE +56 -0
  5. data/README.md +44 -0
  6. data/examples/abasiclist.rb +179 -0
  7. data/examples/alpmenu.rb +50 -0
  8. data/examples/app.sample +19 -0
  9. data/examples/atree.rb +100 -0
  10. data/examples/bline.rb +136 -0
  11. data/examples/common/file.rb +45 -0
  12. data/examples/data/README.markdown +9 -0
  13. data/examples/data/brew.txt +38 -0
  14. data/examples/data/color.2 +37 -0
  15. data/examples/data/gemlist.txt +60 -0
  16. data/examples/data/lotr.txt +12 -0
  17. data/examples/data/ports.txt +136 -0
  18. data/examples/data/table.txt +37 -0
  19. data/examples/data/tasks.csv +88 -0
  20. data/examples/data/tasks.txt +27 -0
  21. data/examples/data/todo.txt +10 -0
  22. data/examples/data/todo.txt.bak +10 -0
  23. data/examples/data/todocsv.csv +28 -0
  24. data/examples/data/unix1.txt +21 -0
  25. data/examples/data/unix2.txt +11 -0
  26. data/examples/dbdemo.rb +502 -0
  27. data/examples/dirtree.rb +94 -0
  28. data/examples/newtabbedwindow.rb +100 -0
  29. data/examples/newtesttabp.rb +92 -0
  30. data/examples/tabular.rb +146 -0
  31. data/examples/tasks.rb +178 -0
  32. data/examples/term2.rb +84 -0
  33. data/examples/testbuttons.rb +296 -0
  34. data/examples/testcombo.rb +102 -0
  35. data/examples/testfields.rb +195 -0
  36. data/examples/testkeypress.rb +72 -0
  37. data/examples/testlistbox.rb +170 -0
  38. data/examples/testmessagebox.rb +140 -0
  39. data/examples/testprogress.rb +116 -0
  40. data/examples/testree.rb +106 -0
  41. data/examples/testwsshortcuts.rb +66 -0
  42. data/examples/testwsshortcuts2.rb +128 -0
  43. data/lib/rbhex.rb +6 -0
  44. data/lib/rbhex/core/docs/index.txt +73 -0
  45. data/lib/rbhex/core/include/action.rb +80 -0
  46. data/lib/rbhex/core/include/actionmanager.rb +49 -0
  47. data/lib/rbhex/core/include/appmethods.rb +214 -0
  48. data/lib/rbhex/core/include/bordertitle.rb +48 -0
  49. data/lib/rbhex/core/include/chunk.rb +203 -0
  50. data/lib/rbhex/core/include/io.rb +553 -0
  51. data/lib/rbhex/core/include/listbindings.rb +74 -0
  52. data/lib/rbhex/core/include/listcellrenderer.rb +140 -0
  53. data/lib/rbhex/core/include/listeditable.rb +317 -0
  54. data/lib/rbhex/core/include/listscrollable.rb +663 -0
  55. data/lib/rbhex/core/include/listselectable.rb +271 -0
  56. data/lib/rbhex/core/include/multibuffer.rb +83 -0
  57. data/lib/rbhex/core/include/orderedhash.rb +77 -0
  58. data/lib/rbhex/core/include/ractionevent.rb +73 -0
  59. data/lib/rbhex/core/include/rchangeevent.rb +27 -0
  60. data/lib/rbhex/core/include/rhistory.rb +95 -0
  61. data/lib/rbhex/core/include/rinputdataevent.rb +47 -0
  62. data/lib/rbhex/core/include/vieditable.rb +172 -0
  63. data/lib/rbhex/core/include/widgetmenu.rb +66 -0
  64. data/lib/rbhex/core/system/colormap.rb +165 -0
  65. data/lib/rbhex/core/system/keyboard.rb +150 -0
  66. data/lib/rbhex/core/system/keydefs.rb +30 -0
  67. data/lib/rbhex/core/system/ncurses.rb +236 -0
  68. data/lib/rbhex/core/system/panel.rb +162 -0
  69. data/lib/rbhex/core/system/window.rb +913 -0
  70. data/lib/rbhex/core/util/ansiparser.rb +119 -0
  71. data/lib/rbhex/core/util/app.rb +1228 -0
  72. data/lib/rbhex/core/util/basestack.rb +410 -0
  73. data/lib/rbhex/core/util/bottomline.rb +1859 -0
  74. data/lib/rbhex/core/util/colorparser.rb +77 -0
  75. data/lib/rbhex/core/util/focusmanager.rb +31 -0
  76. data/lib/rbhex/core/util/padreader.rb +192 -0
  77. data/lib/rbhex/core/util/rcommandwindow.rb +604 -0
  78. data/lib/rbhex/core/util/rdialogs.rb +574 -0
  79. data/lib/rbhex/core/util/viewer.rb +149 -0
  80. data/lib/rbhex/core/util/widgetshortcuts.rb +506 -0
  81. data/lib/rbhex/core/version.rb +5 -0
  82. data/lib/rbhex/core/widgets/applicationheader.rb +103 -0
  83. data/lib/rbhex/core/widgets/box.rb +58 -0
  84. data/lib/rbhex/core/widgets/divider.rb +310 -0
  85. data/lib/rbhex/core/widgets/keylabelprinter.rb +194 -0
  86. data/lib/rbhex/core/widgets/rcombo.rb +253 -0
  87. data/lib/rbhex/core/widgets/rcontainer.rb +415 -0
  88. data/lib/rbhex/core/widgets/rlink.rb +30 -0
  89. data/lib/rbhex/core/widgets/rlist.rb +696 -0
  90. data/lib/rbhex/core/widgets/rmenu.rb +958 -0
  91. data/lib/rbhex/core/widgets/rmenulink.rb +22 -0
  92. data/lib/rbhex/core/widgets/rmessagebox.rb +387 -0
  93. data/lib/rbhex/core/widgets/rprogress.rb +118 -0
  94. data/lib/rbhex/core/widgets/rtabbedpane.rb +634 -0
  95. data/lib/rbhex/core/widgets/rtabbedwindow.rb +70 -0
  96. data/lib/rbhex/core/widgets/rtextarea.rb +960 -0
  97. data/lib/rbhex/core/widgets/rtextview.rb +739 -0
  98. data/lib/rbhex/core/widgets/rtree.rb +768 -0
  99. data/lib/rbhex/core/widgets/rwidget.rb +3277 -0
  100. data/lib/rbhex/core/widgets/scrollbar.rb +143 -0
  101. data/lib/rbhex/core/widgets/statusline.rb +113 -0
  102. data/lib/rbhex/core/widgets/tabular.rb +264 -0
  103. data/lib/rbhex/core/widgets/tabularwidget.rb +1142 -0
  104. data/lib/rbhex/core/widgets/textpad.rb +995 -0
  105. data/lib/rbhex/core/widgets/tree/treecellrenderer.rb +150 -0
  106. data/lib/rbhex/core/widgets/tree/treemodel.rb +428 -0
  107. data/rbhex-core.gemspec +32 -0
  108. metadata +172 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 33f76768bc771c3a51a52f8db339c7e8d19dc4ba
4
+ data.tar.gz: 94f9b8d6c1a75cf2cd024a4240ddd318a877f442
5
+ SHA512:
6
+ metadata.gz: 81074c601c801a1b6a7bbb3a8106242e4b189a6283d89c4ea2d49d618fec930ce21e079a2c449ddc29d128a963198d4039031734478be21c16a8a44acfbc207c
7
+ data.tar.gz: f4c6b37640b9fab4d8fadebe2024fac1ca459e200c274bb3a6345dec7e1e1d645c5480dda7368883c12f4c07c0b28252a0244e87c32b706c56bdcfdaca5a0077
data/.gitignore ADDED
@@ -0,0 +1,20 @@
1
+ *.log
2
+ *.gem
3
+ *.rbc
4
+ .bundle
5
+ .config
6
+ coverage
7
+ Gemfile.lock
8
+ InstalledFiles
9
+ lib/bundler/man
10
+ pkg
11
+ rdoc
12
+ spec/reports
13
+ test/tmp
14
+ test/version_tmp
15
+ tmp
16
+
17
+ # YARD artifacts
18
+ .yardoc
19
+ _yardoc
20
+ doc/
data/CHANGELOG ADDED
@@ -0,0 +1,2000 @@
1
+ **2014-09-29**
2
+ ## rbhex-core v1.0.0
3
+ * Redistributed as rbhex
4
+ * Fixed pathing in examples so you can run them standalone
5
+ * Some non-code restructuring of gemspec, etc
6
+
7
+ **2013-04-01**
8
+ ## 0.0.14 rbcurse-core
9
+ * added module RubyCurses to various modules that were coming as top layer
10
+ Things could break !!!
11
+ * minor fix in rlist list()
12
+
13
+ **2013-03-29**
14
+ ## 0.0.13 rbcurse-core
15
+ * textpad - support cases where dimension changes, or a row is updated
16
+
17
+ **2013-03-25**
18
+ ## 0.0.12 rbcurse-core
19
+ * Minor tweaks and fixes to statusline (tested in ribhu gem)
20
+
21
+ **2013-03-22**
22
+ ## 0.0.11 rbcurse-core
23
+ * Added textpad (tested in cygnus gem)
24
+
25
+ **2013-03-22**
26
+ ## 0.0.10 rbcurse-core
27
+ * Added method_missing to chunkline, required for ribhu gem
28
+
29
+ **2013-03-21**
30
+ ## 0.0.9 rbcurse-core
31
+ * Made several fixed so it works on 1.8.7 (thanks hramrach)
32
+
33
+ **2012-01- **
34
+ ## 0.0.4 rbcurse-core
35
+ * added RESIZE event to form, so resizing app components is possible
36
+ when window/terminal is resized
37
+ * changes to ncurses setting as a result of above (wtimeout commented off)
38
+ * Moving help system to Form
39
+ * minor addition of define_prefix_command to Form - experimental
40
+
41
+ **2012-01-04**
42
+ ## 0.0.3 rbcurse-core
43
+ * ActionManager added to widgets so actions can be
44
+ used from multiple places
45
+ * changes in ncurses setting cbreak and halfdelay etc
46
+ since C-c was crashing program out
47
+ * Added history to field
48
+
49
+ **2011-12-13**
50
+ ## 0.0.2 rbcurse-core
51
+ Mostly refactoring of multi-row components
52
+
53
+ ## 0.0.1 rbcurse-core
54
+ Added help system, and printing of key bindings
55
+
56
+ **2011-12-05**
57
+ ## 0.0.0 rbcurse-core
58
+
59
+ 1. Added a help system - on F1.
60
+ '?' reveals key-bindings for form and current widget.
61
+
62
+ 2. bind_key includes string parameter which documents binding
63
+
64
+ 3. KEY_RETURN and KEY_ENTER fixed (values switched)
65
+
66
+ 4. textview can extend MultiBuffer (simple multibuffering)
67
+
68
+ 5. Moving map_keys prior to super in constructor of widgets
69
+ so app can override keys.
70
+
71
+ 6. textview: set_content second param is a Hash.
72
+
73
+ 7. App.rb: shortcuts and stack flow removed and replaced
74
+ with widgetshortcuts.rb.
75
+ Now there should be an outer flow or stack. Earlier,
76
+ there could be two stacks with no outer stack or flow.
77
+
78
+ New implementation allows height_pc and width_pc.
79
+ Widgets can also have height_pc and width_pc if placed in stacks or flows
80
+ in an App. Please check samples to see.
81
+
82
+ 8. Window has close event, to do any tidying up, releasing etc
83
+ Also a confirm_close option.
84
+
85
+ **2011-11-17**
86
+ ## 1.5.0
87
+
88
+ ### split rbcurse into core, extras and experimental
89
+ Now rbcurse is a meta-gem which includes the other three.
90
+
91
+ ### major rehaul of directory structures
92
+ ilb/core/widgets, lib/core/include, lib/core/system etc
93
+
94
+ ### class name changes
95
+
96
+ * rbasiclistbox -> rlist, shortcut: basic_list -> listbox
97
+ * rlistbox , shortcut: list_box -> edit_list
98
+ * rtable , shortcut: table -> edit_table
99
+ * rtabularwidget , shortcut: tabular_widget -> table (alias)
100
+
101
+
102
+ **2011-11-06**
103
+ ## 1.4.1
104
+
105
+ ### More cleanup of widget and form and window
106
+
107
+ ### Rewrite of tabbedpane and messagebox but not replaced old classes
108
+
109
+ ### Textview and Window and Statusline now can print colored text
110
+ Colored interface not yet final.
111
+
112
+ ### Some experimental work that will trickle into core classes in 1.5.0
113
+
114
+ ### Some standardization of core classes, more to follow.
115
+
116
+ **2011-10-06**
117
+ ## 1.3.1 or 1.4.0
118
+
119
+ ### Major cleanup of widget class
120
+ Scrollpane support (buffering stuff all removed)
121
+
122
+ ### TabbedPane
123
+ Corrected, major changes
124
+
125
+ ### dsl_accessor and dsl_property
126
+ Now return self so we can chain.
127
+
128
+ ### return values of some keys (Class Form)
129
+ Earlier not returning anything meaningful or returning last_key
130
+ Now return NO_NEXT_FIELD or NO_PREVIOUS_FIELD
131
+
132
+ ### j and k keys used for down and up where possible
133
+ e.g. button and its children including checkbox
134
+
135
+ ### Miscellaneous
136
+
137
+ * Dynamic menuitems in menu (see menu1.tb)
138
+ * rework on menu and menubar, and keys using them
139
+ * FieldVetoException (see test2.rb)
140
+ * valid_range for Field (see test2.rb)
141
+ * fixed field's type method, earlier non-functional
142
+ * array and 4 integer constructor for Window
143
+ * StatusWindow class - 2 line window for alert, confirm and statuses as an
144
+ alternative to dialogs.
145
+ * status_dialog returning a handle so we can keep updating status then
146
+ close.
147
+ * many more minor adjustments, tweaks, issues
148
+
149
+ **2011-09-26**
150
+ ## 1.3.0
151
+
152
+ ### Moving to ffi-ncurses
153
+ Essentially code changes for ffi-ncurses. ncurses gem no longer supported
154
+ as it was painful to install. Required ffi-ncurses >= 0.4.0
155
+
156
+ Some bugfixes in demos and samples due to changes in 1.2.0, or ruby 1.9, which went
157
+ unnoticed.
158
+
159
+ ### Deprecations
160
+ Some classes being deprecated:
161
+ - SplitPane (use vimsplit instead)
162
+ - ScrollPane (no substitute) Code supporting scrollpane will be removed
163
+ by 1.3.1 or 1.3.2 and this will not work.
164
+
165
+ ### Tabbedpane
166
+ Not working correctly since moving to ffi-ncurses. Will be completely
167
+ rewritten by 1.3.2.
168
+
169
+ **2010-09-11**
170
+ ## 1.2.0
171
+
172
+ ### Additions
173
+
174
+ - App class that allows easy application development (like Shoes)
175
+ - MultiSplit class: Multicolumn widget (like SplitPane but allows many splits).
176
+ aka Column Browse pattern (like OSX Finder). See examples/testmultisplit.rb
177
+ - Added Progress Bar class
178
+
179
+ - Added methods to Menu (rmenu.rb), so easy creation through DSL. See
180
+ examples/menu1.rb
181
+
182
+ - Added VimSplit - can have multiple splits stacked and flowed
183
+ - Added Tree - tree control
184
+ - Added Scrollbar class
185
+ - Added Tabular - quick readonly tabular data generator that can be used with
186
+ listboxes or textviews.
187
+ - Added BasicList - a stripped down, readonly version of Listbox.
188
+ -
189
+
190
+ ### Changes
191
+
192
+ - Field class now passes InputDataEvent when firing event, not self.
193
+ Earlier, user trapping :CHANGE would not know what happened (delete,
194
+ insert, etc) and what char was added, deleted.
195
+ - List and ListData and ListSelection listener
196
+ Many changes, new methods, def list(), space bar selects,
197
+ List listens to selection changes, selectionEvent contains List as source
198
+ not ListSelectionModel.
199
+ - Widget checks event names before firing and binding to save time in wrong
200
+ events.
201
+ - Listbox, some refactoring of `repaint`. Added convert_value_to_text since
202
+ we subclass this a lot.
203
+ - Listcellrenderer: refactoring and changes, will break extending classes!!
204
+ - Combolist - popup on spacebar
205
+ - replaced to_print_borders with suppress_borders in list related classes
206
+
207
+ ### Bugfixes
208
+
209
+ - TextArea would crash if user entered long line with no space (line >
210
+ display length) - fixed
211
+
212
+ - Menu items will not show mnemonic highlighted, if disabled.
213
+ They will not fire if mnemonic key pressed, when disabled.
214
+
215
+ **2010-08-30 11:59**
216
+ ## 1.1.4
217
+
218
+ - Some missing files such as tableextended.rb and vieditable
219
+ These got missed out in the gemspec.
220
+ - Added slice! to listdatamodel
221
+ - Also see ruby 1.9.2 changes below
222
+
223
+ **2010-08-23 11:50**
224
+ ## ruby 1.9.2 related changes
225
+
226
+ Changes in 1.9.2 require the following changes:
227
+ - $: no longer includes ".".
228
+ Fixed 2 examples.
229
+ - hash_update: cannot update hash during iteration
230
+ Modified rwidget.rb and rtable.rb
231
+
232
+ (Ref http://svn.ruby-lang.org/repos/ruby/tags/v1_9_2_0/ChangeLog)
233
+
234
+ **2010-05-19 00:00**
235
+ ## Table - added tableextended.rb for extended functions on tables
236
+
237
+ Currently, increase or decrease column width using numeric args.
238
+ You will have to bind the method to a key in your app.
239
+
240
+ **2010-05-13 00:00**
241
+ ## Table - adding vim keys for navigation
242
+
243
+ If table is not editable, then j k l h gg G etc may be used for navigation.
244
+
245
+ **2010-03-01 00:00**
246
+ ## Overhaul of tabbedpane
247
+
248
+ Simplified, and it more or less completely makes sense now.
249
+ A component may be added directly without creating a form
250
+ which allows the TP to set row, col, and height width.
251
+
252
+ At this moment, it no longer creates a form automatically, you have to call
253
+ tp.form(tab) to get a form associated with the tab. Check code for latest on
254
+ this. Or check samples: testtpane.rb and testtpane2.rb.
255
+
256
+ **2010-02-18 22:58**
257
+ ## RFED16 new simplified buffering
258
+
259
+ Major changes. Most widgets redone (buffer part).
260
+ Containers majorly done. Table and TabbedPane still pending.
261
+
262
+ **2009-11-03 23:30**
263
+ ## tabbedpanes ##
264
+
265
+ Now on first click of tabbed button, form is painted.
266
+ A form.repaint for the lower form was required.
267
+
268
+ frmincr200911032330.tgz
269
+ * * *
270
+ **2009-11-03 00:19**
271
+ ## some progress on tabbedpanes ##
272
+
273
+ Ugly hacking and I really haven't a clue what's happening
274
+ since there's internal forms working.
275
+ Anyhow, its now showing up, can see form cursor moving.
276
+ Does not show up immediately, have to press key several times for form to display.
277
+
278
+ frmincr200911030018.tgz
279
+ * * *
280
+ **2009-11-02 13:15**
281
+ ## before rtabbedpane ##
282
+
283
+ After all the changes, the new tabbedpane is not printing the form fields.
284
+ Working on that now.
285
+
286
+ frmincr200911021314.tgz
287
+ * * *
288
+ **2009-11-02 12:13**
289
+ ## splitpane and scrollpane working ##
290
+
291
+ Both are working. Changes to copywin had caused issues. And printborder.
292
+ Decreasing comp width does not reduce pad size, but pad keeps printing larger size.
293
+ So in Splitpane it was overwriting. Now in Pad we maintain sheight as comp's height.
294
+ Major change in pad, but hope it works and doesn't bomb out somewhere.
295
+
296
+ frmincr200911021212.tgz
297
+ * * *
298
+ **2009-11-02 01:03**
299
+ ## SplitPane retouching ##
300
+
301
+ began majorly misprinting after changes to printborder and copywin().
302
+ ALmost corrected. Still some issues in copywin which are making separator and border
303
+ to get eaten up.
304
+
305
+ frmincr200911020102.tgz
306
+ * * *
307
+ **2009-11-01 22:28**
308
+ ## scrollbars in scrollpane ##
309
+
310
+ Added scrollbars in scrollpane. Sized and positioned nicely.
311
+
312
+ frmincr200911012228.tgz
313
+ * * *
314
+ **2009-11-01 01:05**
315
+ ## scrollpane WIP ##
316
+
317
+ scrollpane with viewport and child object
318
+ i can see the child within. have to test scrolling now.
319
+ Issue is largely with copywin which gives errors.
320
+
321
+ frmincr200911010104.tgz
322
+ * * *
323
+ **2009-10-31 22:07**
324
+ ## scrollpane WIP ##
325
+
326
+ ,,,
327
+
328
+ frmincr200910312206.tgz
329
+ * * *
330
+ **2009-10-30 23:32**
331
+ ## more testing with SplitPane and 2 splitpanes in it ##
332
+
333
+ vertical and horizontal
334
+ check against min sizes
335
+
336
+ frmincr200910302331.tgz
337
+ * * *
338
+ **2009-10-30 17:47**
339
+ ## buffering ##
340
+
341
+ major change is buffering added (using pad)
342
+ height and width added to Widget
343
+ Splitpane added (midway)
344
+
345
+ frmincr200910301746.tgz
346
+ * * *
347
+ **2009-10-07 10:14**
348
+ ## Prior to change in next_column ##
349
+
350
+ Currently, after last visible column tab goes to next row.
351
+ We want to scroll if more columns.
352
+ At present, table will not print if a col goes out of bounds. but this does not impact
353
+ first or last column to print variables.
354
+
355
+ frmincr200910071012.tgz
356
+ * * *
357
+ ** 2009-10-05 11:00 **
358
+ ## Horizontal scrolling in tables - some cleaning ##
359
+
360
+ When increasing the size of a column, other cols could write
361
+ outside the table. Fixed.
362
+
363
+ * * *
364
+ ** 2009-10-05 00:00 **
365
+ ## Making changes for 1.9 and testing ##
366
+
367
+ Mostly key related changes.
368
+ However, there could be some string index change lurking around
369
+
370
+ * * *
371
+ ** 2009-02-22 20:48 **
372
+
373
+ ## Released 0.1.2 ##
374
+
375
+ - search in textview with wrap, case insensitive, highlighting searched text
376
+ - table can have nil data
377
+ - tabbed pane has ok_cancel button, ok by default
378
+ - table autosizing - required for adhoc queries
379
+ - table horizontal scrolling
380
+ - editing when more columns than viewable in table
381
+ - confirm dialog, normal mnemonics for buttons
382
+
383
+ * * *
384
+ ** 2009-02-17 12:10 **
385
+ ## added table markers for data and columns before and after on border ##
386
+
387
+ also added putting space in intercell area, but today i am not getting any
388
+ junk there anywaym while scrolling etc.
389
+
390
+ * * *
391
+ ** 2009-02-16 22:10 **
392
+ ## added edit_length to TableColumn ##
393
+
394
+ This is max editable length of editor component in tables.
395
+
396
+ * * *
397
+ ** 2009-02-13 13:48 **
398
+ ## added button_type to tabbed pane ##
399
+
400
+ Now buttons at bottom of tabbed pane. Will return selected_index
401
+ to caller.
402
+ Uploaded to github, will be included in 0.1.2.
403
+
404
+ * * *
405
+ ** 2009-02-12 22:48 **
406
+ ## Code to stop table from printing a column if exceeding bounds ##
407
+
408
+ Uploaded to github, will be included in 0.1.2.
409
+
410
+ EXPERIMENTAL CODE: Affects only tables. Now table will not print a column or header
411
+ if columns width causes it to exceed width of table.
412
+
413
+ This means if you have a single column which is wider than table
414
+ then it wont print. In Listboxes we always truncate data and pass to
415
+ renderer. We could do that here, but it could get messy.
416
+
417
+ * * *
418
+ **2009-02-12 **
419
+ ## Missed one parameter in Table's repaint, and some Table Cell Renderers
420
+
421
+ Fixed and uploaded as 0.1.1
422
+
423
+ * * *
424
+ **2009-02-11 00:57**
425
+ ## Path changes in order to make first gem ##
426
+
427
+ the first gem is ready 0.1.0. So various path changes (removed all the lib's in require)
428
+
429
+ frmincr200902110056.tgz
430
+ * * *
431
+ **2009-01-21 18:30**
432
+ ## Class Action ##
433
+
434
+ Added a class Action to centralize actions or behavior.
435
+ Popupmenu creates a jmenuitem with an action.
436
+
437
+ frmincr200901211826.tgz
438
+ * * *
439
+ **2009-01-20 22:50**
440
+ ## Class PopupMenu ##
441
+
442
+ Based on menubar, a popup menu. Intended to be used with widgets / components.
443
+
444
+ frmincr200901202248.tgz
445
+ * * *
446
+ **2009-01-20 00:22**
447
+ ## Application Header like Alpine ##
448
+
449
+ Similar application header made in applicationheader.rb
450
+
451
+ frmincr200901200022.tgz
452
+ * * *
453
+ **2009-01-19 21:41**
454
+ ## Alpine Style Key Label Printing ##
455
+
456
+ See testtodo.rb for example.
457
+ Print Alpine Style labels at bottom
458
+
459
+ frmincr200901192140.tgz
460
+ * * *
461
+ **2009-01-19 15:53**
462
+ ## Table Changed Event ##
463
+
464
+ One may either trap the CHANGED event of a component OR
465
+ a TABLE_EDITING_EVENT which gives us previous and new values, previous row and col.
466
+ This will fire for each cell exited, and on editing stopped (if a user presses ENTER after editing).
467
+
468
+ One example would be to set a date_modified if any column of a row changes.
469
+
470
+ Also am firing CHANGED from table for its cells.
471
+
472
+ frmincr200901191548.tgz
473
+ * * *
474
+ **2009-01-18 22:11**
475
+ ## listbox, combo case insensitive match ##
476
+
477
+ Char matches use casecmp
478
+
479
+ Field was not calling process_key(ch) - now calling super in handle_key, so process_key is called
480
+ in handle_key.
481
+
482
+ frmincr200901182210.tgz
483
+ * * *
484
+ ** 2009-01-18 12:37 **
485
+ ## modified? and def modified tf##
486
+
487
+ changed fields modified? to check for change in field value
488
+
489
+ Field ESC puts back original value
490
+
491
+ TAB and BACKTAB in table. so you need to M-tab out of it.
492
+
493
+ **2009-01-17 01:56**
494
+ ## Tables: editing options more polishing ##
495
+
496
+ also, columns may be marked as non-editable
497
+ calling on_leave of component
498
+
499
+
500
+ frmincr200901170155.tgz
501
+ * * *
502
+ **2009-01-16 20:13**
503
+ ## Table - cyclic traversal to next column, auto editing of cells ##
504
+
505
+ Automatic editing on tabbing in and out on Table.
506
+ Trying this out. USe Alt-Tab for going to next cell if you are editing a cell.
507
+ If not editing then RIGHT and LEFT work.
508
+
509
+ frmincr200901162012.tgz
510
+ * * *
511
+ **2009-01-16 00:31**
512
+ ## Tables: Events and Listeners implemented ##
513
+
514
+ on enter row, col and cell.
515
+ Table Column property change
516
+ Various others.
517
+
518
+ frmincr200901160030.tgz
519
+ * * *
520
+ **2009-01-15 01:23**
521
+ ## Events in tables added ##
522
+
523
+ (just days backup)
524
+
525
+ frmincr200901150122.tgz
526
+ * * *
527
+ ** 2009-01-15 00:17 **
528
+
529
+ Table on_enter and on_leave row, column and cell events
530
+
531
+ Also put key definitions for table and listbox in listkeys.rb
532
+ so they can be shared.
533
+ Fixed def handle_key of listbox so if key not handled, it still
534
+ tries further.
535
+
536
+ **2009-01-14 12:56**
537
+ ## Forward and backward searching in Listbox ##
538
+
539
+ M-f to start a forward search (asks for regex)
540
+ M-F to start a backward search (asks for regex)
541
+ M-g to keep searching forward
542
+ M-G to reverse direction of search
543
+
544
+
545
+ * * *
546
+ **2009-01-13 23:29**
547
+ ## Split messagebox and listbox to separate files ##
548
+
549
+ * * *
550
+ **2009-01-13 01:39**
551
+ ## Table Editing ##
552
+
553
+ String, number, checkbox and combolist
554
+
555
+ frmincr200901130139.tgz
556
+ * * *
557
+ **2009-01-13 01:03**
558
+ ## Table editing is on ##
559
+
560
+ Testing and working out visual glitch in checkbox edit.
561
+ One extra char displayed by editor but not by renderer.
562
+ So a white space gets left over.
563
+
564
+ frmincr200901130102.tgz
565
+ * * *
566
+ **2009-01-11 20:06**
567
+ ## editable lists: check and combo boxes ##
568
+
569
+ Now you may edit a list of checkboxes or combo boxes
570
+
571
+ frmincr200901112006.tgz
572
+ * * *
573
+ **2009-01-11 16:32**
574
+ ## combo box cell renderer in listbox ##
575
+
576
+ almost done. some touching up
577
+
578
+ frmincr200901111632.tgz
579
+ * * *
580
+ **2009-01-11 00:28**
581
+ ## ComboBoxCellRenderer ##
582
+
583
+ For lists, to display combo boxes.
584
+ Althoght does not make much sense. THe normal list box already has
585
+ selection of rows. so its like a list which is now editable and selectable.
586
+
587
+ This has only checkboxes. How do i pass in text in addition to booleans
588
+ given that the method interface of renderers takes one value.
589
+
590
+ frmincr200901110026.tgz
591
+ * * *
592
+ **2009-01-10 23:18**
593
+ ## About to move selector code up ##
594
+
595
+ To avoid duplication in renderers
596
+
597
+ frmincr200901102317.tgz
598
+ * * *
599
+ **2009-01-10 01:22**
600
+ ## listbox editing ##
601
+
602
+ WIP, but i've got editing in.
603
+ To sort out key related issues. Editing keys are clashing with selection
604
+ and navig keys.
605
+ Touching up also.
606
+
607
+ frmincr200901100121.tgz
608
+ * * *
609
+ **2009-01-08 23:34**
610
+ ## class Textarea moved to new scrollable ##
611
+
612
+ Thank God, done away with the old scrollable module.
613
+ Textarea is now in rtextarea.rb
614
+
615
+ frmincr200901082333.tgz
616
+ * * *
617
+ **2009-01-08 20:57**
618
+ ## wrapping option in TextArea ##
619
+
620
+ WRAP_WORD passed with set_content
621
+
622
+ frmincr200901082057.tgz
623
+ * * *
624
+ **2009-01-08 19:21**
625
+ ## New Listbox ##
626
+
627
+ Movement between selected items (using ' and ") and C-e to clear selection.
628
+
629
+ frmincr200901081921.tgz
630
+ * * *
631
+ **2009-01-08 14:38**
632
+ ## before moving TextView to listscrollable ##
633
+
634
+ about to move
635
+
636
+ frmincr200901081438.tgz
637
+ * * *
638
+ **2009-01-08 01:41**
639
+ ## firing property change and others ##
640
+
641
+ Some major changes (internal)
642
+
643
+ 1. In order not to repaint the entire form each time, we must only repaint a widget when modified.
644
+ However, as can be seen, widgets are being modified by other widgets. Thus whenever a property
645
+ is changed, we need a flag to be set that repainting is required.
646
+
647
+ Thus, copied dsl_accessor and made dsl_property. Whenever, such props are modified, a property
648
+ change is now fired, and repaint_required is set to true.
649
+ I am currently changing this. What this means is that on startup, fire_prop_change will be called
650
+ many times, and i need to avoid this on first time instantiation. TODO.
651
+
652
+ 2. The tricky part was text_variables. When there value changes any widget (such as label) auto
653
+ changes. When a text_variable is defined for field, internally that field, adds itself as a
654
+ dependent. When its value is changed, it fires a change to the dependent field.
655
+
656
+ 3. The real worrisome part was this:
657
+ When user passes in a hash in the constructor, i was directly setting variables, NOT calling
658
+ methods. Tracked this down. Now i am calling methods and not setting variables. See rwidget.rb
659
+ instance_variable_set (top). Only throrough testing will tell how much this change
660
+ will affect stuff. Maybe not.
661
+
662
+ frmincr200901080133.tgz
663
+ * * *
664
+ **2009-01-07 23:35**
665
+ ## New Listbox ##
666
+
667
+ with cleaner scrolling code, and cell renderer
668
+ Largely done.
669
+
670
+ frmincr200901072335.tgz
671
+ * * *
672
+ **2009-01-07 00:36**
673
+ ## Field storing datatypes ##
674
+
675
+ 1. set_buffer updates datatype of data
676
+ 2. get_value reverts to original datatype (stored as a string since many methods
677
+ do check length etc
678
+
679
+ Widget binds_keys
680
+ Certain widgets like tables etc would like to bind_keys which could be used by other
681
+ widgets. Such as left and right keys or del key. So these should not be at the program
682
+ level, but only at widget level.
683
+
684
+ frmincr200901070034.tgz
685
+ * * *
686
+ **2009-01-05 01:51**
687
+ ## rtable with scrolling ##
688
+
689
+ simple scrolling unlike scrollable which sucked biggie time
690
+
691
+ frmincr200901050150.tgz
692
+ * * *
693
+ **2009-01-05 01:21**
694
+ ## rtable.rb ##
695
+
696
+ more wip
697
+
698
+ frmincr200901050121.tgz
699
+ * * *
700
+ **2009-01-04 01:01**
701
+ ## table wip ##
702
+
703
+
704
+
705
+ frmincr200901040100.tgz
706
+ * * *
707
+ **2009-01-01 23:45**
708
+ ## before change to textare ##
709
+
710
+ abot to put back \n and see
711
+
712
+ frmincr200901012345.tgz
713
+ * * *
714
+ **2009-01-01 13:01**
715
+ ## Boolean buttons use "variable" not "text_variable" ##
716
+
717
+ That was a misunderstanding. Checkbutton, Toggle and Radio use "variable" which
718
+ updates or gets updated by any changes.
719
+
720
+ frmincr200901011300.tgz
721
+ * * *
722
+ **2008-12-31 23:46**
723
+ ## Variable modifications ##
724
+
725
+ Had to move to get_value and set_value so that Variable could support a hash or array without
726
+ anything else changing.
727
+ That means if a set of checkboxes and radio buttons are based on one Variable which is a Hash,
728
+ they will continue working as before, since they always pass t heir name as a second parm to set_value
729
+ (whch is used as a key, if Variable is a hash).
730
+ Earlier i was using value= but that does not allow 2 params.
731
+ In the case of a hash, even retrieving requires the widgt name as key.
732
+ So seeing how many params are coming in does not work. Thus moving from value() and value= to get and set value.
733
+
734
+ Currently, its there as RVariable. Will be moved to Variable in a day or so.
735
+
736
+ frmincr200812312341.tgz
737
+ * * *
738
+ **2008-12-29 17:50**
739
+ ## textarea bugfixes in wrap and wrapping ##
740
+
741
+ more bug fixes
742
+ also added wrap_para (see menu Wrap)
743
+
744
+ * * *
745
+ **2008-12-28 21:05**
746
+ ## Textarea wrapping bugs fixed ##
747
+
748
+ I believe things are working now.
749
+ ALso added footers to the text area and view. That could help me in debugging too.
750
+
751
+ frmincr200812282104.tgz
752
+ * * *
753
+ **2008-12-28 01:25**
754
+ ## WIP in Table ##
755
+
756
+ working
757
+
758
+ frmincr200812280125.tgz
759
+ * * *
760
+ **2008-12-27 01:07**
761
+ ## bug fixes in textarea cursor movement ##
762
+
763
+ with respect to wrapping lines
764
+ backspace behaviour.
765
+ newlines
766
+ still some glitches.
767
+
768
+ * * *
769
+ **2008-12-26 20:07**
770
+ ## Missed one case of wrapping in Textarea ##
771
+
772
+ Whene there IS data in next row. Fixed.
773
+
774
+ * * *
775
+ **2008-12-25 18:30**
776
+ ## ACS_ boxes in TextArea and TextView ##
777
+
778
+ ACS_ used for boxes
779
+
780
+ * * *
781
+ **2008-12-25 18:22**
782
+ ## better boxes using ACS_ for messagebox and Listbox ##
783
+
784
+ Using ACS_ code to get boxes.
785
+
786
+ * * *
787
+ **2008-12-24 20:20**
788
+ ## InputDataEvent: firing events on changes in TextArea ##
789
+
790
+ Now reporting changes in text happening in TextArea via InputDataEvent
791
+
792
+ * * *
793
+ **2008-12-24 15:51**
794
+ ## Alt-keys in TextArea and View were getting eaten up ##
795
+
796
+ Returning alt keys so buttons and mnemonics can process
797
+
798
+ * * *
799
+ **2008-12-24 15:40**
800
+ ## vertical alignment of combolists ##
801
+
802
+ ABove, below, center, and same row as field.
803
+
804
+ * * *
805
+ **2008-12-24 13:00**
806
+ ## added autoscroll to TextArea ##
807
+
808
+ Goes to end with each "<<" command.
809
+ Also fixed goto_end and goto_start. I had changed the names in TextArea but not in scrollable.
810
+
811
+ * * *
812
+ **2008-12-23 23:49**
813
+ ## Migrated buttons to mnemonic and ampersand for hotkeys ##
814
+
815
+ Unerline will result in underline, overriding that created by ampersand, but not register key.
816
+ mnemonic will register alt-key and underline first occurence
817
+ Using ampersand will register and underline given occurrence.
818
+
819
+ frmincr200812232347.tgz
820
+ * * *
821
+ **2008-12-23 13:38**
822
+ ## Added observers to events ##
823
+
824
+ An object can listen in to events of another. Could be a hack.
825
+ Helps if user creates an object which further creates others. User binds actioon to top level object.
826
+ But we want internal objects events to also fire action.
827
+
828
+ frmincr200812231337.tgz
829
+ * * *
830
+ ## Multiple bindings for each event ##
831
+
832
+ Each object can bind its actions without fear of overwriting each other.
833
+ Variables update_command also stacked.
834
+
835
+ **2008-12-22 15:13**
836
+
837
+ ## class Field: CHANGED event, triggered when tabbing out after changing ##
838
+
839
+ .
840
+
841
+ frmincr200812221513.tgz
842
+ * * *
843
+ **2008-12-22 12:52**
844
+ ## Added null_allowed to class Field ##
845
+
846
+ if null_allowed, validation will be skipped if empty, however
847
+ LEAVE event will be triggered.
848
+
849
+ frmincr200812221251.tgz
850
+ * * *
851
+ **2008-12-22 02:02**
852
+ ## xterm-color key hacks and vt100/200 fixes ##
853
+
854
+ F1..F4 hack for xterm color
855
+ in getchar().
856
+ Menu selection (highlighting) in rform.rb
857
+
858
+ frmincr200812220201.tgz
859
+ * * *
860
+ **2008-12-20 22:05**
861
+ ## Removed CommonIO includes ##
862
+
863
+ replaced with @window.printstring
864
+
865
+ frmincr200812202204.tgz
866
+ * * *
867
+ **2008-12-20 13:23**
868
+ ## toggle_key for menu bar ##
869
+
870
+ menu bar now can define and bind its toggle key.
871
+
872
+ frmincr200812201322.tgz
873
+ * * *
874
+ **2008-12-19 21:28**
875
+ ## scrolling in edit box ##
876
+
877
+ Implemented horiz scrolling in single line edit box
878
+ Forgot to add:
879
+ Editable and non-editabl combo-boxes were also added the other day.
880
+
881
+ frmincr200812192127.tgz
882
+ * * *
883
+ **2008-12-15 14:16**
884
+ ## tabbedpanes - with radio buttons ##
885
+
886
+ Much improved. Uses an extended radio button, so states of selected, focussed and unfocussed
887
+ are easy to display.
888
+
889
+ frmincr200812151415.tgz
890
+ * * *
891
+ **2008-12-14 16:50**
892
+ ## tabbedpane-part2 ##
893
+
894
+ with panels and forms. but how to navigate between buttons and form.
895
+
896
+ frmincr200812141650.tgz
897
+ * * *
898
+ **2008-12-14 14:24**
899
+ ## preliminary tabbed pane ##
900
+
901
+ need to create form earlier so user can get the form and set it.
902
+
903
+ frmincr200812141424.tgz
904
+ * * *
905
+ **2008-12-11 22:32**
906
+ ## Popuplist in action ##
907
+
908
+ sample of popuplist called whenever cursor falls in User field.
909
+ Pressing Enter passes the value.
910
+
911
+ frmincr200812112231.tgz
912
+ * * *
913
+ **2008-12-11 01:27**
914
+ ## class PopupList ##
915
+
916
+ wip but almost done.
917
+ pops up a list which can be selected from.
918
+
919
+ frmincr200812110126.tgz
920
+ * * *
921
+ **2008-12-03 20:13**
922
+ ## Field accepts values() and valid_regex() ##
923
+
924
+ Restrict entry to values
925
+
926
+ Validate field against valid_regex.
927
+
928
+ frmincr200812032012.tgz
929
+ * * *
930
+ **2008-12-01 18:34**
931
+ ## Messagebox takes list ##
932
+
933
+ Allow user to make a messagebox passing a list.
934
+
935
+ frmincr200812011834.tgz
936
+ * * *
937
+ **2008-11-30 00:58**
938
+ ## friendly colors - under testing ##
939
+
940
+ Have implemented human friendly colors for foreground and background
941
+ Tested out on some widgets but not all. Need to totally test and clean code.
942
+ Is functioning. See radio buttons and their label, see checkbox which makes the label bold.
943
+
944
+ frmincr200811300056.tgz
945
+ * * *
946
+ **2008-11-29 21:10**
947
+ ## experimental Colormap to make color definitions easy ##
948
+
949
+ Added a Colormap module that helps create and retrieve colors by human names
950
+ so we can define colors in widgets without reference to color_pairs.
951
+
952
+ frmincr200811292109.tgz
953
+ * * *
954
+ **2008-11-28 00:30**
955
+ ## CheckBoxMenuItem ##
956
+
957
+ Implemented a checkbox menu item, works but i am not pleased, quite dirty.
958
+
959
+ Widgets are tied to a form, for ease of construction.
960
+ In the case of menus they are not, and menus print in a different manner.
961
+
962
+ Submenu should also have been a class, perhaps.
963
+
964
+ frmincr200811280026.tgz
965
+ * * *
966
+ **2008-11-27 20:11**
967
+ ## ToggleButton ##
968
+
969
+ Now a togglebutton class that is extended by Radio and checkbox
970
+ Togglebutton is itself a toggleable button.
971
+
972
+ frmincr200811272010.tgz
973
+ * * *
974
+ **2008-11-27 18:54**
975
+ ## extended radiobutton from checkbox ##
976
+
977
+ to reduce code.
978
+ Now i am thinkig both shuold extend one class. My ole Swing book gaves me a cool
979
+ name to call it. ToggleButton!
980
+
981
+ frmincr200811271853.tgz
982
+ * * *
983
+ **2008-11-27 12:13**
984
+ ## menubar hotkey ##
985
+
986
+ Done handling of hotkey/mnemonic in menu
987
+ and closing of menubar when action complete
988
+
989
+ frmincr200811271212.tgz
990
+ * * *
991
+ **2008-11-27 00:24**
992
+ ## Titles in all scrollable views. ##
993
+
994
+ Added titles and title attribs.
995
+
996
+ frmincr200811270023.tgz
997
+ * * *
998
+ **2008-11-26 23:32**
999
+ ## horiz scrolling in TextView ##
1000
+
1001
+ Textview now can scroll horiz.
1002
+ Ctrl-E and Ctrl-A behavior in cases of data exceeding width taken care of.
1003
+
1004
+ frmincr200811262331.tgz
1005
+ * * *
1006
+ **2008-11-26 22:26**
1007
+ ## TextView and other fixes ##
1008
+
1009
+ Introduced a TextView widget which just shows multiline text, scrollable.
1010
+ Allows us to programmatically scroll the same.
1011
+
1012
+ Tested and fixed LEAVE and ENTER of widgets (had forgotten that!).
1013
+
1014
+ frmincr200811262224.tgz
1015
+ * * *
1016
+ **2008-11-26 11:49**
1017
+ ## field.show ##
1018
+
1019
+ 1. implemented Field.show (password field in example will show *)
1020
+
1021
+ 2. created a method getvalue_for_paint, so that getvalue returns actual value for field
1022
+ or widget and no display stuff.
1023
+
1024
+ 3. Button. surround_chars. change the sq brackets to soething else.
1025
+
1026
+ frmincr200811261147.tgz
1027
+ * * *
1028
+ **2008-11-25 23:58**
1029
+ ## selectable in ListBox ##
1030
+
1031
+ added a new module selectable copying from sqlpopup
1032
+ however, this is a window and not a pad so its much more diffucult.
1033
+
1034
+ Due to field_enter and exit, the selected row shows affter 2 movements!
1035
+
1036
+ Clear selection not yet functioning here. But select/deselect/next sel and prev sel are working.
1037
+
1038
+ frmincr200811252356.tgz
1039
+ * * *
1040
+ **2008-11-22 23:20**
1041
+ ## RadioButton ##
1042
+
1043
+ Added another widget. took less than 2 mins: a radio button. Praps I should just extend CheckButton
1044
+ rather than copy. Just a couple of lines changed.
1045
+ Some bugs may have cropped up in Textarea after introduction of hard and soft returns.
1046
+ Entry was happening one col before where cursor was appearing.
1047
+
1048
+ frmincr200811222319.tgz
1049
+ * * *
1050
+ **2008-11-22 21:50**
1051
+ ## CheckBox ##
1052
+
1053
+ Took me less than 5 mins to implement a CheckBox inheriting from button.
1054
+
1055
+ frmincr200811222149.tgz
1056
+ * * *
1057
+ **2008-11-22 19:43**
1058
+ ## textarea ##
1059
+
1060
+ moving up characters when deleting
1061
+ soft and hard return so wrapping can be respected when deleting.
1062
+
1063
+ frmincr200811221943.tgz
1064
+ * * *
1065
+ **2008-11-22 16:47**
1066
+ ## textarea ##
1067
+
1068
+ incoming data wrap it.
1069
+ But i do need to look at newlines and preserve. current logic loses them.
1070
+
1071
+ frmincr200811221647.tgz
1072
+ * * *
1073
+ **2008-11-22 01:41**
1074
+ ## textarea word wrap when pushing from behind ##
1075
+
1076
+ still needs ironing out. could be some issues in rare cases.
1077
+
1078
+ frmincr200811220140.tgz
1079
+ * * *
1080
+ **2008-11-22 00:45**
1081
+ ## textarea with wrapping #1 ##
1082
+
1083
+ wrapping as cursor exceeds border. however, not yet when we insert chars anddelete.
1084
+
1085
+ frmincr200811220044.tgz
1086
+ * * *
1087
+ **2008-11-21 23:42**
1088
+ ## textarea ##
1089
+
1090
+ more issues in movement sorted out when end of length.
1091
+ Box showing correctly now.
1092
+
1093
+ frmincr200811212342.tgz
1094
+ * * *
1095
+ **2008-11-21 22:16**
1096
+ ## textarea with newlines ##
1097
+
1098
+ added in newlines, and we don't print them.
1099
+ also when joining we remove.
1100
+ be careful i dont put two.
1101
+
1102
+ frmincr200811212215.tgz
1103
+ * * *
1104
+ **2008-11-21 21:54**
1105
+ ## Textarea more work on joining and spliting rows ##
1106
+
1107
+ wip
1108
+
1109
+ frmincr200811212153.tgz
1110
+ * * *
1111
+ **2008-11-21 17:39**
1112
+ ## Textarea starting ##
1113
+
1114
+ Have a basic textarea working
1115
+ Still very rough.
1116
+
1117
+ frmincr200811211738.tgz
1118
+ * * *
1119
+ **2008-11-21 01:38**
1120
+ ## Listbox ##
1121
+
1122
+ created a scrollable listbox as a widget and put in my form.
1123
+ Also a scrollable module to include to get the functionality
1124
+
1125
+ frmincr200811210137.tgz
1126
+ * * *
1127
+ **2008-11-20 15:58**
1128
+ ## Variable ##
1129
+
1130
+ Added custom to MessageBox
1131
+
1132
+ Added class Variable and tested out with button and label.
1133
+
1134
+ frmincr200811201558.tgz
1135
+ * * *
1136
+ **2008-11-20 01:38**
1137
+ ## MessageBox ##
1138
+
1139
+ Have made a messagebox just like links
1140
+ - uses Button class.
1141
+ - Not using labels etc yet. Not required. Keeping it simple.
1142
+
1143
+
1144
+ frmincr200811200137.tgz
1145
+ * * *
1146
+ **2008-11-19 19:59**
1147
+ ## Widget class as super ##
1148
+
1149
+ Created the widget class with DSL properties
1150
+ Now all widgets extend it,
1151
+ so common functionality as well as DSLish.
1152
+
1153
+ frmincr200811191958.tgz
1154
+ * * *
1155
+ **2008-11-19 01:07**
1156
+ ## FIELD navigation ##
1157
+
1158
+ a small hack and we can circle and it does not cause an overflow now.
1159
+ But the focusables array was much neater and less risky.
1160
+
1161
+ frmincr200811190106.tgz
1162
+ * * *
1163
+ **2008-11-19 00:53**
1164
+ ## FIELD ##
1165
+
1166
+ I have reworked the logic of traversal to use a loop, no extra array and no
1167
+ recursion.
1168
+ Only issue is i cant circle around snce it goes into a stack overflow.
1169
+ The extra array was simpler though.
1170
+
1171
+ frmincr200811190052.tgz
1172
+ * * *
1173
+ **2008-11-18 20:41**
1174
+ ## menubar working !!! ##
1175
+
1176
+ menubar working with submenus. destroys and passes contrl back to parent on LEFT
1177
+ and goes to nezt on RIGHT.
1178
+
1179
+ frmincr200811182040.tgz
1180
+ * * *
1181
+ **2008-11-18 19:43**
1182
+ ## menubar wip printing menu on leave and enter ##
1183
+
1184
+ 1. now submenu showing , onleave onenter okay.
1185
+
1186
+ 2. only thingie left is the navigation
1187
+
1188
+ frmincr200811181942.tgz
1189
+ * * *
1190
+ **2008-11-18 19:05**
1191
+ ## menubar wip ##
1192
+
1193
+ Now submenu is created at tright time and destroyed onleave.
1194
+
1195
+ 1. to take care of priting of menu as a menuitem
1196
+ 2. to pass control ofkeys into the new menu
1197
+
1198
+ frmincr200811181904.tgz
1199
+ * * *
1200
+ **2008-11-18 18:18**
1201
+ ## menubar wip ##
1202
+
1203
+ paint does not create.
1204
+ wip
1205
+ but still to look into submenu
1206
+
1207
+ frmincr200811181818.tgz
1208
+ * * *
1209
+ **2008-11-18 16:18**
1210
+ ## menubar wip ##
1211
+
1212
+ submenu paints itself since it s on enter
1213
+ need to make some changes ...
1214
+ fire -paint submenu
1215
+
1216
+ frmincr200811181617.tgz
1217
+ * * *
1218
+ **2008-11-18 03:04**
1219
+ ## submenu ##
1220
+
1221
+ it is displaying now, but firing immeidately.
1222
+ also we will need to walk down it and select.
1223
+
1224
+ frmincr200811180303.tgz
1225
+ * * *
1226
+ **2008-11-18 00:40**
1227
+ ## menu bar actions etc fine ##
1228
+
1229
+ Barring ability to hav submenu's actions are working.
1230
+
1231
+ frmincr200811180040.tgz
1232
+ * * *
1233
+ **2008-11-17 18:51**
1234
+ ## menubar wip ##
1235
+
1236
+ its up but no actions yet.
1237
+
1238
+ frmincr200811171851.tgz
1239
+ * * *
1240
+ **2008-11-17 03:14**
1241
+ ## menu menubar menuitem interim work ##
1242
+
1243
+ interim work in progress
1244
+ things are showing need alignment and polishing
1245
+ actions to do
1246
+
1247
+ frmincr200811170313.tgz
1248
+ * * *
1249
+ **2008-11-16 22:09**
1250
+ ## changed key handling down to objects ##
1251
+
1252
+ so they can take and ignore what they want
1253
+ earlier form was trying to be too intelligent.
1254
+
1255
+ frmincr200811162208.tgz
1256
+ * * *
1257
+ **2008-11-16 19:18**
1258
+ ## Field form and label ##
1259
+
1260
+ Tried to do more of method_missing and define_method to make it dsl-ish but failed.
1261
+ Added datatype, chars_allowed and some bug-fixing.
1262
+ Need to put exit_proc.
1263
+ Now to try out a menubar.
1264
+
1265
+ frmincr200811161916.tgz
1266
+ * * *
1267
+ **2008-11-16 03:16**
1268
+ ## Button which inherits label ##
1269
+
1270
+ circular order of navigation
1271
+ editing taking care of different types of fields
1272
+
1273
+ WAIT. What is label doing inside FORM Why ? it can remain on Window, no ?
1274
+ We are complicating code by inclusing in form and widgets.
1275
+
1276
+ frmincr200811160315.tgz
1277
+ * * *
1278
+ **2008-11-16 01:17**
1279
+ ## form implemented buttons too ##
1280
+
1281
+ but i dont like the focusable part. need to redo
1282
+
1283
+ frmincr200811160117.tgz
1284
+ * * *
1285
+ **2008-11-15 13:06**
1286
+ ## changed in forms and fields as per TK ##
1287
+
1288
+ changing things a bit.
1289
+
1290
+ frmincr200811151306.tgz
1291
+ * * *
1292
+ **2008-11-15 02:33**
1293
+ ## rform ruby forms fields ##
1294
+
1295
+ I am writing a simpler form and field thingie.
1296
+ I know thats awfully ambitious, but the sequence of ncurses sucks.
1297
+
1298
+ We need to be more dynamic.
1299
+ I have made a displayable form. But need to trap some keys are kick some asss.
1300
+
1301
+ frmincr200811150232.tgz
1302
+ * * *
1303
+ **2008-11-14 18:48**
1304
+ ## reintroduction of datasource ##
1305
+
1306
+ testing sqlpopup wiht processes and data
1307
+
1308
+ frmincr200811141847.tgz
1309
+ * * *
1310
+ **2008-11-14 00:01**
1311
+ ## Fixes for smaller screens ##
1312
+
1313
+ A lot of hardcoding for large screens
1314
+
1315
+ - changes in key labels
1316
+ - changes in data and col names
1317
+ - padrefresh
1318
+ - bug in pressing space
1319
+ - printing messages in centre, no more beeps please.
1320
+ Now small screens can be requested.
1321
+
1322
+ frmincr200811140000.tgz
1323
+ * * *
1324
+ **2008-11-13 21:52**
1325
+ ## Cleanup , Refact and polishing output ##
1326
+
1327
+ 1. cleaned up junk code
1328
+
1329
+ 2. moved classes out. made key label printer into a class
1330
+
1331
+ 3. common print modules
1332
+
1333
+ 4. common db module
1334
+
1335
+ 5. sizing of columns and formatting of titles
1336
+
1337
+ 6. align of num fields
1338
+
1339
+ frmincr200811132151.tgz
1340
+ * * *
1341
+ **2008-11-13 10:46**
1342
+ ## highlighting ##
1343
+
1344
+ Using wchgat for highlighting pad instead of rewriting data
1345
+ Also, therefore changed select functionality.
1346
+
1347
+ frmincr200811131045.tgz
1348
+ * * *
1349
+ **2008-11-13 01:15**
1350
+ ## key_labels ##
1351
+
1352
+ Worked on much better coded key_labels which don't require the poor hacky format the old one did
1353
+ Saner.
1354
+ Also putting a message in -3 row and letting it go off. Its on the window. Goes off in next keystroke auto.
1355
+
1356
+ frmincr200811130112.tgz
1357
+ * * *
1358
+ **2008-11-12 19:31**
1359
+ ## flickering and key movement ##
1360
+
1361
+ - reduced flickering by doing werase only when absolutely nec. but this could lead
1362
+ to some situations where clearing is not done. to keep checking.
1363
+
1364
+ - some errors in key movement due to wrong @window value or space etc
1365
+ having incorrect checks. Need to keep checking.
1366
+
1367
+ frmincr200811121929.tgz
1368
+ * * *
1369
+ **2008-11-12 12:41**
1370
+ ## Regexp and symbols in mappings ##
1371
+
1372
+ In order that printables can be used had to add REGEXP in mapping.
1373
+
1374
+ Also added symbols
1375
+
1376
+ So now we can't search Hash normally, have to iterate. So ordered hash hadto beused.
1377
+ Tried to move to arrays, but pendingkeys would have not been possible.
1378
+ Symbols are not tested yet.
1379
+
1380
+ frmincr200811121239.tgz
1381
+ * * *
1382
+ **2008-11-12 00:39**
1383
+ ## sqlpopup and keymapper ##
1384
+
1385
+
1386
+ We have a much simpler than VER keymapper. Code is small.
1387
+ - Uses keyboard.rb from VER project to give us ESC and meta/alt keys.
1388
+ - We use same syntax for configuring such as class.let :mode do etc.
1389
+ - Provided:
1390
+ - single keys combinations
1391
+ - a mode with its set of keys
1392
+ - dual keys such as C-x C-c or C-x p etc which do not change mode.
1393
+
1394
+ frmincr200811120036.tgz
1395
+ * * *
1396
+ **2008-11-11 23:40**
1397
+ ## sqlpopup our own modes and key ##
1398
+
1399
+ allows cx mode with its keys
1400
+ but its looks okay for a mode
1401
+ for a multiple key we would prefer to say : C-c C-x
1402
+ and not create a separate context./mode.
1403
+
1404
+ frmincr200811112339.tgz
1405
+ * * *
1406
+ **2008-11-11 23:12**
1407
+ ## sqlpopup my version ##
1408
+
1409
+ trying to build a simpler version of sqlpopup
1410
+ that i can understand. VER is pretty complex and the scope is not relevant to our
1411
+ kind of app.
1412
+
1413
+ frmincr200811112311.tgz
1414
+ * * *
1415
+ **2008-11-10 12:25**
1416
+ ## sqlpopup ##
1417
+
1418
+ after some minor bugfixes in space bar, and better messages
1419
+ now i will try to integrate keymap and keyboard.
1420
+
1421
+ frmincr200811101224.tgz
1422
+ * * *
1423
+ **2008-11-09 23:50**
1424
+ ## sqlpopup out own keymapper ##
1425
+
1426
+
1427
+ Implemented a small quick dirty key method mapper. This will make transition to keyboard.rb
1428
+ easier.
1429
+
1430
+ frmincr200811092349.tgz
1431
+ * * *
1432
+ **2008-11-09 19:37**
1433
+ ## sqlpopup ##
1434
+
1435
+ removed blank line and now selector on actual row 1.
1436
+
1437
+ put columns on windw however, this means col names always shpwing but wont scroll!!
1438
+
1439
+ frmincr200811091935.tgz
1440
+ * * *
1441
+ **2008-11-09 15:43**
1442
+ ## clearing selection ##
1443
+
1444
+ sqlpopup
1445
+ also numbering of lines based on content.length
1446
+
1447
+ frmincr200811091542.tgz
1448
+ * * *
1449
+ **2008-11-09 13:05**
1450
+ ## sqlpopup ##
1451
+
1452
+ - row selection and navigation.
1453
+ - search was no longer scrolling, fixed that so prow is always displayed.
1454
+
1455
+ frmincr200811091304.tgz
1456
+ * * *
1457
+ **2008-11-09 01:24**
1458
+ ## sqlview.rb ##
1459
+
1460
+ TABULAR sql view with much better scrolling like our old tabular thingie
1461
+ scrolling like alpine
1462
+ allows selection, we need to allow UNselect all, goto-selected etc.
1463
+
1464
+ frmincr200811090123.tgz
1465
+ * * *
1466
+ **2008-11-08 22:03**
1467
+ ## tabular view in pad ##
1468
+
1469
+ Used the pad program to give TABULAR View too.
1470
+ SIMPLE view has column name and data per row.
1471
+ ALTERNATING has name followed by data in next row.
1472
+ TABULAR gives the entire result in one tabular form
1473
+ TABULAR implements a search using "/" and ^N and ^P to go back/forth in search.
1474
+
1475
+ I need to make a selectable list which will return selectedrow, simple for use
1476
+ as help in dataentry forms.
1477
+
1478
+ frmincr200811082201.tgz
1479
+ * * *
1480
+ **2008-11-08 13:17**
1481
+ ## sqlresultsetpadviewer ##
1482
+
1483
+ Using pads, made a scrollable viewer for sql result sets.
1484
+ Has a goto record also.
1485
+
1486
+ To make tabular, with option of selecting.
1487
+
1488
+ frmincr200811081316.tgz
1489
+ * * *
1490
+ **2008-11-08 01:09**
1491
+ ## sqlview.rb ##
1492
+
1493
+ a program to view an sql resultset on screen.
1494
+ allows going through mult rows, and paging if more columns than will come on a screen.
1495
+
1496
+ Not tested with really long data. Will data get cut off or cause errors or what.
1497
+
1498
+ frmincr200811080108.tgz
1499
+ * * *
1500
+ **2008-11-07 20:24**
1501
+ ## mandatory fields ##
1502
+
1503
+ - checking at time of get_current_values_as_hash
1504
+ - display with asterisk if passed before form creation
1505
+
1506
+ frmincr200811072023.tgz
1507
+ * * *
1508
+ **2008-11-07 13:10**
1509
+ ## messages on execute and checks ##
1510
+
1511
+ insert/del/update messages
1512
+
1513
+ check on update/del whether select was done or not.
1514
+
1515
+ frmincr200811071309.tgz
1516
+ * * *
1517
+ **2008-11-07 01:42**
1518
+ ## on_exit and post_proc ##
1519
+
1520
+ These 2 are duplicating each other,
1521
+ Got both to work though. samples in contractedit1101.rb
1522
+
1523
+ frmincr200811070141.tgz
1524
+ * * *
1525
+ **2008-11-06 22:48**
1526
+ ## rowid and crud options ##
1527
+
1528
+ Have checked out contractedit1101 with view, edit, delete etc options.
1529
+ Made sure that only relvnt keys are visible and active
1530
+
1531
+ ## ROWID ##
1532
+ Now rowid can be switched on so edit and delete use that. Same for find all.
1533
+
1534
+ frmincr200811062246.tgz
1535
+ * * *
1536
+ **2008-11-05 23:49**
1537
+ ## create_view_one_application ##
1538
+
1539
+ the first of the easy to call applications for a table, tell him you only want to view one
1540
+ contract. The user can only quit from there. No operations possible.
1541
+
1542
+ Similarly now to do the view_any, delete_one, edit_one etc combinations.
1543
+
1544
+ frmincr200811052348.tgz
1545
+ * * *
1546
+ **2008-11-03 00:18**
1547
+ ## conditional submenu and sql options ##
1548
+
1549
+ Using @sql_actions, one can specify which options should be shown to user
1550
+ - retrict only to select, or upd/del etc, or give him no options
1551
+ - have to take care of bind keys also in this situation.
1552
+ - can start the program with a keyfield supplied
1553
+ or with the values to display supplied.
1554
+ See contractedit1101.rb.
1555
+
1556
+ frmincr200811030016.tgz
1557
+ * * *
1558
+ **2008-11-02 11:55**
1559
+ ## basiceditform.rb ##
1560
+
1561
+ functionality moved down from rbeditform to basicedit which should be instantiated
1562
+ hightlighting and helpproc display moved
1563
+ Now rbedit may either be extended and its handlers overridden,
1564
+ or else you can set handlers (if composing).
1565
+
1566
+ frmincr200811021154.tgz
1567
+ * * *
1568
+ **2008-11-01 23:47**
1569
+ ## contractedit1101.rb ##
1570
+
1571
+ This conttains the contract edit with:
1572
+ - calls to create_default_application which takes care of windows etc
1573
+ So calling code is very few lines. Fully functional table realted CRUD screen.
1574
+ - ADded WHERE and ORDER BY in actions.
1575
+ - The search interface is still not clear. Using ^X-M for clearing screen and inserting.
1576
+ Can be confusing.
1577
+
1578
+ frmincr200811012345.tgz
1579
+ * * *
1580
+ **2008-10-31 14:48**
1581
+ ## Actions: CRUD and FIND-all ##
1582
+
1583
+ crud actions working
1584
+ findall, first, last, next, previous.
1585
+
1586
+ frmincr200810311448.tgz
1587
+ * * *
1588
+ **2008-10-29 23:53**
1589
+ ## SingleTable ##
1590
+
1591
+ Have moved generic methods into a module which can be called or bound to keys.
1592
+ generic update,delete,select, insert and create_fields.
1593
+ Or maybe we can extend a class from rbedit. lets see.
1594
+
1595
+ frmincr200810292352.tgz
1596
+ * * *
1597
+ **2008-10-29 00:32**
1598
+ ## contractedit new_create_fields ##
1599
+
1600
+ this method uses the newly pimped FIELD object, hoping to make it MUCHO easier to create fields.
1601
+ Still a lot more that can go in, validate against values.
1602
+
1603
+ frmincr200810290030.tgz
1604
+ * * *
1605
+ **2008-10-28 11:26**
1606
+ ## more fields ##
1607
+
1608
+ more touching.
1609
+
1610
+ frmincr200810281126.tgz
1611
+ * * *
1612
+ **2008-10-28 11:16**
1613
+ ## work on create_field ##
1614
+
1615
+ an easier create_field method
1616
+ and many convenence methods for field settings and creation.
1617
+ not tested.
1618
+ changes are in rbform.rb
1619
+
1620
+ frmincr200810281115.tgz
1621
+ * * *
1622
+ **2008-10-28 00:13**
1623
+ ## contractedit.rb ##
1624
+
1625
+ a lot of generic stuff
1626
+ does insert/update
1627
+ - generic field creation
1628
+
1629
+ frmincr200810280013.tgz
1630
+ * * *
1631
+ **2008-10-26 13:27**
1632
+ ## new folder structure ##
1633
+
1634
+ Finally used hoe
1635
+ - created new structure
1636
+ - called it rbcurse
1637
+ - updated requires
1638
+ - moved dsls to dsl and outputs to out. (older ones)
1639
+ - now i will create DSLS and OUTs in a totally different area so i don't
1640
+ clutter up the project.
1641
+
1642
+ frmincr200810261325.tgz
1643
+ * * *
1644
+ **2008-10-26 00:57**
1645
+ ## contractedit.rb ##
1646
+
1647
+ passing a values hash and displaying values
1648
+ to pass an ID and have it select
1649
+ to save data on screen
1650
+
1651
+ frmincr200810260057.tgz
1652
+ * * *
1653
+ **2008-10-25 23:08**
1654
+ ## query and table app rewrite ##
1655
+
1656
+ with yield
1657
+ and some awful changes in main variable so that printing of header and footer can happen
1658
+ header and footer win is driving me NUTS !!!!!
1659
+
1660
+ frmincr200810252307.tgz
1661
+ * * *
1662
+ **2008-10-25 10:37**
1663
+ ## update DSL to give edit app for emailer.rb ##
1664
+
1665
+ _skelform2.rb generates emailer.rb with the block.
1666
+
1667
+ frmincr200810251036.tgz
1668
+ * * *
1669
+ **2008-10-25 00:20**
1670
+ ## more touches ##
1671
+
1672
+ - moved commons into EditApplication, removed from main
1673
+ - entire header, footer creation in Edit Application.
1674
+ - Is this causing more confusion, or reducing,
1675
+ - main and app point to EA.
1676
+ - perhaps emailer should not extend Application ?
1677
+
1678
+ frmincr200810250019.tgz
1679
+ * * *
1680
+ **2008-10-24 22:03**
1681
+ ## before yielding self ##
1682
+
1683
+ making a zip before yielding self in EditApplication.
1684
+
1685
+ frmincr200810242202.tgz
1686
+ * * *
1687
+ **2008-10-24 17:58**
1688
+ ## lambda and method from DSL ##
1689
+
1690
+ Did some crappy stuff so that you can use method or lambda from DSL.
1691
+
1692
+ frmincr200810241757.tgz
1693
+ * * *
1694
+ **2008-10-24 14:34**
1695
+ ## form and field handlers ##
1696
+
1697
+ Done some changes to handlers,
1698
+
1699
+ - moved handle_unhandled_keys up to rbform
1700
+ - used method(:) while passing procs
1701
+ - trying to enforce usage of Proc or Method in handlers and not going to main
1702
+ or datasource to check for an existing name
1703
+ i.e. reduce coupling.
1704
+ - tested with emailer.rb
1705
+
1706
+ Am hoping to make sqlite etc based rbeditforms simpler to implement
1707
+ by cutting out dataasource nad passing handlers in to the form.
1708
+
1709
+ frmincr200810241431.tgz
1710
+ * * *
1711
+ **2008-10-19 00:13**
1712
+ ## proc ##
1713
+
1714
+ bind and keys_handled has a proc too now
1715
+
1716
+ passing form to handlers not curritem and listselected from rbeditform.
1717
+ to be done in tableapplication too.
1718
+
1719
+ frmincr200810190012.tgz
1720
+ * * *
1721
+ **2008-10-18 22:37**
1722
+ ## set_proc ##
1723
+
1724
+ one can set a proc for populating form and saving.
1725
+ Some other cleaning up too.
1726
+
1727
+ frmincr200810182236.tgz
1728
+ * * *
1729
+ **2008-10-17 12:51**
1730
+ ## FIELD related factoring ##
1731
+
1732
+ A lot of stuff has gone into Field, valid, default, postproc
1733
+ This happens on get_value, set_value and field_term.
1734
+
1735
+ frmincr200810171250.tgz
1736
+ * * *
1737
+ **2008-10-16 14:58**
1738
+ ## touching up ##
1739
+
1740
+ a few more touches so that DSL generates exactly like pines mailer.
1741
+ Some form refreshing so that focus is on first field.
1742
+ Also, clearing error at top of loop.
1743
+
1744
+ frmincr200810161457.tgz
1745
+ * * *
1746
+ **2008-10-15 15:07**
1747
+ ## cleanup ##
1748
+
1749
+ removed @window, its already there are form_win() !
1750
+
1751
+ frmincr200810151506.tgz
1752
+ * * *
1753
+ **2008-10-15 12:57**
1754
+ ## set_value and get_value in FIELD ##
1755
+
1756
+ Taking care of ML fields and chomp inside FIELD
1757
+ Next change is to knock off @current.
1758
+
1759
+ frmincr200810151256.tgz
1760
+ * * *
1761
+ **2008-10-15 12:28**
1762
+ ## Changes to FIELD ##
1763
+
1764
+ set_value and get_value doing ML processing.
1765
+ But not calling it yet.
1766
+
1767
+ frmincr200810151227.tgz
1768
+ * * *
1769
+ **2008-10-15 11:34**
1770
+ ## email multiline format ##
1771
+
1772
+ This was having to be called by the user in form_post_proc
1773
+ Now before save, heightwill be checked.
1774
+
1775
+ Howevr, this should happen auto. Added get_value and set_value in FIELD. and maybe thats
1776
+ where it shouldhappen.
1777
+ But we have to use it, too. We are using @current.
1778
+
1779
+ frmincr200810151133.tgz
1780
+ * * *
1781
+ **2008-10-15 01:40**
1782
+ ## Edit DSL ##
1783
+
1784
+ Finally got the email program running from a DSL.
1785
+ One job pending still ... update_current_values.
1786
+ Some things could be generated at generate time, setup observers, rather
1787
+ than at load time.
1788
+
1789
+ Still then need to start getting a proper datasource into place.
1790
+
1791
+ frmincr200810150138.tgz
1792
+ * * *
1793
+ **2008-10-14 14:29**
1794
+ ## C-c ##
1795
+
1796
+ 1. Now getting c-y, c-z, c-s and c-q
1797
+ 2. We seem to have lost C-c
1798
+ The trap is eating it up totally.
1799
+ Finally i am trapping and doing an ungetch for which had to open the Ncurses class
1800
+ and fix.
1801
+ 3. Also allowing user to bind_key and use the REQ_ values
1802
+ 4. Fixed bugs so that keys_handled is called in rbeditform.
1803
+
1804
+ frmincr200810141427.tgz
1805
+ * * *
1806
+ **2008-10-13 20:44**
1807
+ ## Edit Emailer ##
1808
+
1809
+ More cleaning u and corrections in C-x method.
1810
+
1811
+ frmincr200810132044.tgz
1812
+ * * *
1813
+ **2008-10-13 18:50**
1814
+ ## highlighting field ##
1815
+
1816
+ Some cute coding, and we've got the current field label hightlighted.
1817
+ Sadly Message Text shows that : after it ;-(. That's the default.
1818
+
1819
+ Now to get the silly keylabels functional.
1820
+
1821
+ frmincr200810131848.tgz
1822
+ * * *
1823
+ **2008-10-13 17:32**
1824
+ ## Edit screen ##
1825
+
1826
+ More refactoring on editapplication and rbeditforms.
1827
+ Moved a lot iinto form. App should have less. Form should not keep calling into app.
1828
+
1829
+ Also this version has fields centered abd reverse video. I am now going the alpine way.
1830
+
1831
+ frmincr200810131731.tgz
1832
+ * * *
1833
+ **2008-10-13 12:57**
1834
+ ## gen4.rb EDIT FORM ##
1835
+
1836
+ I have the old gen2.rb redone into a datasource, rbeditform, editapplication.
1837
+ Just about coming up!
1838
+ Still many errors de to references from form to app.
1839
+
1840
+ Totally unclear here as to what the app is doing, and should it have all thefunctinolity
1841
+ in it or not. Too much calling from form to app.
1842
+
1843
+ Its quite a mess and needs a major overhaul.
1844
+
1845
+ I also need to make changes so that rt_hashes and rt_fields dont have to be passed.
1846
+
1847
+ Application should only have what is required by the main app for setting up and cleaning ==
1848
+ not all the stuff for regular work.
1849
+
1850
+ Form should contain all else.
1851
+
1852
+ frmincr200810131253.tgz
1853
+ * * *
1854
+ **2008-10-12 13:32**
1855
+ ## MENU ##
1856
+
1857
+ Updated menu.skel so it generates a class that inherits from menuApplication.
1858
+ It generates a menu class.
1859
+ It is working !
1860
+
1861
+ frmincr200810121331.tgz
1862
+ * * *
1863
+ **2008-10-12 00:29**
1864
+ ## running from menu ##
1865
+
1866
+ 1. Got the menu program working after all the changes in base classes.
1867
+
1868
+ 2. Got programs running from menu. Apparently, some panels were not being
1869
+ destroyed, so there was a BUS ERROR in update_panels.
1870
+
1871
+ 3. There was a warning of BOTTOM_WIN_WIDTH already defined that was messing the screen
1872
+ and i could not see it clearly, so it bugged me a long time.
1873
+
1874
+ All's okay but the skel programs have to be updated. The menu DSL minp1 has to be rerun to see
1875
+ if it gives correct output as per menu1.rb.
1876
+ Basically, panels have to be returned with windows so they can be destroyed.
1877
+
1878
+ frmincr200810120025.tgz
1879
+ * * *
1880
+ **2008-10-10 20:48**
1881
+ ## padreader and panelreader ##
1882
+
1883
+ touched up both and maximized them.
1884
+ worked on keys of padreader.
1885
+ Called both from commons1. Seems okay.
1886
+
1887
+ frmincr200810102048.tgz
1888
+ * * *
1889
+ **2008-10-10 18:19**
1890
+ ## padreader.rb ##
1891
+
1892
+ Made a class out of it
1893
+ Can view files using padreader using view_file(filename).
1894
+ Have not put buttons, and headers like in panelreader yet.
1895
+
1896
+ frmincr200810101818.tgz
1897
+ * * *
1898
+
1899
+ **2008-10-10 14:36**
1900
+ ## form specific key labels - wip ##
1901
+
1902
+ It is working but not standard
1903
+ Need to simplify it.
1904
+ qapp returns keylabels but does not support a keys_handled
1905
+ tapp has keyhasharray but does not generate its labels.
1906
+ we should junk app labels. that complicates things.
1907
+
1908
+ frmincr200810101433.tgz
1909
+ * * *
1910
+ **2008-10-10 11:58**
1911
+ ## tab and enter behaviour in query apps ##
1912
+
1913
+ Tab moves between fields in query form
1914
+ Tab in table moves back to query form.
1915
+ Enter in table runs query as b4, but now also moves focus to table
1916
+
1917
+ frmincr200810101157.tgz
1918
+
1919
+ **2008-10-09 22:23**
1920
+
1921
+ ## HELP ##
1922
+ Using __FILE__ in constructor of major programs to determine a name for file
1923
+ to check for help when user presses ?
1924
+ Application.rb checks for this.
1925
+
1926
+ * * *
1927
+ **2008-10-09 19:14**
1928
+
1929
+ ## panelreader ##
1930
+ deleting panel in ensure otherwise previous screen wuld be scr00d.
1931
+
1932
+ ## help ##
1933
+ Added a generic application_key_handler in Application.rb which shows
1934
+ page specific help. Currently, i have to work that out. Application should
1935
+ define a page. It by default pops up TODO !
1936
+
1937
+ * * *
1938
+ **2008-10-09 18:02**
1939
+
1940
+ More polishing on panelreader.rb
1941
+ But cannot get the line numbers correct.
1942
+ Also if I display line # on top, then cursor remains there.
1943
+ If i put the print statemnet at beg of loop, the line number is wonky.
1944
+ It is correct at end of loop, but then the cursor is stuck on top.
1945
+
1946
+ * * *
1947
+ **2008-10-09 13:34**
1948
+
1949
+ panelreader and editor
1950
+ so i can pop it up and view or edit content or a file
1951
+
1952
+ * * *
1953
+ **2008-10-09 01:05**
1954
+
1955
+ ## datasource class ##
1956
+
1957
+ Made this more reusable. Lots of silly stuff changed.
1958
+ * now it has a constructor.
1959
+ * does not do any work other than init.
1960
+ * more reusable than earlier.
1961
+
1962
+ * * *
1963
+ **2008-10-08 18:16**
1964
+
1965
+ ## handling of cursor and selection in subseq queries ##
1966
+
1967
+ especially if:
1968
+
1969
+ * fewer queries returned in second query
1970
+ * no queries returned in second query
1971
+
1972
+ Now cursor will always be in row one after a fresh query when you tab.
1973
+ Can't tab in if no rows.
1974
+
1975
+ * * *
1976
+ **2008-10-08 17:51**
1977
+
1978
+ ## get_curr_index bug ##
1979
+
1980
+ this was returning one more (base 1) so some users were doing -1
1981
+ Some methods were getting wrong curr_item like the handle_? methods.
1982
+
1983
+ User cannot tab into table if no data.
1984
+
1985
+ Issue of wrong header count if no rows also fixed.
1986
+
1987
+ * * *
1988
+
1989
+ **2008-10-08 14:48**
1990
+
1991
+ Moved stuff to Datasource class.
1992
+ Also checked out more stuff from DSL
1993
+ Added keys_handled to DLS and tested it.
1994
+
1995
+ * * *
1996
+
1997
+ **2008-10-07 22:40**
1998
+
1999
+ 1. based on datatype, aligning fields in table
2000
+ 2. based on datatype, using = in search query for integer and real and smallint