OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [insight/] [itcl/] [iwidgets3.0.0/] [CHANGES] - Blame information for rev 1773

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 578 markom
[incr Widgets] CHANGE LOG
2
 
3
==========================================================================
4
 -------------------------- iwidgets-3.0.0 ------------------------------
5
 -------------------- CHANGES FROM iwidgets-2.2.0 -----------------------
6
==========================================================================
7
 
8
  [incr Widgets] version 3.0.0 is compatable with itcl3.0
9
 
10
  [incr Widgets] has undergone a major overhaul between the last version
11
and 3.0.0.  Since so many changes have taken place it made more since to
12
list them by widget class name rather than the old style of new features
13
and bug fixes.  The majority of the changes are under the covers and will
14
have minimal impact of existing scripts, but there are a few that may
15
bite you.  To locate possible incompatabilities, just search this file
16
for the key words "POSSIBLE INCOMPATIBILITY".
17
 
18
  In addition, quite a few new widgets have been added to the set.  They
19
include the following:
20
 
21
        Calendar
22
        Checkbox
23
        Dateentry
24
        Datefield
25
        Disjointlistbox
26
        Extfileselectionbox
27
        Extfileselectiondialog
28
        Finddialog
29
        Hierarchy
30
        Labeledframe
31
        Mainwindow
32
        Messagebox
33
        Scrolledwidget
34
        Timeentry
35
        Timefield
36
        Watch
37
 
38
  Thanx to the following contributors who have been kind enough to help
39
me support this effort through enhancements, bug fixes, and new widgets.
40
 
41
        John Tucker             jatucker@austin.dsccc.com
42
        Mitch Gorman            emrys@net-gate.com
43
        John Reekie             johnr@EECS.Berkeley.EDU
44
        Alfredo Jahn            ajahn@spd.dsccc.com
45
        Michael McLennan        mmclennan@lucent.com
46
 
47
 
48
Labeledwidget
49
______________________________________________________________________________
50
 
51
>> Reimplemented geometry management using the grid instead of the packer.
52
 
53
>> Changed component option basis to be that of the "usuals".
54
 
55
>> Removed a redundant frame component named "shell" just below the hull.
56
 
57
>> Corrected labelvariable bug.  Setting the labelvariable had no effect.
58
   The code has been corrected such that a trace is installed on the variable
59
   which forces an update of the label text upon writes to the variable.
60
 
61
>> Removed the labmargin frame component used for implementing a margin.
62
   This is now accomplished via the grid by maintaining an empty row/column
63
   for the margin and adjusting its minsize.
64
 
65
>> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
66
   If you need access to it, use the childsite command.
67
 
68
>> Added new label position orientation settings.  The current label
69
   positions are nw, n, ne, sw, s, se, en, e, es, wn, w, and ws.
70
 
71
>> Updated the test script and man page.
72
 
73
 
74
Scrolledlistbox
75
______________________________________________________________________________
76
 
77
>> Derived from the Scrolledwidget class which provides the vertical
78
   and horizontal scrollbars along with the options to control their
79
   display.
80
 
81
>> Reimplemented geometry management using the grid instead of the packer.
82
 
83
>> Changed component option basis to be that of the "usuals".
84
 
85
>> Added a -state option that allows you to disable the listbox.  Selection
86
   is blocked.  The foreground of the scrolledlistbox label is changed
87
   to disbabledforeground.
88
 
89
>> Fixed the infinite looping problem which would occur with -hscrollmode
90
   set to dynamic and a really long line added just out of the view port.
91
   As you'd scroll down the horizontal scrollbar bar would start flashing
92
   on and off.
93
 
94
>> Removed the margin frame components used for implementing a margin
95
   between the listbox and scrollbars.  This is now accomplished via
96
   the grid by maintaining an empty row/column for the margin and
97
   adjusting its minsize.
98
 
99
>> POSSIBLE INCOMPATIBILITY - Removed -items option.  This was originally
100
   put in as a convienence, but it turns out to be quite costly in terms
101
   of performance.  It had to go.  The insert/delete/get commands can be
102
   used instead which is much more in line with Tk.
103
 
104
>> Updated the test script, demo, and man page.
105
 
106
 
107
Entryfield
108
______________________________________________________________________________
109
 
110
>> Reimplemented geometry management using the grid instead of the packer.
111
 
112
>> Modified the real type validation to except exponents.  Patch provided
113
   by evans@engineous.com (Rick Evans).
114
 
115
>> The -state option changes the label to disabledforeground when the
116
   entryfield is disabled.
117
 
118
>> Changed component option basis to be that of the "usuals".
119
 
120
 
121
Pushbutton
122
______________________________________________________________________________
123
 
124
>> Changed component option basis to be that of the "usuals".
125
 
126
>> POSSIBLE INCOMPATABILITY - The pushButton component has been changed
127
   to pushbutton.
128
 
129
>> POSSIBLE INCOMPATABILITY - The following options have been removed
130
   and are not directly available in the pushbutton anymore:
131
        -anchor -justify -textvariable
132
 
133
   The underlying button component still maintains them , but not the
134
   pushbutton itself.  You can still set them via the component
135
   command, i.e. ".pb component pushButton configure -justify left"
136
 
137
 
138
Buttonbox
139
______________________________________________________________________________
140
 
141
>> Changed component option basis to be that of the "usuals".
142
 
143
 
144
Shell
145
______________________________________________________________________________
146
 
147
>> Changed component option basis to be that of the "usuals".
148
 
149
>> Added a -width and -height option.  A value of zero causes the width
150
   and/or height to be adjusted to the required value based on the size
151
   requests of the components placed in the childsite.  Otherwise, the
152
   width and/or height is fixed.  The default is zero.
153
 
154
>> Added -width and -height tests to the test script and updated the
155
   man page.
156
 
157
>> The activate method no longer returns an error if it is called when
158
   the shell is already active.  Instead, the shell is just raised.
159
 
160
 
161
Dialogshell
162
______________________________________________________________________________
163
 
164
>> Reimplemented geometry management using the grid instead of the packer.
165
 
166
>> Changed component option basis to be that of the "usuals".
167
 
168
>> Updated the test script and man page, adding the -width and -height
169
   options that are inherited from the shell.
170
 
171
 
172
Dialog
173
______________________________________________________________________________
174
 
175
>> Updated the test script and man page, adding the -width and -height
176
   options that are inherited from the shell.
177
 
178
 
179
Selectionbox
180
______________________________________________________________________________
181
 
182
>> Reimplemented geometry management using the grid instead of the packer.
183
 
184
>> Changed component option basis to be that of the "usuals".
185
 
186
>> Modified the insert and delete methods to use the items insert and
187
   delete method rather than configuring the -items option which has
188
   been removed from the underlying scrolledlistbox.
189
 
190
>> Removed the margin frame component used for implementing a margin
191
   between the items and selection.  This is now accomplished via
192
   the grid by maintaining an empty row for the margin and adjusting
193
   its minsize.
194
 
195
>> Removed the unecessary frame that was used to contrain the width
196
   and height of the widget.  This is now performed directly on the
197
   widget hull.
198
 
199
>> POSSIBLE INCOMPATABILITY - The following options have been removed
200
   and are not directly available in the selectionbox anymore:
201
        -hscrollmode -itemslabelpos -labelmargin -margin -relief
202
        -sbwidth -scrollmargin -selectionlabelpos -vscrollmode
203
 
204
   The underlying components still maintain them, but not the
205
   selectionbox itself.  You can still set them via the component
206
   command, i.e. ".sb component selection configure -labelpos nw" or
207
   ".sb component items configure -hscrollmode static"
208
 
209
>> Added a -width and -height option.  A value of zero causes the width
210
   and/or height to be adjusted to the required value based on the size
211
   requests of the components placed in the childsite.  Otherwise, the
212
   width and/or height is fixed.  The default is zero.
213
 
214
>> Updated the test script, demo, and man page.
215
 
216
 
217
Selectiondialog
218
______________________________________________________________________________
219
 
220
>> Pack propagation is now handled by the shell class.
221
 
222
>> Modified the insert and delete methods to use the insert and
223
   delete method rather than configuring the -items option which has
224
   been removed from the underlying scrolledlistbox.
225
 
226
>> Changed component option basis to be that of the "usuals".
227
 
228
>> POSSIBLE INCOMPATABILITY - The "sb" component has been renamed to be
229
   "selectionbox".  This is much more descriptive.
230
 
231
>> POSSIBLE INCOMPATABILITY - The following options have been removed
232
   and are not directly available in the selectiondialog anymore:
233
        -hscrollmode -itemslabelpos -labelmargin -margin -relief
234
        -sbwidth -scrollmargin -selectionlabelpos -vscrollmode
235
 
236
   The underlying components still maintain them, but not the
237
   selectiondialog itself.  You can still set them via the component
238
   command, i.e. ".sd component selectionbox configure -margin 10" or
239
   ".sd component selectionbox component items configure -hscrollmode static"
240
 
241
>> The -width and -height options are now controlled by the shell class.
242
   A value of zero causes the width and/or height to be adjusted to the
243
   required value based on the size requests of the components.  Otherwise,
244
   the width and/or height is fixed.  The default is zero.
245
 
246
 
247
Scrolledtext
248
______________________________________________________________________________
249
 
250
>> Derived from the Scrolledwidget class which provides the vertical
251
   and horizontal scrollbars along with the options to control their
252
   display.
253
 
254
>> Reimplemented geometry management using the grid instead of the packer,
255
   eliminating quite a few unneeded frames along the way.
256
 
257
>> Changed component option basis to be that of the "usuals".
258
 
259
>> Removed the margin frame components used for implementing a margin
260
   between the text and scrollbars.  This is now accomplished via
261
   the grid by maintaining an empty row/column for the margin and
262
   adjusting its minsize.
263
 
264
>> The -state option changes the label to disabledforeground when the
265
   scrolledtext is disabled.
266
 
267
>> Fixed the infinite looping problem which would occur with -wrap set
268
   to none, -hscrollmode set to dynamic and a really long line added
269
   just out of the view port.  As you'd scroll down the horizontal
270
   scrollbar bar would start flashing on and off.
271
 
272
>> Added an index argument to the import method so a file can be
273
   imported into the text area at positions other than just the end.
274
 
275
>> Updated the test script and man page.
276
 
277
 
278
Feedback
279
______________________________________________________________________________
280
 
281
>> Corrected namspace problem by removing global scope qualifier from
282
   class definition as well as method and option bodies.  Bug report
283
   and patch provided by evans@engineous.com (Rick Evans).
284
 
285
 
286
Hyperhelp
287
______________________________________________________________________________
288
 
289
>> Corrected namspace problem by removing global scope qualifier from
290
   class definition as well as method and option bodies.  Bug report
291
   provided by evans@engineous.com (Rick Evans).
292
 
293
 
294
Scrolledhtml
295
______________________________________________________________________________
296
 
297
>> Corrected namspace problem by removing global scope qualifier from
298
   class definition as well as method and option bodies.  Bug report
299
   provided by evans@engineous.com (Rick Evans).
300
 
301
 
302
Canvasprintbox
303
______________________________________________________________________________
304
 
305
>> Added tcl_platform to list of global variables declared in print
306
   method.  Bug report provided by evans@engineous.com (Rick Evans).
307
 
308
 
309
Scrolledcanvas
310
______________________________________________________________________________
311
 
312
>> Derived from the Scrolledwidget class which provides the vertical
313
   and horizontal scrollbars along with the options to control their
314
   display.
315
 
316
>> POSSIBLE INCOMPATIBILITY - The ScrCanvas component has been renamed
317
   canvas.
318
 
319
>> The -state option changes the label to disabledforeground when the
320
   scrolledcanvas is disabled.
321
 
322
>> Reimplemented geometry management using the grid instead of the packer.
323
 
324
>> Changed component option basis to be that of the "usuals".
325
 
326
>> Removed the margin frame components used for implementing a margin
327
   between the canvas and scrollbars.  This is now accomplished via
328
   the grid by maintaining an empty row/column for the margin and
329
   adjusting its minsize.
330
 
331
>> Updated the test script, demo, and man page.
332
 
333
 
334
Scrolledframe
335
______________________________________________________________________________
336
 
337
>> Derived from the Scrolledwidget class which provides the vertical
338
   and horizontal scrollbars along with the options to control their
339
   display.
340
 
341
>> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
342
   If you need access to it, use the childsite command.
343
 
344
>> POSSIBLE INCOMPATIBILITY - The scrCanvas component has been renamed
345
   canvas and the scrFrame component to sfchildsite.
346
 
347
>> Reimplemented geometry management using the grid instead of the packer.
348
 
349
>> Changed component option basis to be that of the "usuals".
350
 
351
>> Fixed the infinite looping problem which would occur with -hscrollmode
352
   set to dynamic and a really long component added just out of the view
353
   port.  As you'd scroll down the horizontal scrollbar bar would start
354
   flashing on and off.
355
 
356
>> Removed the margin frame components used for implementing a margin
357
   between the canvas and scrollbars.  This is now accomplished via
358
   the grid by maintaining an empty row/column for the margin and
359
   adjusting its minsize.
360
 
361
>> Updated the test script, demo, and man page.
362
 
363
 
364
Promptdialog
365
______________________________________________________________________________
366
 
367
>> Changed component option basis to be that of the "usuals".
368
 
369
>> POSSIBLE INCOMPATABILITY - Renamed the "ef" component to "prompt".
370
 
371
>> POSSIBLE INCOMPATABILITY - The following options have been removed
372
   and are not directly available in the promptdialog anymore:
373
        -fixed -justify -labelbitmap -labelimage -labelmargin
374
        -state -textvariable -width
375
 
376
   The underlying components still maintain them, but not the
377
   promptdialog itself.  You can still set them via the component
378
   command, i.e. ".pd component prompt configure -labelpos w"
379
 
380
>> Updated the test script, demo, and man page.
381
 
382
 
383
Messagedialog
384
______________________________________________________________________________
385
 
386
>> Changed component option basis to be that of the "usuals".
387
 
388
>> POSSIBLE INCOMPATABILITY - Renamed the "msg" component to "message".
389
 
390
>> POSSIBLE INCOMPATABILITY - The following options have been removed
391
   and are not directly available in the messagedialog anymore:
392
        -anchor -justify -wraplength
393
 
394
   The underlying components still maintain them, but not the
395
   messagedialog itself.  You can still set them via the component
396
   command, i.e. ".md component message configure -justify left"
397
 
398
>> Reimplemented geometry management using the grid instead of the packer.
399
 
400
>> Updated the test script, demo, and man page.
401
 
402
 
403
Hierarchy
404
______________________________________________________________________________
405
 
406
>> New iwidgets hierarchical data viewer mega-widget which manages a list
407
   of nodes that can be expanded or collapsed.  Individual nodes can be
408
   highlighted.  Clicking with the right mouse button on any item brings
409
   up a special item menu.  Clicking on the background area brings up
410
   a different popup menu.
411
 
412
>> Many thanks to Michael McLennan who provided the nucleus of this code.
413
 
414
>> Man page, test script, and demo have been produced.
415
 
416
>> The catalog demo has been updated to include the hierarchy demo.
417
 
418
 
419
Checkbox
420
______________________________________________________________________________
421
 
422
>> New iwidget checkbox mega-widget which manages a group of check
423
   buttons quite similar to that of the existing radiobox.
424
 
425
>> Thanks to John Tucker for the contributed code.
426
 
427
>> Man page, test script, and demo have been produced.
428
 
429
>> The catalog demo has been updated to include the checkbox demo.
430
 
431
 
432
Radiobox
433
______________________________________________________________________________
434
 
435
>> Changed component option basis to be that of the "usuals".
436
 
437
>> Changed the base class to be labeledframe.
438
 
439
>> Updated the test script, demo, and man page.
440
 
441
 
442
Spinner
443
______________________________________________________________________________
444
 
445
>> Reimplemented geometry management using the grid instead of the packer.
446
 
447
>> Removed a redundant frame component named "arrowFrame".
448
 
449
>> Removed the use of the option database to set the option values.
450
 
451
 
452
Spinint
453
______________________________________________________________________________
454
 
455
>> Removed the use of the option database to set the option values.
456
 
457
 
458
Datefield
459
______________________________________________________________________________
460
 
461
>> New iwidget.  The datefield is a smart date entry field with adjustable
462
   built-in intelligence levels.  It can be made smart enough not to accept
463
   any bad dates or made dumb enough to accept any old thing typed.  Since
464
   it is derived from the labeledwidget, it also includes an optional label.
465
 
466
>> Man page, test script, and demo have been produced.
467
 
468
>> The catalog demo has been updated to include the datefield demo.
469
 
470
 
471
Calendar
472
______________________________________________________________________________
473
 
474
>> New iwidget.  The calendar widget provide for the selection and/or
475
   display of dates.  It displays a single month at a time.  Buttons exist
476
   on the top to change the month in effect turning th pages of a calendar.
477
   As a page is turned, the dates for the month are modified.  Selection
478
   of a date visually marks that date.  The selected value can be monitored
479
   via the -command option or just retrieved using the get method.  Methods
480
   also exist to select a date and show a particular month.
481
 
482
   The option set allows the calendars appearance to take on many forms.
483
   For example, the background of the weekdays and weekends can be
484
   independently changed, the starting day of the week can be set to
485
   any of the days, the titles and fonts of everything is configurable,
486
   and an outline can be displayed around the each day.
487
 
488
>> Many thanks to Michael McLennan who provided me a early copy of his
489
   book which gave me the example on which this code is based.
490
 
491
>> Man page, test script, and demo have been produced.
492
 
493
>> The catalog demo has been updated to include the calendar demo.
494
 
495
 
496
Dateentry
497
______________________________________________________________________________
498
 
499
>> New iwidget.  Dateentry is a quicken style date entry field with a
500
   popup calendar produced by combining the datefield and calendar widgets
501
   together.  This allows a user to enter the date via the keyboard or by
502
   using the mouse by selecting the calendar icon which brings up a popup
503
   calendar.  Since it is based on both the datefield and calendar, both
504
   option sets exists under the same roof in the dateentry.
505
 
506
>> Man page, test script, and demo have been produced.
507
 
508
>> The catalog demo has been updated to include the dateentry demo.
509
 
510
 
511
Messagebox
512
______________________________________________________________________________
513
 
514
>> New iwidget.  Implements an information messages area widget with
515
   scrollbars.  Message types can be user defined and configured.  Their
516
   options include foreground, background, font, bell, and their display
517
   mode of on or off.  This allows message types to defined as needed,
518
   removed when no longer so, and modified when necessary.
519
 
520
   The number of lines that can be displayed may be limited.  When this
521
   limit is reached, the oldest line is removed.  There is also support
522
   for saving the contents to a file, using the standard file selection
523
   dialog.
524
 
525
>> Many thanks to Alfredo Jahn who came up with idea and provided me a
526
   very stable working version which I extended to support user defined
527
   message types.
528
 
529
>> Man page, test script, and demo have been produced.
530
 
531
>> The catalog demo has been updated to include the messagebox demo.
532
 
533
 
534
Spintime
535
______________________________________________________________________________
536
 
537
>> Reimplemented geometry management using the grid instead of the packer.
538
 
539
>> Removed the margin frame component used for implementing a margin
540
   between the hour, minute and second components.  This is now accomplished
541
   via the grid by maintaining an empty row for the margin and adjusting
542
   its minsize.
543
 
544
>> POSSIBLE INCOMPATIBILITY - The delete, clear, and insert methods have
545
   been removed.  Use the show method to set the time.
546
 
547
>> POSSIBLE INCOMPATIBILITY - The get method has been changed such that
548
   it returns the time as either a colon separated string or a clock clicks
549
   value.
550
 
551
>> Added a show method to be used to set the time.  The method takes as
552
   an argument either a valid time string, a clock clicks value, or the
553
   keyword now.
554
 
555
>> The current time will now appear as the default.
556
 
557
>> Updated the test script, demo, and man page.
558
 
559
 
560
Spindate
561
______________________________________________________________________________
562
 
563
>> Reimplemented geometry management using the grid instead of the packer.
564
 
565
>> Removed the margin frame component used for implementing a margin
566
   between the month, day and year components.  This is now accomplished
567
   via the grid by maintaining an empty row for the margin and adjusting
568
   its minsize.
569
 
570
>> Spindate now uses the clock command during the spinning of the date
571
   components.  Only valid dates are spun now.
572
 
573
>> POSSIBLE INCOMPATIBILITY - Changed the -monthformat option to be
574
   string, brief, and full doing away with the optional user specified list.
575
 
576
>> POSSIBLE INCOMPATIBILITY - The delete, clear, and insert methods have
577
   been removed.  Use the show method to set the date.
578
 
579
>> POSSIBLE INCOMPATIBILITY - The get method has been changed such that
580
   it returns the date as either a string or a clock clicks value.
581
 
582
>> Added a show method to be used to set the time.  The method takes as
583
   an argument either a valid time string, a clock clicks value, or the
584
   keyword now.
585
 
586
>> The current date will now appear as the default.
587
 
588
>> Selection and keyboard entry of values has been disabled.  The value
589
   may only be changed via the spinners which insures correct operation.
590
 
591
>> Updated the test script, demo, and man page..
592
 
593
 
594
Feedback
595
______________________________________________________________________________
596
 
597
>> Reimplemented geometry management using the grid instead of the packer.
598
 
599
>> Made all the itk_components public.
600
 
601
>> Added a trough which appears beneath the feedback widget.  It has a
602
   -troughcolor option to set its color.
603
 
604
 
605
Scrolledhtml
606
______________________________________________________________________________
607
 
608
>> Added -alink (same as -linkhighlight, but matches html naming) and -update
609
   options.
610
 
611
>> Added new tags to come up to html3.2:
612
     basefont
613
     div
614
     font
615
     table
616
     td
617
     th
618
     tr
619
 
620
>> Added numbering formats for 
  • tag.
  • 621
     
    622
    >> Fixed to delete images after page is cleared.
    623
     
    624
    >> Fixed to bring anchor points to middle when moving down to a nearby
    625
       anchor point.
    626
     
    627
    >> Fixes to regular expression matches.
    628
     
    629
    >> Performance enhancements with stack algorithm and regular expression
    630
       searches.
    631
     
    632
     
    633
    Hyperhelp
    634
    ______________________________________________________________________________
    635
     
    636
    >> Added -closecmd and -maxhistory options.
    637
     
    638
    >> Made itk_components public/private (which could conceivably break
    639
       someone, if they were using a component directly that is now private)
    640
     
    641
    >> Fixed bindings.
    642
     
    643
     
    644
    Toolbar
    645
    ______________________________________________________________________________
    646
     
    647
    >> Added a destructor to cancel the possibly pending after command request
    648
       to display the popup help.
    649
     
    650
    >> Corrected the vertical packing such that items are expanded horizontally.
    651
     
    652
     
    653
    Finddialog
    654
    ______________________________________________________________________________
    655
     
    656
    >> New iwidget.  Finddialog works in conjunction with a text or
    657
       scrolledtext widget to provide a means of performing search operations.
    658
       The user is prompted for a text pattern to be found in the text or
    659
       scrolledtext widget.  The search can be for all occurances, by regular
    660
       expression, considerate of the case, or backwards.
    661
     
    662
    >> Man page, test script, and demo have been produced.
    663
     
    664
    >> The catalog demo has been updated to include the finddialog demo.
    665
     
    666
     
    667
    Panedwindow
    668
    ______________________________________________________________________________
    669
     
    670
    >> Corrected show/hide bug which caused the placement of the sash and
    671
       separator to be incorrect.  If you added a couple of panes and then
    672
       hid them all of them followed by showing them, the sash distribution
    673
       was wrong.
    674
     
    675
    >> Corrected a divide by zero problem which occurred when you hid all
    676
       of the panes.
    677
     
    678
     
    679
    Combobox
    680
    ______________________________________________________________________________
    681
     
    682
    >> Mitch Gorman (emrys@net-gate.com) has taken over maintenance of the
    683
       combobox from John Sigler.
    684
     
    685
    >> Entry completion has been added.  Should your typing in the entry
    686
       field match an item in the list, it is completed for you automatically.
    687
       This feature is switchable via the -completion option.  The default
    688
       is on.
    689
     
    690
    >> It now utilizes a true button for the arrowBtn component.
    691
     
    692
    >> The -state option has been fixed such that it can be truly disabled.
    693
     
    694
    >> Reimplemented geometry management using the grid instead of the packer.
    695
     
    696
    >> A -grab option has been added to do both local and global grabs
    697
       of the drop-down listbox.
    698
     
    699
    >> POSSIBLE INCOMPATIBILITY - Removed -items option.  This was originally
    700
       put in as a convienence, but it turns out to be quite costly in terms
    701
       of performance.  It had to go.  The insert/delete/get commands can be
    702
       used instead which is much more in line with Tk.
    703
     
    704
    >> POSSIBLE INCOMPATIBILITY - The following options have been removed:
    705
       -autoclear and -fliparrow.
    706
     
    707
    >> The combobox now utilizes built-in bitmaps for button glyphs.
    708
     
    709
    >> Removed the margin frame component used for implementing a margin
    710
       between the entry and arrow button.  This is now accomplished via
    711
       the grid by maintaining an empty column for the margin and adjusting
    712
       its minsize.
    713
     
    714
    >> List elements are preserved when switching between drop-down and simple
    715
       styles via the -dropdown option.
    716
     
    717
    >> The functionality of the -state and -editable options have been made
    718
       completely independent of each other.  It can be editable/normal,
    719
       non-editable/normal, or disabled, and toggling one option will not
    720
       impact the other option when the first is toggled back
    721
     
    722
    >> Corrected the validation processing in the -unique option.
    723
     
    724
    >> Fixed various error messages returned due to bad arguments, options, etc.
    725
     
    726
     
    727
    Fileselectionbox
    728
    ______________________________________________________________________________
    729
     
    730
    >> Reimplemented geometry management using the grid instead of the packer.
    731
     
    732
    >> Changed component option basis to be that of the "usuals".
    733
     
    734
    >> Removed frame components used for margins.  This is now accomplished
    735
       via the grid by maintaining an empty row/column for the margin and
    736
       setting its minsize.
    737
     
    738
    >> Changed the default value of -nomatchstring to "".
    739
     
    740
    >> The directory and files lists are now shown without the leading
    741
       directory name.  Although this differs from the Motif standard, it
    742
       keeps the fileselectionbox more in line with the tk_getSaveFile dialog.
    743
     
    744
    >> POSSIBLE INCOMPATIBILITY - The -style option which allowed you to
    745
       display the fileselectionbox in a "notif" style using comboboxes
    746
       for the filter and selection and kept the lists in a panedwindow
    747
       has been removed.  A related option, -dirsfraction is also gone.
    748
     
    749
       This feature caused the fileselectionbox to be much slower during
    750
       construction than anticipated.  If you liked the "notif" style, it
    751
       exists in a new mega-widget call extfileselectionbox and
    752
       extfileselectiondialog.
    753
     
    754
    >> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
    755
       If you need access to it, use the childsite command.
    756
     
    757
    >> POSSIBLE INCOMPATABILITY - The following options have been removed
    758
       and are not directly available in the fileselectionbox anymore:
    759
     
    760
            -relief -repeatdelay -repeatinterval -labelmargin
    761
            -hscrollmode -sbwidth -scrollmargin -vscrollmode
    762
            -dirslabelpos -fileslabelpos -filterlabelpos
    763
            -selectionimage- selectionlabelpos -filterfocuscommand
    764
            -selectionfocuscommand -dbldirscommand -dblfilescommand
    765
     
    766
       The underlying components still maintain them , but not the
    767
       fileselectionbox itself.  You can still set them via the component
    768
       command, i.e. ".fsb component dirs configure -hscrollmode none"
    769
     
    770
    >> POSSIBLE INCOMPATIBILITY - The -horizmargin and -vertmargin options
    771
       have been removed.  I doubt if anybody other than the most picky
    772
       of people will be effected.
    773
     
    774
    >> Added new childsite position orientation settings.  The new
    775
       positions are n, s, e, w, top, bottom, and center.
    776
     
    777
    >> Updated the test script and man page.
    778
     
    779
     
    780
    Extfileselectionbox
    781
    ______________________________________________________________________________
    782
     
    783
    >> New Iwidget.  The extfileselectionbox is basically the "notif" portion
    784
       of the previous version of the fileselectionbox.  It was separated from
    785
       the fileselectionbox for performance reasons.
    786
     
    787
    >> Created test script, demo and man page.
    788
     
    789
    >> The catalog demo has been updated to include the extfileselectionbox demo.
    790
     
    791
     
    792
    Tabset
    793
    ______________________________________________________________________________
    794
    >> Corrected tab display problem which was occurring on HP machines.
    795
     
    796
       Some additional updates were installed in tab selection and deselection.
    797
       They will only be invoke should the os be HP-UX.  Also, the ability
    798
       to scroll the tabs via MB2 has been disabled for HPs.  Thanks to
    799
       tilt@designacc.com (Thomas Tempero) for first reporting the problem
    800
       mikesz@pcs.mot.com (Michael Szilagyi) for sending me the fix which
    801
       was implemented.
    802
     
    803
     
    804
    Timefield
    805
    ______________________________________________________________________________
    806
     
    807
    >> New iwidget.  The timefield is a smart time entry field.  It verifies
    808
       user time input prior to its display.  Since it is derived from the
    809
       labeledwidget, it also includes an optional label.
    810
     
    811
    >> Man page, test script, and demo have been produced.
    812
     
    813
    >> The catalog demo has been updated to include the timefield demo.
    814
     
    815
     
    816
    Watch
    817
    ______________________________________________________________________________
    818
     
    819
    >> New iwidget.  The watch widget displays a simple clock face.  Methods
    820
       exist to set/get the time.  The hands can be adjusted via mouse selection
    821
       with the new setting being retrievable via the get method.  It is
    822
       very configurable.  The colors of the hands, face, and marks can all
    823
       be changed to suit your needs.
    824
     
    825
    >> Many thanks to John Tucker who developed this nice widget.
    826
     
    827
    >> Man page, test script, and demo have been produced.
    828
     
    829
    >> The catalog demo has been updated to include the watch demo.
    830
     
    831
     
    832
    Timeentry
    833
    ______________________________________________________________________________
    834
     
    835
    >> New iwidget.  Timeentry, like the dateentry, is along the quicken
    836
       lines as well.  It displays a timefield with a watch icon  button
    837
       beside it.  Selection of button presents a popup watch which enables
    838
       you to select the time by dragging the hands about the face.  The
    839
       popup has a close button that removes the popup and sets the timefield
    840
       to the value previously displayed in the watch.  You can also just
    841
       enter the time directly as you would in the standard timefield.
    842
     
    843
    >> Man page, test script, and demo have been produced.
    844
     
    845
    >> The catalog demo has been updated to include the timeentry demo.
    846
     
    847
     
    848
    ==========================================================================
    849
     -------------------------- iwidgets-2.1.1 ------------------------------
    850
     -------------------- CHANGES FROM iwidgets-2.1.0 -----------------------
    851
    ==========================================================================
    852
     
    853
      [incr Widgets] version 2.1.1 is compatable with itcl2.1
    854
     
    855
    NEW FEATURES
    856
    ------------------------------------------------------------------------------
    857
    >> Added pagecget method to notebook class.
    858
     
    859
       Patch supplied by Tom Tromey (tromey@cygnus.com).
    860
     
    861
    >> Added buttoncget method to buttonbox class.
    862
     
    863
       Patch supplied by Tom Tromey (tromey@cygnus.com).
    864
     
    865
    >> Added buttoncget method to dialogshell class.
    866
     
    867
       Patch supplied by Tom Tromey (tromey@cygnus.com).
    868
     
    869
    >> Added -closecmd option to the hyperhelp mega-widget.
    870
     
    871
       Previously, closing the hyperhelp widget deleted the object which was
    872
       deemed to be user hostile.  Now, there exists a -closecmd option
    873
       which defaults to just deactivating the widget.  Should you wish to
    874
       destroy the widget, either do so explictly or modify the -closecmd
    875
       to do it.
    876
     
    877
     
    878
    BUG FIXES
    879
    ------------------------------------------------------------------------------
    880
    >> Corrected selectborderwidth option class name in the toolbar
    881
     
    882
       The class name was set to SelectBorderWidth rather than BorderWidth.
    883
       This created problems when attempting to use the toolbar with
    884
       other widgets like the scrolledcanvas.  Bug report by csmith@adc.com
    885
       (Chad Smith).
    886
     
    887
    >> Allow negative indexes in scrolledlistbox
    888
     
    889
       Negative indicies are reasonable and valid.  Bug report by
    890
       wfarel@cas.org (Bill Farel).
    891
     
    892
    >> Corrected problem with caps-lock and num-lock in entryfields
    893
     
    894
       Validation was not being being done if the num-lock or caps-lock
    895
       keys are down.  Bug report by ronnie@r2d2.wink.com (Ronnie Carpio).
    896
     
    897
    >> Corrected problem with special character entry in entryfields
    898
     
    899
       Upon entry of a special character in the entry field like \ or [
    900
       an error would be reported: "Error: missing "".  The substitutions
    901
       being performed in iwidgets::Entryfield::_keyPress have been corrected.
    902
       Bug report and patch provided by ronnie@r2d2.wink.com (Ronnie Carpio).
    903
     
    904
    >> Made the relayout method in pushbutton protected.
    905
     
    906
       The relayout method in the pushbutton needed to be changed from private
    907
       to protected so parent classes can have access.  Bug discovered by
    908
       Mario Weilguni 
    909
     
    910
    >> Corrected html tag parsing in scrolledhtml mega-widget
    911
     
    912
       Fixed regular expressions parsing html tags to ignore text in quotes
    913
       and only examine first attribute in list.
    914
     
    915
    >> Corrected optionmenu insert bug
    916
     
    917
       The option menu would not allow you to insert an entry beyond the
    918
       current length of the popup menu.  It should just default to using
    919
       the end in this case.
    920
     
    921
    >> Corrected scrolledtext import method newline insertion problem
    922
     
    923
       There was a bug in the scrolledtext widget.  It always inserted a
    924
       newline before the text of the file when doing an "import".  And it
    925
       didn't correctly preserve a trailing newline on the file.  Reported
    926
       by Tom Tromey (tromey@cygnus.com)
    927
     
    928
    >> Corrected minor problems in notebook class.
    929
     
    930
       The index method gave an error if (eg) "select" wass passed but
    931
       there is no selection.  Instead it should return -1 as documented.
    932
       Changed it to always return -1 in case of error.  This makes more
    933
       sense.
    934
     
    935
       If there are no items in the notebook, the -scrollcommand should
    936
       still be run (if it is set).  Otherwise, you end up with a
    937
       scrollbar that looks odd, and when you try to scroll you get
    938
       errors.  Changed it so that it will tell the scrollbar that
    939
       the entire notebook is being displayed.  Reported by Tom Tromey
    940
       (tromey@cygnus.com)
    941
     
    942
    >> Corrected menubar menucget command to return errors for bad options.
    943
     
    944
       The command " menucget .element" returned something other
    945
       than an error message.  This has been corrected.  Reported by Tom
    946
       Tromey (tromey@cygnus.com)
    947
     
    948
    >> Corrected menubar man page.
    949
     
    950
       The usage for the menubar menucget command was wrong and has been
    951
       fixed.  Reported by Tom Tromey (tromey@cygnus.com)
    952
     
    953
     
    954
    INCOMPATIBLE CHANGES
    955
    ------------------------------------------------------------------------------
    956
     
    957
     
    958
    ==========================================================================
    959
     -------------------------- iwidgets-2.1.0 ------------------------------
    960
     -------------------- CHANGES FROM iwidgets-2.0.1 -----------------------
    961
    ==========================================================================
    962
     
    963
      [incr Widgets] version 2.1.0 is compatable with itcl2.1
    964
     
    965
    NEW FEATURES
    966
    ------------------------------------------------------------------------------
    967
    >> Eliminated unneeded update idletask calls.
    968
     
    969
       Went through many of the [incr Widgets] and got rid of those update
    970
       idletask calls that were not really needed.  This should speed a few
    971
       of them up a bit.
    972
     
    973
    >> The hyperhelp mega-widget has been enhanced such that topic items
    974
       don't need to be in the help directory.
    975
     
    976
       It's just an added option in specifying topics.  To use it, you would
    977
       replace '-topics {topic1 topic2 topic3}' with
    978
       '-topics {topic1 {topicname2 filename2} {topic3 filename3}}'.  In other
    979
       words, you only have to change where you want to specify a pathname. If
    980
       you don't specify a filename, everything works the same.
    981
     
    982
    >> Added a -autoclear option to the combobox.
    983
     
    984
       The combobox was doing an automatic erasure of the entry field contents
    985
       upon hitting return.  With this option, you can turn that off but it
    986
       still puts the string in the list.
    987
     
    988
    >> Added a -master option to the shell class.
    989
     
    990
       The shell made all instances transient with "." as the master.  With
    991
       this option, you can change the master to other toplevels.  The default
    992
       is no master for shells, and "." for all dialogs which are derived from
    993
       shell.
    994
     
    995
    >> Added a -style option to the fileselectionbox and fileselection dialog.
    996
     
    997
       Tony Parent did a great job of augmenting the fileselectionbox with
    998
       a style option that allows you to change the layout from the standard
    999
       motif look-and-feel to a better than motif layout.  This new layout
    1000
       is called notif and features comboboxes for the filter and selection
    1001
       entry fields and a paned window contains the two listboxes allowing
    1002
       you to change the allocation of space for the lists.
    1003
     
    1004
    >> Removed the center childsite position for the fileselectionbox.
    1005
     
    1006
       This is a side effect of the notif change made by Tony Parent.  It
    1007
       just isn't easy to have a center position when your in a pane window.
    1008
       It is a small sacrifice for the having an alternate layout of the
    1009
       fileselectionbox.
    1010
     
    1011
     
    1012
    BUG FIXES
    1013
    ------------------------------------------------------------------------------
    1014
    >> The makefile was amended to install the unknown.gif file correctly.
    1015
     
    1016
       The hyperhelp and scrolledhtml widgets need an unknown gif file that
    1017
       is used when unable to load an image.  The makefile was not properly
    1018
       installing it.
    1019
     
    1020
    >> The scrolledhtml.n man page was fixed to allow man2html to work.
    1021
     
    1022
       The scrolledhtml.n file had a bug which would hang man2html during a
    1023
       "make install-html".  The bug affected only the htmling of the file
    1024
       not the man page itself.
    1025
     
    1026
     
    1027
    INCOMPATIBLE CHANGES
    1028
    ------------------------------------------------------------------------------
    1029
     
    1030
     
    1031
    ==========================================================================
    1032
     -------------------------- iwidgets-2.0.1 ------------------------------
    1033
     -------------------- CHANGES FROM iwidgets-2.0.0 -----------------------
    1034
    ==========================================================================
    1035
     
    1036
      [incr Widgets] version 2.0.1 is compatable with itcl2.0
    1037
     
    1038
    NEW FEATURES
    1039
    ------------------------------------------------------------------------------
    1040
    >> Added extra frame around canvas widget in Scrolledcanvas class
    1041
     
    1042
       The borderwidth, relief, and hightlight options have been removed from
    1043
       the canvas widget and placed on the new encompassing frame widget.  This
    1044
       fixes the problem with canvas widgets including the border and highlight
    1045
       ring in the clipping region.
    1046
     
    1047
    >> Added extra frame around text widget in Scrolledtext class
    1048
     
    1049
       The borderwidth, relief, and hightlight options have been removed from
    1050
       the text widget and placed on the new encompassing frame widget.  This
    1051
       fixes the problem with text widgets including the border and highlight
    1052
       ring in the clipping region.
    1053
     
    1054
    >> The canvasprintbox stamp supports resizing and default print buttons
    1055
     
    1056
       Tako Schotanus updated the canvasprintbox such that the stamp now gets
    1057
       updated whenever the window is resized.  Also, he modified the dialog
    1058
       default buttons to be Print, Apply and Cancel.  Apply does a refresh and
    1059
       Print does what you'd expect.
    1060
     
    1061
    >> Added feedback mega-widget to [incr Widgets]
    1062
     
    1063
       The feedback widget is a gage for displaying process status.  Display
    1064
       is given as a percentage and as a thermometer type bar. Options exist
    1065
       for adding a label and controlling its position.
    1066
     
    1067
       Special thanks go to Sam Shen(SLShen@lbl.gov), as this code is based on his
    1068
       feedback.tcl code from tk inspect. The original code is copyright 1995
    1069
       Lawrence Berkeley Laboratory.
    1070
     
    1071
    >> Added scrolledhtml mega-widget to [incr Widgets]
    1072
     
    1073
       The scrolledhtml widget implements a scrollable html text widget through
    1074
       inheritance from scrolledtext.  Import reads from an html file, while
    1075
       export still writes plain text.  Also provides a render command, to
    1076
       display html text passed in as an argument.
    1077
     
    1078
       Special thanks go to Sam Shen(SLShen@lbl.gov), as this code is based on his
    1079
       tkhtml.tcl code from tk inspect. The original code is copyright 1995
    1080
       Lawrence Berkeley Laboratory.
    1081
     
    1082
    >> Added hyperhelp mega-widget to [incr Widgets]
    1083
     
    1084
       The hyperhelp widget implements a help facility using html formatted
    1085
       hypertext files.
    1086
     
    1087
       Special thanks go to Sam Shen(SLShen@lbl.gov), as this code is based on his
    1088
       help.tcl code from tk inspect.
    1089
     
    1090
    >> Added menubar mega-widget to [incr Widgets]
    1091
     
    1092
       Actually it was kind-of already an iwidget.  It was living in the incoming
    1093
       directory for a time.  No one had a complaints about it so now it is
    1094
       a full citizen.
    1095
     
    1096
     
    1097
    BUG FIXES
    1098
    ------------------------------------------------------------------------------
    1099
    >> Corrected spurious quote in toolbar.itk
    1100
     
    1101
       Thanks to Tom Tromey for finding this elusive little buglet and sending
    1102
       the patch.  Wish all problems were reported in this manner.
    1103
     
    1104
    >> Corrected problem with dialogs being unable to acquire a grab.
    1105
     
    1106
       The dialogshell activate method would generate an error if unable to
    1107
       acquire a grab for application and global modal dialogs.  The fix
    1108
       installed adds a catch and a reattempt loop with a delay.  In other
    1109
       words, the dialog shell will continuously attempt to acquire the grab
    1110
       with a delay between attempts.
    1111
     
    1112
    >> Corrected problem with pushbutton not displaying the tab traversal ring.
    1113
     
    1114
       The pushbutton would not display the tab traversal ring when the default
    1115
       ring was enabled.  This has been corrected.
    1116
     
    1117
    >> Corrected scrolledlistbox getcurselection method with multiple selectmode.
    1118
     
    1119
       If the current scrolledlistbox selectmode is multiple, then the
    1120
       getcurselection method should always return the selected items as
    1121
       a list, regardless of the number of items selected.  It used to
    1122
       return a list only if more than one item is selected.
    1123
     
    1124
    >> Buttonbox wasn't adjusting geometrically following hides if not mapped.
    1125
     
    1126
       Bernard Johnson from TI was good enough to find this one.  It could
    1127
       be seen by creating a dialog, activating, deactivating, then hiding
    1128
       a button.  Next, activate it again and you'd notice that the dialog's
    1129
       buttonbox had not been resized.  The problem was that the resizing
    1130
       of the buttonbox was bound to the map event, which once mapped, was
    1131
       removed when it shouldn't have been.
    1132
     
    1133
    >> Buttonbox wasn't adjusting properly following button additions which
    1134
       were preceeded by deletions.
    1135
     
    1136
       Greg McFarlane found this one.  The buttonbox needed to do perform
    1137
       and update idletasks following the sizing of the box during a deletion.
    1138
       Otherwise, the values returned by winfo were incorrect during a
    1139
       subsequent button addition.
    1140
     
    1141
    >> Removed underlining of listbox items in the combobox.
    1142
     
    1143
       Milind Khandekar requested that this feature be removed.  It was
    1144
       annoying.
    1145
     
    1146
     
    1147
    INCOMPATIBLE CHANGES
    1148
    ------------------------------------------------------------------------------
    1149
     
    1150
     
    1151
    ==========================================================================
    1152
     -------------------------- iwidgets-2.0.0 ------------------------------
    1153
     -------------------- CHANGES FROM iwidgets-2.0b4 -----------------------
    1154
    ==========================================================================
    1155
     
    1156
      [incr Widgets] version 2.0.0 is compatable with itcl2.0
    1157
     
    1158
    NEW FEATURES
    1159
    ------------------------------------------------------------------------------
    1160
    >> The copyright has been assigned to DSC Communications Corporation.
    1161
     
    1162
       The copyright has been transferred from private individuals to DSC.
    1163
       It is still an open copyright, just changes in the legalize wording.
    1164
     
    1165
    >> Added several new mega-widgets.
    1166
     
    1167
       The new mega-widgets include the toolbar, tabnotebook, tabset, and
    1168
       notebook.  Check the man pages for details.
    1169
     
    1170
    >> Added demo catalog.
    1171
     
    1172
       The demos directory now contains a catalog program.  It displays the
    1173
       code for each demo upon single select.  Double-click starts the demo.
    1174
     
    1175
    >> Added incoming directory for experimental mega-widgets.
    1176
     
    1177
       An incoming directory exists in the distribution which contains beta
    1178
       state mega-widgets.  They are not installed, but do include the needed
    1179
       doc, demos, and tests.  These mega-widgets may or may not make the cut.
    1180
       Please send feedback on their viability.  If enough positive response
    1181
       is felt, then they will be moved up.  Otherwise, I'll move them to an
    1182
       outgoing directory and later delete them altogether.
    1183
     
    1184
    >> With the introduction of the new itcl-2.0b3 code command, the following
    1185
       changes were required.
    1186
     
    1187
       All "bind" and "after" commands now use "code".
    1188
     
    1189
       All "-command" options and scrollbar commands now use "code".
    1190
     
    1191
       Removed "uplevel /scope" combinations from command type options.
    1192
     
    1193
       Replaced "eval" with "uplevel #0" for evaluation of command options.
    1194
     
    1195
    >> Added curselection method to selectionbox and selectiondialog class.
    1196
     
    1197
       The curselection command from the contained listbox of the selectionbox
    1198
       has been thinwrapped.
    1199
     
    1200
    >> Removed BLT dependency for implementing application modal dialogs.
    1201
     
    1202
       The dialogshell class no longer uses blt_busy for application modal
    1203
       dialogs.  Instead, local grabs are performed.  The benefits are speed
    1204
       and extension independence.  Minus is the loss of the watch cursor
    1205
       which blt_busy used.  I figure, programmers wanting the cursor action
    1206
       can implement it themselves on an as needed basis.
    1207
     
    1208
    >> Added a grab stack in the dialogshell.
    1209
     
    1210
       The dialogshell uses a grabstack to keep track of the current blocking
    1211
       levels.  Thus a application modal dialog can activate another one and
    1212
       upon closing the last one, the next one in the stack gets the block.
    1213
       This feature did not exist before.
    1214
     
    1215
    >> Replace "after 1" commands with "after idle"
    1216
     
    1217
       This produces the same result, but makes for a cleaner syntax.
    1218
     
    1219
    >> Added center command to the dialogshell.
    1220
     
    1221
       The dialogshell provides a center command which takes an optional argument
    1222
       of the path for another widget.  Upon activation, the dialogshell will
    1223
       be centered with respect to it.  The command may also be invoked with
    1224
       no arguments to center the dialogshell on the screen as a whole.  Since
    1225
       all other dialog classes are derived from dialogshell, all dialogs now
    1226
       have the center command available.
    1227
     
    1228
    >> Made the Help button hidden by default for dialogs
    1229
     
    1230
       Most people turn it off right away anyway.  It is still there.  Just need
    1231
       to do a "show Help" if you need it back.
    1232
     
    1233
    >> Comboxbox now derived from entryfield.
    1234
     
    1235
       The combobox structure has been modified to be derived from the entryfield
    1236
       class.  Now combobox labels can be aligned using the labeledwidget
    1237
       alignlabels method along with optionmenus, entryfields and such.
    1238
     
    1239
    >> Added -justify and -wraplength to Messagedialog.
    1240
     
    1241
       The justify and wraplength options are now kept for the label in the
    1242
       messagedialog widget.
    1243
     
    1244
    >> Added a man page generator for itcl.
    1245
     
    1246
       In the doc directory is a new utility called mkitclman.  It does a good
    1247
       job at an initial pass of man page generation for new iwidget classes.
    1248
       You still need to get in there and beef up the man page which is produced,
    1249
       but it is better than starting from scratch.
    1250
     
    1251
    >> Added the canvasprintbox and canvasprintdialog mega-widgets.
    1252
     
    1253
       Two new mega-widgets, canvasprintbox and canvasprintdialog, have been
    1254
       contributed to [incr Widgets].  Thanks to Tako Schotanus,
    1255
       Tako.Schotanus@bouw.tno.nl.
    1256
     
    1257
    >> Added the textbackground option to the scrolledcanvas widget
    1258
     
    1259
       The textbackground option has been added to the scrolledcanvas widget
    1260
       similarly to the scrolledlistbox and entryfield widgets.
    1261
     
    1262
     
    1263
    BUG FIXES
    1264
    ------------------------------------------------------------------------------
    1265
    >> Enabled repeat action in spinners.
    1266
     
    1267
       This was available in iwidgets two versions ago.  I made in incorrect
    1268
       merge and lost the change.  It has now been added back into the spinner.
    1269
     
    1270
    >> Eliminated use of #auto in panedwindow.
    1271
     
    1272
       Using #auto made the test script fail should you run it two times in a
    1273
       row.  Instead, the class keeps its own unique counter which is always
    1274
       reset upon construction.  This was more of an annoyance than a bug.
    1275
     
    1276
    >> Corrected selection problem in selectiondialog.
    1277
     
    1278
       The selectiondialog wasn't configuring the itemscommand properly, so
    1279
       selection of an item was not reflected in the selection entryfield.
    1280
     
    1281
    >> Corrected index usage problem in buttonbox insert method.
    1282
     
    1283
       The buttonbox insert method didn't correctly convert the index argument
    1284
       prior to inserting the new pushbutton.  This has been fixed.
    1285
     
    1286
    >> Corrected flicker problem in scrolled* widgets.
    1287
     
    1288
       Modified the scrolled* widgets to only change the current scrollbar
    1289
       display if different than the current setting.  This fixes the flicker
    1290
       problem which was apparent during horizontal scrolling.
    1291
     
    1292
    >> Entryfield command option performs a break.
    1293
     
    1294
       Following evaluation of the command option for entryfield widgets, a
    1295
       break is performed.  This caused a problem when entryfields were in
    1296
       a dialog.  Hitting return in the entryfield, invoked the dialogs
    1297
       default button.  This has been fixed.
    1298
     
    1299
     
    1300
    INCOMPATIBLE CHANGES
    1301
    ------------------------------------------------------------------------------
    1302
    >> Removed -highlightbackground option from mega-widgets
    1303
     
    1304
       All the -highlightbackground options have been renamed to be -background.
    1305
       This was always an annoyance anyway.  Now, setting the -background changes
    1306
       all the highlightbackgrounds as well.  Should anybody still for some odd
    1307
       reason need -highlightbackground, just access the component with the
    1308
       "component name configure" command.
    1309
     
    1310
     
    1311
    ==========================================================================
    1312
     -------------------------- iwidgets-2.0b0 ------------------------------
    1313
     -------------------- CHANGES FROM iwidgets-2.0b1 -----------------------
    1314
    ==========================================================================
    1315
     
    1316
      [incr Widgets] versions b1, b2, b3, and b4 are compatable with itcl-2.0b2
    1317
     
    1318
    NEW FEATURES
    1319
    ------------------------------------------------------------------------------
    1320
     
    1321
    >> A secondary lower case mega-widget command now exits.
    1322
     
    1323
       Mega-widgets can now be created using the new lower case, more tk'ish
    1324
       method or still using the class name.
    1325
     
    1326
       Entryfield .ef   and   entryfield .ef
    1327
     
    1328
       both perform the same operation.
    1329
     
    1330
    >> The demos should now all work.
    1331
     
    1332
       The correct wish is now called.  itkwish instead of the old itcl_wish.
    1333
     
    1334
    >> The man pages have all been updated to the best of my ability.
    1335
     
    1336
    >> A new more minimal format for the code style has been implemented.
    1337
     
    1338
       The class declaration only contains declarations.  All implementation is
    1339
       spearate.  This creates a much more readable class.
    1340
     
    1341
    >> All class file names as well as the tests, doc, and demos are all lower
    1342
       case.
    1343
     
    1344
    >> Several new validate types such as hexidecimal and real have been added
    1345
       to the Entryfield.
    1346
     
    1347
    >> The Panedwindow class additional commands:
    1348
     
    1349
       A paneconfigure command exists for configuring indiviual tagged panes.
    1350
     
    1351
            panedwindow .pw
    1352
            .pw add first
    1353
            .pw add last
    1354
            .pw paneconfigure first -margin 10
    1355
     
    1356
       An insert command exists.  It takes an index and tag as arguments followed
    1357
       by optional arguments to be applied to the pane.
    1358
     
    1359
            .pw insert end second -minimum 20
    1360
     
    1361
    >> The Buttonbox class now has additional commands:
    1362
     
    1363
       A buttonconfigure command exists for configuring indiviual tagged buttons.
    1364
     
    1365
            buttonbox .bb
    1366
            .bb add OK -text OK
    1367
            .bb add Cancel -text Cancel
    1368
            .bb buttonconfigure OK -command [list puts OK]
    1369
     
    1370
       An insert command has been added.  It takes an index as the first arg,
    1371
       followed by the tag and button arguments.
    1372
     
    1373
            .bb insert Cancel Apply -text Apply
    1374
     
    1375
       The invoke command no long excepts a list of buttons to invoke.  That
    1376
       didn't make much sense.  It takes an optional index for a single button
    1377
       to invoke.  Without any arguments, the default button is invoked.
    1378
     
    1379
    BUG FIXES
    1380
    ------------------------------------------------------------------------------
    1381
     
    1382
    >> Corrected scrolled* packing
    1383
     
    1384
       The packing order of all the scrolled* mega-widgets has been modified
    1385
       such that the scrollbars are the last to be clipped.
    1386
     
    1387
    >> Corrected buttonbox single button centering
    1388
     
    1389
       The buttonbox has been modified such that a box with only one button
    1390
       will be correctly centered.
    1391
     
    1392
    >> scrolledlist selection corrected
    1393
     
    1394
       The -selectioncommand is now invoked following any selection of an item,
    1395
       regardless if it was already selected.  The programmer must now determine
    1396
       if the selected item has changed if necessary.  The previous approach of
    1397
       only invoking the -selectioncommand if the selection has changed caused
    1398
       too many problems, making it behave erraticly.
    1399
     
    1400
    >> Corrected problems preventing classes being derived from scrolled* classes
    1401
     
    1402
       Several variables were incorrectly declared to be private rather than
    1403
       protected.  Also, the _scroll* method was incorrectly declared private
    1404
       instead of protected.  These problems prevented inheritance from the
    1405
       scrolled* classes.
    1406
     
    1407
     
    1408
    INCOMPATIBLE CHANGES
    1409
    ------------------------------------------------------------------------------
    1410
     
    1411
    >> The class names are now upper case on the first character only.
    1412
     
    1413
       Class names have been changed to be upper case on the first character
    1414
       only to be more X'ish.  Old class names like EntryField are now Entryfield.
    1415
     
    1416
    >> All public methods are now all lowercase.
    1417
     
    1418
       This effects the typical common method such as childsite.  Others effected
    1419
       include :
    1420
     
    1421
            ::iwidgets::Labeledwidget::alignlabels
    1422
     
    1423
    >> Labeledwidget class changes:
    1424
     
    1425
       The -labelon option has been removed.  The mega-widget now unpacks both
    1426
       the label and margin if neither the -labeltext, -labelbitmap, or
    1427
       -labeimage have a value.
    1428
     
    1429
       The -font option has been removed.  The -labelfont option should be used
    1430
       instead.
    1431
     
    1432
    >> Entryfield class changes:
    1433
     
    1434
       The -labelon option is not inherited by the Entryfield anymore.  See the
    1435
       Labeledwidget changes above.
    1436
     
    1437
       The Entryfield fixed option has a different meaning.  It now specified
    1438
       the maximum number of characters allowed.  A value of zero is unlimited.
    1439
       This frees up the width option to be able to specify a greater number
    1440
       of characters than the fixed amount for visual effect.
    1441
     
    1442
       The -type and -validate options have been combined to just -validate
    1443
       which now takes either a type keyword or a command.  The command receives
    1444
       additional trailing arguments consisting of the input character and the
    1445
       the widget.  I hope to change this soon to use substitutions like %c
    1446
       for the character at a later date.
    1447
     
    1448
       The -background option has been removed.  The -textbackground option
    1449
       should be used instead.
    1450
     
    1451
       The -validate option now has several substitution strings which may be
    1452
       passed to the validation script.
    1453
     
    1454
    >> ScrollBar class changes:
    1455
     
    1456
       It has been deleted.  It wasn't a big win.  The only benefit was that the
    1457
       -background option automatically calculated the troughcolor at 80% of
    1458
       its value.  It's just as easy to use the option database and change the
    1459
       Tk scrollbar troughcolor to whatever value is desired.  The various
    1460
       scrolled* classes now all use the straight Tk scrollbar.
    1461
     
    1462
    >> Panedwindow class changes:
    1463
     
    1464
       Panes are now tagged.  This means the add, and insert methods take an
    1465
       additional argument which is the tag for that pane.
    1466
     
    1467
       The panedwindow index method now takes the tag as well as the number and
    1468
       keyword "end".  Other methods such as delete, hide, and show now can use
    1469
       the pane tag as an index.
    1470
     
    1471
            panedwindow .pw
    1472
            .pw add bottom
    1473
            .pw insert 0 top
    1474
            .pw insert 1 middle
    1475
            .pw delete middle
    1476
     
    1477
       The refresh method has been renamed to reset.
    1478
     
    1479
       The semi-private -state option has been removed.  The only method of
    1480
       controlling the display of panes is via the hide and show methods.
    1481
     
    1482
    >> Dialogshell class changes:
    1483
     
    1484
       The modality option value of "system" has been renamed to be "global"
    1485
     
    1486
    >> Dialog class changes:
    1487
     
    1488
       All the options for the buttons have been removed.  The buttonconfigure
    1489
       method should be used instead.  The class simply creates the standard
    1490
       OK, Apply, Cancel, and Help buttons tagged by their default labels.
    1491
       The buttonconfigure method can be used to make modifications to the
    1492
       buttons.  The hide and show methods should now be used instead of the
    1493
       the -disp* options.
    1494
     
    1495
            dialog .d
    1496
            .d buttonconfigure OK -text Enter
    1497
            .d hide Help
    1498
            .d hide Apply
    1499
     
    1500
       The -orient option is no longer kept.  It seemed rarely used if at all.
    1501
       The -buttonboxpos option handles the mojority of the cases as is.
    1502
     
    1503
    >> Scrolledcanvas class changes:
    1504
     
    1505
       The binditem method is now been renamed back to bind.  This is what it
    1506
       should have been all along.  A problem in the alpha version of [incr Tcl]
    1507
       prevented use of this word.
    1508
     

    powered by: WebSVN 2.1.0

    © copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.