rbcurse-core 0.0.0 → 0.0.1

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