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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
|
2000-04-14 Eric Melski <ericm@scriptics.com>
* win/tkWinKey.c: Added check for ASCII delete character in
KeycodeToKeysym, to fix [Bug: 5090]. See comment in code for more
information.
* generic/ks_names.h: Added Scroll_Lock and Sys_Req definitions.
* win/tkWinKey.c: Changed implementation of KeycodeToKeysym,
et. al., to use a keycode table for lookups; this will result in
faster keycode -> keysym translations for non-ASCII keys like
Control, Alt, etc.
2000-04-14 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinWm.c (WmProc): added check in WM_MOUSEACTIVATE so we
correctly activate native menus when clicking in when we didn't
have focus [Bug: 2272]
* generic/tkCanvas.c (CanvasEventProc:2451): corrected cast
* generic/tkEntry.c (Tk_EntryObjCmd): adjusted finishing error
cases and changed TK_CONFIG_NULL_OK to TK_OPTION_NULL_OK
* tests/scale.test:
* generic/tkScale.c:
* generic/tkScale.h:
* unix/tkUnixScale.c:
* mac/tkMacScale.c: moved (PixelToValue|ValueToPixel|SetScaleValue)
to tkScale.c. Caused an associated variable to be immediately set
[Bug: 4833]
* library/scale.tcl (tkScaleActivate): reduced number of scale
redisplays by checking current value of state before setting it
again. [Bug: 4191]
* tests/winDialog.test: tk_chooseDirectory seems to get a noop
from GetOpenFileName in the static build, hanging some tests.
The tests were fixed to timeout (noop cause unknown).
* unix/aclocal.m4 (SC_ENABLE_THREADS): enhanced the detection of
pthread_mutex_init [Bug: 4359] and (SC_CONFIG_CFLAGS) added
--enable-64bit-vis switch for Sparc VIS compilation [Bug: 4995]
2000-04-13 Eric Melski <ericm@scriptics.com>
* win/tkWinKey.c: Added smarts to check whether the left or right
Control, Shift, or Alt key was pressed. [Bug: 870].
* win/tkWinMenu.c: Corrected code that created separator items on
menus; originally, it requested that the system be responsible for
drawing those items, so it would ignore configuration items like
the widget background. Now, we draw the separators ourselves (as
we do with every other kind of menu item already). [Bug: 1166].
* win/tkWin3d.c:
* unix/tkUnix3d.c: Applied patch from [RFE: 2501]: adds more
sophisticated smarts to TkpGetShadows, so that the highlight of a
very bright color is actually distinguishable from the color, and
the shadow of a very dark color is similarly distinguishable from
the color.
* generic/tkCanvas.c: Applied patch from [Bug: 4202]; adds a check
for NULL tkwin in Tk_CanvasEventuallyRedraw.
2000-04-12 Jeff Hobbs <hobbs@scriptics.com>
* test/winClipboard.test:
* win/tkWinInt.h:
* win/tkWinClipboard.c (UpdateClipboard):
* win/tkWinX.c (GenerateXEvent): added updatingClipboard tsd and
TkWinUpdatingClipboard accessor function to allow us to flag
ourselves when we are the ones updating the clipboard. This
corrected inability to create our own clipboard types within a Tk
application. [Bug: 2338 4318]
* win/tkWinTest.c (TestclipboardCmd): improved TestclipboardCmd
with better error handling and obj'ification
2000-04-11 Eric Melski <ericm@scriptics.com>
* msgcat.n: Added docs for new behavior from patch in [Bug: 4158].
* msgcat.test: Added tests for new behavior from patch in [Bug:
4158].
* msgcat.tcl: Applied patch from [Bug: 4158], which enables
msgcat::mc to search the entire namespace ancestry chain for
message translations (ie, first it checks the current namespace,
then the parent, then the parent's parent, etc). Also allows the
specification of additional args for msgcat::mc; if extra args are
given, the [format] command is used to substitute the additional
args in the translated message.
* library/bgerror.tcl: Moved check for withdrawn state after check
for tkerror; this was causing problems when tkerror was used.
2000-04-10 Eric Melski <ericm@scriptics.com>
* library/bgerror.tcl: Added check for withdrawn state of . and
unsetting of transient bit for .bgerrorDialog if . is not
viewable; this protects against the application hanging on systems
like Windows, where transient windows are withdrawn with their
parents. [Bug: 4370].
* tests/event.test: Added test for [event generate $widget
<Alt-z>] [Bug: 4611].
* tests/choosedir.test: Changed "namespace import ::tcltest" to
"namespace import -force ::tcltest".
* win/tkWinKey.c:
* unix/tkUnixKey.c:
* mac/tkMacKeyboard.c: Changed InitKeymapInfo to
TkpInitKeymapInfo. [Bug: 4611].
* generic/tkStubInit.c:
* generic/tkIntDecls.h: Re-gen'd from tkInt.decls.
* generic/tkInt.decls: Added TkpInitKeymapInfo to list of function
decls.
* generic/tkBind.c (HandleEventGenerate): Added code to initialize
keymap info if necessary, and to correctly set modifier bits in
XEvent structure create to handle [event generate] calls.
Previously, the alt/meta bits were not set correctly, so [event
generate $widget <Alt-z>] would always fail. [Bug: 4611]
2000-04-07 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkGrid.c (InitMasterData): fixed uninit'd data in
GridMaster struct [Bug: 4387]
* library/safetk.tcl (disallowTk): made disallowTk work in the
simple case.
* library/comdlg.tcl (tkFocusGroup_In): fixed key navigation
problems in dialogs under CDE [Bug: 2960]
* tests/winDialog.test: removed knownBug constraint from 5.16
* win/tkWinFont.c (GetScreenFont): corrected adjustment against
LC_FACESIZE limitation for NT [Bug: 4931]
* win/makefile.vc (TKTEST_OBJS):
* win/Makefile.in (TKTEST_OBJS): moved tkWinTest.c from normal
objs to TKTEST_OBJS where it belonged.
2000-04-03 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkTest.c: fixed incorrect platform inclusion for
TkplatformtestInit (it would never get called).
* unix/Makefile.in (MAN_INSTALL_DIR): patch to accept --mandir
correctly [Bug: 4085]
* library/clrpick.tcl (tkColorDialog_Config): error now thrown
when -initialcolor "" specified. [Bug: 4198]
2000-03-31 Jeff Hobbs <hobbs@scriptics.com>
* doc/DrawFocHlt.3: doc name correction
* generic/tkEntry.c: set TK_OPTION_NULL_OK bit on -invcmd option
and removed #ifdef ENTRY_VALIDATE expressions
* library/menu.tcl (tkMenuInvoke): corrected naming of tearoffs
[Bug: 4506]
* library/tkfbox.tcl (tkIconList_Goto): caused browsecmd to be
called in tkIconList_Select. This causes the entry to be set
properly when using the type-in-name-in-listbox bindings.
* win/tkWinDialog.c: added unicode-aware open/save file dialogs
* win/tkWinFont.c (TkpFontPkgInit): move private ref to platformId
to TkWinGetPlatformId
* win/tkWinMenu.c (SetDefaults): moved private use of versionInfo
to TkWinGetPlatformId and removed all code for
(versionInfo.dwMajorVersion < 4) (== Win32s)
* win/tkWinX.c:
* win/tkWin32Dll.c: moved TkWinGetPlatformId to tkWinX.c
* win/tkWinInit.c: added TkWinXInit to TkpInit to ensure that its
called for static Windows shells. [Bug: 3647]
* win/tkWinInt.h:
* win/tkWinX.c:
* win/tkWinDraw.c (SetUpGraphicsPort):
* win/tkWinScrlbr.c (UpdateScrollbar): removed use of tkpIsWin32s
* win/tkWinInt.h (TkWinDCState struct): added bkmode value
* win/tkWinDraw.c (TkWinGetDrawableDC, et al): added support for
properly transparent dashed lines on Windows. [Bug: 4617]
2000-03-30 Eric Melski <ericm@scriptics.com>
* generic/tkImgGIF.c: Fixed some ANSI specific bits to avoid
compile problems with non-ANSI compilers (ie, replace const with
CONST, etc). [Bug: 4223].
* unix/configure.in: Applied patch from [Bug: 4237]; ensures that
srcdir is fully qualified.
* unix/Makefile.in: Applied patch from [Bug: 4237]; if tcltest was
not compiled, make test/tktest failed. Now it has a rule to build
tcltest if it has not been built.
2000-03-28 Eric Melski <ericm@scriptics.com>
* library/tkfbox.tcl: Moved an overlooked tkFDialog* function in
::tk::dialog::file namespace.
* tests/unixWm.test: Added tests for memory leak conditions in
tkUnixWm.c.
* tests/canvas.test: Added test for bad configuration options on
empty and non-empty canvas.
* generic/tkCanvas.c: Removed bad code in CANV_CONFIGURE block of
CanvasWidgetCmd; this was causing non-empty canvases to improperly
handle bad configuration options [Bug: 4456].
2000-03-27 Eric Melski <ericm@scriptics.com>
* unix/tkUnixWm.c: Applied patch from [Bug: 4405]; fixes memory
leak in Unix wm command.
2000-03-24 Eric Melski <ericm@scriptics.com>
* tests/filebox.test:
* tests/choosedir.test: Updated tests.
* library/xmfbox.tcl: Updated to stash data array in
::tk::dialog::file namespace instead of in global namespace.
* library/tkfbox.tcl: Extended some functions to support creation
of a choosedir dialog, to allow greater code reuse between the two
dialogs. Moved tkFDialog* functions into a namespace
(::tk::dialog::file). Because these are private Tk functions (and
should thus not be used directly by users), this should not impact
anybody (the tk_getOpenFile and tk_getSaveFile commands still
exist at the global scope).
* library/tk.tcl:
* library/tclIndex: Updated function names for tkFDialog*
functions and choosedir functions.
* library/choosedir.tcl: New and improved implementation of
tk_chooseDirectory dialog. Based on tk_getOpenFile dialog.
2000-03-23 Eric Melski <ericm@scriptics.com>
* generic/tkWindow.c:
* generic/tkInt.h: Updated Tcl_OptionCmd -> Tcl_OptionObjCmd
* generic/tkOption.c: Tcl_Obj'ectified the "option" command.
2000-03-22 Eric Melski <ericm@scriptics.com>
* library/listbox.tcl (tkListboxCancel): Added a check for empty
string value for tkPriv(listboxPrev). Without this check, it's
possible to get a stack trace under certain conditions. [Bug: 4373].
2000-03-15 Sven Delmas <sven@scriptics.com>
* win/tkWinDialog.c: Changed the behavior for the
tk_chooseDirectory dialog under Windows. Instead of trying to
return the currently selected listbox entry (which didn't work in
case the user selected the initial directory anyway), we now
return the value shown in the entry. This seems to be in
accordance with the expected behavior for this dialog.
2000-03-14 Eric Melski <ericm@scriptics.com>
* tests/choosedir.test: Marked test 3.1 and 3.2 as bad until the
issue with those tests on IRIX can be determined.
2000-03-10 Eric Melski <ericm@scriptics.com>
* library/menu.tcl: Applied patch from [Bug: 4155]; protects
against grabs on non-viewable windows.
2000-03-08 Eric Melski <ericm@scriptics.com>
* tests/choosedir.test: Modified test 3.1 (-mustexist works) to be
more careful about cleaning up its potentially troublesome after
events.
2000-03-07 Eric Melski <ericm@scriptics.com>
* tests/button.test:
* generic/tkButton.c: Added -disabledforeground/-state to labels.
2000-03-07 Jeff Hobbs <hobbs@scriptics.com>
* tests/entry.test:
* generic/tkEntry.c (EntrySetValue): malloc the value when
validating because validation could cause the pointer to become
invalid. Also fixed configure to not trigger focus-based
validation. Improved use of Tcl_WrongNumArgs. [Bug: 4320]
2000-03-06 Eric Melski <ericm@scriptics.com>
* library/menu.tcl: Added a check in tkMenuFirstEntry that changes
menu behavior to only auto-post an immediate child cascade if we
are currently on a menubar menu. This prevents massive
auto-cascading in cases where the first entry of the cascade is
itself a cascade, and the first entry of that cascade is a
cascade, and the first entry of that cascade is a cascade
... [Bug: 676].
* generic/tkOldConfig.c: Added check for NULL tkwin value in
Tk_ConfigureWidget [Bug: 4079]
* generic/tkWindow.c: Added check for NULL tkwin value in
Tk_NameToWindow [Bug: 4079]
2000-03-02 Jeff Hobbs <hobbs@scriptics.com>
* tests/color.test:
* xlib/xcolors.c (XParseColor FindColor):
* win/tkWinColor.c (XAllocColor): Fixed bit fiddling for colors to
return "correct" values for color mapping. [Bug: 4282]
* unix/Makefile.in (SCRIPT_INSTALL_DIR): removed extraneous '/'
* unix/aclocal.m4: corrected TCL_NEEDS_EXP_FILE to be 1 for AIX
* win/tkWinInt.h: change extern to EXTERN for TkWinChildProc
declaration with extra #defs. [Bug: 4240]
* library/focus.tcl: fixed tkFocusOK to protect $w in
uplevel with list. [Bug: 4208]
* doc/CrtItemType.3: fixed docs for Tk_CreateItemType to reflect
changes made in 8.3.0 (but old style would still work as well).
[Bug: 4252]
* tests/config.test: extra test to check object cleanup when
destroying the widget
* generic/tkListbox.c (DestroyListbox): fixed crash in
DestroyListbox due to null tkwin. [Bug: 4207]
* tests/entry.test: added test suite for entry validation
* doc/entry.n: improved docs discussing caveats and gotchas when
mixing textvar with widget validation
* generic/tkEntry.c (EntryValidateChange): improved handling of
validation with relation to -textvariable. Previously, it would
turn off whenever the textvar was set. Now it will it will turn
off only when the textvar is set and validation returns 0. Added
%V (type of validation occuring) to %-subs to help work with
trickier validation.
2000-03-01 Eric Melski <ericm@scriptics.com>
* tests/clrpick.test:
* library/clrpick.tcl: Added code to make color chooser dialog
inherit screen setting from parent (bug #2334)
2000-02-25 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinWm.c (RaiseWinWhenIdle): Checked for the possibility
that the window could be destroyed (can occur with
wm deiconify .toplevel; destroy .toplevel).
2000-02-25 Eric Melski <ericm@scriptics.com>
* generic/tkImgGIF.c: Applied "spirit of" the patch in 1605 (the
submitted patch was more complicated than necessary and did not
extend to writing GIF's, only reading), to allow reading/writing
of GIF files on EBCDIC and other non-ASCII based systems.
2000-02-14 Eric Melski <ericm@scriptics.com>
* unix/tk.spec: RPM specification for producing a binary Tk RPM
for Linux.
* unix/Makefile.in: Added rpm target to generate Tk
binary RPM.
2000-02-10 Jeff Hobbs <hobbs@scriptics.com>
8.3.0 RELEASE
* changes: updated for 8.3.0 release
* generic/tkImgGIF.c (FileReadGIF): added cast for trashBuffer
* generic/tkIntXlibDecls.h:
* generic/tkInt.decls: declared some Xlib emulation calls for
the Mac
* generic/tkFrame.c (TkInstallFrameMenu): added extra panic to
inform user of bad call when framePtr is NULL [Bug: 2530]
* generic/tkMenu.c (DestroyMenuInstance): Placed checks around
menu name objects before trying to incr the ref. [Bug: 3402]
* generic/tkTest.c: removed USE_OLD_IMAGE def for Mac
* library/listbox.tcl:
* library/text.tcl: added support for <4> and <5> for mousewheel
style scrolling on Unix for mice that map to these buttons.
* tests/scrollbar.test: fixed check of testmetrics command to
allow unix tests to run (testmetrics is mac/pc only)
* unix/tkUnixWm.c (Tk_CoordsToWindow): qualified delete of error
handler as the goto label is reached from above and below.
* unix/configure.in:
* unix/aclocal.m4: cleaned up macros to coincide with tcl.m4,
added -export-dynamic to LDFLAGS for FreeBSD-3+ [Bug: 2998]
* unix/README:
* unix/Makefile.in (dist): removed porting.notes and porting.old
from distribution and CVS. The information was very outdated. Now
refer to http://dev.scriptics.com/services/support/platforms.html
* xlib/xgc.c: #def'd out XDrawSegments for the Mac, and added
some extra include info for the Mac
2000-02-09 Jim Ingham <jingham@cygnus.com>
* mac/tkMacButton.c: Stop removing the appearance window from the
Window List. It is not clear why Ray did this, and it causes the
Appearance manager to crash at random times.
* mac/tkMacWM.c: Add support in unsupported1 style for the Appearance
specification of window styles, including floating window support.
* mac/tkMacWindowMgr.c: Operate on the front non-floating window,
unless the mouse is directly over the floating window. Also,
keystrokes go to the front non-floating window.
* mac/tkMacAppInit.c: Initialize floating window support.
* mac/tkMacScrlbr.c:
* mac/tkMacmenu.c: Fixes for floating windows - operate on the
FrontNonFloatingWindow.
* mac/tkMacLibrary.r: Fix typo in File info string.
* mac/tkMacApplication.r: Fix typo in file info string. Add
Finder balloon help for no apparent reason.
* mac/tkMacSubwindows.c: Change panic in tkMacGetDrawablePort to
Debugger. This is only a temporary fix. The panic is only
triggered when a safeTk interpreter is torn down, and ignoring it
does no harm. I haven't figured out how to avoid it yet, however.
Also use the Appearance MoveWindowStructure call when available.
New Files:
* MW_TkOldImageHeader.h: Handle #defining USE_OLD_IMAGE for tkImgPPM.c.
* MW_TkTestHeader.h:
* MW_TkTestHeader.pch:
* MW_TkHeader.h: Add separate prefix files for test & release
versions of Tk, so we can just have separate targets w/o having to
edit files.
* tclets.r: The D&D Tclets icon in rez form so we can have a
target for this.
The above are curtesy of Daniel Steffen (steffen@math.mq.edu.au)
* tkMacAppearanceStubs.c: Stubs of the Mac Appearance calls I use
so I can link the static 68K Shell without putting ifdef's all
over the code.
2000-02-08 Jeff Hobbs <hobbs@scriptics.com>
* generic/tk.decls:
* generic/tkBind.c:
* generic/tkInt.decls:
* generic/tkIntDecls.h:
* generic/tkStubInit.c:
* mac/tkMacKeyboard.c:
* unix/tkUnixKey.c:
* win/tkWinKey.c: Fix for keyboard handling of "dead" keys and
caps lock from Peter Spjuth. [Bug: 4105 3359 2493]
Split functions into platform specific files:
Static functions GetKeySym(), SetKeycodeAndState() and InitKeymapInfo()
from tkBind.c moved into platform files tkWinKey.c tkUnixKey.c and
tkMacKeyboard.c. GetKeySym() and SetKeycodeAndState() renamed to
Tkp* and made public (as private functions) in tkInt.decls.
Step 2, fixes in tkWinKey.c
New static function: KeycodeToKeysym(), based on XKeycodeToKeysym()
but with different arguments, and a lot of improvements.
TkpGetString() changed to use KeycodeToKeysym() + other fixes.
TkpGetKeySym() changed to use KeycodeToKeysym() + other fixes.
InitKeymapInfo() changed to use KeycodeToKeysym().
TkpSetKeycodeAndState() rewritten, mostly by copying code from
XKeysymToKeycode().
XKeycodeToKeysym() rewritten. Preferably it should be removed.
EXPLANATION: The main problem is ToAscii() which has a lot of side
effects, and also that XKeycodeToKeysym() is not provided enough
input to do a proper job. The changes' main goal is to avoid
calling ToAscii() if not necessary, and to provide it with as
correct information as possible when called. Also some attempts
to clean up what ToAscii() did are done. See the code for details.
BUGS FIXED: Typing shifted (and AltGr) dead keys did not work.
Keyboard lock lamps did not work on Win98.
Events regarding AltGr-keys behaved badly.
Example: On a Swedish keyboard, $ is typed with AltGr-4.
That keyboard event would get the keysym '4' not 'dollar'.
Also, doing [event generete . <Key-dollar>] would send keysym '4'.
Translation to ascii in TkpGetString did not handle return and
tab correctly. I.e. [event generate . <Key-Return>] gave wrong %A
* generic/tkDecls.h:
* generic/tk.decls:
* generic/tk.h: moved new public functions created in dash patch
to the stubs interface [Bug: 4062]
* generic/tk.h:
* doc/CrtImgType.3:
* doc/CrtPhImgFmt.3:
* generic/tk.h:
* generic/tkImgGIF.c:
* generic/tkImgPhoto.c:
* generic/tkStubImg.c (new file):
* generic/tkTest.c:
* unix/Makefile.in:
* win/Makefile.in:
* win/makefile.vc: improved support for moving from the old style
image C API to the new obj'ified one with new Tk_InitImageArgs
command and stub'ing of image code. See docs for how to make the
transition. [Bug: 4060]
* library/tk.tcl: wrapped check for tcl_platform(os) around info
exists because it won't in safe interpreters
* win/tkWinFont.c: corrected symbol font use to only work on 8-bit
characters [Bug: 2406]
* unix/aclocal.m4: changed all -fpic to -fPIC
* README:
* unix/configure.in:
* win/configure.in:
* generic/tk.h (TK_RELEASE_SERIAL): Moved to 8.3.0 patchlevel
2000-02-07 Eric Melski <ericm@scriptics.com>
* library/tkfbox.tcl: Applied patch from bug #4117,
tk_getOpenFile/getSaveFile doesn't do the right thing when user
types a directory name in the entry and a default extension is
specified.
2000-02-05 Jeff Hobbs <hobbs@scriptics.com>
* unix/tkUnixScale.c (TkpDestroyScale): changed ckfree to
Tcl_EventuallyFree to behave with Tcl_Preserve in TkpDisplayScale
(prevents possible segfault).
2000-02-03 Eric Melski <ericm@scriptics.com>
* tests/canvText.test: test for fix for bug #2525.
* generic/tkFont.c (Tk_ComputeTextLayout): Was erroneously setting
the width of newline-only text display chunks to some arbitrary
huge number, instead of 0; this was interfering with things like
the canvas find enclosed feature. (bug #2525).
* tests/text.test:
* generic/tkText.c (DumpLine/DumpSegment): Changed DumpSegment to
take a TkTextIndex instead of two integer offsets, so that it
could use TkTextPrintIndex to format the offsets into an index,
which makes it UTF smart (bug #2582).
2000-02-01 Eric Melski <ericm@scriptics.com>
* library/tk.tcl:
* library/tclIndex:
* library/choosedir.tcl: Moved choosedir functions into the
::tk::dialog::chooseDir namespace instead of a toplevel
::tkChooseDirectory namespace. Additional cleanup on the
chooseDir dialog.
2000-02-01 Jeff Hobbs <hobbs@scriptics.com>
* doc/text.n: clarified docs on what happens during a search with
-count when images/windows are embedded
* win/Makefile.in (install-*): reduced verbosity of install
* win/tkWinPixmap.c (XGetGeometry): added support for windows in
XGetGeometry [Bug: 4069]
* win/tkWinFont.c (GetScreenFont): fixed possible mem overrun with
long font names [Bug: 4108]
* win/tkWinDialog.c: added EnableWindow calls to dialogs to
correct for possible loss of control in parent Tk toplevel
[Bug: 1212 et al]
* generic/tkRectOval.c (ConfigureRectOval):
* generic/tkCanvLine.c (ConfigureLine):
* generic/tkCanvPoly.c (ConfigurePoly):
* generic/tkCanvArc.c (Configure/DisplayArc): fixed handling for
negative dash values [Bug: 4104]
* generic/tkScale.c (TkRoundToResolution): fixed incorrect
assumption that (N+1)*delta = N*delta + delta with floating point
math [Bug: 3689, 4099]
(DestroyScale) Fixed check for cancelling TkpDisplayScale (was
REDRAW_ALL, is now REDRAW_PENDING)
* tests/listbox.test: corrected test case for listbox itemconfigure
* unix/aclocal.m4: added *BSD ELF recognition for
SHARED_LIB_SUFFIX determination (from Tcl's tcl.m4)
2000-01-27 Eric Melski <ericm@scriptics.com>
* generic/tkImgPhoto.c: Removed unneccesary object translation in
MatchStringFormat (bug #4103).
2000-01-27 Eric Melski <ericm@scriptics.com>
* generic/tkImgGIF.c: Additional code cleanup (now we only have
one decoder! neat!)
2000-01-26 Eric Melski <ericm@scriptics.com>
* doc/getOpenFile.n:
* doc/chooseDirectory.n: Man page/cross links for
tk_chooseDirectory (bug #1786).
* library/tk.tcl:
* library/tclIndex: Added hooks for tk_chooseDirectory. (bug #1786)
* library/choosedir.tcl: tk_chooseDirectory implementation for
Unix/Mac (bug #1786).
* generic/tkImgPhoto.c: Added some comments regarding slow
processing of transparent images.
* generic/tkImgGIF.c: Improved GIF decoder for ~60% speed
increase. Added some comments on how to further improve the
implementation, time permitting.
* doc/photo.n: Added a description of what the -data string can
contain (base64 or binary data).
* generic/tkImgPhoto.c: Fixed bug with use of binary data for
"-data" option to "image create" command.
2000-01-21 Eric Melski <ericm@scriptics.com>
* library/tkfbox.tcl: Fixed bug relating to incorrect parent
values for error message boxes displayed by the file dialog (bug
#3616).
* tests/text.test:
* generic/tkText.c: Fixed bug relating to regexp searching for
empty lines; previously, the starting line was ignored. (bug #1643).
2000-01-20 Jeff Hobbs <hobbs@scriptics.com>
* library/text.tcl: fixed double-click selection behavior where
there were embedded windows/widgets in the same line. [Bug: 3989]
* win/tkWinWm.c (TkWmProtocolEventProc): cached atom name as the
window could get destroyed during eval [Bug: 2513]
* generic/tkCanvLine.c (LineCoords): fixed segfault when too few
coords were passed to a line with certain options set (it should
always have thrown an error anyway). [Bug: 4042]
* tests/text.test:
* generic/tkText.c: fixed missing " in error case and missing
'dump' in subcommand listing [Bug: 4036]
* generic/tkListbox.c: adjusted use of basic string concatenation
in (non-K&R behavior) [Bug: 4027]
Swapped bg/fg class for -select(bg|fg) for listbox and their
items [Bug: 4039]
* unix/mkLinks:
* doc/WindowId.3: added docs for Tk_IsContainer and Tk_IsEmbedded
* doc/text.n: clarified mark gravity definition and usage of
``word'' in binding definitions. [Bug: 2004 2277 1388]
* generic/tkInt.h: moved new TkDisplay useInputMethods structure
element to end to not disturb position of previous elements in
the structure (as compared to Tk <=8.2).
2000-01-20 Eric Melski <ericm@scriptics.com>
* tests/grid.test: Added a test for the consecutive ^ and multiple
widget case (bug #1386).
* generic/tkGrid.c: Fixed interpretation of consecutive ^
characters in grid command. Previously, ^ ^ was interpreted as
meaning that there must be a 2-column widget above to extend,
neglecting the case where there was actually 2 1-column widgets
above. Now, ^ ^ is interpreted as a possible width; the gridder
will consume as many ^'s as there are columns in the widget, and
leave the rest for the extension of other widgets. (bug #1386).
2000-01-19 Eric Melski <ericm@scriptics.com>
* library/tk.tcl: Created a virtual event <<PrevWindow>> for
reverse tab traversals, with one default binding <Shift-Tab>, and
OS specific bindings for Linux, HP-UX, and IRIX. (bug #3163)
2000-01-13 Jeff Hobbs <hobbs@scriptics.com>
* changes: updated changes file to reflect 8.3b2 mods
* README:
* generic/tk.h:
* unix/configure.in:
* win/configure.in: updated to patchlevel 8.3b2
* win/tkWinWm.c: added visibility event handler to make sure
that transient window wrappers would be updated when the master
was initially mapped.
2000-01-12 Jeff Hobbs <hobbs@scriptics.com>
* tests/text.test: changed test to reflect change of -hidden
to -elide in search options.
* win/tkWinScrlbr.c: added check for valid hwnd in ModalLoopProc
to avoid crash when building statically
* doc/event.n:
* generic/tkBind.c: prevented core with event -warp on Windows
when window wasn't mapped [Bug: 4004] and added docs stating
the requirement for mapped windows.
* generic/tkCanvas.c: fixed mem leak with TagSearchExprInit
[Bug: 3977]
* generic/tkStubInit.c:
* generic/tkDecls.h: remove non-existent
Tk_(Get|Create)CanvasVisitor prototypes
* generic/tkText.c:
* generic/tkEntry.c: fixed cursor to not blink when widget was
disabled [Bug: 1807]
* generic/tkRectOval.c: added note about change to bloat for
RectOval bounds calculation for WIN32 only
* library/dialog.tcl: improved handling of $default arg to allow
for name of given button, as well as bounds checking
* doc/wm.n:
* tests/winWm.test:
* tests/unixWm.test:
* mac/tkMacWm.c:
* unix/tkUnixWm.c: fixed possible X error being raised [Bug: 3377]
* win/tkWinWm.c: wm deiconify in zoom state [Bug: 2077],
fixed possible flashing of unmapped toplevel in deiconify [Bug: 3338]
and fixed mapping of transient window [Bug: 572]
Also, for all wm's, extended 'wm state' command to allow setting
of the state, and added official support of 'zoomed' state on Win.
* unix/aclocal.m4: strtod bug on Tru64 [Bug: 3378]
* unix/Makefile.in: added tests to prevent unnecessary chmod +x
in source dirs while installing [Bug: 3367]
* unix/configure.in: properly sub'ed in TK_SHARED_BUILD [Bug: 3385]
2000-01-05 Jeff Hobbs <hobbs@scriptics.com>
* doc/text.n:
* generic/tkText.c:
* generic/tkText.h:
* generic/tkTextBTree.c:
* generic/tkTextDisp.c:
* generic/tkTextTag.c: removed the -state option for text tags,
and reoriented it around -elide, as -state disabled was never
implemented, and -state hidden is better as -elide.
* mac/tkMacClipboard.c: fixed i18n problems with clipboard [Bug: 3544]
* library/entry.tcl:
* library/focus.tcl:
* library/listbox.tcl:
* library/scale.tcl:
* library/scrlbar.tcl:
* library/tearoff.tcl:
* library/text.tcl:
* library/tkfbox.tcl:
* library/xmfbox.tcl: fixed unprotected arg parsing through eval/after
[Bug: 3943]
* unix/Makefile.in: added unix/aclocal.m4 to distribution [Bug: 3938]
* unix/aclocal.m4: changed NetBSD SHLIB_CFLAGS from -fpic to -fPIC
* win/tkWinImage.c: added static declaration to function
1999-12-22 Jeff Hobbs <hobbs@scriptics.com>
* changes: updated changes file
* generic/tkScale.c:
* generic/tkScale.h:
* mac/tkMacScale.c:
* unix/tkUnixScale.c: fixed potential segv from patch in 3897
* tests/unixWm.test: nonPOrtable -> nonPortable
1999-12-21 Jeff Hobbs <hobbs@scriptics.com>
* generic/tk.h:
* unix/configure.in:
* win/configure.in:
* win/aclocal.m4:
* README: updated for patch level 8.3b1
* unix/tkUnixWm.c: fixed panic in Tk_CoordsToWindow to print error
and continue instead (for Tix) [Bug: 716 et al]
* scale.test:
* generic/tkScale.c:
* generic/tkScale.h: fixed possible core when freeing options
(cursor) associated with scale widget [Bug: 3897]
* doc/MeasureChar.3: fixed docs for Tk_MeasureChars to reflect code
* doc/listbox.n: fixed formatting problem
* generic/tk3d.c: added extra calculations to ensure that thin
frames get refreshed too [Bug: 3596]
* unix/tkUnixMenu.c:
* unix/tkUnixFont.c:
* generic/tkCanvText.c:
* generic/tkEntry.c:
* generic/tkFont.c:
* generic/tkImgPPM.c: removed extranneous vars that were set but
never used.
* mac/tclMacHLEvents.c: fixed applescript for I18N [Bug: 3644]
* unix/aclocal.m4: removed -O flag for AIX when using the IBM
compiler (several versions have a bug that crops up in the text
widget). [Bug: 2316]
* unix/Makefile.in: removed extra slash in SCRIPT_INSTALL_DIR
[Bug: 3896]
* library/listbox.tcl: added extra checks for existence of
tkPriv(listboxSelection) before it was used. [Bug: 3892]
1999-12-16 Jeff Hobbs <hobbs@scriptics.com>
* doc/GetCursor.3:
* win/tkWinCursor.c: added support for Windows cursors to
TkGetCursorByName (.ani, .cur) using -cursor @<filename>
(Ascher) [Bug: 1350]
* win/tkWinWm.c: fixed 'wm deiconify' to update position of the
toplevel if event is waiting before mapping. (Mao) [Bug: 3687]
This removes the need for 'update idle' before 'wm deiconify' on
Windows.
* doc/listbox.n: added doc for <<ListboxSelect>> [Bug: 3500]
* doc/getOpenFile.n: removed note that -initialfile didn't work
for tk_getOpenFile
* library/tkfbox.tcl: updated tk_get*File to better match the
Windows file box it emulates, give proper support to -initialfile,
and fixes lack of global tkPriv call. [Bug: 3735 3882]
* doc/tk.n: added doc for 'tk useinputmethods ...'
* tests/tk.test:
* unix/tkUnixKey.c:
* generic/tkCmds.c:
* generic/tkEvent.c:
* generic/tkWindow.c:
* generic/tkInt.h: add 'tk useinputmethods ?-display win? ?bool?'
call to provide support for disabling/enabling the use of XIM on
X. This was previously all done at compile time, and always on.
Now it is turned off by default, even when available, and the user
must turn it on to use XIM (per display).
* generic/tkCanvUtil.c: fixed bug in Tk_CanvasPsOutline that freed
mem it shouldn't.
* generic/tkFont.c: added "bitstream cyberbit" (popular Windows
CJK font) to list of font fallbacks. (kenny) [Bug: 2407]
* mac/tkMacMenu.c: finished bug 3075 by changing the char values of
what was checked (verified correctness on Mac).
1999-12-13 Jeff Hobbs <hobbs@scriptics.com>
* doc/canvas.n: added docs for items added by dash patch (-*dash*,
-state, -active*, -disabled*, -offset, essentially rewrote the
man patch for completely updated 8.3 canvas widget.
* doc/entry.n: added docs for entry widget validation
* doc/event.n: added docs for -warp
* doc/text.n: doc'ed new -state value 'hidden'
* doc/GetDash.3: (new file) man page explaining Tk_GetDash
* generic/tkStubInit.c:
* generic/tkDecls.h:
* generic/tkIntXlibDecls.h:
* generic/tkInt.decls: added XSetDashes and XWarpPointer
* generic/tk.decls: added Tk_CreateSmoothMethod, and reserved
two spots
* generic/tk.h: added Tk_SmoothMethod struct,
state item to canvas record, #defines for item state,
support for using old char*-based canvas item C creation
procedures with -DUSE_OLD_CANVAS,
Tk_Dash, Tk_TSOffset (-offsets) & Tk_Outline structs and #defs,
decls for dash, outline and postscript routines
* generic/tkBind.c: added support for Quadruple clicks, and added
the -warp option to 'event' with pointer warping routines
* xlib/xgc.c:
* generic/tkRectOval.c:
* generic/tkCanvArc.c:
* generic/tkCanvBmap.c:
* generic/tkCanvImg.c:
* generic/tkCanvLine.c:
* generic/tkCanvPoly.c:
* generic/tkCanvPs.c:
* generic/tkCanvText.c:
* generic/tkCanvUtil.c:
* generic/tkCanvWind.c:
* generic/tkCanvas.c:
* generic/tkCanvas.h: Canvas and items received overhaul to with
the addition of the dash patch (Nijtmans, et al) This includes
objectification of the 'canvas' command, as well as support for
(where appropriate) dashes in items, extended stipple support,
state for all items, and postscript generation of images and
windows. See the new canvas man page for related docs.
* generic/tkEntry.c: added entry widget validation, see entry.n
* generic/tkEvent.c: on simulated events, ButtonPress should
be matched with ButtonRelease to be correct
* generic/tkFont.c: corrected possible null reference
* generic/tkFrame.c: made frame a Tcl_Obj based command
* generic/tkGet.c: added TkGetDoublePixels
* generic/tkImage.c: bug fixes from Img patch and new
Tk_PostscriptImage and Tk_SetTSOrigin functions
* generic/tkImgBmap.c: new ImgBmapPostscript function
* generic/tkImgPhoto.c: new Tk_CreatePhotoOption, Tk_DitherPhoto
* generic/tkInt.h: declarations for some new functions
* generic/tkMessage.c: reworked relief drawing
* generic/tkOldConfig.c: added TK_CONFIG_OBJS so old style
ConfigureWidget calls can pass in Tcl_Obj arrays
* generic/tkScrollbar.c:
* generic/tkScrollbar.h: made -orient use an option table
* generic/tkText.c:
* generic/tkText.h: made -wrap and -state use option tables
* generic/tkTextBTree.c:
* generic/tkTextDisp.c:
* generic/tkTextImage.c:
* generic/tkTextMark.c:
* generic/tkTextTag.c:
* generic/tkTextWind.c: added support for -elide and -state hidden
* generic/tkTrig.c: changed TkMakeBezierCurve to support returning
the upper limit of points needed for spline
* generic/tkUtil.c: new option table parsing routines
* generic/tkWindow.c: init'ing of warp stuff, mouseButtonState
related bug ids for the fixes:
[Bug: 648 1541 1540 1779 2168 2311 2297 2340 2348 2578 3386]
* tests/bind.test:
* tests/canvImg.test:
* tests/canvPsArc.tcl:
* tests/canvPsImg.tcl: (new file)
* tests/canvRect.test:
* tests/canvText.test:
* tests/canvas.test:
* tests/defs.tcl:
* tests/entry.test:
* tests/event.test:
* tests/font.test:
* tests/frame.test:
* tests/imgPhoto.test:
* tests/safe.test:
* tests/scale.test:
* tests/scrollbar.test:
* tests/select.test:
* tests/text.test:
* tests/textDisp.test:
* tests/textTag.test:
* tests/unixFont.test:
* tests/unixWm.test:
* tests/visual_bb.test:
* tests/winClipboard.test: tests for the dash patch changes
* unix/mkLinks: added GetDash.3 into the mkLink step
* mac/tkMacDraw.c: mac still needs pointer warping routine
* mac/tkMacXStubs.c:
* win/tkWinDraw.c:
* win/tkWinPointer.c: added support for pointer warping and
platform specific support for dash patch items
1999-12-12 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkText.c: fixed bug in TextSearchCmd for multibyte chars
(Darley) [Bug: 3839]
* unix/aclocal.m4: added warning when configuring with
--enable-threads that Tk may have problems
1999-12-09 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkImgGIF.c: updated casting
* win/makefile.vc: removed 16bit stuff, simplified makefile.
1999-12-06 Scott Redman <redman@scriptics.com>
* generic/tkMain.c: need to include tclInt.h for new hook
functions that are internal-use-only.
1999-12-06 Jeff Hobbs <hobbs@scriptics.com>
* library/comdlg.tcl: removed tclVerifyInteger and tclSortNoCase,
they weren't used, and were not actually correct
* mac/tkMacFont.c:
* mac/tkMacMenu.c:
* mac/tkMacWindowMgr.c: fixed greyed out menu items, handling of
... elipsis, font mapping problem, and enabled generated menu
posting [Bug: 3705]
1999-12-02 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkInt.h:
* generic/tkWindow.c:
* generic/tkCmds.c: converted Tk_DestroyCmd, Tk_LowerCmd and
Tk_RaiseCmd to their ObjCmd equivalent.
* library/msgbox.tcl: added color icons for tk_messageBox on Unix
and Mac when tk_strictMotif isn't set. (Hipp)
* library/tk.tcl: added window bounds checking to ::tk::PlaceWindow
* tests/imgPPM.test: fixed test 2.2 to use -format ppm (since
we know have GIF write capability)
1999-12-01 Scott Redman <redman@scriptics.com>
* generic/tkMain.c :
* unix/tkAppInit.c:
* win/winMain.c: Added added hooks into the main() code for
supporting TclPro and other "big" shells more easily without
requiring a copy of the main() code.
1999-11-29 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkImgGIF.c: added GIF writing that uses miGIF RLE
[Bug: 2039, new patch]
* library/entry.tcl: fixed up tkEntrySeeInsert (Nemthi)
* generic/tkListbox.c: fixed 'get' of listbox to return a string
when only one item is requested.
* tests/clrpick.test:
* tests/filebox.test: minor whitespace cleanup
* library/tk.tcl: fixed missing $w in ::tk::PlaceWindow
1999-11-24 Jeff Hobbs <hobbs@scriptics.com>
* library/clrpick.tcl:
* library/msgbox.tcl:
* library/tk.tcl:
* library/tkfbox.tcl:
* library/xmfbox.tcl: fixed dialogs to center over -parent,
added utility functions ::tk::PlaceWindow, ::tk::SetFocusGrab,
::tk::RestoreFocusGrab to tk.tcl to help
1999-11-23 Eric Melski <ericm@scriptics.com>
* tests/listbox.test: Added a test to check that the topIndex is
update when items are removed from the listvar variable.
* generic/tkListbox.c: Added a check the updates the topIndex when
items are removed from the listvar variable.
* tests/listbox.test: Added a test to check that the vertical
scrollbar is updated when the listvar changes.
* generic/tkListbox.c (ListboxListVarProc): added a check that
sets the UPDATE_V_SCROLLBAR flag if the length of the listvar has
changed.
1999-11-23 Jeff Hobbs <hobbs@scriptics.com>
* generic/tk.h:
* generic/tkConfig.c: added support for TK_OPTION_DONT_SET_DEFAULT
as equiv for TK_CONFIG_DONT_SET_DEFAULT
* generic/tkListbox.c: added TK_OPTION_DONT_SET_DEFAULT to the
item specs
1999-11-19 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkColor.c:
* generic/tkColor.h: fixed Tk_NameOfColor to work correctly,
with minor change to TkColor struct.
* generic/tkConsole.c: added static declaration to
ConsoleDeleteProc function (proto already had it)
* win/tkWinInt.h: removed TkFontAttributes typedef (was
redundant with tkFont.h).
* win/tkWinPort.h: put #ifndef __GNUC__ around redefinition
of str[n]casecmp, as cygwin uses the originals.
* win/tkWinX.c: changed GetCurrentTime to GetTickCount (the
former is deprecated). [Bug: 2053]
1999-11-19 Eric Melski <ericm@scriptics.com>
* tests/listbox.test: Added tests for itemcget and itemconfigure.
* doc/listbox.n: Added documentation for -listvar option and for
itemconfigure and itemcget commands.
* generic/tkListbox.c: Added support for itemconfigure/itemcget
listbox subcommands (addresses rfe #936)
1999-11-17 Eric Melski <ericm@scriptics.com>
* tests/listbox.test: Updated tests for new error messages.
* generic/tkListbox.c: Improved error messages for bad -listvar's.
* tests/listbox.test: Added tests for bad -listvar's.
* generic/tkListbox.c: Added handlers for bad -listvar's (ie, bad
lists)
* tests/listbox.test: Added tests for ListboxUpdateHScrollbar.
* generic/tkListbox.c: Changed some old static buffers to base
size on TCL_DOUBLLE_SPACE instead of (completely) hardcoding the size.
* tests/listbox.test: New tests for -listvar functionality, and an
odd extra case that wasn't covered before.
* generic/tkListbox.c: Tests exposed some bugs, now fixed.
1999-11-16 Eric Melski <ericm@scriptics.com>
* tests/listbox.test: Fixed tests to comply with new objectified
error messages. No -listvar specific tests yet.
* win/tkWinDefault.h:
* unix/tkUnixDefault.h:
* mac/tkMacDefault.h: Added default value for -listvar option.
* generic/tkWindow.c: Changed "listbox" mapping from old-school to
new-school objectified command.
* generic/tkListbox.c: Objectified listbox; added support for
-listvar option. Converted internal structure to use a Tcl list
object to store the data.
* generic/tkInt.h: Changed reference to Tk_ListboxCmd to
Tk_ListboxObjCmd.
1999-11-09 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkGrid.c: changed Tcl_Alloc to ckalloc
* generic/tkEntry.c: fixed C expr error in destroy of entry
that could lead to 'malformed bucket chain' error
* win/winMain.c: corrected winMain to not do a DebugBreak when
returning an error message from the top level
1999-10-30 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinKey.c: fixed XKeysymToKeycode to handle mapping of
symbolic keysyms (Left, Home, ...) with event generate
* library/entry.tcl: change tkEntrySeeInsert to avoid the use
of a while loop that could eat CPU tremendously. Behavior of
moving the cursor at the right edge changes slightly (previously
it tried to keep the cursor at the right edge, now it moves the
cursor to a "central right" location - better IMHO).
1999-10-28 Jeff Hobbs <hobbs@scriptics.com>
* doc/CrtImgType.3:
* doc/CrtPhImgFmt.3:
* doc/FindPhoto.3:
* doc/photo.n:
* generic/tk.h:
* generic/tkCmds.c:
* generic/tkImage.c:
* generic/tkImgBmap.c:
* generic/tkImgGIF.c:
* generic/tkImgPPM.c:
* generic/tkImgPhoto.c:
* generic/tkInt.h:
* generic/tkTest.c:
* generic/tkWindow.c:
* tests/imgPhoto.test: added Img patch (Nijtmans) with docs,
headers #def'd with USE_OLD_IMAGE. Upgrades image stuff to
Tcl_Obj API, adds alpha channel (images are now 32 bpp)
* makefile.vc: changed 'c:/program files' to c:/progra~1
1999-10-19 Jeff Hobbs <hobbs@scriptics.com>
* library/scrlbar.tcl: changed tkScrollButtonUp to check for
existence of tkPriv(relief) in order to avoid spurious release
events
* unix/Makefile.in: added ChangeLog to dist archive
1999-09-24 Jeff Hobbs <hobbs@scriptics.com>
* */README:
* win/makefile.vc:
* */configure.in:
* generic/tk.h:
* library/tk.tcl: up'd to 8.3a1
* unix/Makefile.in: changed 'mkdir' to 'mkdir -p'
* library/dialog.tcl: changed {Times 18} to {Times 12} for
dialog font.
1999-09-16 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkFont.c: fixed processing of font options and error
returned [Bug: 2075]
* win/tkWinWm.c: fixed bug in 'wm deiconify' that raised the
wrong toplevel, and changed it to not set focus on overridden
toplevels
1999-09-15 Jeff Hobbs <hobbs@scriptics.com>
* unix/aclocal.m4: added fix for FreeBSD-[1-2] recognition [Bug: 2070]
and fix to AIX-* to get ldAix right [Bug: 2624], fixed AIX
version check (readjust from 8-21 fix) and several other config
fixes for AIX
* mac/tkMacMenubutton.c:
* unix/tkUnixMenubu.c: fixed permanently stippled menubutton image
* win/tkWinButton.c: fixed possible pointer smash [Bug: 2733]
1999-09-14 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinMenu.c: fix for stack overrun in GetTextFace [Bug: 909]
1999-09-01 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinDraw.c:
* unix/tkUnixDraw.c: fixed header style for TkpDrawHighlightBorder
* generic/tkCanvas.c: fixed GC error (bg <> fg) in tkCanvas.c
(from code added to support TkpDrawHighlightBorder) [Bug: 2676]
* unix/aclocal.m4: added -bnoentry to the AIX-* flags
* library/msgbox.tcl: changed the behavior of tk_messageBox on
Unix to be more Windows like in handling of <Return> and the
default button
* library/button.tcl:
* library/clrpick.tcl:
* library/comdlg.tcl:
* library/console.tcl:
* library/dialog.tcl:
* library/entry.tcl:
* library/focus.tcl:
* library/listbox.tcl:
* library/menu.tcl:
* library/msgbox.tcl:
* library/palette.tcl:
* library/safetk.tcl:
* library/scale.tcl:
* library/scrlbar.tcl:
* library/tearoff.tcl:
* library/text.tcl:
* library/tk.tcl:
* library/tkfbox.tcl:
* library/xmfbox.tcl: updated commands to use [string] ops
instead of expr equality operators
1999-08-21 Jeff Hobbs <hobbs@scriptics.com>
* unix/aclocal.m4: Changed AIX-4.[2-9] check to AIX-4.[1-9]
[Bug: 1909]
1999-08-20 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkCursor.c: fixed bug in GetCursorFromObj that caused
panic [Bug: 2562]
* TK 8.2.0 RELEASED
1999-08-13 Jim Ingham <jingham@cygnus.com>
* mac/tkMacMenu.c: Tk_DrawChars ends up setting the menu background
wrong. There is no clean way to stop it, so I use lower level routines
here to draw the text.
* mac/tkMacProjects.sea.hqx: Rearrange the projects so that the build
directory is separate from the sources. Much more convenient!
1999-08-10 Jeff Hobbs <hobbs@scriptics.com>
* win/tkWinWm.c: changed "wm deiconify" on Windows to raise and
force the focus on the deiconified window (behavioral change from
8.1 to comply better with Windows style) [Bug: 1609]
* doc/wm.n: clarified behavior of "wm deiconify".
* generic/tkInt.decls: added TkSetFocusWin
* generic/tkFocus.c: changed static SetFocus to TkSetFocusWin
* library/clrpick.tcl:
* library/console.tcl:
* library/tk.tcl: fixed code where abbreviations where used
in calling widget methods (confuses iWidgets) [Bug: 2422]
1999-08-09 Jeff Hobbs <hobbs@scriptics.com>
* library/button.tcl: cleaned up programming (config -> configure)
and fixed Windows relief bug [Bug: 664]
* library/entry.tcl: changed Entry C/C/P to not use global data
(now uses tkPriv(data)) [Bug: 1475]
* library/listbox.tcl: fixed extended mode script error [Bug: 866]
* doc/options.n: clarified that -troughcolor doesn't work on Windows
* doc/wm.n: fixed wm positionfrom docs [Bug: 2284]
1999-08-01 Jeff Hobbs <hobbs@scriptics.com>
* mac/tkMacPort.h: wrapped panic in #ifndef panic to avoid
compiler errors when used with stubs-#defines, from Vince Darley.
[Bug: 2389]
1999-07-31 Scott Redman <redman@scriptics.com>
* xlib/X11/Xlib.h: Remove XFillRectangle since it is now in the
stub tables.
1999-07-30 Jeff Hobbs <hobbs@scriptics.com>
* generic/tkInt.decls: Added stub entry for XFillRectangle [Bug: 2446]
1999-07-30 <redman@scriptics.com>
* win/makefile.vc: Corrected building threaded tktest.exe on
Windows. Needed to link in .obj files from Tcl, needs to change
later so that code is in Tk and doesn't require a Tcl build.
Also added runtest target.
1999-07-29 <redman@scriptics.com>
* generic/tkConsole.c: Allow tcl to open CON and NUL, even for std
channels. Checking for bad/unusable std channels was moved to Tk
since its only purpose was to check whether to use the Tk Console
Window for the std channels. [Bug: 2393 2392 2209 2458]
* win/Makefile.in: Corrected building threaded tktest.exe on
Windows. Needed to link in .obj files from Tcl, needs to change
later so that code is in Tk and doesn't require a Tcl build.
1999-07-22 <redman@scriptics.com>
* Changed version to 8.2b2
* win/tkWinPort.h: Block out include of sys/stat.h in order to
build extensions with MetroWerks compiler for Win32. [Bug: 2385]
* unix/Makefile.in: Need to make install-sh executable before
calling (with chmod +x). [Bug: 2413]
* library/menu.tcl: Applied patch from Jeff Hobbs to fix typo.
[Bug: 2425]
1999-07-21 <redman@scriptics.com>
* unix/Makefile.in: Add Windows configure script to distribution.
1999-07-16 <redman@scriptics.com>
* unix/Makefile.in:
* win/Makefile.in: Copy the prolog.ps from the generic directory
for install-libraries.
* unix/aclocal.m4: Check for Alpha/Linux to set the IEEE flag to
the compiler to be -mieee. Patch from Don Porter.
1999-07-08 <stanton@scriptics.com>
* tests/unixSelect.test: Fixed broken test.
* win/makefile.vc: Added special case target to ensure that
tkStubLib.obj is built with -DSTATIC_BUILD.
* win/tkWinX.c (TkWinChildProc): Changed to pass
WM_WINDOWPOSCHANGED through to DefWindowProc to make OpenGL
sub-windows happy. This allows Windows to generate the WM_SIZE
and WM_MOVE messages.
1999-07-08 <redman@scriptics.com>
* unix/configure.in: Fix Tk stub lib file names and flags.
1999-06-30 <redman@scriptics.com>
* generic/tkGrid.c: removed deprecated functions (applied patch
from Jan Nijtmans). [Bug: 2080]
* generic/tkImgGIF.c:
* generic/tkImgPPM.c:
* generic/tkImgPhoto.c: Applied patch to allow Img extension to
work with 8.2, from Jan Nijtmans. [Bug: 2068]
* win/tkWinWm.c: Applied patch from Don Porter to prevent the
windows code from calling the Tcl functions when the stub table
has not been initialized in TkWinWmCleanup. [Bug: 2269]
1999-06-16 <wart@scriptics.com>
* unix/configure.in:
* unix/Makefile.in:
* unix/aclocal.m4: Numerous build changes to make Tk conform to
the proposed TEA spec
* tkConsole.c: changed some variable types from (int) to (size_t)
to prevent compiler warnings. Cast return value from strlen()
to (int) in one place for the same reason.
1999-06-03 <stanton@scriptics.com>
* unix/tkUnixSelect.c:
* tests/unixSelect.test:
* generic/tkSelect.c: Fixed selection code to handle Unicode data
in COMPOUND_TEXT and STRING selections. [Bug: 1791]
1999-06-02 <stanton@scriptics.com>
* generic/tkIntXlibDecls.h:
* xlib/X11/Xlib.h: Added Mac specific defines to help with
compilation.
* generic/tkFont.c: lint
1999-06-01 <stanton@scriptics.com>
* unix/tkUnixSelect.c: Improved I18N selection support.
COMPOUND_TEXT is converted to/from iso2022, and STRING is
converted to/from iso8859-1. There are still a few loose ends to
tie up before this is completely done.
* unix/tkUnixFont.c: Eliminated redundant case folding code.
* generic/tkFont.c: Eliminated use of isupper/tolower in favor of
Unicode variants.
1999-05-24 <stanton@scriptics.com>
* generic/tkStubLib.c:
* generic/tkStubInit.c:
* generic/tkIntXlibDecls.h:
* generic/tkIntPlatDecls.h:
* generic/tkIntDecls.h:
* generic/tkInt.decls:
* generic/tkConsole.c: Various changes to try to get the Mac
builds working.
1999-05-21 <stanton@scriptics.com>
* win/tkWinClipboard.c: Fixed clipboard code to handle lack of
CF_LOCALE information (e.g. from command.com).
1999-05-20 <redman@scriptics.com>
* library/console.tcl: Changed copyright string to read 1999
Scriptics Corp. in wish console about box.
1999-05-19 <redman@scriptics.com>
* generic/tk.h: Add extern "C" block around entire header file for
C++ compilers to fix linkage issues. Submitted by Don Porter and
Paul Duffin.
1999-05-18 <stanton@scriptics.com>
* tests/winClipboard.test:
* win/tkWinClipboard.c: Fixed clipboard code so it handles Unicode
data properly on Windows NT and 95. [Bug: 1791]
1999-05-07 <stanton@scriptics.com>
* library/menu.tcl: Fixed bug where tk_popup fails when called too
quickly. [Bug: 2009]
1999-04-30 <stanton@scriptics.com>
* Changed version number to 8.1.1.
1999-04-30 <stanton@scriptics.com>
* Merged changes from 8.1.0 branch:
* generic/tkDecls.h:
* generic/tkIntDecls.h:
* generic/tkIntPlatDecls.h:
* generic/tkIntXlibDecls.h:
* generic/tkPlatDecls.h:
* generic/tkStubInit.c: Changed to avoid the need for forward
declarations in stub initializers. Added extern "C" blocks around
stub table pointer declarations so the stubs can be used from C++
code. [Bug: 1934]
* generic/tkInt.decls: Added TkClipBox, XDrawSegments, and
XForceScreenSaver to stubs.
* generic/tkStubLib.c: Reordered declarations to avoid
circularities and forward references.
* generic/tkStubInit.c: Added includes for Mac.
* generic/tkMenubutton.c: lint
* generic/tkEntry.c: Fixed bad option table entry.
* generic/tkImgBmap.c:
* generic/tkImgPPM.c:
* generic/tkImgPhoto.c: Set the -translation and -encoding options
to binary for image files. (reported by Marco Gazzetta)
1999-04-23 <stanton@scriptics.com>
* generic/tkInt.decls: Added TkClipBox, XDrawSegments, and
XForceScreenSaver to stubs.
* generic/tkStubLib.c: Reordered declarations to avoid
circularities and forward references.
* generic/tkStubInit.c: Added includes for Mac.
* generic/tkMenubutton.c: lint
* generic/tkEntry.c: Fixed bad option table entry.
1999-04-22 <redman@scriptics.com>
* generic/tkImgBmap.c:
* generic/tkImgPPM.c:
* generic/tkImgPhoto.c: Set the -translation and -encoding options
to binary for image files. (reported by Marco Gazzetta)
1999-04-20 <redman@scriptics.com>
* xlib/X11/Xlib.h: changed definition of Status type to use a
typedef instead of a #define to avoid conflicting with the cygwin
win32 headers [Bug 1804]
1999-04-15 <stanton@scriptics.com>
* Merged 8.1 branch into the main trunk
1999-04-09 <redman@scriptics.com>
* generic/tkWindow.c: Fixed deadlock situation when the Initialize()
function returns without releasing the mutex. Found while testing
Bug 1700, during safe.test (tk).
1999-04-06 <stanton@scriptics.com>
* generic/tkMain.c (Tk_MainEx): Changed to reset result before
calling Tcl_EvalFile. The ensures that error messages will be
generated cleanly.
* tests/winfo.test: Enabled tests that previously failed.
1999-04-05 <stanton@scriptics.com>
* library/bgerror.tcl:
* library/button.tcl:
* library/clrpick.tcl:
* library/console.tcl:
* library/dialog.tcl:
* library/entry.tcl:
* library/focus.tcl:
* library/listbox.tcl:
* library/menu.tcl:
* library/msgbox.tcl:
* library/palette.tcl:
* library/scale.tcl:
* library/scrlbar.tcl:
* library/tearoff.tcl:
* library/text.tcl:
* library/tk.tcl: Lots of minor performance improvements
contributed by Jeffrey Hobbs. [Bug: 1118]
* win/tkWinWm.c (Tk_WmCmd): Fixed bad code in tracing
suboption. [Bug: 1519]
* library/tkfbox.tcl: Change to restore button text after an
action to avoid the sticky "Open" button in a save dialog.
[Bug: 1640]
* library/entry.tcl: Fixed so selection is returned using the
-show character during cut and paste operations. [Bug: 1687]
1999-04-5 <redman@scriptics.com>
* generic/tkInt.decls:
* generic/tkIntXlibDecls.h:
* generic/tkStubInit.c:
* xlib/xgc.c:
* xlib/X11/Xlib.h:
* xlib/X11/Xutil.h: Added more X functions to the Win & Mac stubs
tables.
1999-04-05 <stanton@scriptics.com>
* unix/configure.in:
* generic/tkCanvPs.c: Added configure test for pw_gecos field in
pwd to support OS/390. [Bug: 1724]
1999-04-02 <stanton@scriptics.com>
* tests/text.test:
* generic/tkText.c: Fixed handling of Unicode in text searches.
The -count option was returning byte counts instead of character
counts. [Bug: 1056, 1148, 1666]
1999-04-01 <redman@scriptics.com>
* generic/tk.decls:
* generic/tk.h:
* generic/tkStubInit.c:
* generic/tkWindow.c:
* unix/Makefile.in:
* win/makefile.vc: Tk now uses its own stub library to store
pointers to its own stubs table.
* doc/dde.n: (removed)
* doc/send.n:
* generic/tk.decls:
* tests/winSend.test:
* generic/tkPlatDecls.h:
* win/tkWinSend.c: Removed the DDE-based send and dde commands,
they were causing Tk to lock up when any window on the system was
not processing its message queue (more importantly, windows in Tcl
and Tk). The send command needs to be rewritten to prevent the
deadlock situation (soon). The dde command is being pushed into
its own package and will provide almost all of the capabilities
that send did before (using a "dde eval" command), not yet
completed.
1999-03-31 <redman@scriptics.com>
* win/tkWinSend.c: Modified dde/send code to work properly on
Win95/Win98. String lengths are not returned properly by DDE, so
NULL terminate all strings going in and ignore the string length
coming back out. Do not destroy handles until all necessary work
on those handles (and child handles) is done.
1999-03-30 <stanton@scriptics.com>
* generic/tkWindow.c (Tk_DestroyWindow): Image handlers are now
finalized before the font subsystem since complex image handlers
may contain references to fonts (e.g. Tix compound images).
[Bug: 1603]
1999-03-29 <stanton@scriptics.com>
* doc/MeasureChar.3:
* doc/TextLayout.3:
* generic/tk.decls:
* generic/tkCanvText.c:
* generic/tkEntry.c:
* generic/tkFont.c:
* generic/tkListbox.c:
* generic/tkMessage.c:
* mac/tkMacFont.c:
* unix/tkUnixButton.c:
* unix/tkUnixFont.c:
* unix/tkUnixMenu.c:
* win/tkWinFont.c:
* win/tkWinMenu.c: Standardized text layout and font interfaces
so they are consistent with respect to byte versus character
oriented indices. The layout functions all manipulate character
oriented values while the lower level measurement functions all
operate on byte oriented values. This distinction was not clear
and so the functions were being used improperly in a number of
places. [Bug: 1053, 747, 749, 1646]
* generic/tk.decls: Eliminated uses of C++ STL types string and
list from declarations.
* generic/tkFont.c: Changes to named fonts were not being
propagated in some cases. [Bug: 1144]
* xlib/X11/Xlib.h:
* generic/tkInt.decls: Added XParseColor to xlib stub
tables. [Bug: 1574]
* doc/GetBitmap.3:
* generic/tkBitmap.c (BitmapInit): Eliminated use of Tk_Uid's in
bitmaps. Added a few CONST declarations.
1999-03-29 <redman@scriptics.com>
* unix/configure.in:
* unix/Makefile.in:
* win/makefile.vc:
* generic/tkDecls.h:
* generic/tkIntDecls.h:
* generic/tkIntPlatDecls.h:
* generic/tkPlatDecls.h:
* generic/tkIntXlibDecls.h: Removed stub functions. Always use the
Tcl stubs when building with --enable-shared.
1999-03-26 <redman@scriptics.com>
* generic/tkTextIndex.c:
* tests/testIndex.test: Avoid looking past the beginning of the
array storing data for the text widget (.t index end-2c). Added
test case to check for the bug. [Bug 991]
* generic/tkConsole.c: Copy static strings into a Tcl_DString
before passing to Tcl_Eval, in case the compiler puts static
strings into read-only memory.
1999-03-26 <suresh@scriptics.com>
* unix/configure.in:
--nameble-shared is now the default and builds Tk as a shared
library; specify --disable-shared to build a static Tk library
and shell.
1999-03-26 <surles@scriptics.com>
* library/menu.tcl: Fixed bug reported by Bryan Oakley in the
menubutton bindings. There was a false assumption that there was
always a menu attached to the button. [Bug 1116]
1999-03-26 <redman@scriptics.com>
* unix/configure.in: Removed --enable-tcl-stub. Linking Tk to Tcl
stubs is causing too many problems when linking executables like wish.
Until the Tk is a fully loadable extension, linking against the Tcl
stubs is not supported in Tk.
1999-03-19 <redman@scriptics.com>
* generic/tkBitmap.c:
* generic/tkCursor.c:
* generic/tkGC.c: When creating hash tables that key off of XID
handles, make sure to pass TCL_ONE_WORD_KEYS. XIDs are guaranteed
to be 32bit numbers, although on some 64bit systems (including 64bit
Solaris 7) they are packed into a 64bit value where the upper 32bits
are zero. The normal method of sizeof(XID)/sizeof(int) causes the
hash table code to assume that the XID is a pointer to an array of
two ints, which it is not. Tk now supports 64bit Solaris 7.
1999-03-17 <stanton@scriptics.com>
* win/makefile.vc:
* generic/tk.h: Changed to use TCL_BETA_RELEASE macro, and fixed
so this works in rc files.
* win/makefile.vc:
* win/makefile.bc:
* win/README:
* unix/configure.in:
* generic/tk.h:
* README: Updated version to 8.1b3.
1999-03-14 <stanton@GASPODE>
* unix/configure.in: Added missing stub related definitions.
* unix/Makefile.in: Install tkDecls.h in addition to tk.h.
* generic/tkStubLib.c: Added flags to ensure we are using Tcl
stub macros.
1999-03-11 <stanton@GASPODE>
* generic/tkInt.decls: Added reserved slot for XSetDashes for use
by the dash patch.
1999-03-10 <redman@scriptics.com>
* xlib/xdraw.c:
* xlib/X11/Xlib.h:
* mac/tkMac.h:
* mac/tkMacInt.h:
* mac/tkMacPort.h:
* mac/tkMacXStubs.c:
* mac/tkMacAppInit.c:
* mac/tkMacCursor.c:
* win/makefile.vc:
* win/tkWin.h:
* win/tkWinInt.h:
* win/tkWinPort.h:
* win/winMain.c:
* generic/tk.h:
* generic/tkInt.h:
* generic/tk.decls:
* generic/tkInt.decls:
* generic/tkDecls.h:
* generic/tkPlatDecls.h:
* generic/tkIntDecls.h:
* generic/tkIntPlatDecls.h:
* generic/tkIntXlibDecls.h:
* generic/tkStubs.c:
* generic/tkPlatStubs.c:
* generic/tkIntStubs.c:
* generic/tkIntPlatStubs.c:
* generic/tkIntXlibStubs.c:
* generic/tkStubInit.c:
* generic/tkStubLib.c:
* generic/tkBind.c:
* generic/tkCmds.c:
* generic/tkConfig.c:
* generic/tkConsole.c:
* generic/tkCursor.c:
* generic/tkGrab.c:
* generic/tkImgPhoto.c:
* generic/tkMain.c:
* generic/tkMenu.c:
* generic/tkPointer.c:
* generic/tkTextDisp.c:
* generic/tkWindow.c:
* unix/tkUnixInt.h:
* unix/tkUnixPort.h:
* unix/Makefile.in:
* unix/configure.in:
* unix/tkConfig.sh.in:
* unix/tkUnix.c:
* unix/tkUnix3d.c:
* unix/tkUnixDraw.c:
* unix/tkUnixFont.c:
* unix/tkUnixMenubu.c: Stubs implementation for 8.1. Tk_Main() is
replaced with a macro which calls Tk_MainEx(). Tk can link to the Tcl
stubs library, wish links directly to Tcl and Tk. Use
--enable-tcl-stubs to link Tk to the Tcl stubs library (Unix), on
by default on Windows. Exported all public functions through the
stubs mechanism (see the *.decls files) and many of the internal
functions. Most of the changes dealt with shifting around the
function declarations in the header files. Mac code may not
compile, but it shouldn't take much work to fix this.
* mac/tkMacMenu.c: Added dummy TkpMenuThreadInit for Mac to be
consistent with Unix and Windows versions.
1999-03-08 <lfb@scriptics.com>
* win/tkWinWm.c: Toplevel class no longer shared between
threads.
* win/tkWinX.c: Multiple threads no longer share the same
TkDisplay structure. Required because TkDisplay stores much
thread-specific data for a given thread.
* win/tkWinSend.c: Moved application instance handle out
out thread-local storage. DDE was failing to initialize
when the instance handles were different between threads.
* win/makefile.vc: Added THREADDEFINES for building with
threads enabled.
* generic/tkMenu.c:
* win/tkWinMenu.c:
* unix/tkUnixMenu.c: Added TkpMenuThreadInit for initializing
thread-specific Menu state.
1999-03-01 <redman@scriptics.com>
* win/tkWinWm.c:
* win/tkWinPointer.c:
* win/tkWinInt.h: Fix "focus -force" for Windows. The Win32 API
function SetForegroundWindow() does not work unless the window
handle is a toplevel window (a Windows toplevel). The handle
being passed was a Tk toplevel, which is a child of the Windows
toplevel.
1999-02-26 <redman@scriptics.com>
* win/cat.c: Remove this file, use the one in the Tcl source directory.
* win/makefile.vc: Remove the wishc.exe from the default targets. Add
a separate console-wish target to build it. The need for a
console-wish will go away soon, so we don't want to encourage its
use.
1999-02-25 <redman@scriptics.com>
* win/tkWinWm.c: Properly initialize the tsdPtr->firstWindow field.
* win/cat.c: Code for cat32.exe, copied from the Tcl sources. Required
in order to run the test suite from the makefile
* win/winMain.c: Add main() for a console-based wishc.exe, which meant
adding code to disable the call to Tk_ConsoleInit().
* generic/tkConsole.c: Check the standard handles before creating the
new standard channels. This allows a windows app that has stdin,
stdout, or stderr to correctly connect to them.
* generic/tkMain.c: Add a proper check for the interactive mode, since
the standard channels may actually be connected in windows mode or
even in the console-based wish.
* win/makefile.vc: Add targets for wishc.exe (console-based wish) and
cat32.exe (for testing). Fix the test suite target so it can be run
from the makefile (which can happen since the standard handles have
been fixed).
1999-02-12 <lfb@scriptics.com>
* generic/tkMenuButton.h:
* generic/tkMenuButton.c:
* mac/tkMacMenubutton.c:
* mac/tkMacDefault.h
* unix/tkUnixMenubu.c: Eliminated Tk_Uids used by -state option.
* unix/tkUnixDefault.h
* win/tkWinDefault.h
* generic/tk.h:
* generic/tkScale.h:
* generic/tkScale.c:
* generic/tkWindow.c:
* unix/tkUnixScale.c:
* unix/tkUnixDefault.h:
* unix/tkWinDefault.h:
* mac/tkMacDefault.h: Objectified scale widget.
* win/tkWinX.c: Removed Thread-specific data from process
initialization code that was stopping the Tk Dll from
loading.
1999-02-11 <stanton@GASPODE>
* README:
* generic/tk.h:
* unix/configure.in:
* win/README:
* win/makefile.bc:
* win/makefile.vc: Updated version to 8.1b2.
* unix/tkUnixSend.c: Fixed one more Tcl_*ObjVar instance.
1999-02-04 <stanton@GASPODE>
* Various cleanup related to the Tcl_Eval and Tcl_ObjSetVar
changes in Tcl.
INTEGRATED PATCHES FROM 8.0.5b2:
* win/tkWinMenu.c (TkpDestroyMenu): Changed so modalMenuPtr is
cleared when it is being destroyed.
* generic/tkImgPhoto.c: Changed so color tables are freed
immediately instead of being delayed. This ensures that color
tables are properly disposed at process exit.
* library/prolog.ps: Changed string that determines font height to
include European character with an umlaut.
* generic/tkImgBmap.c (ImgBmapConfigureInstance): If an image
mask changed but ended up with the same XID, the GC failed to be
updated and so the new mask was not used. [Bug: 970]
* generic/tkFocus.c (SetFocus): Changed so focus window is always
set if -force is specified. This fixes the problem on Windows
where Tk does not activate the window if it already has focus.
* generic/tkConsole.c: Fixed so errors in console eval are
reported properly. Eliminated duplicate result messages. [Bug: 973]
* win/tkWinWm.c: Changed so windows that aren't resizable don't
have resize handles and the zoom box is disabled.
* win/tkWinInt.h:
* win/tkWinPointer.c: Changed to cancel the mouse timer when a
user initiated move/resize loop begins.
* unix/configure.in: TK_LD_SEARCH_FLAGS was set incorrectly if
SHLIB_LD_LIBS='${LIBS}', and shared linking is performed through
the C compiler. Systems affected are Linux, MP-RAS and NEXTSTEP,
but also with gcc on many more systems. [Bug: 908]
* win/makefile.vc: First stab at install target. Fixed quoting so
paths with spaces work.
* tests/main.test:
* tests/unixWm.test: Better cleanup of temporary files.
* mac/tkMacAppInit.c:
* generic/tkTest.c:
* generic/tkAppInit.c:
* win/winMain.c: Changed some EXTERN declarations to extern
since they are not defining exported interfaces. This avoids
generating useless declspec() attributes and makes the windows
makefile simpler.
* library/menu.tcl (tkMenuFind): Changed so keyboard shortcuts
will only be found in the current toplevel. Previously, they
might be found in menus attached to other toplevels that might not
even be mapped. [Bug: 924]
* generic/tkCanvLine.c: Changed to treat zero width lines like
they have width 1 for purposes of selection. [Bug: 925]
* win/tkWinFont.c (Tk_MeasureChars): Added a workaround for a bug
in GetTextExtentExPoint on Win NT 4.0/Japanese. [Bug: 1006]
* unix/tkUnixSend.c (Tk_SetAppName): Fixed uninitialized memory
access bug. [Bug: 919]
1999-1-28 <stanton@GASPODE>
* generic/tkGrid.c: Fixed bug in "grid forget" that failed to cancel
pending idle handlers, resulting in a crash in a few odd cases.
1999-01-06 <lfb@JUSTICE>
* generic/tk.h, generic/tkGet.c, generic/tkConfig.c,
* generic/tkOldConfig.c, generic/tkEntry.c, generic/tkMenubutton.c,
* generic/tkMenubutton.h, generic/tkScale.c, generic/tkScale.h,
* generic/tkTextDisplay.c, generic/tkText.c, unix/tkUnixMenubu.c,
* unix/tkUnixScale.c, mac/tkMacMenu.c, mac/tkMacMenubutton.c,
Removed global Tk_Uids dealing with "-state" configuration option
and added new TK_CONFIG_STATE configSpec that doesn't use
Tk_Uids.
1998-12-11 === Tk 8.1b1 Release ===
1998-12-11 <stanton@GASPODE>
* generic/tkMain.c (Tk_Main): Fixed improper command line encoding
handling.
1998-12-08 <stanton@GASPODE>
* win/tkWinClipboard.c (TkSelGetSelection, TkWinClipboardRender):
Changed to handle multibyte characters properly. [Bug: 935]
1998-12-07 <stanton@GASPODE>
* library/xmfbox.tcl (tkMotifFDialog_Create): In the cached case,
the data array was not being initialized with the correct set of
widgets.
1998-12-4 <welch@SAGE>
* Changed patchLevel to 8.1b1
* generic/tkMenu.c (ConfigureMenuCloneEntries): The -menu configuration
option was being incorrectly specified as just "menu".
1998-11-30 <stanton@GASPODE>
* generic/tkButton.c (ConfigureButton): The error result was
getting lost when restoring configuration options. [Bug: 619]
1998-11-25 <stanton@GASPODE>
* unix/tkUnixFont.c (GetFontAttributes): Initialize an unspecified
family to an empty string.
(FontMapLoadPage): if the font included characters below 32, the
index computation was incorrect because the range was shifted up
to 32.
(CreateClosestFont): check for empty locale as well as NULL.
* generic/tkFont.c (TkFontParseXLFD): initialize charset to
iso8859-1 if no charset is specified.
* mac/tkMacHLEvents.c (OdocHandler): added conversion from
external string to UTF [Bug: 869]
* integrated tk8.0.4 changes.
* generic/tkBind.c: fixed deletion order bug where a crash would
result if a binding deleted "."
* generic/tkMenu.c (MenuWidgetObjCmd): disabled menu entries were
getting reenabled whenever the mouse passed over the entry [Bug: 860]
* unix/tkUnixMenu.c (TkpComputeStandardMenuGeometry): hidemargin
option was not honored properly in menus [Bug: 859]
1998-11-24 <stanton@GASPODE>
* tkMacMenu.c, tkUnixMenu.c, tkWinMenu.c, tkMenuDraw.c, tkMenu.h,
* tkMenu.c: Backed out the previous fix for bug 620 and
eliminated a bunch of code that created unnecessary objects.
Changed back to using internal types instead of objects for many
configuration options. There are many more fixes like this that
could be made, but some require a little restructuring of the
code. In any case the leaks are fixed and there is a lot less
allocation happening. [Bug: 620]
1998-11-19 <stanton@GASPODE>
* tkMenu.c (DestroyMenuEntry): fixed memory leaks [Bug: 620]
* tkWinX.c (GetTranslatedKey): fixed bad code merge
* tkWinWm.c, tkWinMenu.c: fixed titles and menus so they properly
display Unicode [Bug: 819]
|