-
Notifications
You must be signed in to change notification settings - Fork 2
/
CHANGES
1622 lines (1080 loc) · 60.8 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
[incr Widgets] CHANGES
----------------------
==========================================================================
CURRENT VERSION: 4.1.1
PREVIOUS VERSION: 4.1.0
==========================================================================
CURRENT VERSION: 4.1.0
PREVIOUS VERSION: 4.0.2
==========================================================================
CURRENT VERSION: 4.0.2
PREVIOUS VERSION: 4.0.1
==========================================================================
CURRENT VERSION: 4.0.1
PREVIOUS VERSION: 4.0.0
DATE: 9/16/02
CONTACT: Chad Smith ([email protected])
This is primarily a bug-fix release of the [incr Widgets]. Please see
the ChangeLog for a detailed explanation of the changes made to the various
widgets and the SourceForge tickets to which each change is associated.
Check out the incoming/demos directory. I've added a couple new widgets
that were submitted to SourceForge. Let me know if you think they are
useful or not. If so, they can be added to the distribution in a future
release.
Many thanks to Marty Backe for his tireless efforts closing out numerous
SF tickets for this release!
==========================================================================
==========================================================================
-------------------------- iwidgets-4.0.0 ------------------------------
-------------------- CHANGES FROM iwidgets-3.1.0 -----------------------
==========================================================================
DATE: 8/07/01
CONTACT: Chad Smith ([email protected])
--------
CHANGES:
--------
This release of the [incr Widgets] marks the first time they are
released independently of the [incr Tcl] distribution. The Iwidgets
package is now separate from Itcl and can be optionally downloaded
and built as a true extension to Itcl (well actually Itk).
Along with the Makefile/configuration-type changes necessary for
removing the Iwidgets from Itcl, there are many other changes you
should note in this release. I'll try to list each of these:
o - The most important change is that doing a 'package require Iwidgets'
no longer pulls the itcl namespace commands into the global namespace.
Previously, this was done because none of the itcl-specific commands
such as class, configbody, etc. were properly resolved in the [incr
Widgets] classes. Now, all references to itcl commands use proper
namespace resolution. For example, "class iwidgets::Checkbox" is now
replaced with "itcl::class iwidgets::Checkbox".
Here is a list of itcl commands that are now properly scoped:
class
body
configbody
scope
code
There are likely many folks in the community that have come to rely
on the exporting of itcl commands into the global namespace, so if you're
one of these folks you have two choices if you want to use this version
of the [incr Widgets]: (1) You can add a "namespace import -force itcl::*"
at the beginning of your application (this is what 'package require
Iwidgets' used to do); or (2) you can add "itcl::" in front of each of the
itcl-specific commands in your code.
o - A new mega-widget, extbutton, was added to the distribution. Note that
this new widget will only work with Tk 8.4 or later. A man page and
test case is available in the distribution.
o - "readonly" was added as a new value for the combobox's -state option.
o - A new option, -gmt, was added to the datefield. It accepts boolean values.
o - A new option, -state, was added to the radiobox.
o - A new method, bbox, was added to tabset to return the bounding box that
will completely enclose all tabs.
o - A new option, -automount, was added to extfileselectionbox and
fileselectionbox.
o - Error checking was added to hierarchy's -alwaysquery option to enforce
boolean values, and some memory leaks were plugged in the 'clear' method.
==========================================================================
==========================================================================
-------------------------- iwidgets-3.0.0 ------------------------------
-------------------- CHANGES FROM iwidgets-2.2.0 -----------------------
==========================================================================
[incr Widgets] version 3.0.0 is compatable with itcl3.0
[incr Widgets] has undergone a major overhaul between the last version
and 3.0.0. Since so many changes have taken place it made more since to
list them by widget class name rather than the old style of new features
and bug fixes. The majority of the changes are under the covers and will
have minimal impact of existing scripts, but there are a few that may
bite you. To locate possible incompatabilities, just search this file
for the key words "POSSIBLE INCOMPATIBILITY".
In addition, quite a few new widgets have been added to the set. They
include the following:
Calendar
Checkbox
Dateentry
Datefield
Disjointlistbox
Extfileselectionbox
Extfileselectiondialog
Finddialog
Hierarchy
Labeledframe
Mainwindow
Messagebox
Scrolledwidget
Timeentry
Timefield
Watch
Thanx to the following contributors who have been kind enough to help
me support this effort through enhancements, bug fixes, and new widgets.
John Tucker [email protected]
Mitch Gorman [email protected]
John Reekie [email protected]
Alfredo Jahn [email protected]
Michael McLennan [email protected]
Labeledwidget
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Removed a redundant frame component named "shell" just below the hull.
>> Corrected labelvariable bug. Setting the labelvariable had no effect.
The code has been corrected such that a trace is installed on the variable
which forces an update of the label text upon writes to the variable.
>> Removed the labmargin frame component used for implementing a margin.
This is now accomplished via the grid by maintaining an empty row/column
for the margin and adjusting its minsize.
>> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
If you need access to it, use the childsite command.
>> Added new label position orientation settings. The current label
positions are nw, n, ne, sw, s, se, en, e, es, wn, w, and ws.
>> Updated the test script and man page.
Scrolledlistbox
______________________________________________________________________________
>> Derived from the Scrolledwidget class which provides the vertical
and horizontal scrollbars along with the options to control their
display.
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Added a -state option that allows you to disable the listbox. Selection
is blocked. The foreground of the scrolledlistbox label is changed
to disbabledforeground.
>> Fixed the infinite looping problem which would occur with -hscrollmode
set to dynamic and a really long line added just out of the view port.
As you'd scroll down the horizontal scrollbar bar would start flashing
on and off.
>> Removed the margin frame components used for implementing a margin
between the listbox and scrollbars. This is now accomplished via
the grid by maintaining an empty row/column for the margin and
adjusting its minsize.
>> POSSIBLE INCOMPATIBILITY - Removed -items option. This was originally
put in as a convienence, but it turns out to be quite costly in terms
of performance. It had to go. The insert/delete/get commands can be
used instead which is much more in line with Tk.
>> Updated the test script, demo, and man page.
Entryfield
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Modified the real type validation to except exponents. Patch provided
by [email protected] (Rick Evans).
>> The -state option changes the label to disabledforeground when the
entryfield is disabled.
>> Changed component option basis to be that of the "usuals".
>> Added a -pasting configuration option to allow user to enable/disable
pasting into the entry component of the entryfield. [email protected]
(Chad Smith)
>> Removed hardcoded state comparisons in the _keyPress method and replaced
with code to mask out <Ctrl> and <Alt> keypress events. [email protected]
(Chad Smith)
Pushbutton
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
>> POSSIBLE INCOMPATABILITY - The pushButton component has been changed
to pushbutton.
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the pushbutton anymore:
-anchor -justify -textvariable
The underlying button component still maintains them , but not the
pushbutton itself. You can still set them via the component
command, i.e. ".pb component pushButton configure -justify left"
Buttonbox
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
Shell
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
>> Added a -width and -height option. A value of zero causes the width
and/or height to be adjusted to the required value based on the size
requests of the components placed in the childsite. Otherwise, the
width and/or height is fixed. The default is zero.
>> Added -width and -height tests to the test script and updated the
man page.
>> The activate method no longer returns an error if it is called when
the shell is already active. Instead, the shell is just raised.
Dialogshell
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Updated the test script and man page, adding the -width and -height
options that are inherited from the shell.
Dialog
______________________________________________________________________________
>> Updated the test script and man page, adding the -width and -height
options that are inherited from the shell.
Selectionbox
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Modified the insert and delete methods to use the items insert and
delete method rather than configuring the -items option which has
been removed from the underlying scrolledlistbox.
>> Removed the margin frame component used for implementing a margin
between the items and selection. This is now accomplished via
the grid by maintaining an empty row for the margin and adjusting
its minsize.
>> Removed the unecessary frame that was used to contrain the width
and height of the widget. This is now performed directly on the
widget hull.
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the selectionbox anymore:
-hscrollmode -itemslabelpos -labelmargin -margin -relief
-sbwidth -scrollmargin -selectionlabelpos -vscrollmode
The underlying components still maintain them, but not the
selectionbox itself. You can still set them via the component
command, i.e. ".sb component selection configure -labelpos nw" or
".sb component items configure -hscrollmode static"
>> Added a -width and -height option. A value of zero causes the width
and/or height to be adjusted to the required value based on the size
requests of the components placed in the childsite. Otherwise, the
width and/or height is fixed. The default is zero.
>> Updated the test script, demo, and man page.
Selectiondialog
______________________________________________________________________________
>> Pack propagation is now handled by the shell class.
>> Modified the insert and delete methods to use the insert and
delete method rather than configuring the -items option which has
been removed from the underlying scrolledlistbox.
>> Changed component option basis to be that of the "usuals".
>> POSSIBLE INCOMPATABILITY - The "sb" component has been renamed to be
"selectionbox". This is much more descriptive.
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the selectiondialog anymore:
-hscrollmode -itemslabelpos -labelmargin -margin -relief
-sbwidth -scrollmargin -selectionlabelpos -vscrollmode
The underlying components still maintain them, but not the
selectiondialog itself. You can still set them via the component
command, i.e. ".sd component selectionbox configure -margin 10" or
".sd component selectionbox component items configure -hscrollmode static"
>> The -width and -height options are now controlled by the shell class.
A value of zero causes the width and/or height to be adjusted to the
required value based on the size requests of the components. Otherwise,
the width and/or height is fixed. The default is zero.
Scrolledtext
______________________________________________________________________________
>> Derived from the Scrolledwidget class which provides the vertical
and horizontal scrollbars along with the options to control their
display.
>> Reimplemented geometry management using the grid instead of the packer,
eliminating quite a few unneeded frames along the way.
>> Changed component option basis to be that of the "usuals".
>> Removed the margin frame components used for implementing a margin
between the text and scrollbars. This is now accomplished via
the grid by maintaining an empty row/column for the margin and
adjusting its minsize.
>> The -state option changes the label to disabledforeground when the
scrolledtext is disabled.
>> Fixed the infinite looping problem which would occur with -wrap set
to none, -hscrollmode set to dynamic and a really long line added
just out of the view port. As you'd scroll down the horizontal
scrollbar bar would start flashing on and off.
>> Added an index argument to the import method so a file can be
imported into the text area at positions other than just the end.
>> Updated the test script and man page.
Feedback
______________________________________________________________________________
>> Corrected namspace problem by removing global scope qualifier from
class definition as well as method and option bodies. Bug report
and patch provided by [email protected] (Rick Evans).
Hyperhelp
______________________________________________________________________________
>> Corrected namspace problem by removing global scope qualifier from
class definition as well as method and option bodies. Bug report
provided by [email protected] (Rick Evans).
Scrolledhtml
______________________________________________________________________________
>> Corrected namspace problem by removing global scope qualifier from
class definition as well as method and option bodies. Bug report
provided by [email protected] (Rick Evans).
Canvasprintbox
______________________________________________________________________________
>> Added tcl_platform to list of global variables declared in print
method. Bug report provided by [email protected] (Rick Evans).
Scrolledcanvas
______________________________________________________________________________
>> Derived from the Scrolledwidget class which provides the vertical
and horizontal scrollbars along with the options to control their
display.
>> POSSIBLE INCOMPATIBILITY - The ScrCanvas component has been renamed
canvas.
>> The -state option changes the label to disabledforeground when the
scrolledcanvas is disabled.
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Removed the margin frame components used for implementing a margin
between the canvas and scrollbars. This is now accomplished via
the grid by maintaining an empty row/column for the margin and
adjusting its minsize.
>> Updated the test script, demo, and man page.
Scrolledframe
______________________________________________________________________________
>> Derived from the Scrolledwidget class which provides the vertical
and horizontal scrollbars along with the options to control their
display.
>> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
If you need access to it, use the childsite command.
>> POSSIBLE INCOMPATIBILITY - The scrCanvas component has been renamed
canvas and the scrFrame component to sfchildsite.
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Fixed the infinite looping problem which would occur with -hscrollmode
set to dynamic and a really long component added just out of the view
port. As you'd scroll down the horizontal scrollbar bar would start
flashing on and off.
>> Removed the margin frame components used for implementing a margin
between the canvas and scrollbars. This is now accomplished via
the grid by maintaining an empty row/column for the margin and
adjusting its minsize.
>> Updated the test script, demo, and man page.
Promptdialog
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
>> POSSIBLE INCOMPATABILITY - Renamed the "ef" component to "prompt".
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the promptdialog anymore:
-fixed -justify -labelbitmap -labelimage -labelmargin
-state -textvariable -width
The underlying components still maintain them, but not the
promptdialog itself. You can still set them via the component
command, i.e. ".pd component prompt configure -labelpos w"
>> Updated the test script, demo, and man page.
Messagedialog
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
>> POSSIBLE INCOMPATABILITY - Renamed the "msg" component to "message".
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the messagedialog anymore:
-anchor -justify -wraplength
The underlying components still maintain them, but not the
messagedialog itself. You can still set them via the component
command, i.e. ".md component message configure -justify left"
>> Reimplemented geometry management using the grid instead of the packer.
>> Updated the test script, demo, and man page.
Hierarchy
______________________________________________________________________________
>> New iwidgets hierarchical data viewer mega-widget which manages a list
of nodes that can be expanded or collapsed. Individual nodes can be
highlighted. Clicking with the right mouse button on any item brings
up a special item menu. Clicking on the background area brings up
a different popup menu.
>> Many thanks to Michael McLennan who provided the nucleus of this code.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the hierarchy demo.
Checkbox
______________________________________________________________________________
>> New iwidget checkbox mega-widget which manages a group of check
buttons quite similar to that of the existing radiobox.
>> Thanks to John Tucker for the contributed code.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the checkbox demo.
Radiobox
______________________________________________________________________________
>> Changed component option basis to be that of the "usuals".
>> Changed the base class to be labeledframe.
>> Updated the test script, demo, and man page.
Spinner
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Removed a redundant frame component named "arrowFrame".
>> Removed the use of the option database to set the option values.
Spinint
______________________________________________________________________________
>> Removed the use of the option database to set the option values.
Datefield
______________________________________________________________________________
>> New iwidget. The datefield is a smart date entry field with adjustable
built-in intelligence levels. It can be made smart enough not to accept
any bad dates or made dumb enough to accept any old thing typed. Since
it is derived from the labeledwidget, it also includes an optional label.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the datefield demo.
Calendar
______________________________________________________________________________
>> New iwidget. The calendar widget provide for the selection and/or
display of dates. It displays a single month at a time. Buttons exist
on the top to change the month in effect turning th pages of a calendar.
As a page is turned, the dates for the month are modified. Selection
of a date visually marks that date. The selected value can be monitored
via the -command option or just retrieved using the get method. Methods
also exist to select a date and show a particular month.
The option set allows the calendars appearance to take on many forms.
For example, the background of the weekdays and weekends can be
independently changed, the starting day of the week can be set to
any of the days, the titles and fonts of everything is configurable,
and an outline can be displayed around the each day.
>> Many thanks to Michael McLennan who provided me a early copy of his
book which gave me the example on which this code is based.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the calendar demo.
Dateentry
______________________________________________________________________________
>> New iwidget. Dateentry is a quicken style date entry field with a
popup calendar produced by combining the datefield and calendar widgets
together. This allows a user to enter the date via the keyboard or by
using the mouse by selecting the calendar icon which brings up a popup
calendar. Since it is based on both the datefield and calendar, both
option sets exists under the same roof in the dateentry.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the dateentry demo.
Messagebox
______________________________________________________________________________
>> New iwidget. Implements an information messages area widget with
scrollbars. Message types can be user defined and configured. Their
options include foreground, background, font, bell, and their display
mode of on or off. This allows message types to defined as needed,
removed when no longer so, and modified when necessary.
The number of lines that can be displayed may be limited. When this
limit is reached, the oldest line is removed. There is also support
for saving the contents to a file, using the standard file selection
dialog.
>> Many thanks to Alfredo Jahn who came up with idea and provided me a
very stable working version which I extended to support user defined
message types.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the messagebox demo.
Spintime
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Removed the margin frame component used for implementing a margin
between the hour, minute and second components. This is now accomplished
via the grid by maintaining an empty row for the margin and adjusting
its minsize.
>> POSSIBLE INCOMPATIBILITY - The delete, clear, and insert methods have
been removed. Use the show method to set the time.
>> POSSIBLE INCOMPATIBILITY - The get method has been changed such that
it returns the time as either a colon separated string or a clock clicks
value.
>> Added a show method to be used to set the time. The method takes as
an argument either a valid time string, a clock clicks value, or the
keyword now.
>> The current time will now appear as the default.
>> Updated the test script, demo, and man page.
Spindate
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Removed the margin frame component used for implementing a margin
between the month, day and year components. This is now accomplished
via the grid by maintaining an empty row for the margin and adjusting
its minsize.
>> Spindate now uses the clock command during the spinning of the date
components. Only valid dates are spun now.
>> POSSIBLE INCOMPATIBILITY - Changed the -monthformat option to be
string, brief, and full doing away with the optional user specified list.
>> POSSIBLE INCOMPATIBILITY - The delete, clear, and insert methods have
been removed. Use the show method to set the date.
>> POSSIBLE INCOMPATIBILITY - The get method has been changed such that
it returns the date as either a string or a clock clicks value.
>> Added a show method to be used to set the time. The method takes as
an argument either a valid time string, a clock clicks value, or the
keyword now.
>> The current date will now appear as the default.
>> Selection and keyboard entry of values has been disabled. The value
may only be changed via the spinners which insures correct operation.
>> Updated the test script, demo, and man page..
Feedback
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Made all the itk_components public.
>> Added a trough which appears beneath the feedback widget. It has a
-troughcolor option to set its color.
Scrolledhtml
______________________________________________________________________________
>> Added -alink (same as -linkhighlight, but matches html naming) and -update
options.
>> Added new tags to come up to html3.2:
basefont
div
font
table
td
th
tr
>> Added numbering formats for <li> tag.
>> Fixed to delete images after page is cleared.
>> Fixed to bring anchor points to middle when moving down to a nearby
anchor point.
>> Fixes to regular expression matches.
>> Performance enhancements with stack algorithm and regular expression
searches.
Hyperhelp
______________________________________________________________________________
>> Added -closecmd and -maxhistory options.
>> Made itk_components public/private (which could conceivably break
someone, if they were using a component directly that is now private)
>> Fixed bindings.
Toolbar
______________________________________________________________________________
>> Added a destructor to cancel the possibly pending after command request
to display the popup help.
>> Corrected the vertical packing such that items are expanded horizontally.
Finddialog
______________________________________________________________________________
>> New iwidget. Finddialog works in conjunction with a text or
scrolledtext widget to provide a means of performing search operations.
The user is prompted for a text pattern to be found in the text or
scrolledtext widget. The search can be for all occurances, by regular
expression, considerate of the case, or backwards.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the finddialog demo.
Panedwindow
______________________________________________________________________________
>> Corrected show/hide bug which caused the placement of the sash and
separator to be incorrect. If you added a couple of panes and then
hid them all of them followed by showing them, the sash distribution
was wrong.
>> Corrected a divide by zero problem which occurred when you hid all
of the panes.
Combobox
______________________________________________________________________________
>> Mitch Gorman ([email protected]) has taken over maintenance of the
combobox from John Sigler.
>> Entry completion has been added. Should your typing in the entry
field match an item in the list, it is completed for you automatically.
This feature is switchable via the -completion option. The default
is on.
>> It now utilizes a true button for the arrowBtn component.
>> The -state option has been fixed such that it can be truly disabled.
>> Reimplemented geometry management using the grid instead of the packer.
>> A -grab option has been added to do both local and global grabs
of the drop-down listbox.
>> POSSIBLE INCOMPATIBILITY - Removed -items option. This was originally
put in as a convienence, but it turns out to be quite costly in terms
of performance. It had to go. The insert/delete/get commands can be
used instead which is much more in line with Tk.
>> POSSIBLE INCOMPATIBILITY - The following options have been removed:
-autoclear and -fliparrow.
>> The combobox now utilizes built-in bitmaps for button glyphs.
>> Removed the margin frame component used for implementing a margin
between the entry and arrow button. This is now accomplished via
the grid by maintaining an empty column for the margin and adjusting
its minsize.
>> List elements are preserved when switching between drop-down and simple
styles via the -dropdown option.
>> The functionality of the -state and -editable options have been made
completely independent of each other. It can be editable/normal,
non-editable/normal, or disabled, and toggling one option will not
impact the other option when the first is toggled back
>> Corrected the validation processing in the -unique option.
>> Fixed various error messages returned due to bad arguments, options, etc.
Fileselectionbox
______________________________________________________________________________
>> Reimplemented geometry management using the grid instead of the packer.
>> Changed component option basis to be that of the "usuals".
>> Removed frame components used for margins. This is now accomplished
via the grid by maintaining an empty row/column for the margin and
setting its minsize.
>> Changed the default value of -nomatchstring to "".
>> The directory and files lists are now shown without the leading
directory name. Although this differs from the Motif standard, it
keeps the fileselectionbox more in line with the tk_getSaveFile dialog.
>> POSSIBLE INCOMPATIBILITY - The -style option which allowed you to
display the fileselectionbox in a "notif" style using comboboxes
for the filter and selection and kept the lists in a panedwindow
has been removed. A related option, -dirsfraction is also gone.
This feature caused the fileselectionbox to be much slower during
construction than anticipated. If you liked the "notif" style, it
exists in a new mega-widget call extfileselectionbox and
extfileselectiondialog.
>> POSSIBLE INCOMPATIBILITY - The childsite is now a protected component.
If you need access to it, use the childsite command.
>> POSSIBLE INCOMPATABILITY - The following options have been removed
and are not directly available in the fileselectionbox anymore:
-relief -repeatdelay -repeatinterval -labelmargin
-hscrollmode -sbwidth -scrollmargin -vscrollmode
-dirslabelpos -fileslabelpos -filterlabelpos
-selectionimage- selectionlabelpos -filterfocuscommand
-selectionfocuscommand -dbldirscommand -dblfilescommand
The underlying components still maintain them , but not the
fileselectionbox itself. You can still set them via the component
command, i.e. ".fsb component dirs configure -hscrollmode none"
>> POSSIBLE INCOMPATIBILITY - The -horizmargin and -vertmargin options
have been removed. I doubt if anybody other than the most picky
of people will be effected.
>> Added new childsite position orientation settings. The new
positions are n, s, e, w, top, bottom, and center.
>> Updated the test script and man page.
Extfileselectionbox
______________________________________________________________________________
>> New Iwidget. The extfileselectionbox is basically the "notif" portion
of the previous version of the fileselectionbox. It was separated from
the fileselectionbox for performance reasons.
>> Created test script, demo and man page.
>> The catalog demo has been updated to include the extfileselectionbox demo.
Tabset
______________________________________________________________________________
>> Corrected tab display problem which was occurring on HP machines.
Some additional updates were installed in tab selection and deselection.
They will only be invoke should the os be HP-UX. Also, the ability
to scroll the tabs via MB2 has been disabled for HPs. Thanks to
[email protected] (Thomas Tempero) for first reporting the problem
[email protected] (Michael Szilagyi) for sending me the fix which
was implemented.
Timefield
______________________________________________________________________________
>> New iwidget. The timefield is a smart time entry field. It verifies
user time input prior to its display. Since it is derived from the
labeledwidget, it also includes an optional label.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the timefield demo.
Watch
______________________________________________________________________________
>> New iwidget. The watch widget displays a simple clock face. Methods
exist to set/get the time. The hands can be adjusted via mouse selection
with the new setting being retrievable via the get method. It is
very configurable. The colors of the hands, face, and marks can all
be changed to suit your needs.
>> Many thanks to John Tucker who developed this nice widget.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the watch demo.
Timeentry
______________________________________________________________________________
>> New iwidget. Timeentry, like the dateentry, is along the quicken
lines as well. It displays a timefield with a watch icon button
beside it. Selection of button presents a popup watch which enables
you to select the time by dragging the hands about the face. The
popup has a close button that removes the popup and sets the timefield
to the value previously displayed in the watch. You can also just
enter the time directly as you would in the standard timefield.
>> Man page, test script, and demo have been produced.
>> The catalog demo has been updated to include the timeentry demo.
==========================================================================
-------------------------- iwidgets-2.1.1 ------------------------------
-------------------- CHANGES FROM iwidgets-2.1.0 -----------------------
==========================================================================
[incr Widgets] version 2.1.1 is compatable with itcl2.1
NEW FEATURES
------------------------------------------------------------------------------
>> Added pagecget method to notebook class.
Patch supplied by Tom Tromey ([email protected]).
>> Added buttoncget method to buttonbox class.
Patch supplied by Tom Tromey ([email protected]).
>> Added buttoncget method to dialogshell class.
Patch supplied by Tom Tromey ([email protected]).
>> Added -closecmd option to the hyperhelp mega-widget.
Previously, closing the hyperhelp widget deleted the object which was
deemed to be user hostile. Now, there exists a -closecmd option
which defaults to just deactivating the widget. Should you wish to
destroy the widget, either do so explictly or modify the -closecmd
to do it.
BUG FIXES
------------------------------------------------------------------------------
>> Corrected selectborderwidth option class name in the toolbar
The class name was set to SelectBorderWidth rather than BorderWidth.
This created problems when attempting to use the toolbar with
other widgets like the scrolledcanvas. Bug report by [email protected]
(Chad Smith).