Unnamed Fossil Project

Check-in [f73c837a75]
Login

Check-in [f73c837a75]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Use distinct resource db names for compatibility options instead of "unused". This seems to fix the last of the fatal BWidget errors.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | master | trunk
Files: files | file ages | folders
SHA3-256: f73c837a750f3e11940128223d62dae971d0a8265f27d64ec8d05e93789f397d
User & Date: jenglish 2004-06-06 15:45:43.000
Context
2004-06-08
03:25
BUGFIX: setting -default option incorrectly triggered -state option processing. check-in: 3f6ec2116a user: jenglish tags: master, trunk
2004-06-06
15:45
Use distinct resource db names for compatibility options instead of "unused". This seems to fix the last of the fatal BWidget errors. check-in: f73c837a75 user: jenglish tags: master, trunk
2004-06-05
19:42
Added new test (can't create ProgressBar widget) check-in: 62d4850d64 user: jenglish tags: master, trunk
Changes
Side-by-Side Diff Ignore Whitespace Patch
Changes to ChangeLog.






1
2
3
4
5

6
7
8
9
10
11
12
13

14
15
16
17
18
19
20
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
+
+
+
+
+
+




-
+







-
+







2004-06-05  Joe English  <jenglish@users.sourceforge.net>
	* tools/optiondiff.tcl, generic/compat.h(COMPAT_OPTION macro):
	Use distinct resource db names for compatibility options
	instead of "unused".  This seems to fix the last of the
	fatal BWidget errors.

2004-06-05  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c (-width option): Workaround for bug #967209
	* generic/tkTheme.c: Partially disable element/widget option
	compatibility checks as workaround for workaround.
	* generic/notebook.c: BUGFIX: wrong type for notebook -padding 
	* generic/notebook.c: BUGFIX: wrong type for notebook -padding
	option (caught by test nulloption-1.3)

2004-06-04  Joe English  <jenglish@users.sourceforge.net>
	* demos/themes/blue.tcl: Added warning about using "blue"
	as a basis for building other pixmap themes.

2004-05-29  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c: move "-anchor" option from Base 
	* generic/button.c: move "-anchor" option from Base
	to Label; -anchor now a compatibility option for buttons,
	checkbuttons, &c.
	* generic/compat.h: Regenerated.
	* generic/button.c, generic/tkElements.c, generic/pixmapTheme.c:
	BUGFIX: Turns out that the Tk_ImageChangedProc can't be NULL after all.

2004-05-16  Joe English  <jenglish@users.sourceforge.net>
31
32
33
34
35
36
37
38

39
40
41
42
43
44
45
46
47

48
49
50
51
52
53
54
37
38
39
40
41
42
43

44
45
46
47
48
49
50
51
52

53
54
55
56
57
58
59
60







-
+








-
+







	* tools/optiondiff.tcl: Make sure Tk 8.4 is used to generate
	compatibility resources.

2004-05-10  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c, generic/compat.h: Made label '-font'
	and '-foreground' options compatibility resources instead
	of real resources.
	* demos/demo.tcl: Reworked 'Theme' menu 
	* demos/demo.tcl: Reworked 'Theme' menu
	* generic/button.c: Added default values for options
	-width, -borderwidth, -relief; try to improve BWidget compatibility.

2004-04-28  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* Makefile.in: Added missing clamTheme.tcl (spotted by Neil Madden)

2004-04-27  Joe English  <jenglish@users.sourceforge.net>
	* generic/frame.c(FrameOptionSpecs),generic/button.c(LabelOptionSpecs): 
	* generic/frame.c(FrameOptionSpecs),generic/button.c(LabelOptionSpecs):
	-background is now a compatibility resource
	* tools/optiondiff.tcl: BUGFIX: correctly compute defaults for synonym
	options; widget defaults enabled by default now.
	* generic/compat.h: Regenerated.

	Tile should now be compatible with the BWidget toolkit.
	Drawback: "-background" widget option for frames and labels
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
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







-
+






-
+

-
-
+
+











-
+

-
+





-
-
+
+







	for scrollbar, slider and progress bar elements.

2004-04-25  Joe English  <jenglish@users.sourceforge.net>
	* generic/clamTheme.c, library/clamTheme.tcl:
	Added notebook elements.  Minor display tweaks.

2004-04-23  Joe English  <jenglish@users.sourceforge.net>
	* generic/compat.h, generic/frame.c(Labelframe): 
	* generic/compat.h, generic/frame.c(Labelframe):
	Added support for -labelwidget option.
	* tests/labelframe.test: (new file) Tests for the above.

2004-04-23  Joe English  <jenglish@users.sourceforge.net>
	* generic/clamTheme.c, library/clamTheme.tcl:
	New theme, inspired by the XFCE family of GNOME themes.
	

2004-04-22  Joe English  <jenglish@users.sourceforge.net>
	* library/notebook.tcl, doc/notebook.n: Added 
	[tile::notebook::enableTraversal] procedure; 
	* library/notebook.tcl, doc/notebook.n: Added
	[tile::notebook::enableTraversal] procedure;
	enables mnemonic activation for notebook tabs
	and <Control-Tab> bindings.
	* demos/demo.tcl: added mnemonics to a couple of tabs in demo.

2004-04-22  Jeff Hobbs  <jeffh@ActiveState.com>

	* generic/notebook.c (TabOptionSpecs): add -underline option for tabs

	* library/winTheme.tcl: make select tab "raised"

2004-04-05  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c, generic/tkElements.c: 
	* generic/altTheme.c, generic/tkElements.c:
	Added "-shiftrelief" to Padding element; removed
	Pressable/PushableBorderElement.  
	Pressable/PushableBorderElement.
	* generic/tkTheme.h, generic/layout.c: TTK_RelievePadding
	takes an extra parameter.
	* generic/layout.c(TTK_RelievePadding): BUGFIX: was
	shifting relief by twice as much as it should have.
	* generic/altTheme.c win/winTheme.c, win/xpTheme.c:
	"Highlight" element renamed to "Focus" element.  "Highlight" 
	now refers (only) to external ring (default indicator, 
	"Highlight" element renamed to "Focus" element.  "Highlight"
	now refers (only) to external ring (default indicator,
	focus indicator in classic theme).
	* win/xpTheme.c: Added workaround for bogus results
	from GetThemePartSize().
	* win/xpTheme.c: Removed FocusElement; can inherit from winTheme.c
	* win/xpTheme.c: Account for borderwidth in Labelframe.border.

2004-04-03  Joe English  <jenglish@users.sourceforge.net>
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
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







-
+















-
+


-
+







	* generic/layout.c: Added TTK_AddPadding

2004-03-31  Joe English  <jenglish@users.sourceforge.net>
	* generic/tile.c: BUGFIX: don't provide package tile unless
	init script succeeds.
	* generic/widget.c(CoreEventHandler): Compress <Expose> events:
	don't schedule redisplay until the last one arrives.
	Also mini-bugfix: 'Expose' and 'Configure' events shouldn't 
	Also mini-bugfix: 'Expose' and 'Configure' events shouldn't
	share the same switch branch (see 2004-03-16 change).

2004-03-31  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* win/winTheme.c:  For some reason the windows stuff stopped building
	* win/xpTheme.c:   on my Win2k system. Adding WIN32_LEAN_AND_MEAN
	* win/monitor.c:   fixes the build.

	* demo/themes/blue: Redid the radio and check button pixmaps.

2004-03-29  Joe English  <jenglish@users.sourceforge.net>
	* generic/notebook.c: BUGFIX: [$notebook tabconfigure ...]
	didn't redisplay widget.

2004-03-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/frame.c: BUGFIX: get border width from theme, 
	* generic/frame.c: BUGFIX: get border width from theme,
	not from -borderwidth resource.
	* macosx/aquaTheme.c, library/aquaTheme.tcl:
	Redid button elements, added notebook and labelframe elements. 
	Redid button elements, added notebook and labelframe elements.
	Accounted for focus, default buttons, background/inactive
	widgets, lots of other enhancements.

2004-03-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkstate.c, generic/tkTheme.c, doc/widget.n:
	New TTK_STATE values: "background", "indeterminate", "invalid",
	"default".
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
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







-
+

















-
+















-
-
+
+


-
+











-
+




















-
+


-
+











-
+



-
+






-
+















-
+







2004-03-27  Joe English  <jenglish@users.sourceforge.net>
 	* configure.in, generic/configure.in, generic/Makefile.in,
	generic/tkTheme.h, win/makefile.vc: Bumped version number to 0.4
	* generic/configure: Regenerated.

2004-03-27  Joe English  <jenglish@users.sourceforge.net>
	* macosx/aquaTheme.c, library/aquaTheme.tcl, library/tile.tcl,
	generic/widget.h, demos/demo.tcl: First cut at native OSX 
	generic/widget.h, demos/demo.tcl: First cut at native OSX
	Aqua theme, using Appearance Manager API.

2004-03-27  Joe English  <jenglish@users.sourceforge.net>

	=== TILE 0.3 TAGGED FOR RELEASE ===

2004-03-27  Joe English  <jenglish@users.sourceforge.net>
	* ./Makefile.in: Added menubutton.tcl to PKG_TCL_SOURCES;
	removed unused fossil $(AM_xxx) references.

2004-03-27  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c, generic/tkElements.c:
	Use -arrowsize instead of -width for arrow elements.

2004-03-22  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c: Use TP_SPLITBUTTON and TP_SPLITBUTTONDROPDOWN
	for menubuttons.
	* generic/altTheme.c: Lose the vertical separator in 
	* generic/altTheme.c: Lose the vertical separator in
	Menubutton.indicator.
	* library/winTheme.tcl, library/xpTheme.tcl: More spacing tweaks.
	Still not quite right.
	* demos/demo.tcl: Moved toolbar compound control from
	side control panel into toolbar.

2004-03-21  Joe English  <jenglish@users.sourceforge.net>
	* generic/gunk.h: Check for MAC_OSX_TK.

2004-03-21  Joe English  <jenglish@users.sourceforge.net>
	* generic/tile.c, generic/widget.h, generic/button.c:
	Recognize "-state active" compatibility option.
	Accept all "-state" values, interpret as "normal".

2004-03-20  Joe English  <jenglish@users.sourceforge.net>
	* tools/optiondiff.tcl: Tried adding default values for 
	compatibility resources.  BWidgets still breaks.  
	* tools/optiondiff.tcl: Tried adding default values for
	compatibility resources.  BWidgets still breaks.
	Disabled feature, compile with -DCOMPAT_DEFAULTS to reenable.
	* generic/compat.h: regenerated.
	* generic/tkTheme.c, generic/tkTheme.h: 
	* generic/tkTheme.c, generic/tkTheme.h:
	Ignore compatibility resources when filling in element options.

2004-03-20  Joe English  <jenglish@users.sourceforge.net>
	* library/tile.tcl, library/button.tcl: Moved
	button-specific 'activate' procedure into button.tcl.
	Don't generate <<Arm>> and <<Disarm>> events; I forget
	what these were for in the first place.

2004-03-18  Joe English  <jenglish@users.sourceforge.net>
	* library/defaults.tcl, library/altTheme.tcl, library/winTheme.tcl,
	library/xpTheme.tcl: Added Toolbutton style.
	* demos/demo.tcl, demos/toolbutton.tcl: 
	* demos/demo.tcl, demos/toolbutton.tcl:
	Added demonstration of how to define custom styles.

2004-03-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.c: *Correct* workaround for geometry
	problems in the XP theme.  Sigh.

2004-03-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.c: Call UpdateLayout() on the first
	ConfigureNotify event, to work around geometry problems
	in the XP theme and missing <<ThemeChanged>> events.

2004-03-17  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* win/makefile.vc: Added a demo target.

2004-03-15  Joe English  <jenglish@users.sourceforge.net>
	* library/menubutton.tcl: BUGFIX: wasn't clearing active state.
	Reverse post direction if menu would extend off-screen.

2004-03-14  Joe English  <jenglish@users.sourceforge.net>
	* library/menubutton.tcl, library/winTheme.tcl, library/xpTheme.tcl, 
	* library/menubutton.tcl, library/winTheme.tcl, library/xpTheme.tcl,
	win/winTheme.c, win/xpTheme.c, generic/altTheme.c:
	Ported menubutton implementation to windows:
	Made bindings platform-specific bindings to avoid 
	Made bindings platform-specific bindings to avoid
	[grab]-related lockups with native menus.
	Added native-ish XP menubutton (sort of).

2004-03-14  Joe English  <jenglish@users.sourceforge.net>
	* library/menubutton.tcl: New file
	* generic/button.c, generic/altTheme.c, generic/tkElements.c,
	library/altTheme.tcl, library/defaults.tcl,
	library/stepTheme.tcl, library/tile.tcl: Added menubutton widget

2004-03-14  Joe English  <jenglish@users.sourceforge.net>
	* library/scale.tcl: Make sure State array is properly initialized,
	in case we get an unexpected B1-Motion event (various conditions 
	in case we get an unexpected B1-Motion event (various conditions
	involving grabs can cause this).

2004-03-14  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkElements.c, generic/tkTheme.h, win/winTheme.c, 
	* generic/tkElements.c, generic/tkTheme.h, win/winTheme.c,
	win/xpTheme.c: Made NullElement public.

2004-03-14  Joe English  <jenglish@users.sourceforge.net>
	* generic/cache.c, generic/tkTheme.h, generic/tkTheme.c
	BUGFIX: Tk_GetImage() interp parameter must not be NULL,
	otherwise errors (e.g., missing image) cause a coredump.
	Use Tcl_BackgroundError() instead. 
	Use Tcl_BackgroundError() instead.

2004-03-13  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c: Finally worked out all the off-by-one bugs
	in scrollbar arrows.  I think.

2004-03-12  Joe English  <jenglish@users.sourceforge.net>
	* tools/optiondiff.tcl, generic/compat.h: Added.
	* generic/button.c, generic/frame.c, generic/scrollbar.c:
	Experiment: added Tk 8.4 compatibility resources to all widgets.

2004-03-09  Joe English  <jenglish@users.sourceforge.net>
	* generic/configure.in, generic/aclocal.m4:
	Autocruft removal: moved contents of aclocal.m4 into configure.in.
	* generic/configure: Regenerated
	* generic/button.c, generic/frame.c: Use "Pad" as -padding option
	class, for (forward-) compatibility. 
	class, for (forward-) compatibility.

2004-03-09  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c, win/winTheme.c:  Fixed.

2004-03-09  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.h, generic/tkTheme.c, generic/altTheme.c,
	generic/tkElements.c, generic/layout.c, generic/stepTheme.c,
315
316
317
318
319
320
321
322

323
324
325
326
327
328
329
321
322
323
324
325
326
327

328
329
330
331
332
333
334
335







-
+







	when changing -style option.  (Theme changes with custom
	styles still not handled correctly).

2004-02-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c: Refactoring: Split Label widget
	up into Base part and Label part; other widgets inherit
	from Base instead of Label.  Moved -relief option
	to Label widget.  Label widget gets extra appearance-related 
	to Label widget.  Label widget gets extra appearance-related
	resources since those tend to be customized by the application more.
	* generic/notebook.c: Removed -anchor, -font, and -padding
	Tab options.

2004-02-22  Joe English  <jenglish@users.sourceforge.net>
	* generic/cache.c, generic/tkTheme.h:
	Added TTK_RegisterNamedColor(); initial support for named colors.
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
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







-
+














-
+

















-
+

-
+










-
+






-
+

-
+






-
+







2004-02-21  Joe English  <jenglish@users.sourceforge.net>
	* (all): First cut at user-defined -style support
	* generic/tkTheme.c, generic/tkTheme.h:
	Add a Tcl_Interp* parameter to TTK_CreateLayout(), place to leave
	error messages.
	* generic/widget.c, generic/widget.h: getLayoutProc signature
	changed.  Default getLayoutProc now uses -style option if set.
	* generic/notebook.c, generic/scale.c, generic/scrollbar.c: 
	* generic/notebook.c, generic/scale.c, generic/scrollbar.c:
	Updated other widgets for API change.  (NB: notebook,
	scale, and scrollbar don't support custom -styles yet).
	* demos/demo.tcl: Added Toolbar.Button, Toolbar.Checkbutton
	custom styles to demo.
	* win/xpTheme.c, library/xpTheme.tcl: Added native toolbar
	buttons on Windows XP.  Minor layout tweaks to XP theme.

2004-02-21  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c: Hardcode element padding instead of
	using GetThemeMargins().
	* generic/layout.c, generic/tkTheme.h: Add TTK_MakePadding utility.

2004-02-21  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c, library/xpTheme.tcl: Reorganized and simplified
	XP Theme.  More elements use GenericElementSpec now.  
	XP Theme.  More elements use GenericElementSpec now.
	Finally got GetThemeMargins to work (trick: use TMT_CONTENTMARGINS),
	except for the fact that GetThemeMargins just plain doesn't work.
	* win/xpTheme.c, win/winTheme.c, library/tile.tcl, demos/demo.tcl:
	Use package names "tile::theme::xpnative" and "tile::theme::winnative".

2004-02-20  Joe English  <jenglish@users.sourceforge.net>
 	* configure.in, generic/configure.in, generic/Makefile.in,
	generic/tkTheme.h, win/makefile.vc: Bumped version number to 0.3
	* configure, generic/configure: Regenerated.

2004-02-20  Joe English  <jenglish@users.sourceforge.net>
	* library/altTheme.c: Minor tweaks to notebook appearance.
	* generic/notebook.c: Minor tweaks.

2004-02-20  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.c: BUGFIX: defaultTheme->parentPtr
	was not initialized properly.
	* generic/layout.c(TTK_BuildLayout): Tcl_Panic() 
	* generic/layout.c(TTK_BuildLayout): Tcl_Panic()
	if an element cannot be found.  This is a temporary solution.
	* generic/tkElements.c: Update Scale layouts. 
	* generic/tkElements.c: Update Scale layouts.

2004-02-19  Joe English  <jenglish@users.sourceforge.net>
	* generic/xpTheme.c: BUGFIX: TTK_StateTableLookup
	doesn't like NULL state tables.

2004-02-18  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c, generic/tkTheme.h, generic/altTheme.c,
	  generic/tkElements.c, win/winTheme.c:
	  Factored out TTK_RelievePadding.
	* generic/altTheme.c, win/winTheme.c, win/xpTheme.c,
	  generic/tkTheme.h, generic/tkstate.c: 
	  generic/tkTheme.h, generic/tkstate.c:
	  Factored out TTK_StateTableLookup.
	* generic/altTheme.c, generic/stepTheme.c:
	  remove incorrect assignment gcvalues.line_style = JoinMiter

2004-02-18  Joe English  <jenglish@users.sourceforge.net>
	* library/tile.tcl, library/altTheme.tcl, library/defaults.tcl,
	  library/stepTheme.tcl, library/winTheme.tcl, library/xpTheme.tcl: 
	  library/stepTheme.tcl, library/winTheme.tcl, library/xpTheme.tcl:
	  Moved default -font specification from option database into themes.
	* generic/button.c, generic/frame.c: -font option is NULL by default 
	* generic/button.c, generic/frame.c: -font option is NULL by default

2004-02-18  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.c: always USE_CACHE.  Removed now-dead code.
	* generic/cache.c(TTK_ClearCache): BUGFIX: NULLs may appear in cache.

2004-02-17  Joe English  <jenglish@users.sourceforge.net>
	* demos/demo.tcl: Use 'eval [package unknown] ...' 
	* demos/demo.tcl: Use 'eval [package unknown] ...'
	([package unknown] is a command prefix)

2004-02-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkElements.c: Fix #898371 "problem displaying non-english
	characters"

2004-02-16  Joe English  <jenglish@users.sourceforge.net>
427
428
429
430
431
432
433
434

435
436
437
438
439
440
441
433
434
435
436
437
438
439

440
441
442
443
444
445
446
447







-
+







	* generic/frame.c: Update geometry when -borderwidth changed.

2004-02-15  Joe English  <jenglish@users.sourceforge.net>
	* doc/*.*: Added as much documentation as I could stand to write ...
	* README.txt: Updated.

2004-02-15  Joe English  <jenglish@users.sourceforge.net>
	* demos/demo.tcl: Added 'Widget State...' dialog, 
	* demos/demo.tcl: Added 'Widget State...' dialog,
	for tracking/changing widget states.

2004-02-15  Joe English  <jenglish@users.sourceforge.net>
	* generic/tile.c, generic/widget.h: Reserve space
	for "-cursor" option, so "$w cget -cursor" works.

2004-02-13  Joe English  <jenglish@users.sourceforge.net>
464
465
466
467
468
469
470
471

472
473
474

475
476
477
478

479
480
481
482
483
484
485
470
471
472
473
474
475
476

477
478
479

480
481
482
483

484
485
486
487
488
489
490
491







-
+


-
+



-
+







	Added [style element names].

2004-02-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c: Use Tk_GetImage in LabelConfigureProc();
	this fixes the last of the major known performance problems.

2004-02-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/cache.c, generic/pixmapTheme.c: 
	* generic/cache.c, generic/pixmapTheme.c:
	Add caching for images as well.
	* generic/cache.c, generic/tkTheme.c: And Tk_3DBorders.
	* generic/cache.c: Factored out boilerplate code. 
	* generic/cache.c: Factored out boilerplate code.

2004-02-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/cache.c (new file), generic/tkTheme.c:
	Added resource cache; attempt to solve bug #893844 
	Added resource cache; attempt to solve bug #893844

2004-02-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.c: BUGFIX: NewStyle doesn't take any arguments.
	[ Apparently Jeff was fixing this bug at the same time I was,
	  see next ChangeLog entry :-) ]
	* tclconfig/tcl.m4: Add -Wstrict-prototypes to gcc's CFLAGS_WARNING,
	  which would have caught the above bug.
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
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







-
+





-
+








-
+







	* generic/button.c: Moved "-relief" option from TButton
	to parent class TLabel.  It might move around again.
	* demos/demo.tcl: Uncovered another bug: -anchor and -width
	do not mix well.  Need to investigate further.

2004-02-10  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c, generic/tile.c, generic/widget.h:
	Added -state option to labels, buttons, checkbuttons, 
	Added -state option to labels, buttons, checkbuttons,
	and radiobuttons for compatibility with standard Tk widgets.

2004-02-10  Joe English  <jenglish@users.sourceforge.net>
	* win/winTheme.c, library/winTheme.tcl:
	Tweaks to make buttons look (almost) correct.
	(Focus ring still drawn in the wrong color) 
	(Focus ring still drawn in the wrong color)

2004-02-10  Jeff Hobbs  <jeffh@ActiveState.com>

	* Makefile.in: add missing stepTheme.tcl lib file and change
	install-doc to install-html and make install-doc a noop for now.

	* configure:        Updated to TEA3 spec with minor mods to make
	* configure.in:     things work with private headers better.
	* tclconfig/tcl.m4: 
	* tclconfig/tcl.m4:

2004-02-10  Joe English  <jenglish@users.sourceforge.net>
        * generic/tkTheme.c: Added [style theme names] command
	* generic/tkTheme.c, others: Default theme now
	named "default" instead of (in addition to) "".

2004-02-10  Joe English  <jenglish@users.sourceforge.net>
593
594
595
596
597
598
599
600

601
602
603
604
605
606
607
608
609

610
611
612
613
614
615
616
599
600
601
602
603
604
605

606
607
608
609
610
611
612
613
614

615
616
617
618
619
620
621
622







-
+








-
+








2004-02-08  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.h, generic/widget.c, generic/scrollbar.c,
	generic/scale.c, generic/button.c, generic/frame.c,
	generic/notebook.c: Refactoring: removed WidgetSetLayout,
	added getLayoutProc hook.
	* generic/widget.c, library/tile.tcl: Use <<ThemeChanged>>
	virtual event to notify widgets of theme change, 
	virtual event to notify widgets of theme change,
	instead of the [$w configure -style [$w cget -style]] hack.

2004-02-07  Joe English  <jenglish@users.sourceforge.net>
	* library/stepTheme.tcl: Make selected notebook tab larger
	than the others.
	* generic/notebook.c: Mods to make the above work.
	* generic/tkTheme.h, generic/layout.c:
	TTK_LayoutReqSize() now takes a 'state' parameter,
	to make the above work.  
	to make the above work.
	Fixed argument order of TTK_LayoutGeometry while I'm at it.

2004-02-07  Joe English  <jenglish@users.sourceforge.net>
	* doc/*.n: First cut at actual documentation!

2004-02-05  Pat Thoyts  <patthoyts@users.sourceforge.net>

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
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







-
+




















-
+







	* generic/Makefile.in: added missing @TK_XINCLUDES@
	* generic/layout.c: BUGFIX: off-by-one error in TTK_BoxContains.
	* generic/notebook.c: Track active tab.
	(@@@ NOTE this is a tiny bit glitch-prone.)

2004-02-03  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c(TTK_ParseLayout): made -sticky news the default.
	* demos/themes/*.tcl: added focus ring; simplified some; 
	* demos/themes/*.tcl: added focus ring; simplified some;
	other tweaks.

2004-02-03  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.c, generic/tkTheme.h:
	Added TTK_RegisterElementFactory(), [style createelement $name $type]
	* generic/tkTheme.c: add [style createtheme]
	* generic/pixmapTheme.c: Use TTK_RegisterElementFactory()
	* demos/themes/blue.tcl: Updated to use new API

2004-02-02  Joe English  <jenglish@users.sourceforge.net>
	* generic/notebook.c, library/defaults.tcl, library/stepTheme.tcl,
	win/xpTheme.c: Use "Tab.TNotebook" and "Client.TNotebook"
	instead of "TNotebookTab" / "TNotebookClient".
	* generic/notebook.c: Another attempt to make borderwidth > 1
	work properly.  Still not completely right.
	* generic/altTheme.c: Better-looking notebook tabs.

2004-02-02  Joe English  <jenglish@users.sourceforge.net>
	* generic/notebook.c: BUGFIX: bonehead error in RemoveTab()
	* generic/Makefile.in: added 'valgrind' target
	* tests/scrollbar.test, tests/tile.test: change to work with 
	* tests/scrollbar.test, tests/tile.test: change to work with
	-singleproc true.

2004-02-01  Joe English  <jenglish@users.sourceforge.net>
	* win/monitor.c: made internal routines 'static'.
	* win/xpTheme.c, generic/tkTheme.h, generic/tkTheme.c:
	Move clientData parameter from Theme to ThemeEnabledProc

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
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







-
+


-
+














-
-
+
+

















-
+


-
+







	I'm through fiddling with the GIMP.

2004-02-01  Joe English  <jenglish@users.sourceforge.net>
	* demos/demo.tcl: Create widgets in correct keyboard traversal order.
	Add "Track focus" dialog.
	* (all): Fix miscellaneous keyboard traversal and focus issues.
	* generic/button.c, generic/tile.c, generic/widget.h:
	"" now default -takefocus value; only traversable widgets 
	"" now default -takefocus value; only traversable widgets
	have default "tile::takefocus".
	* generic/notebook.c: Draw tabs from outside-in.
	* generic/notebook.c, library/notebook.tcl: Fix focus and 
	* generic/notebook.c, library/notebook.tcl: Fix focus and
	traversal issues.
	* library/tile.tcl (tile::takefocus): Return 0 if widget
	is not viewable (??? Why doesn't tk_focusNext/Prev handle this?)

2004-02-01  Joe English  <jenglish@users.sourceforge.net>
	* generic/notebook.c: added -padding resource, [$nb forget],
	[$nb index current], [$nb index end], [$nb tabs],
	[$nb tabcget], [$nb tabconfigure].
	* generic/layout.c: Added TTK_LayoutNodeInternalParcel().

2004-01-31  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c: BUGFIX: off-by-one error in CountLayoutNodes.

2004-01-29  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkElements.c: Remove unused fields from 
	CompoundElement.  Separate ImageTextElement and TextElement 
	* generic/tkElements.c: Remove unused fields from
	CompoundElement.  Separate ImageTextElement and TextElement
	instead of using ClientData hack in TextElement.
	* generic/tkTheme.c: Remove unused fields from struct Style.
	Remove unused routine TTK_FindStyle().

2004-01-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c: Added TTK_ParseLayout(), TTK_ParseLayoutSpec().
	* generic/tkTheme.c: Added [style definelayout] command.
	* demos/themes/blue.tcl: Changed to use [style definelayout]
	instead of [skin createlayout].

2004-01-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c: Reorganized code.  No substantive changes.

2004-01-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.h, generic/layout.c: Fixed layout engine algorithm.
	* generic/tkElements.c: Updated scrollbar layouts to use
	new layout scheme.
	* demos/demo.tcl: Added new demo showing why this makes a difference.  
	* demos/demo.tcl: Added new demo showing why this makes a difference.

2004-01-27  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c(TTK_GetPaddingFromObj): Replaced screwball 
	* generic/layout.c(TTK_GetPaddingFromObj): Replaced screwball
	code with something more sensible.  What was I thinking?

2004-01-27  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.h(TTK_Box): Rename "h" and "w" fields
	to "height" resp. "width".  Should have done this a while ago...
	* generic/frame.c, generic/layout.c, generic/notebook.c,
	generic/pixmapTheme.c, scale.c, generic/scrollbar.c:
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
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







-
+



-
+

-
+



-
+







	* generic/pixmapTheme.c, generic/scrollbar.c,
	generic/tkTheme.c, win/monitor.c:
	Same.

2004-01-26  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.h, generic/widget.c: Split 'displayProc' hook
	into separate 'layoutProc' and 'displayProc' hooks.
	* generic/button.c, generic/frame.c, generic/notebook.c, 
	* generic/button.c, generic/frame.c, generic/notebook.c,
	generic/scale.c, generic/scrollbar.c: Updated accordingly.

2004-01-26  Joe English  <jenglish@users.sourceforge.net>
	* tclconfig/tcl.m4: Upgrade to current version from 
	* tclconfig/tcl.m4: Upgrade to current version from
	sampleextension (r1.41 2003/12/10)
	* generic/Makefile.in, generic/configure.in, generic/pkgIndex.tcl.in: 
	* generic/Makefile.in, generic/configure.in, generic/pkgIndex.tcl.in:
	Updated to work with new tcl.m4.
	* generic/configure: regenerated

	*** INCOMPATIBILITY: ./configure.in, ./Makefile.in *** NOT UPDATED ***  
	*** INCOMPATIBILITY: ./configure.in, ./Makefile.in *** NOT UPDATED ***
	Couldn't get these to work.  (Jeff?)

2004-01-26  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* win/wintheme.c: Seems scrollbar buttons are flat when pressed.
	* library/winTheme.tcl: Progress bar should be COLOR_HIGHLIGHT.
	* win/xpTheme.c: Add frame/labelframe themed elements. I can't get
798
799
800
801
802
803
804
805
806


807
808
809
810
811



812
813
814
815
816
817
818
804
805
806
807
808
809
810


811
812
813
814



815
816
817
818
819
820
821
822
823
824







-
-
+
+


-
-
-
+
+
+







	for theme package names.

2004-01-24  Joe English  <jenglish@users.sourceforge.net>
	* demos/themes/WinXP-Blue.tcl: Miscellaneous tweaks.
	Added "tab" element for Notebook widget.

2004-01-24  Joe English  <jenglish@users.sourceforge.net>
	* generic/frame.c, demos/demo.tcl: Added TFrame widget, 
	which turned out to require a lot more changes than I 
	* generic/frame.c, demos/demo.tcl: Added TFrame widget,
	which turned out to require a lot more changes than I
	would have thought:

	* generic/widget.h: GeometryProc renamed to SizeProc; 
	unused TTK_Padding argument removed.  SizeProc now 
	returns 1/0, indicating whether the widget should make 
	* generic/widget.h: GeometryProc renamed to SizeProc;
	unused TTK_Padding argument removed.  SizeProc now
	returns 1/0, indicating whether the widget should make
	a geometry request or not, to prevent excessive recalculations.

	* generic/widget.c, generic/tile.c: All widgets now take
	a -class resource.  Which means we also have to implement:

	* generic/widget.c, generic/widget.h: New READONLY_OPTION
	mask bit for widget OptionSpecs.
827
828
829
830
831
832
833
834

835
836
837
838
839
840
841
833
834
835
836
837
838
839

840
841
842
843
844
845
846
847







-
+







	* win/xpTheme.c: use 'winnative' as the parent theme.

2004-01-22  Joe English  <jenglish@users.sourceforge.net>
	* library/winTheme.tcl: Fix line endings.
	* generic/gunk.h: Add missing include files.

2004-01-22  Joe English  <jenglish@users.sourceforge.net>
	* generic/winTheme.c, library/winTheme.tcl: Added 
	* generic/winTheme.c, library/winTheme.tcl: Added
	first cut at Windows-native theme [from Patch #875243]

2004-01-22  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/tkTheme.c: Added introspection of layouts to return a
	list as used for the skin createlayout command.

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
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







-
-
+
+

-
+













-
+


-
+















-
-
+
+





-
+















-
+





-
+







	and specify a minimum -width for buttons.

2004-01-17  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* library/tile.tcl:    Fix a couple of problems with the XP theme
	* library/xpTheme.tcl: using the new 'style default' command.

	* demos/themes/Aquativo.tcl:   Trying to simplify the use of 
	* demos/themes/WinXP-Blue.tcl: pixmap collections. We can unpack 
	* demos/themes/Aquativo.tcl:   Trying to simplify the use of
	* demos/themes/WinXP-Blue.tcl: pixmap collections. We can unpack
	* demos/themes/blue.tcl:       Gtk theme packs under demos/themes/
	and use them unaltered. By keeping the tcl scripts in the same 
	and use them unaltered. By keeping the tcl scripts in the same
	directory (demos/themes) we can generate the pkgIndex for them.

2004-01-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.tcl: Tracked down performance problem
	with "alt" theme: notebook tabs were using a -font that
	wasn't used in a "real" widget, and hence wasn't cached.
	(@@@ Need to solve the general problem at some point).

2004-01-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/notebook.c, generic/scale.c, generic/tkTheme.c:
	Various bugfixes relating to window or area sizes <= 0.

2004-01-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/button.c, generic/tile.c, generic/tkElements.c, 
	* generic/button.c, generic/tile.c, generic/tkElements.c,
	generic/widget.h: TilePart now gone.  Added TLabel widget.
	* library/altTheme.tcl, library/defaults.tcl,
	library/stepTheme.tcl, demos/demo.tcl Tweaks to make toolbar 
	library/stepTheme.tcl, demos/demo.tcl Tweaks to make toolbar
	buttons in demo continue to sort-of work.
	* library/tile.tcl, library/xpTheme.tcl: moved XP settings
	out of tile.tcl.

2004-01-16  Jeff Hobbs  <jeffh@ActiveState.com>

	* configure:
	* configure.in (LIBS): add user32.lib for Windows

2004-01-16  Joe English  <jenglish@users.sourceforge.net>
	* generic/scale.c, library/scale.tcl:  Get trough
	border width from element, not from the widget resource
	(widget resource might not be used in all themes).

2004-01-15  Joe English  <jenglish@users.sourceforge.net>
 	* demos/demo.tcl, generic/altTheme.c, generic/scrollbar.c, 
 	generic/tile.c, generic/tkElements.c, generic/tkTheme.c, 
 	* demos/demo.tcl, generic/altTheme.c, generic/scrollbar.c,
 	generic/tile.c, generic/tkElements.c, generic/tkTheme.c,
 	generic/widget.h, tests/tile.test, win/xpTheme.c:
	Removed the "Tile" widget; it has served its purpose.

2004-01-15  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c, generic/scrollbar.c, generic/scale.c:
	TTK_LayoutFindNode now only examines the last component 
	TTK_LayoutFindNode now only examines the last component
	of element names.

2004-01-16  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* demos/themes/Aquativo.tcl: Added Gtk import theme. You should
	follow the instructions in the head of this file to fetch the
	theme package itself.

2004-01-15  Joe English  <jenglish@users.sourceforge.net>
	* generic/pixmapTheme.c, demos/demo.tcl, demos/themes/blue/theme.tcl:
	Reorganized PixmapElement; [style elementconfigure] no longer used.
	* generic/tkTheme.c: Removed [style elementconfigure],
	and a whole bunch of now-dead code.
	* generic/tkTheme.c: Configuring a style now updates existing
	widgets (@@@ not immediately though; need to call WorldChanged)
	* generic/stepTheme.c: Specify minimum thumb size; 
	* generic/stepTheme.c: Specify minimum thumb size;
	fix horizontal scrollbar layout.

2004-01-15  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/pixmapTheme.c: Completed the tile-fill function.
	* generic/tkTheme.h:  Put back support for theme client data for 
	* generic/tkTheme.h:  Put back support for theme client data for
	* generic/tkTheme.c:  use in the xpnative theme.
	* demos/demo.tcl:     Enable delayed loading of pixmap themes.
	* demos/themes/blue/theme.tcl: Some changes -- more to do.

2004-01-14  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c, generic/scale.c, generic/stepTheme.c,
	generic/tile.c, generic/tkElements.c, win/xpTheme.c:
979
980
981
982
983
984
985
986

987
988

989
990
991
992
993


994
995
996
997
998
999
1000
985
986
987
988
989
990
991

992
993

994
995
996
997


998
999
1000
1001
1002
1003
1004
1005
1006







-
+

-
+



-
-
+
+







2004-01-14  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* demos/themes/blue/theme.tcl: Added image border option.
	* generic/pixmapTheme.c: Do tiling of the image.

2004-01-13  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/pixmapTheme.c:  Correct Tk_Image handling in the 
	* generic/pixmapTheme.c:  Correct Tk_Image handling in the
	GenericElement. Tk_GetImage and Tk_FreeImage must be paired.
	

	* Makefile.in:            Added a pixmap theme engine along
	* generic/Makefile.in:    with a really ugly demo theme 'blue'
	* generic/altTheme.c:     under demos/themes/blue.
	* generic/notebook.c:     
	* generic/pixmapTheme.c:  This includes support for creating 
	* generic/notebook.c:
	* generic/pixmapTheme.c:  This includes support for creating
	* generic/stepTheme.c:    TTK_LayoutSpec descriptions from
	* generic/tile.c:         a tcl list. See the blue/theme.tcl
	* generic/tkElements.c:   file for a sample.
	* generic/tkTheme.c:
	* generic/tkTheme.h:
	* generic/widget.h:
	* library/pkgIndex.tcl:
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
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







-
+


















-
+

















-
+


-
+







-
-
+
+







	Added -width resource for labels/buttons/&c;
	requested width (minimum width if negative) in characters.
	NB: only used if "-compound text" specified.

2004-01-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/tile.c, generic/button.c: Moved *button widget
	implementations into separate file.
	* generic/widget.h: made string tables for -orient, -default, 
	* generic/widget.h: made string tables for -orient, -default,
	and -compound resources global.
	* notebook.c: Removed unused "-side" option.

2004-01-12  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkTheme.c, generic/tkTheme.h: Removed
	TTK_GetThemeFromObj (dead code).

2004-01-11  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c: fix state map for notebook Tab elements.
	* generic/tkTheme.c (AllocateResources): Error detection.

2004-01-10  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/scale.c:      Fixed progress bar geometry bug and got
	* generic/tkElements.c: the xp theme working.
	* generic/tile.tcl:     Added themeing for the notebook elements.
	* win/xpTheme.c:        The client element wont show up until we
	use a themed frame widget though.
	

	* demos/demo.tcl: Added more lines to show issues with scrollbar.
	* win/xpTheme.c:  Created a generic oriented element. This
	resolves a problem with the vertical thumb and is useful for
	troughs and such. Scale themed with minor bugs to iron out.

2004-01-10  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c: Refactored BorderElementSpec.
	* generic/altTheme.c: Shadow colors for indicators.

2004-01-10  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/scale.c:      Merged the vtrough/htrough elements.
	* generic/scrollbar.c:
	* generic/tkElements.c:
	* library/tile.tcl:
	* win/xpTheme.c:

	* demos/demo.tcl:       Added progress widget. This is 
	* demos/demo.tcl:       Added progress widget. This is
	* generic/scale.c:      really just a special case of the
	* generic/tkElements.c: scale widget. Some bugs to fix yet
	* generic/tile.c:       and the slider needs fixing in 
	* generic/tile.c:       and the slider needs fixing in
	* library/tile.tcl:     all but classic theme.

	* library/scale.tcl: Added repeat motion for the scale.
	* win/xpTheme.c: Corrected slider breakage so it builds.

2004-01-09  Joe English  <jenglish@users.sourceforge.net>
	* widget.c: Added postConfigureProc widget hook,
	for post-configuration operations that need to reenter 
	the interpreter.  
	for post-configuration operations that need to reenter
	the interpreter.
	* tile.c: -variable and -textvariable options now
	work properly (read when configured, not just when
	variable changes).

2004-01-09  Joe English  <jenglish@users.sourceforge.net>
	* generic/scale.c: Set attached -variable and invoke
	-command in [scale set] (where it's safe) instead
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
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







-
+




















-
+











-
+







	library/tile.tcl, demos/demo.tcl: Added an ugly but functional
	Notebook widget.
	* generic/layout.c, generic/tkTheme.h, generic/widget.c:
	Expose some TTK_Box-related layout functions needed by the above.

2004-01-07  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* tkTheme.h:     Added TTK_SetThemeClientData and 
	* tkTheme.h:     Added TTK_SetThemeClientData and
	* tkTheme.c:     TTK_GetThemeClientData permit data to be
	associated with a theme engine. This also registers a deletion
	callback that is called when the theme is deleted.
	Added A TTK_SetThemeEnabledProc. This lets you register a function
	that is called during SetTheme. If this returns false, then the
	theme's parent is used (and checked too). This means XP can
	default to the alt theme if themeing is disabled.

	* win/monitor.c: New file implements an invisible window to
	catch global window messages from Windows.
	* generic/tile.c: Hook in the monitor window.

2004-01-06  Joe English  <jenglish@users.sourceforge.net>
	* generic/track.c: various bugfixes; first version
	didn't work properly when mouse cursor dragged
	away from "pressed" element and then released.

2004-01-06  Joe English  <jenglish@users.sourceforge.net>
	* generic/track.c: New utility, TrackElementState
	* generic/scrollbar.c, library/scrollbar.tcl:
	Updated TScrollbar to use TrackElementState; 
	Updated TScrollbar to use TrackElementState;
	[$scrollbar elementstate] widget method no longer needed.
	* Scrollbar finally displays "active" state properly!

2004-01-06  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/tkElements.c:  Permit variable width trough for win32
	* library/tile.tcl:      style scale (doesn't change geometry).

	* generic/tkTheme.c:     Fix element lookup to look over multiple
	dot-separated names. eg: Z.x.y -> x.y -> y then lookup the same in
	the parent theme.
	

	* generic/scale.c:       Improved the scale implementation.
	* generic/tkElements.c:  Can now pick a slider style for all
	* win/xpTheme.c:         styles. Made less of it hardcoded  too.
	* library/scale.tcl:
	* library/tile.tcl:

2004-01-02  Joe English  <jenglish@users.sourceforge.net>
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
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







-
+


















-
+










-
+

-
+




-
+







	* generic/scrollbar.c, library/scrollbar.tcl,
	generic/tkElements.c, generic/altTheme.c, generic/stepTheme.c,
	win/xpTheme.c: Move scrollbar thumb geometry calculations
	entirely into the scrollbar widget; thumb element implementations
	don't need to worry about first / last anymore.
	Minimum thumb size now works.
	* generic/layout.c, generic/tkTheme.h: Additional utilities
	needed to support the above. 
	needed to support the above.

2004-01-02  Joe English  <jenglish@users.sourceforge.net>
	* demos/demo.tcl: Added compound checkbuttons to toolbars;
	demonstrating a conceptual error in the layout engine.
	* generic/altTheme.c: Workaround for above error.

2004-01-02  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* demos/demo.tcl: Added a scrolled text widget to the client
	frames as I think this shows off the scrollbars more clearly to
	people unfamiliar with the code. Also hooked in a theme menu and
	the tile widget.

	* generic/altTheme.c: Added a subpackage declaration to enable
	introspection of the available themes.
	* win/xpTheme.c: Added local elements for the tile widget for
	testing purposes.

	* generic/layout.c:   Themes may register new elements without 
	* generic/layout.c:   Themes may register new elements without
	* generic/tkTheme.h:  registering new styles. So the element lookup
	* generic/tkTheme.c:  (TTK_GetElement) must be given a starting	theme
	and cannot just use the style's recorded theme. This error caused
	the xp theme to always use 'alt' elements. So by passing the
	current theme and style, we can find the correct element to use.

2003-12-30  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c, generic/tkElements.c,
	generic/tkTheme.c, generic/tkTheme.h, generic/widget.c,
	library/tile.tcl: Changed element resource lookup algorithm
	again; now examines settings from style.  This is still not 
	again; now examines settings from style.  This is still not
	right, but getting closer to something sensible.
	* library/tile.tcl: Fix display of "active" and "pressed" 
	* library/tile.tcl: Fix display of "active" and "pressed"
	states for check & radiobuttons.

2003-12-30  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.c: Add WorldChanged ClassProc, so font changes
	are recognized.  
	are recognized.

2003-12-28  Joe English  <jenglish@users.sourceforge.net>
	* generic/stepTheme.c: fix compiler warnings (signed vs unsigned)
	* library/tile.tcl, library/button.tcl: moved bindings for
	Button, Checkbutton, and Radiobuttons into separate file.

2003-12-13  Pat Thoyts  <patthoyts@users.sourceforge.net>
1237
1238
1239
1240
1241
1242
1243
1244

1245
1246
1247
1248
1249

1250
1251
1252
1253
1254
1255
1256
1243
1244
1245
1246
1247
1248
1249

1250
1251
1252
1253
1254

1255
1256
1257
1258
1259
1260
1261
1262







-
+




-
+







	                         nearly correct and if themeing is
	                         disabled we should revert to the alt
	                         style anyway.

2003-11-29  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/tkElements.c:  Replaced Scrollbar.trough with .vtrough and
	* win/xpTheme.c:         .htrough as gradient fills are drawn 
	* win/xpTheme.c:         .htrough as gradient fills are drawn
	                         differently for each orientation. Used in
				 xpTheme so XP scrollbars now appear correct.

	* win/Makefile.vc:       Added user.lib for DrawFocusRect.
	


2003-11-26  Joe English  <jenglish@users.sourceforge.net>
	* generic/tkElements.c, generic/altTheme.c, library/tile.tcl:
	HighlightElement: only draw focus ring if widget has keyboard focus.
	* generic/layout.c, generic/scrollbar.c: Made TTK_LayoutNode opaque.

2003-10-28  Joe English  <jenglish@users.sourceforge.net>
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
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







-
-
+
+

















-
+


-
+

-
+


















-
+







-
+








-
+








-
+

-
+



-
+











-
+







-
+










-
+







	* library/scrollbar.tcl: clicking in trough scrolls by pages.

2003-10-20  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c, library/tile.tcl:  Minor appearance
	tweaks for XP.

2003-10-20  Joe English  <jenglish@users.sourceforge.net>
	* generic/scrollbar.c, generic/tkElements.c, 
	library/tile.tcl, library/scrollbar.tcl: 
	* generic/scrollbar.c, generic/tkElements.c,
	library/tile.tcl, library/scrollbar.tcl:
	Added [scrollbar elementstate] command; "pressed / !pressed"
	feedback for individual scrollbar elements.

2003-10-20  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c: Changed layout specification internals.
	This is still Not Quite Right, but closer now.

2003-10-20  Joe English  <jenglish@users.sourceforge.net>
	* generic/layout.c: Quick and dirty hack to layout engine
	to overcome fundamental design flaws.  More comprehensive
	fix forthcoming...

2003-10-20  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* generic/altTheme.c:   Implemented a Highlight element to allow
	* generic/tkElements.c: placing the highlight in different parts
	* library/tile.tcl:     of the layout.
	

	* generic/widget.h: Avoid XP code if the headers do not
	* win/xpTheme.c:    support themeing.
	

	* win/makefile.vc: Added a working install target for win32.
	

	* demos/demo.tcl: Added some menu items as we'll want to look into
	this at some point. Included a 'console' item for win32.

2003-10-17  Joe English  <jenglish@users.sourceforge.net>
	* Great Renaming: A "StyleEngine" is now called a "Theme".

2003-10-17  Joe English  <jenglish@users.sourceforge.net>
	* Added TTK_GetDefaultTheme(), TTK_GetCurrentTheme().
	* Added [style settheme $theme] command.  Widget -style
	resource currently unused except to trigger a theme change;
	need to figure out what to do with this later.

2003-10-17  Joe English  <jenglish@users.sourceforge.net>
	* tkTheme.[ch]: CHECKPOINT: halfway through implementing
	new "Style" data structure -- have to check in and go now.

2003-10-17  Joe English  <jenglish@users.sourceforge.net>
	* widget.h, widget.c, tile.c: BUGFIX: recompute geometry
	when -compound, -text, and other geometry-influencing 
	when -compound, -text, and other geometry-influencing
	resources change.

2003-10-17  Joe English  <jenglish@users.sourceforge.net>
	* Makefile.in, generic/Makefile.in: added 'install' target.

2003-10-16  Joe English  <jenglish@users.sourceforge.net>
	* layout.h: merged into tkTheme.h
	* (all): Use 'TTK_' prefix for all style engine-related public symbols 
	* (all): Use 'TTK_' prefix for all style engine-related public symbols

2003-10-16  Joe English  <jenglish@users.sourceforge.net>
	* tile.c(TileOptionSpecs): remove unneeded -highlightthickness,
	-highlightcolor resources.
	* demo/demo.tcl: remove dead code

2003-10-16  Joe English  <jenglish@users.sourceforge.net>
	* Refactoring: consolidate common code into WidgetGeometry(),
	WidgetDisplay().  
	WidgetDisplay().
	Removed TkDrawLayout(), TkLayoutGeometry() (no longer used).
	Added TTK_FreeLayout(), fixed memory leak.
	Added numerous subtle bugs.

2003-10-16  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* win/xpTheme.c:          Added XP themed scrollbar elements.
	* library/tile.tcl:       Missing the gradient fill in trough.
	

	* generic/stepTheme.c:    Isolated NeXTStep theme stuff to a new
	* win/makefile.vc:        file and added a thumb element for this 
	* win/makefile.vc:        file and added a thumb element for this
	* generic/makefile.in     in addition to the widget layout.
	* Makefile.in:

	* generic/scrollbar.c:    Switch to registering widget layouts 
	* generic/scrollbar.c:    Switch to registering widget layouts
	* generic/tile.c:         per style engine. This allows a widget to
	* generic/tkElements.c:   have different elements for different
	* generic/tkTheme.c:      styles (think nextstep scrollbars)
	* generic/tkTheme.h:
	* generic/widget.h:
	* demos/demo.tcl:

2003-10-16  Joe English  <jenglish@users.sourceforge.net.
	* generic/tkTheme.c(FreeStyleEngine): Free layout table.

2003-10-15  Joe English  <jenglish@users.sourceforge.net>
	* generic/tile.c: 
	* generic/tile.c:
	  _Correct_ proper error handling.
	  Removed unnecessary -indicatorcolor resource from
	  checkbuttons and radiobuttons.
	* library/tile.tcl:
	  Better feedback for pressed checkbuttons in "classic" theme.

2003-10-15  Joe English  <jenglish@users.sourceforge.net>
	* generic/widget.c: Proper error handling in widget 
	* generic/widget.c: Proper error handling in widget
	'configure' commands.
	* generic/tile.c: Proper error detection for bad -variable
	specifications.

2003-10-14  Joe English  <jenglish@users.sourceforge.net>
	* library/keynav.tcl: Added comments.

2003-10-14  Pat Thoyts  <patthoyts@users.sourceforge.net>

	* win/xpTheme.c (InitElementData): handle creation of elements
	before they are mapped. 
	before they are mapped.
	* win/xpTheme.c: Fix type for VC++ building.

2003-10-13  Joe English  <jenglish@users.sourceforge.net>
	* win/xpTheme.c: fix display glitches.

2003-10-13  Joe English  <jenglish@users.sourceforge.net>
	* generic/altTheme.c, generic/scrollbar.c, generic/tkElements.c,
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
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







-
+


-
-
-
+
+
+









-
+



-
+


-
-
+
+














-
-
+
+







	* generic/tkTheme.c: use tkInt.h to get stubs decl correct for
	TkGetOptionSpec usage.

	* Makefile.in (INCLUDES): add srcdir/generic to includes

	* win/xpTheme.c (ADDED):       moved xpTheme.c to win/ subdir.
	* generic/guts.h (REMOVED):    noted need for tkWinInt.h
	* generic/xpTheme.c (REMOVED): 
	* generic/xpTheme.c (REMOVED):

	* aclocal.m4:   TEA build system
	* configure: 
	* configure.in: 
	* Makefile.in: 
	* configure:
	* configure.in:
	* Makefile.in:

	* generic/altTheme.c: cast correction

2003-10-13  Jeff Hobbs  <jeffh@ActiveState.com>

	=== Initial import into SourceForge CVS repository ===

2003-10-12  Joe English  <jenglish@flightlab.com>
	* Scrollbars mostly working now.
	* Removed *settings resource, UpdateSettings -- do this in 
	* Removed *settings resource, UpdateSettings -- do this in
	elements instead.

2003-09-26  Joe English  <jenglish@flightlab.com>
	* Several tweaks to make demo.tcl look reasonable. 
	* Several tweaks to make demo.tcl look reasonable.

2003-09-26  Joe English  <jenglish@flightlab.com>
	* src/tkTheme.c: Changed element lookup strategy (again): 
	"Button.border" will look for "Button.border", then "border" in 
	* src/tkTheme.c: Changed element lookup strategy (again):
	"Button.border" will look for "Button.border", then "border" in
	the current engine, then for "border" in the parent engine
	(instead of "Button.border").  This seems to work better.
	Realized that earlier restructuring had misimplemented
	the TIP 48 semantics.

2003-09-26  Pat Thoyts  <patthoyts@users.sourceforge.net>
	* src/xpTheme.c: Fix the XP theme so it builds.
	* src/widget.h:  Fix the xpnative style to not crash.
	* src/tile.c:

2003-09-25  Joe English  <jenglish@flightlab.com
	* Added first draft of script-level access to style engine.

2003-09-25  Joe English  <jenglish@flightlab.com
	* tkTheme.c: Updated out-of-date comments.  
	Gave self harsh lecture about failing to update comments 
	* tkTheme.c: Updated out-of-date comments.
	Gave self harsh lecture about failing to update comments
	when changing the code.

2003-09-24  Joe English  <jenglish@flightlab.com
	* Applied patch below, tweaked so the code will
	build on my machine again.

2003-09-24  Pat Thoyts  <patthoyts@users.sourceforge.net>
Changes to generic/compat.h.
1
2
3
4
5
6
7

8
9
10
11
12
13
14
1
2
3
4
5
6

7
8
9
10
11
12
13
14






-
+







/* Generated from ../tools/optiondiff.tcl */


#ifndef NO_COMPAT

#ifndef NO_COMPAT_DEFAULTS
#define COMPAT_OPTION(class,option,member,dflt)  { TK_OPTION_STRING,option, "unused", "Unused",dflt,  Tk_Offset(class, compat.member), -1,  TK_OPTION_NULL_OK|TK_OPTION_COMPAT,0,0 }
#define COMPAT_OPTION(class,option,member,dflt)  { TK_OPTION_STRING,option, "." #member, "Unused",dflt,  Tk_Offset(class, compat.member), -1,  TK_OPTION_NULL_OK|TK_OPTION_COMPAT,0,0 }
#else
#define COMPAT_OPTION(class,option,member,dflt)  { TK_OPTION_STRING,option, "unused", "Unused",NULL,  Tk_Offset(class, compat.member), -1,  TK_OPTION_NULL_OK|TK_OPTION_COMPAT,0,0 }
#endif

#define BUTTON_COMPAT_DECLS \
struct { Tcl_Obj *activebackground,*activeforeground,*anchor,*background,*bd,*bg,*bitmap,*borderwidth,*disabledforeground,*fg,*font,*foreground,*height,*highlightbackground,*highlightcolor,*highlightthickness,*justify,*overrelief,*padx,*pady,*relief,*repeatdelay,*repeatinterval,*wraplength;} compat;
#define BUTTON_COMPAT_OPTIONS \
Changes to tests/bwidget.test.
27
28
29
30
31
32
33
34

35
36
37
38
39
40
41
42
27
28
29
30
31
32
33

34

35
36
37
38
39
40
41







-
+
-







} -cleanup {destroy .w}

#
# ProgressBar: this one fails with 'unknown color name "xxx"',
# where "xxx" is the default value of some other option 
# (variously, "4m", "100", something else).
# 
# I can't for the life of me untangle just what the heck is going
# Update: fixed now.
# on in the BWidget initialization sequence.  Somebody, please, HELP!
#
test bwidget-1.4 "Make ProgressBar widget" -constraints bwidget -body {
    pack [ProgressBar .w]
} -cleanup {destroy .w}

# @@@ TODO: full BWidget coverage,
# @@@ not just the ones people have reported problems with.
Changes to tools/optiondiff.tcl.
1
2

3
4
5
6
7
8
9
1

2
3
4
5
6
7
8
9

-
+







#
# $Id: optiondiff.tcl,v 1.3 2004/04/27 22:29:51 jenglish Exp $
# $Id: optiondiff.tcl,v 1.4 2004/05/11 18:34:15 jenglish Exp $
#
# 11 Mar 2004
#
# Generate compat.h header file.
#
# Usage: Build tile library _without_ compatibility options (-DNO_COMPAT),
# then run: wish ../tools/optiondiff.tcl > compat.h
19
20
21
22
23
24
25
26

27
28
29
30
31
32
33
19
20
21
22
23
24
25

26
27
28
29
30
31
32
33







-
+








puts {

#ifndef NO_COMPAT

#ifndef NO_COMPAT_DEFAULTS
#define COMPAT_OPTION(class,option,member,dflt) \
    { TK_OPTION_STRING,option, "unused", "Unused",dflt, \
    { TK_OPTION_STRING,option, "." #member, "Unused",dflt, \
      Tk_Offset(class, compat.member), -1, \
	TK_OPTION_NULL_OK|TK_OPTION_COMPAT,0,0 }
#else
#define COMPAT_OPTION(class,option,member,dflt) \
    { TK_OPTION_STRING,option, "unused", "Unused",NULL, \
      Tk_Offset(class, compat.member), -1, \
	TK_OPTION_NULL_OK|TK_OPTION_COMPAT,0,0 }