rbcurse 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. data/CHANGELOG +1570 -0
  2. data/History.txt +6 -0
  3. data/Manifest.txt +54 -0
  4. data/README.txt +304 -0
  5. data/Rakefile +28 -0
  6. data/examples/qdfilechooser.rb +68 -0
  7. data/examples/rfe.rb +853 -0
  8. data/examples/rfe_renderer.rb +69 -0
  9. data/examples/test1.rb +242 -0
  10. data/examples/test2.rb +498 -0
  11. data/examples/testcombo.rb +95 -0
  12. data/examples/testkeypress.rb +61 -0
  13. data/examples/testmenu.rb +105 -0
  14. data/examples/testtable.rb +266 -0
  15. data/examples/testtabp.rb +106 -0
  16. data/examples/testtodo.rb +532 -0
  17. data/examples/viewtodo.rb +512 -0
  18. data/lib/rbcurse/action.rb +31 -0
  19. data/lib/rbcurse/applicationheader.rb +57 -0
  20. data/lib/rbcurse/celleditor.rb +120 -0
  21. data/lib/rbcurse/checkboxcellrenderer.rb +69 -0
  22. data/lib/rbcurse/colormap.rb +133 -0
  23. data/lib/rbcurse/comboboxcellrenderer.rb +45 -0
  24. data/lib/rbcurse/defaultlistselectionmodel.rb +49 -0
  25. data/lib/rbcurse/keylabelprinter.rb +143 -0
  26. data/lib/rbcurse/listcellrenderer.rb +99 -0
  27. data/lib/rbcurse/listkeys.rb +33 -0
  28. data/lib/rbcurse/listscrollable.rb +216 -0
  29. data/lib/rbcurse/listselectable.rb +67 -0
  30. data/lib/rbcurse/mapper.rb +108 -0
  31. data/lib/rbcurse/orderedhash.rb +77 -0
  32. data/lib/rbcurse/rcombo.rb +243 -0
  33. data/lib/rbcurse/rdialogs.rb +183 -0
  34. data/lib/rbcurse/rform.rb +845 -0
  35. data/lib/rbcurse/rinputdataevent.rb +36 -0
  36. data/lib/rbcurse/rlistbox.rb +804 -0
  37. data/lib/rbcurse/rmenu.rb +666 -0
  38. data/lib/rbcurse/rmessagebox.rb +325 -0
  39. data/lib/rbcurse/rpopupmenu.rb +754 -0
  40. data/lib/rbcurse/rtabbedpane.rb +259 -0
  41. data/lib/rbcurse/rtable.rb +1296 -0
  42. data/lib/rbcurse/rtextarea.rb +673 -0
  43. data/lib/rbcurse/rtextview.rb +335 -0
  44. data/lib/rbcurse/rwidget.rb +1731 -0
  45. data/lib/rbcurse/scrollable.rb +301 -0
  46. data/lib/rbcurse/selectable.rb +94 -0
  47. data/lib/rbcurse/table/tablecellrenderer.rb +85 -0
  48. data/lib/rbcurse/table/tabledatecellrenderer.rb +102 -0
  49. data/lib/rbcurse.rb +7 -0
  50. data/lib/ver/keyboard.rb +150 -0
  51. data/lib/ver/keyboard2.rb +170 -0
  52. data/lib/ver/ncurses.rb +102 -0
  53. data/lib/ver/window.rb +369 -0
  54. data/test/test_rbcurse.rb +0 -0
  55. metadata +118 -0
data/CHANGELOG ADDED
@@ -0,0 +1,1570 @@
1
+ **2009-01-21 18:30**
2
+ ## Class Action ##
3
+
4
+ Added a class Action to centralize actions or behavior.
5
+ Popupmenu creates a jmenuitem with an action.
6
+
7
+ frmincr200901211826.tgz
8
+ * * *
9
+ **2009-01-20 22:50**
10
+ ## Class PopupMenu ##
11
+
12
+ Based on menubar, a popup menu. Intended to be used with widgets / components.
13
+
14
+ frmincr200901202248.tgz
15
+ * * *
16
+ **2009-01-20 00:22**
17
+ ## Application Header like Alpine ##
18
+
19
+ Similar application header made in applicationheader.rb
20
+
21
+ frmincr200901200022.tgz
22
+ * * *
23
+ **2009-01-19 21:41**
24
+ ## Alpine Style Key Label Printing ##
25
+
26
+ See testtodo.rb for example.
27
+ Print Alpine Style labels at bottom
28
+
29
+ frmincr200901192140.tgz
30
+ * * *
31
+ **2009-01-19 15:53**
32
+ ## Table Changed Event ##
33
+
34
+ One may either trap the CHANGED event of a component OR
35
+ a TABLE_EDITING_EVENT which gives us previous and new values, previous row and col.
36
+ This will fire for each cell exited, and on editing stopped (if a user presses ENTER after editing).
37
+
38
+ One example would be to set a date_modified if any column of a row changes.
39
+
40
+ Also am firing CHANGED from table for its cells.
41
+
42
+ frmincr200901191548.tgz
43
+ * * *
44
+ **2009-01-18 22:11**
45
+ ## listbox, combo case insensitive match ##
46
+
47
+ Char matches use casecmp
48
+
49
+ Field was not calling process_key(ch) - now calling super in handle_key, so process_key is called
50
+ in handle_key.
51
+
52
+ frmincr200901182210.tgz
53
+ * * *
54
+ ** 2009-01-18 12:37 **
55
+ ## modified? and def modified tf##
56
+
57
+ changed fields modified? to check for change in field value
58
+
59
+ Field ESC puts back original value
60
+
61
+ TAB and BACKTAB in table. so you need to M-tab out of it.
62
+
63
+ **2009-01-17 01:56**
64
+ ## Tables: editing options more polishing ##
65
+
66
+ also, columns may be marked as non-editable
67
+ calling on_leave of component
68
+
69
+
70
+ frmincr200901170155.tgz
71
+ * * *
72
+ **2009-01-16 20:13**
73
+ ## Table - cyclic traversal to next column, auto editing of cells ##
74
+
75
+ Automatic editing on tabbing in and out on Table.
76
+ Trying this out. USe Alt-Tab for going to next cell if you are editing a cell.
77
+ If not editing then RIGHT and LEFT work.
78
+
79
+ frmincr200901162012.tgz
80
+ * * *
81
+ **2009-01-16 00:31**
82
+ ## Tables: Events and Listeners implemented ##
83
+
84
+ on enter row, col and cell.
85
+ Table Column property change
86
+ Various others.
87
+
88
+ frmincr200901160030.tgz
89
+ * * *
90
+ **2009-01-15 01:23**
91
+ ## Events in tables added ##
92
+
93
+ (just days backup)
94
+
95
+ frmincr200901150122.tgz
96
+ * * *
97
+ ** 2009-01-15 00:17 **
98
+
99
+ Table on_enter and on_leave row, column and cell events
100
+
101
+ Also put key definitions for table and listbox in listkeys.rb
102
+ so they can be shared.
103
+ Fixed def handle_key of listbox so if key not handled, it still
104
+ tries further.
105
+
106
+ **2009-01-14 12:56**
107
+ ## Forward and backward searching in Listbox ##
108
+
109
+ M-f to start a forward search (asks for regex)
110
+ M-F to start a backward search (asks for regex)
111
+ M-g to keep searching forward
112
+ M-G to reverse direction of search
113
+
114
+
115
+ * * *
116
+ **2009-01-13 23:29**
117
+ ## Split messagebox and listbox to separate files ##
118
+
119
+ * * *
120
+ **2009-01-13 01:39**
121
+ ## Table Editing ##
122
+
123
+ String, number, checkbox and combolist
124
+
125
+ frmincr200901130139.tgz
126
+ * * *
127
+ **2009-01-13 01:03**
128
+ ## Table editing is on ##
129
+
130
+ Testing and working out visual glitch in checkbox edit.
131
+ One extra char displayed by editor but not by renderer.
132
+ So a white space gets left over.
133
+
134
+ frmincr200901130102.tgz
135
+ * * *
136
+ **2009-01-11 20:06**
137
+ ## editable lists: check and combo boxes ##
138
+
139
+ Now you may edit a list of checkboxes or combo boxes
140
+
141
+ frmincr200901112006.tgz
142
+ * * *
143
+ **2009-01-11 16:32**
144
+ ## combo box cell renderer in listbox ##
145
+
146
+ almost done. some touching up
147
+
148
+ frmincr200901111632.tgz
149
+ * * *
150
+ **2009-01-11 00:28**
151
+ ## ComboBoxCellRenderer ##
152
+
153
+ For lists, to display combo boxes.
154
+ Althoght does not make much sense. THe normal list box already has
155
+ selection of rows. so its like a list which is now editable and selectable.
156
+
157
+ This has only checkboxes. How do i pass in text in addition to booleans
158
+ given that the method interface of renderers takes one value.
159
+
160
+ frmincr200901110026.tgz
161
+ * * *
162
+ **2009-01-10 23:18**
163
+ ## About to move selector code up ##
164
+
165
+ To avoid duplication in renderers
166
+
167
+ frmincr200901102317.tgz
168
+ * * *
169
+ **2009-01-10 01:22**
170
+ ## listbox editing ##
171
+
172
+ WIP, but i've got editing in.
173
+ To sort out key related issues. Editing keys are clashing with selection
174
+ and navig keys.
175
+ Touching up also.
176
+
177
+ frmincr200901100121.tgz
178
+ * * *
179
+ **2009-01-08 23:34**
180
+ ## class Textarea moved to new scrollable ##
181
+
182
+ Thank God, done away with the old scrollable module.
183
+ Textarea is now in rtextarea.rb
184
+
185
+ frmincr200901082333.tgz
186
+ * * *
187
+ **2009-01-08 20:57**
188
+ ## wrapping option in TextArea ##
189
+
190
+ WRAP_WORD passed with set_content
191
+
192
+ frmincr200901082057.tgz
193
+ * * *
194
+ **2009-01-08 19:21**
195
+ ## New Listbox ##
196
+
197
+ Movement between selected items (using ' and ") and C-e to clear selection.
198
+
199
+ frmincr200901081921.tgz
200
+ * * *
201
+ **2009-01-08 14:38**
202
+ ## before moving TextView to listscrollable ##
203
+
204
+ about to move
205
+
206
+ frmincr200901081438.tgz
207
+ * * *
208
+ **2009-01-08 01:41**
209
+ ## firing property change and others ##
210
+
211
+ Some major changes (internal)
212
+
213
+ 1. In order not to repaint the entire form each time, we must only repaint a widget when modified.
214
+ However, as can be seen, widgets are being modified by other widgets. Thus whenever a property
215
+ is changed, we need a flag to be set that repainting is required.
216
+
217
+ Thus, copied dsl_accessor and made dsl_property. Whenever, such props are modified, a property
218
+ change is now fired, and repaint_required is set to true.
219
+ I am currently changing this. What this means is that on startup, fire_prop_change will be called
220
+ many times, and i need to avoid this on first time instantiation. TODO.
221
+
222
+ 2. The tricky part was text_variables. When there value changes any widget (such as label) auto
223
+ changes. When a text_variable is defined for field, internally that field, adds itself as a
224
+ dependent. When its value is changed, it fires a change to the dependent field.
225
+
226
+ 3. The real worrisome part was this:
227
+ When user passes in a hash in the constructor, i was directly setting variables, NOT calling
228
+ methods. Tracked this down. Now i am calling methods and not setting variables. See rwidget.rb
229
+ instance_variable_set (top). Only throrough testing will tell how much this change
230
+ will affect stuff. Maybe not.
231
+
232
+ frmincr200901080133.tgz
233
+ * * *
234
+ **2009-01-07 23:35**
235
+ ## New Listbox ##
236
+
237
+ with cleaner scrolling code, and cell renderer
238
+ Largely done.
239
+
240
+ frmincr200901072335.tgz
241
+ * * *
242
+ **2009-01-07 00:36**
243
+ ## Field storing datatypes ##
244
+
245
+ 1. set_buffer updates datatype of data
246
+ 2. get_value reverts to original datatype (stored as a string since many methods
247
+ do check length etc
248
+
249
+ Widget binds_keys
250
+ Certain widgets like tables etc would like to bind_keys which could be used by other
251
+ widgets. Such as left and right keys or del key. So these should not be at the program
252
+ level, but only at widget level.
253
+
254
+ frmincr200901070034.tgz
255
+ * * *
256
+ **2009-01-05 01:51**
257
+ ## rtable with scrolling ##
258
+
259
+ simple scrolling unlike scrollable which sucked biggie time
260
+
261
+ frmincr200901050150.tgz
262
+ * * *
263
+ **2009-01-05 01:21**
264
+ ## rtable.rb ##
265
+
266
+ more wip
267
+
268
+ frmincr200901050121.tgz
269
+ * * *
270
+ **2009-01-04 01:01**
271
+ ## table wip ##
272
+
273
+
274
+
275
+ frmincr200901040100.tgz
276
+ * * *
277
+ **2009-01-01 23:45**
278
+ ## before change to textare ##
279
+
280
+ abot to put back \n and see
281
+
282
+ frmincr200901012345.tgz
283
+ * * *
284
+ **2009-01-01 13:01**
285
+ ## Boolean buttons use "variable" not "text_variable" ##
286
+
287
+ That was a misunderstanding. Checkbutton, Toggle and Radio use "variable" which
288
+ updates or gets updated by any changes.
289
+
290
+ frmincr200901011300.tgz
291
+ * * *
292
+ **2008-12-31 23:46**
293
+ ## Variable modifications ##
294
+
295
+ Had to move to get_value and set_value so that Variable could support a hash or array without
296
+ anything else changing.
297
+ That means if a set of checkboxes and radio buttons are based on one Variable which is a Hash,
298
+ they will continue working as before, since they always pass t heir name as a second parm to set_value
299
+ (whch is used as a key, if Variable is a hash).
300
+ Earlier i was using value= but that does not allow 2 params.
301
+ In the case of a hash, even retrieving requires the widgt name as key.
302
+ So seeing how many params are coming in does not work. Thus moving from value() and value= to get and set value.
303
+
304
+ Currently, its there as RVariable. Will be moved to Variable in a day or so.
305
+
306
+ frmincr200812312341.tgz
307
+ * * *
308
+ **2008-12-29 17:50**
309
+ ## textarea bugfixes in wrap and wrapping ##
310
+
311
+ more bug fixes
312
+ also added wrap_para (see menu Wrap)
313
+
314
+ * * *
315
+ **2008-12-28 21:05**
316
+ ## Textarea wrapping bugs fixed ##
317
+
318
+ I believe things are working now.
319
+ ALso added footers to the text area and view. That could help me in debugging too.
320
+
321
+ frmincr200812282104.tgz
322
+ * * *
323
+ **2008-12-28 01:25**
324
+ ## WIP in Table ##
325
+
326
+ working
327
+
328
+ frmincr200812280125.tgz
329
+ * * *
330
+ **2008-12-27 01:07**
331
+ ## bug fixes in textarea cursor movement ##
332
+
333
+ with respect to wrapping lines
334
+ backspace behaviour.
335
+ newlines
336
+ still some glitches.
337
+
338
+ * * *
339
+ **2008-12-26 20:07**
340
+ ## Missed one case of wrapping in Textarea ##
341
+
342
+ Whene there IS data in next row. Fixed.
343
+
344
+ * * *
345
+ **2008-12-25 18:30**
346
+ ## ACS_ boxes in TextArea and TextView ##
347
+
348
+ ACS_ used for boxes
349
+
350
+ * * *
351
+ **2008-12-25 18:22**
352
+ ## better boxes using ACS_ for messagebox and Listbox ##
353
+
354
+ Using ACS_ code to get boxes.
355
+
356
+ * * *
357
+ **2008-12-24 20:20**
358
+ ## InputDataEvent: firing events on changes in TextArea ##
359
+
360
+ Now reporting changes in text happening in TextArea via InputDataEvent
361
+
362
+ * * *
363
+ **2008-12-24 15:51**
364
+ ## Alt-keys in TextArea and View were getting eaten up ##
365
+
366
+ Returning alt keys so buttons and mnemonics can process
367
+
368
+ * * *
369
+ **2008-12-24 15:40**
370
+ ## vertical alignment of combolists ##
371
+
372
+ ABove, below, center, and same row as field.
373
+
374
+ * * *
375
+ **2008-12-24 13:00**
376
+ ## added autoscroll to TextArea ##
377
+
378
+ Goes to end with each "<<" command.
379
+ Also fixed goto_end and goto_start. I had changed the names in TextArea but not in scrollable.
380
+
381
+ * * *
382
+ **2008-12-23 23:49**
383
+ ## Migrated buttons to mnemonic and ampersand for hotkeys ##
384
+
385
+ Unerline will result in underline, overriding that created by ampersand, but not register key.
386
+ mnemonic will register alt-key and underline first occurence
387
+ Using ampersand will register and underline given occurrence.
388
+
389
+ frmincr200812232347.tgz
390
+ * * *
391
+ **2008-12-23 13:38**
392
+ ## Added observers to events ##
393
+
394
+ An object can listen in to events of another. Could be a hack.
395
+ Helps if user creates an object which further creates others. User binds actioon to top level object.
396
+ But we want internal objects events to also fire action.
397
+
398
+ frmincr200812231337.tgz
399
+ * * *
400
+ ## Multiple bindings for each event ##
401
+
402
+ Each object can bind its actions without fear of overwriting each other.
403
+ Variables update_command also stacked.
404
+
405
+ **2008-12-22 15:13**
406
+
407
+ ## class Field: CHANGED event, triggered when tabbing out after changing ##
408
+
409
+ .
410
+
411
+ frmincr200812221513.tgz
412
+ * * *
413
+ **2008-12-22 12:52**
414
+ ## Added null_allowed to class Field ##
415
+
416
+ if null_allowed, validation will be skipped if empty, however
417
+ LEAVE event will be triggered.
418
+
419
+ frmincr200812221251.tgz
420
+ * * *
421
+ **2008-12-22 02:02**
422
+ ## xterm-color key hacks and vt100/200 fixes ##
423
+
424
+ F1..F4 hack for xterm color
425
+ in getchar().
426
+ Menu selection (highlighting) in rform.rb
427
+
428
+ frmincr200812220201.tgz
429
+ * * *
430
+ **2008-12-20 22:05**
431
+ ## Removed CommonIO includes ##
432
+
433
+ replaced with @window.printstring
434
+
435
+ frmincr200812202204.tgz
436
+ * * *
437
+ **2008-12-20 13:23**
438
+ ## toggle_key for menu bar ##
439
+
440
+ menu bar now can define and bind its toggle key.
441
+
442
+ frmincr200812201322.tgz
443
+ * * *
444
+ **2008-12-19 21:28**
445
+ ## scrolling in edit box ##
446
+
447
+ Implemented horiz scrolling in single line edit box
448
+ Forgot to add:
449
+ Editable and non-editabl combo-boxes were also added the other day.
450
+
451
+ frmincr200812192127.tgz
452
+ * * *
453
+ **2008-12-15 14:16**
454
+ ## tabbedpanes - with radio buttons ##
455
+
456
+ Much improved. Uses an extended radio button, so states of selected, focussed and unfocussed
457
+ are easy to display.
458
+
459
+ frmincr200812151415.tgz
460
+ * * *
461
+ **2008-12-14 16:50**
462
+ ## tabbedpane-part2 ##
463
+
464
+ with panels and forms. but how to navigate between buttons and form.
465
+
466
+ frmincr200812141650.tgz
467
+ * * *
468
+ **2008-12-14 14:24**
469
+ ## preliminary tabbed pane ##
470
+
471
+ need to create form earlier so user can get the form and set it.
472
+
473
+ frmincr200812141424.tgz
474
+ * * *
475
+ **2008-12-11 22:32**
476
+ ## Popuplist in action ##
477
+
478
+ sample of popuplist called whenever cursor falls in User field.
479
+ Pressing Enter passes the value.
480
+
481
+ frmincr200812112231.tgz
482
+ * * *
483
+ **2008-12-11 01:27**
484
+ ## class PopupList ##
485
+
486
+ wip but almost done.
487
+ pops up a list which can be selected from.
488
+
489
+ frmincr200812110126.tgz
490
+ * * *
491
+ **2008-12-03 20:13**
492
+ ## Field accepts values() and valid_regex() ##
493
+
494
+ Restrict entry to values
495
+
496
+ Validate field against valid_regex.
497
+
498
+ frmincr200812032012.tgz
499
+ * * *
500
+ **2008-12-01 18:34**
501
+ ## Messagebox takes list ##
502
+
503
+ Allow user to make a messagebox passing a list.
504
+
505
+ frmincr200812011834.tgz
506
+ * * *
507
+ **2008-11-30 00:58**
508
+ ## friendly colors - under testing ##
509
+
510
+ Have implemented human friendly colors for foreground and background
511
+ Tested out on some widgets but not all. Need to totally test and clean code.
512
+ Is functioning. See radio buttons and their label, see checkbox which makes the label bold.
513
+
514
+ frmincr200811300056.tgz
515
+ * * *
516
+ **2008-11-29 21:10**
517
+ ## experimental Colormap to make color definitions easy ##
518
+
519
+ Added a Colormap module that helps create and retrieve colors by human names
520
+ so we can define colors in widgets without reference to color_pairs.
521
+
522
+ frmincr200811292109.tgz
523
+ * * *
524
+ **2008-11-28 00:30**
525
+ ## CheckBoxMenuItem ##
526
+
527
+ Implemented a checkbox menu item, works but i am not pleased, quite dirty.
528
+
529
+ Widgets are tied to a form, for ease of construction.
530
+ In the case of menus they are not, and menus print in a different manner.
531
+
532
+ Submenu should also have been a class, perhaps.
533
+
534
+ frmincr200811280026.tgz
535
+ * * *
536
+ **2008-11-27 20:11**
537
+ ## ToggleButton ##
538
+
539
+ Now a togglebutton class that is extended by Radio and checkbox
540
+ Togglebutton is itself a toggleable button.
541
+
542
+ frmincr200811272010.tgz
543
+ * * *
544
+ **2008-11-27 18:54**
545
+ ## extended radiobutton from checkbox ##
546
+
547
+ to reduce code.
548
+ Now i am thinkig both shuold extend one class. My ole Swing book gaves me a cool
549
+ name to call it. ToggleButton!
550
+
551
+ frmincr200811271853.tgz
552
+ * * *
553
+ **2008-11-27 12:13**
554
+ ## menubar hotkey ##
555
+
556
+ Done handling of hotkey/mnemonic in menu
557
+ and closing of menubar when action complete
558
+
559
+ frmincr200811271212.tgz
560
+ * * *
561
+ **2008-11-27 00:24**
562
+ ## Titles in all scrollable views. ##
563
+
564
+ Added titles and title attribs.
565
+
566
+ frmincr200811270023.tgz
567
+ * * *
568
+ **2008-11-26 23:32**
569
+ ## horiz scrolling in TextView ##
570
+
571
+ Textview now can scroll horiz.
572
+ Ctrl-E and Ctrl-A behavior in cases of data exceeding width taken care of.
573
+
574
+ frmincr200811262331.tgz
575
+ * * *
576
+ **2008-11-26 22:26**
577
+ ## TextView and other fixes ##
578
+
579
+ Introduced a TextView widget which just shows multiline text, scrollable.
580
+ Allows us to programmatically scroll the same.
581
+
582
+ Tested and fixed LEAVE and ENTER of widgets (had forgotten that!).
583
+
584
+ frmincr200811262224.tgz
585
+ * * *
586
+ **2008-11-26 11:49**
587
+ ## field.show ##
588
+
589
+ 1. implemented Field.show (password field in example will show *)
590
+
591
+ 2. created a method getvalue_for_paint, so that getvalue returns actual value for field
592
+ or widget and no display stuff.
593
+
594
+ 3. Button. surround_chars. change the sq brackets to soething else.
595
+
596
+ frmincr200811261147.tgz
597
+ * * *
598
+ **2008-11-25 23:58**
599
+ ## selectable in ListBox ##
600
+
601
+ added a new module selectable copying from sqlpopup
602
+ however, this is a window and not a pad so its much more diffucult.
603
+
604
+ Due to field_enter and exit, the selected row shows affter 2 movements!
605
+
606
+ Clear selection not yet functioning here. But select/deselect/next sel and prev sel are working.
607
+
608
+ frmincr200811252356.tgz
609
+ * * *
610
+ **2008-11-22 23:20**
611
+ ## RadioButton ##
612
+
613
+ Added another widget. took less than 2 mins: a radio button. Praps I should just extend CheckButton
614
+ rather than copy. Just a couple of lines changed.
615
+ Some bugs may have cropped up in Textarea after introduction of hard and soft returns.
616
+ Entry was happening one col before where cursor was appearing.
617
+
618
+ frmincr200811222319.tgz
619
+ * * *
620
+ **2008-11-22 21:50**
621
+ ## CheckBox ##
622
+
623
+ Took me less than 5 mins to implement a CheckBox inheriting from button.
624
+
625
+ frmincr200811222149.tgz
626
+ * * *
627
+ **2008-11-22 19:43**
628
+ ## textarea ##
629
+
630
+ moving up characters when deleting
631
+ soft and hard return so wrapping can be respected when deleting.
632
+
633
+ frmincr200811221943.tgz
634
+ * * *
635
+ **2008-11-22 16:47**
636
+ ## textarea ##
637
+
638
+ incoming data wrap it.
639
+ But i do need to look at newlines and preserve. current logic loses them.
640
+
641
+ frmincr200811221647.tgz
642
+ * * *
643
+ **2008-11-22 01:41**
644
+ ## textarea word wrap when pushing from behind ##
645
+
646
+ still needs ironing out. could be some issues in rare cases.
647
+
648
+ frmincr200811220140.tgz
649
+ * * *
650
+ **2008-11-22 00:45**
651
+ ## textarea with wrapping #1 ##
652
+
653
+ wrapping as cursor exceeds border. however, not yet when we insert chars anddelete.
654
+
655
+ frmincr200811220044.tgz
656
+ * * *
657
+ **2008-11-21 23:42**
658
+ ## textarea ##
659
+
660
+ more issues in movement sorted out when end of length.
661
+ Box showing correctly now.
662
+
663
+ frmincr200811212342.tgz
664
+ * * *
665
+ **2008-11-21 22:16**
666
+ ## textarea with newlines ##
667
+
668
+ added in newlines, and we don't print them.
669
+ also when joining we remove.
670
+ be careful i dont put two.
671
+
672
+ frmincr200811212215.tgz
673
+ * * *
674
+ **2008-11-21 21:54**
675
+ ## Textarea more work on joining and spliting rows ##
676
+
677
+ wip
678
+
679
+ frmincr200811212153.tgz
680
+ * * *
681
+ **2008-11-21 17:39**
682
+ ## Textarea starting ##
683
+
684
+ Have a basic textarea working
685
+ Still very rough.
686
+
687
+ frmincr200811211738.tgz
688
+ * * *
689
+ **2008-11-21 01:38**
690
+ ## Listbox ##
691
+
692
+ created a scrollable listbox as a widget and put in my form.
693
+ Also a scrollable module to include to get the functionality
694
+
695
+ frmincr200811210137.tgz
696
+ * * *
697
+ **2008-11-20 15:58**
698
+ ## Variable ##
699
+
700
+ Added custom to MessageBox
701
+
702
+ Added class Variable and tested out with button and label.
703
+
704
+ frmincr200811201558.tgz
705
+ * * *
706
+ **2008-11-20 01:38**
707
+ ## MessageBox ##
708
+
709
+ Have made a messagebox just like links
710
+ - uses Button class.
711
+ - Not using labels etc yet. Not required. Keeping it simple.
712
+
713
+
714
+ frmincr200811200137.tgz
715
+ * * *
716
+ **2008-11-19 19:59**
717
+ ## Widget class as super ##
718
+
719
+ Created the widget class with DSL properties
720
+ Now all widgets extend it,
721
+ so common functionality as well as DSLish.
722
+
723
+ frmincr200811191958.tgz
724
+ * * *
725
+ **2008-11-19 01:07**
726
+ ## FIELD navigation ##
727
+
728
+ a small hack and we can circle and it does not cause an overflow now.
729
+ But the focusables array was much neater and less risky.
730
+
731
+ frmincr200811190106.tgz
732
+ * * *
733
+ **2008-11-19 00:53**
734
+ ## FIELD ##
735
+
736
+ I have reworked the logic of traversal to use a loop, no extra array and no
737
+ recursion.
738
+ Only issue is i cant circle around snce it goes into a stack overflow.
739
+ The extra array was simpler though.
740
+
741
+ frmincr200811190052.tgz
742
+ * * *
743
+ **2008-11-18 20:41**
744
+ ## menubar working !!! ##
745
+
746
+ menubar working with submenus. destroys and passes contrl back to parent on LEFT
747
+ and goes to nezt on RIGHT.
748
+
749
+ frmincr200811182040.tgz
750
+ * * *
751
+ **2008-11-18 19:43**
752
+ ## menubar wip printing menu on leave and enter ##
753
+
754
+ 1. now submenu showing , onleave onenter okay.
755
+
756
+ 2. only thingie left is the navigation
757
+
758
+ frmincr200811181942.tgz
759
+ * * *
760
+ **2008-11-18 19:05**
761
+ ## menubar wip ##
762
+
763
+ Now submenu is created at tright time and destroyed onleave.
764
+
765
+ 1. to take care of priting of menu as a menuitem
766
+ 2. to pass control ofkeys into the new menu
767
+
768
+ frmincr200811181904.tgz
769
+ * * *
770
+ **2008-11-18 18:18**
771
+ ## menubar wip ##
772
+
773
+ paint does not create.
774
+ wip
775
+ but still to look into submenu
776
+
777
+ frmincr200811181818.tgz
778
+ * * *
779
+ **2008-11-18 16:18**
780
+ ## menubar wip ##
781
+
782
+ submenu paints itself since it s on enter
783
+ need to make some changes ...
784
+ fire -paint submenu
785
+
786
+ frmincr200811181617.tgz
787
+ * * *
788
+ **2008-11-18 03:04**
789
+ ## submenu ##
790
+
791
+ it is displaying now, but firing immeidately.
792
+ also we will need to walk down it and select.
793
+
794
+ frmincr200811180303.tgz
795
+ * * *
796
+ **2008-11-18 00:40**
797
+ ## menu bar actions etc fine ##
798
+
799
+ Barring ability to hav submenu's actions are working.
800
+
801
+ frmincr200811180040.tgz
802
+ * * *
803
+ **2008-11-17 18:51**
804
+ ## menubar wip ##
805
+
806
+ its up but no actions yet.
807
+
808
+ frmincr200811171851.tgz
809
+ * * *
810
+ **2008-11-17 03:14**
811
+ ## menu menubar menuitem interim work ##
812
+
813
+ interim work in progress
814
+ things are showing need alignment and polishing
815
+ actions to do
816
+
817
+ frmincr200811170313.tgz
818
+ * * *
819
+ **2008-11-16 22:09**
820
+ ## changed key handling down to objects ##
821
+
822
+ so they can take and ignore what they want
823
+ earlier form was trying to be too intelligent.
824
+
825
+ frmincr200811162208.tgz
826
+ * * *
827
+ **2008-11-16 19:18**
828
+ ## Field form and label ##
829
+
830
+ Tried to do more of method_missing and define_method to make it dsl-ish but failed.
831
+ Added datatype, chars_allowed and some bug-fixing.
832
+ Need to put exit_proc.
833
+ Now to try out a menubar.
834
+
835
+ frmincr200811161916.tgz
836
+ * * *
837
+ **2008-11-16 03:16**
838
+ ## Button which inherits label ##
839
+
840
+ circular order of navigation
841
+ editing taking care of different types of fields
842
+
843
+ WAIT. What is label doing inside FORM Why ? it can remain on Window, no ?
844
+ We are complicating code by inclusing in form and widgets.
845
+
846
+ frmincr200811160315.tgz
847
+ * * *
848
+ **2008-11-16 01:17**
849
+ ## form implemented buttons too ##
850
+
851
+ but i dont like the focusable part. need to redo
852
+
853
+ frmincr200811160117.tgz
854
+ * * *
855
+ **2008-11-15 13:06**
856
+ ## changed in forms and fields as per TK ##
857
+
858
+ changing things a bit.
859
+
860
+ frmincr200811151306.tgz
861
+ * * *
862
+ **2008-11-15 02:33**
863
+ ## rform ruby forms fields ##
864
+
865
+ I am writing a simpler form and field thingie.
866
+ I know thats awfully ambitious, but the sequence of ncurses sucks.
867
+
868
+ We need to be more dynamic.
869
+ I have made a displayable form. But need to trap some keys are kick some asss.
870
+
871
+ frmincr200811150232.tgz
872
+ * * *
873
+ **2008-11-14 18:48**
874
+ ## reintroduction of datasource ##
875
+
876
+ testing sqlpopup wiht processes and data
877
+
878
+ frmincr200811141847.tgz
879
+ * * *
880
+ **2008-11-14 00:01**
881
+ ## Fixes for smaller screens ##
882
+
883
+ A lot of hardcoding for large screens
884
+
885
+ - changes in key labels
886
+ - changes in data and col names
887
+ - padrefresh
888
+ - bug in pressing space
889
+ - printing messages in centre, no more beeps please.
890
+ Now small screens can be requested.
891
+
892
+ frmincr200811140000.tgz
893
+ * * *
894
+ **2008-11-13 21:52**
895
+ ## Cleanup , Refact and polishing output ##
896
+
897
+ 1. cleaned up junk code
898
+
899
+ 2. moved classes out. made key label printer into a class
900
+
901
+ 3. common print modules
902
+
903
+ 4. common db module
904
+
905
+ 5. sizing of columns and formatting of titles
906
+
907
+ 6. align of num fields
908
+
909
+ frmincr200811132151.tgz
910
+ * * *
911
+ **2008-11-13 10:46**
912
+ ## highlighting ##
913
+
914
+ Using wchgat for highlighting pad instead of rewriting data
915
+ Also, therefore changed select functionality.
916
+
917
+ frmincr200811131045.tgz
918
+ * * *
919
+ **2008-11-13 01:15**
920
+ ## key_labels ##
921
+
922
+ Worked on much better coded key_labels which don't require the poor hacky format the old one did
923
+ Saner.
924
+ Also putting a message in -3 row and letting it go off. Its on the window. Goes off in next keystroke auto.
925
+
926
+ frmincr200811130112.tgz
927
+ * * *
928
+ **2008-11-12 19:31**
929
+ ## flickering and key movement ##
930
+
931
+ - reduced flickering by doing werase only when absolutely nec. but this could lead
932
+ to some situations where clearing is not done. to keep checking.
933
+
934
+ - some errors in key movement due to wrong @window value or space etc
935
+ having incorrect checks. Need to keep checking.
936
+
937
+ frmincr200811121929.tgz
938
+ * * *
939
+ **2008-11-12 12:41**
940
+ ## Regexp and symbols in mappings ##
941
+
942
+ In order that printables can be used had to add REGEXP in mapping.
943
+
944
+ Also added symbols
945
+
946
+ So now we can't search Hash normally, have to iterate. So ordered hash hadto beused.
947
+ Tried to move to arrays, but pendingkeys would have not been possible.
948
+ Symbols are not tested yet.
949
+
950
+ frmincr200811121239.tgz
951
+ * * *
952
+ **2008-11-12 00:39**
953
+ ## sqlpopup and keymapper ##
954
+
955
+
956
+ We have a much simpler than VER keymapper. Code is small.
957
+ - Uses keyboard.rb from VER project to give us ESC and meta/alt keys.
958
+ - We use same syntax for configuring such as class.let :mode do etc.
959
+ - Provided:
960
+ - single keys combinations
961
+ - a mode with its set of keys
962
+ - dual keys such as C-x C-c or C-x p etc which do not change mode.
963
+
964
+ frmincr200811120036.tgz
965
+ * * *
966
+ **2008-11-11 23:40**
967
+ ## sqlpopup our own modes and key ##
968
+
969
+ allows cx mode with its keys
970
+ but its looks okay for a mode
971
+ for a multiple key we would prefer to say : C-c C-x
972
+ and not create a separate context./mode.
973
+
974
+ frmincr200811112339.tgz
975
+ * * *
976
+ **2008-11-11 23:12**
977
+ ## sqlpopup my version ##
978
+
979
+ trying to build a simpler version of sqlpopup
980
+ that i can understand. VER is pretty complex and the scope is not relevant to our
981
+ kind of app.
982
+
983
+ frmincr200811112311.tgz
984
+ * * *
985
+ **2008-11-10 12:25**
986
+ ## sqlpopup ##
987
+
988
+ after some minor bugfixes in space bar, and better messages
989
+ now i will try to integrate keymap and keyboard.
990
+
991
+ frmincr200811101224.tgz
992
+ * * *
993
+ **2008-11-09 23:50**
994
+ ## sqlpopup out own keymapper ##
995
+
996
+
997
+ Implemented a small quick dirty key method mapper. This will make transition to keyboard.rb
998
+ easier.
999
+
1000
+ frmincr200811092349.tgz
1001
+ * * *
1002
+ **2008-11-09 19:37**
1003
+ ## sqlpopup ##
1004
+
1005
+ removed blank line and now selector on actual row 1.
1006
+
1007
+ put columns on windw however, this means col names always shpwing but wont scroll!!
1008
+
1009
+ frmincr200811091935.tgz
1010
+ * * *
1011
+ **2008-11-09 15:43**
1012
+ ## clearing selection ##
1013
+
1014
+ sqlpopup
1015
+ also numbering of lines based on content.length
1016
+
1017
+ frmincr200811091542.tgz
1018
+ * * *
1019
+ **2008-11-09 13:05**
1020
+ ## sqlpopup ##
1021
+
1022
+ - row selection and navigation.
1023
+ - search was no longer scrolling, fixed that so prow is always displayed.
1024
+
1025
+ frmincr200811091304.tgz
1026
+ * * *
1027
+ **2008-11-09 01:24**
1028
+ ## sqlview.rb ##
1029
+
1030
+ TABULAR sql view with much better scrolling like our old tabular thingie
1031
+ scrolling like alpine
1032
+ allows selection, we need to allow UNselect all, goto-selected etc.
1033
+
1034
+ frmincr200811090123.tgz
1035
+ * * *
1036
+ **2008-11-08 22:03**
1037
+ ## tabular view in pad ##
1038
+
1039
+ Used the pad program to give TABULAR View too.
1040
+ SIMPLE view has column name and data per row.
1041
+ ALTERNATING has name followed by data in next row.
1042
+ TABULAR gives the entire result in one tabular form
1043
+ TABULAR implements a search using "/" and ^N and ^P to go back/forth in search.
1044
+
1045
+ I need to make a selectable list which will return selectedrow, simple for use
1046
+ as help in dataentry forms.
1047
+
1048
+ frmincr200811082201.tgz
1049
+ * * *
1050
+ **2008-11-08 13:17**
1051
+ ## sqlresultsetpadviewer ##
1052
+
1053
+ Using pads, made a scrollable viewer for sql result sets.
1054
+ Has a goto record also.
1055
+
1056
+ To make tabular, with option of selecting.
1057
+
1058
+ frmincr200811081316.tgz
1059
+ * * *
1060
+ **2008-11-08 01:09**
1061
+ ## sqlview.rb ##
1062
+
1063
+ a program to view an sql resultset on screen.
1064
+ allows going through mult rows, and paging if more columns than will come on a screen.
1065
+
1066
+ Not tested with really long data. Will data get cut off or cause errors or what.
1067
+
1068
+ frmincr200811080108.tgz
1069
+ * * *
1070
+ **2008-11-07 20:24**
1071
+ ## mandatory fields ##
1072
+
1073
+ - checking at time of get_current_values_as_hash
1074
+ - display with asterisk if passed before form creation
1075
+
1076
+ frmincr200811072023.tgz
1077
+ * * *
1078
+ **2008-11-07 13:10**
1079
+ ## messages on execute and checks ##
1080
+
1081
+ insert/del/update messages
1082
+
1083
+ check on update/del whether select was done or not.
1084
+
1085
+ frmincr200811071309.tgz
1086
+ * * *
1087
+ **2008-11-07 01:42**
1088
+ ## on_exit and post_proc ##
1089
+
1090
+ These 2 are duplicating each other,
1091
+ Got both to work though. samples in contractedit1101.rb
1092
+
1093
+ frmincr200811070141.tgz
1094
+ * * *
1095
+ **2008-11-06 22:48**
1096
+ ## rowid and crud options ##
1097
+
1098
+ Have checked out contractedit1101 with view, edit, delete etc options.
1099
+ Made sure that only relvnt keys are visible and active
1100
+
1101
+ ## ROWID ##
1102
+ Now rowid can be switched on so edit and delete use that. Same for find all.
1103
+
1104
+ frmincr200811062246.tgz
1105
+ * * *
1106
+ **2008-11-05 23:49**
1107
+ ## create_view_one_application ##
1108
+
1109
+ the first of the easy to call applications for a table, tell him you only want to view one
1110
+ contract. The user can only quit from there. No operations possible.
1111
+
1112
+ Similarly now to do the view_any, delete_one, edit_one etc combinations.
1113
+
1114
+ frmincr200811052348.tgz
1115
+ * * *
1116
+ **2008-11-03 00:18**
1117
+ ## conditional submenu and sql options ##
1118
+
1119
+ Using @sql_actions, one can specify which options should be shown to user
1120
+ - retrict only to select, or upd/del etc, or give him no options
1121
+ - have to take care of bind keys also in this situation.
1122
+ - can start the program with a keyfield supplied
1123
+ or with the values to display supplied.
1124
+ See contractedit1101.rb.
1125
+
1126
+ frmincr200811030016.tgz
1127
+ * * *
1128
+ **2008-11-02 11:55**
1129
+ ## basiceditform.rb ##
1130
+
1131
+ functionality moved down from rbeditform to basicedit which should be instantiated
1132
+ hightlighting and helpproc display moved
1133
+ Now rbedit may either be extended and its handlers overridden,
1134
+ or else you can set handlers (if composing).
1135
+
1136
+ frmincr200811021154.tgz
1137
+ * * *
1138
+ **2008-11-01 23:47**
1139
+ ## contractedit1101.rb ##
1140
+
1141
+ This conttains the contract edit with:
1142
+ - calls to create_default_application which takes care of windows etc
1143
+ So calling code is very few lines. Fully functional table realted CRUD screen.
1144
+ - ADded WHERE and ORDER BY in actions.
1145
+ - The search interface is still not clear. Using ^X-M for clearing screen and inserting.
1146
+ Can be confusing.
1147
+
1148
+ frmincr200811012345.tgz
1149
+ * * *
1150
+ **2008-10-31 14:48**
1151
+ ## Actions: CRUD and FIND-all ##
1152
+
1153
+ crud actions working
1154
+ findall, first, last, next, previous.
1155
+
1156
+ frmincr200810311448.tgz
1157
+ * * *
1158
+ **2008-10-29 23:53**
1159
+ ## SingleTable ##
1160
+
1161
+ Have moved generic methods into a module which can be called or bound to keys.
1162
+ generic update,delete,select, insert and create_fields.
1163
+ Or maybe we can extend a class from rbedit. lets see.
1164
+
1165
+ frmincr200810292352.tgz
1166
+ * * *
1167
+ **2008-10-29 00:32**
1168
+ ## contractedit new_create_fields ##
1169
+
1170
+ this method uses the newly pimped FIELD object, hoping to make it MUCHO easier to create fields.
1171
+ Still a lot more that can go in, validate against values.
1172
+
1173
+ frmincr200810290030.tgz
1174
+ * * *
1175
+ **2008-10-28 11:26**
1176
+ ## more fields ##
1177
+
1178
+ more touching.
1179
+
1180
+ frmincr200810281126.tgz
1181
+ * * *
1182
+ **2008-10-28 11:16**
1183
+ ## work on create_field ##
1184
+
1185
+ an easier create_field method
1186
+ and many convenence methods for field settings and creation.
1187
+ not tested.
1188
+ changes are in rbform.rb
1189
+
1190
+ frmincr200810281115.tgz
1191
+ * * *
1192
+ **2008-10-28 00:13**
1193
+ ## contractedit.rb ##
1194
+
1195
+ a lot of generic stuff
1196
+ does insert/update
1197
+ - generic field creation
1198
+
1199
+ frmincr200810280013.tgz
1200
+ * * *
1201
+ **2008-10-26 13:27**
1202
+ ## new folder structure ##
1203
+
1204
+ Finally used hoe
1205
+ - created new structure
1206
+ - called it rbcurse
1207
+ - updated requires
1208
+ - moved dsls to dsl and outputs to out. (older ones)
1209
+ - now i will create DSLS and OUTs in a totally different area so i don't
1210
+ clutter up the project.
1211
+
1212
+ frmincr200810261325.tgz
1213
+ * * *
1214
+ **2008-10-26 00:57**
1215
+ ## contractedit.rb ##
1216
+
1217
+ passing a values hash and displaying values
1218
+ to pass an ID and have it select
1219
+ to save data on screen
1220
+
1221
+ frmincr200810260057.tgz
1222
+ * * *
1223
+ **2008-10-25 23:08**
1224
+ ## query and table app rewrite ##
1225
+
1226
+ with yield
1227
+ and some awful changes in main variable so that printing of header and footer can happen
1228
+ header and footer win is driving me NUTS !!!!!
1229
+
1230
+ frmincr200810252307.tgz
1231
+ * * *
1232
+ **2008-10-25 10:37**
1233
+ ## update DSL to give edit app for emailer.rb ##
1234
+
1235
+ _skelform2.rb generates emailer.rb with the block.
1236
+
1237
+ frmincr200810251036.tgz
1238
+ * * *
1239
+ **2008-10-25 00:20**
1240
+ ## more touches ##
1241
+
1242
+ - moved commons into EditApplication, removed from main
1243
+ - entire header, footer creation in Edit Application.
1244
+ - Is this causing more confusion, or reducing,
1245
+ - main and app point to EA.
1246
+ - perhaps emailer should not extend Application ?
1247
+
1248
+ frmincr200810250019.tgz
1249
+ * * *
1250
+ **2008-10-24 22:03**
1251
+ ## before yielding self ##
1252
+
1253
+ making a zip before yielding self in EditApplication.
1254
+
1255
+ frmincr200810242202.tgz
1256
+ * * *
1257
+ **2008-10-24 17:58**
1258
+ ## lambda and method from DSL ##
1259
+
1260
+ Did some crappy stuff so that you can use method or lambda from DSL.
1261
+
1262
+ frmincr200810241757.tgz
1263
+ * * *
1264
+ **2008-10-24 14:34**
1265
+ ## form and field handlers ##
1266
+
1267
+ Done some changes to handlers,
1268
+
1269
+ - moved handle_unhandled_keys up to rbform
1270
+ - used method(:) while passing procs
1271
+ - trying to enforce usage of Proc or Method in handlers and not going to main
1272
+ or datasource to check for an existing name
1273
+ i.e. reduce coupling.
1274
+ - tested with emailer.rb
1275
+
1276
+ Am hoping to make sqlite etc based rbeditforms simpler to implement
1277
+ by cutting out dataasource nad passing handlers in to the form.
1278
+
1279
+ frmincr200810241431.tgz
1280
+ * * *
1281
+ **2008-10-19 00:13**
1282
+ ## proc ##
1283
+
1284
+ bind and keys_handled has a proc too now
1285
+
1286
+ passing form to handlers not curritem and listselected from rbeditform.
1287
+ to be done in tableapplication too.
1288
+
1289
+ frmincr200810190012.tgz
1290
+ * * *
1291
+ **2008-10-18 22:37**
1292
+ ## set_proc ##
1293
+
1294
+ one can set a proc for populating form and saving.
1295
+ Some other cleaning up too.
1296
+
1297
+ frmincr200810182236.tgz
1298
+ * * *
1299
+ **2008-10-17 12:51**
1300
+ ## FIELD related factoring ##
1301
+
1302
+ A lot of stuff has gone into Field, valid, default, postproc
1303
+ This happens on get_value, set_value and field_term.
1304
+
1305
+ frmincr200810171250.tgz
1306
+ * * *
1307
+ **2008-10-16 14:58**
1308
+ ## touching up ##
1309
+
1310
+ a few more touches so that DSL generates exactly like pines mailer.
1311
+ Some form refreshing so that focus is on first field.
1312
+ Also, clearing error at top of loop.
1313
+
1314
+ frmincr200810161457.tgz
1315
+ * * *
1316
+ **2008-10-15 15:07**
1317
+ ## cleanup ##
1318
+
1319
+ removed @window, its already there are form_win() !
1320
+
1321
+ frmincr200810151506.tgz
1322
+ * * *
1323
+ **2008-10-15 12:57**
1324
+ ## set_value and get_value in FIELD ##
1325
+
1326
+ Taking care of ML fields and chomp inside FIELD
1327
+ Next change is to knock off @current.
1328
+
1329
+ frmincr200810151256.tgz
1330
+ * * *
1331
+ **2008-10-15 12:28**
1332
+ ## Changes to FIELD ##
1333
+
1334
+ set_value and get_value doing ML processing.
1335
+ But not calling it yet.
1336
+
1337
+ frmincr200810151227.tgz
1338
+ * * *
1339
+ **2008-10-15 11:34**
1340
+ ## email multiline format ##
1341
+
1342
+ This was having to be called by the user in form_post_proc
1343
+ Now before save, heightwill be checked.
1344
+
1345
+ Howevr, this should happen auto. Added get_value and set_value in FIELD. and maybe thats
1346
+ where it shouldhappen.
1347
+ But we have to use it, too. We are using @current.
1348
+
1349
+ frmincr200810151133.tgz
1350
+ * * *
1351
+ **2008-10-15 01:40**
1352
+ ## Edit DSL ##
1353
+
1354
+ Finally got the email program running from a DSL.
1355
+ One job pending still ... update_current_values.
1356
+ Some things could be generated at generate time, setup observers, rather
1357
+ than at load time.
1358
+
1359
+ Still then need to start getting a proper datasource into place.
1360
+
1361
+ frmincr200810150138.tgz
1362
+ * * *
1363
+ **2008-10-14 14:29**
1364
+ ## C-c ##
1365
+
1366
+ 1. Now getting c-y, c-z, c-s and c-q
1367
+ 2. We seem to have lost C-c
1368
+ The trap is eating it up totally.
1369
+ Finally i am trapping and doing an ungetch for which had to open the Ncurses class
1370
+ and fix.
1371
+ 3. Also allowing user to bind_key and use the REQ_ values
1372
+ 4. Fixed bugs so that keys_handled is called in rbeditform.
1373
+
1374
+ frmincr200810141427.tgz
1375
+ * * *
1376
+ **2008-10-13 20:44**
1377
+ ## Edit Emailer ##
1378
+
1379
+ More cleaning u and corrections in C-x method.
1380
+
1381
+ frmincr200810132044.tgz
1382
+ * * *
1383
+ **2008-10-13 18:50**
1384
+ ## highlighting field ##
1385
+
1386
+ Some cute coding, and we've got the current field label hightlighted.
1387
+ Sadly Message Text shows that : after it ;-(. That's the default.
1388
+
1389
+ Now to get the silly keylabels functional.
1390
+
1391
+ frmincr200810131848.tgz
1392
+ * * *
1393
+ **2008-10-13 17:32**
1394
+ ## Edit screen ##
1395
+
1396
+ More refactoring on editapplication and rbeditforms.
1397
+ Moved a lot iinto form. App should have less. Form should not keep calling into app.
1398
+
1399
+ Also this version has fields centered abd reverse video. I am now going the alpine way.
1400
+
1401
+ frmincr200810131731.tgz
1402
+ * * *
1403
+ **2008-10-13 12:57**
1404
+ ## gen4.rb EDIT FORM ##
1405
+
1406
+ I have the old gen2.rb redone into a datasource, rbeditform, editapplication.
1407
+ Just about coming up!
1408
+ Still many errors de to references from form to app.
1409
+
1410
+ Totally unclear here as to what the app is doing, and should it have all thefunctinolity
1411
+ in it or not. Too much calling from form to app.
1412
+
1413
+ Its quite a mess and needs a major overhaul.
1414
+
1415
+ I also need to make changes so that rt_hashes and rt_fields dont have to be passed.
1416
+
1417
+ Application should only have what is required by the main app for setting up and cleaning ==
1418
+ not all the stuff for regular work.
1419
+
1420
+ Form should contain all else.
1421
+
1422
+ frmincr200810131253.tgz
1423
+ * * *
1424
+ **2008-10-12 13:32**
1425
+ ## MENU ##
1426
+
1427
+ Updated menu.skel so it generates a class that inherits from menuApplication.
1428
+ It generates a menu class.
1429
+ It is working !
1430
+
1431
+ frmincr200810121331.tgz
1432
+ * * *
1433
+ **2008-10-12 00:29**
1434
+ ## running from menu ##
1435
+
1436
+ 1. Got the menu program working after all the changes in base classes.
1437
+
1438
+ 2. Got programs running from menu. Apparently, some panels were not being
1439
+ destroyed, so there was a BUS ERROR in update_panels.
1440
+
1441
+ 3. There was a warning of BOTTOM_WIN_WIDTH already defined that was messing the screen
1442
+ and i could not see it clearly, so it bugged me a long time.
1443
+
1444
+ All's okay but the skel programs have to be updated. The menu DSL minp1 has to be rerun to see
1445
+ if it gives correct output as per menu1.rb.
1446
+ Basically, panels have to be returned with windows so they can be destroyed.
1447
+
1448
+ frmincr200810120025.tgz
1449
+ * * *
1450
+ **2008-10-10 20:48**
1451
+ ## padreader and panelreader ##
1452
+
1453
+ touched up both and maximized them.
1454
+ worked on keys of padreader.
1455
+ Called both from commons1. Seems okay.
1456
+
1457
+ frmincr200810102048.tgz
1458
+ * * *
1459
+ **2008-10-10 18:19**
1460
+ ## padreader.rb ##
1461
+
1462
+ Made a class out of it
1463
+ Can view files using padreader using view_file(filename).
1464
+ Have not put buttons, and headers like in panelreader yet.
1465
+
1466
+ frmincr200810101818.tgz
1467
+ * * *
1468
+
1469
+ **2008-10-10 14:36**
1470
+ ## form specific key labels - wip ##
1471
+
1472
+ It is working but not standard
1473
+ Need to simplify it.
1474
+ qapp returns keylabels but does not support a keys_handled
1475
+ tapp has keyhasharray but does not generate its labels.
1476
+ we should junk app labels. that complicates things.
1477
+
1478
+ frmincr200810101433.tgz
1479
+ * * *
1480
+ **2008-10-10 11:58**
1481
+ ## tab and enter behaviour in query apps ##
1482
+
1483
+ Tab moves between fields in query form
1484
+ Tab in table moves back to query form.
1485
+ Enter in table runs query as b4, but now also moves focus to table
1486
+
1487
+ frmincr200810101157.tgz
1488
+
1489
+ **2008-10-09 22:23**
1490
+
1491
+ ## HELP ##
1492
+ Using __FILE__ in constructor of major programs to determine a name for file
1493
+ to check for help when user presses ?
1494
+ Application.rb checks for this.
1495
+
1496
+ * * *
1497
+ **2008-10-09 19:14**
1498
+
1499
+ ## panelreader ##
1500
+ deleting panel in ensure otherwise previous screen wuld be scr00d.
1501
+
1502
+ ## help ##
1503
+ Added a generic application_key_handler in Application.rb which shows
1504
+ page specific help. Currently, i have to work that out. Application should
1505
+ define a page. It by default pops up TODO !
1506
+
1507
+ * * *
1508
+ **2008-10-09 18:02**
1509
+
1510
+ More polishing on panelreader.rb
1511
+ But cannot get the line numbers correct.
1512
+ Also if I display line # on top, then cursor remains there.
1513
+ If i put the print statemnet at beg of loop, the line number is wonky.
1514
+ It is correct at end of loop, but then the cursor is stuck on top.
1515
+
1516
+ * * *
1517
+ **2008-10-09 13:34**
1518
+
1519
+ panelreader and editor
1520
+ so i can pop it up and view or edit content or a file
1521
+
1522
+ * * *
1523
+ **2008-10-09 01:05**
1524
+
1525
+ ## datasource class ##
1526
+
1527
+ Made this more reusable. Lots of silly stuff changed.
1528
+ * now it has a constructor.
1529
+ * does not do any work other than init.
1530
+ * more reusable than earlier.
1531
+
1532
+ * * *
1533
+ **2008-10-08 18:16**
1534
+
1535
+ ## handling of cursor and selection in subseq queries ##
1536
+
1537
+ especially if:
1538
+
1539
+ * fewer queries returned in second query
1540
+ * no queries returned in second query
1541
+
1542
+ Now cursor will always be in row one after a fresh query when you tab.
1543
+ Can't tab in if no rows.
1544
+
1545
+ * * *
1546
+ **2008-10-08 17:51**
1547
+
1548
+ ## get_curr_index bug ##
1549
+
1550
+ this was returning one more (base 1) so some users were doing -1
1551
+ Some methods were getting wrong curr_item like the handle_? methods.
1552
+
1553
+ User cannot tab into table if no data.
1554
+
1555
+ Issue of wrong header count if no rows also fixed.
1556
+
1557
+ * * *
1558
+
1559
+ **2008-10-08 14:48**
1560
+
1561
+ Moved stuff to Datasource class.
1562
+ Also checked out more stuff from DSL
1563
+ Added keys_handled to DLS and tested it.
1564
+
1565
+ * * *
1566
+
1567
+ **2008-10-07 22:40**
1568
+
1569
+ 1. based on datatype, aligning fields in table
1570
+ 2. based on datatype, using = in search query for integer and real and smallint