Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ANNOUNCE: Tile widget set, release 0.7.8

11 views
Skip to first unread message

Joe English

unread,
Oct 6, 2006, 12:43:15 AM10/6/06
to
[5 Oct 2006]

ANNOUNCE: Tile Widget Set, version 0.7.8.

~ What is it?

The Tile widget set is an experimental reimplementation
of some of the standard Tk widgets. The main features are:

+ Native look and feel under Windows (XP, NT, and 2K)
+ Nearly-native look and feel under Mac OSX
+ "Revitalized" look and feel under X11
+ Appearance controlled by a theme engine, providing
greater flexibility for custom widgets
+ New widgets, including notebook, progressbar, combobox,
separator, and sizegrip.

~ What's New in 0.7.8

+ A [ttk::sizegrip] widget has been added (that's the gizmo
sometimes seen in the lower right corner that resizes
the window when dragged).

+ The [ttk::treeview] widget now supports item tags,
similar to the Text and Canvas widgets. [$tv tag bind]
and [$tv tag configure] methods are supported.

+ The [ttk::treeview] widget now supports -selectmode {browse|extended|none}
The default selection behavior has been improved, and
'-selectmode none' combined with tag bindings make it
possible to implement other behaviors if desired.

+ All widgets now have an 'identify' method, for better
megawidget support.

+ A few more bugfixes and minor L&F improvements.

+ POTENTIAL INCOMPATIBILITY: Widget options now take precedence
over [style map] settings. (This is usually the desired behavior).

~ Forward Compatibility

Due to popular demand, the [ttk::paned] widget will be
renamed to [ttk::panedwindow] in the next release.
To smooth the transition, [ttk::panedwindow] is now
available as a synonym (either one will work in 0.7.8;
in 0.8.0 the old name will become deprecated).

~ Stability

The script-level API for widgets may be considered stable at
this point, with the exception of procedures in the 'tile::*'
namespace and the [ttk::paned] widget, which will be renamed.
Theme definitions are still subject to change: user-defined
themes will need to be revised in the 0.8 series.


~ A note on version numbers

To help distinguish formal releases from CVS snapshots,
the subminor version number will be incremented immediately before
and immediately after making a release. Thus odd-numbered subminor
versions indicate a CVS snapshot, and even-numbered ones indicate
a known release.

~ Availability

The tile widget set is hosted under the tktable project
at SourceForge:

<URL: http://tktable.sourceforge.net/tile/ >
<URL: http://sourceforge.net/projects/tktable/ >

Sources are available under the 'tile' module in CVS.
A prebundled tarball is available in the file release area:

<URL: http://sourceforge.net/project/showfiles.php?group_id=11464 >

Documentation is available here:

<URL: http://tktable.sourceforge.net/tile/doc/ >

Adrian Davis

unread,
Oct 6, 2006, 6:30:44 AM10/6/06
to
Joe English wrote:
> [5 Oct 2006]
>
> ANNOUNCE: Tile Widget Set, version 0.7.8.
>

Are Windows binaries available for the latest release?

Thanks,
=Adrian=

Pat Thoyts

unread,
Oct 6, 2006, 8:25:02 AM10/6/06
to
"Adrian Davis" <adr...@satisoft.com> writes:

>Joe English wrote:
>> [5 Oct 2006]
>>
>> ANNOUNCE: Tile Widget Set, version 0.7.8.
>>
>
>Are Windows binaries available for the latest release?
>

Soon.

--
Pat Thoyts http://www.patthoyts.tk/
To reply, rot13 the return address or read the X-Address header.
PGP fingerprint 2C 6E 98 07 2C 59 C8 97 10 CE 11 E6 04 E0 B9 DD

Koen Danckaert

unread,
Oct 6, 2006, 10:40:30 AM10/6/06
to
Joe English wrote:
>
> + A [ttk::sizegrip] widget has been added (that's the gizmo
> sometimes seen in the lower right corner that resizes
> the window when dragged).

Hi,

I tried the sizegrip widget on Windows and noted a minor issue: the window contents are always shown while resizing with the sizegrip, whereas this is normally controlled by Display Properties->Appearance->Effects->"Show window contents while dragging".

I also tried it on Linux (RedHat EL 3.0 with fvwm2), where I saw the same issue. In addition, there was a strange effect when I used the sizegrip for the first time on a window: the window suddenly moves about 20 pixels higher (before it starts resizing).
(I suppose Linux issues are not important since this widget is probably only intended for Windows...)

Regards,
Koen

Googie

unread,
Oct 6, 2006, 11:43:35 AM10/6/06
to
Koen Danckaert wrote:
> (I suppose Linux issues are not important since this widget is probably
> only intended for Windows...)

Do you mean Linux desktop doesn't need such widget?

--
Pozdrawiam! (Regards!)
Googie

Joe English

unread,
Oct 7, 2006, 12:05:46 PM10/7/06
to
Koen Danckaert wrote:
>Joe English wrote:
>> + A [ttk::sizegrip] widget has been added (that's the gizmo
>> sometimes seen in the lower right corner that resizes
>> the window when dragged).
>
>I tried the sizegrip widget on Windows and noted a minor issue: the
>window contents are always shown while resizing with the sizegrip,
>whereas this is normally controlled by Display
>Properties->Appearance->Effects->"Show window contents while dragging".

Yep. Doing non-opaque resizing correctly takes some deep
platform-specific voodoo that I don't know how to implement yet.
(Known issue, but somewhat low-priority).

>I also tried it on Linux (RedHat EL 3.0 with fvwm2), where I saw the
>same issue. In addition, there was a strange effect when I used the
>sizegrip for the first time on a window: the window suddenly moves about
>20 pixels higher (before it starts resizing).

Crap. I was afraid something like that might happen under
some WM or another. FWIW, I haven't been able to replicate
this problem under any of the WMs I've tried (including fvwm 2.5,
using the default configuration as found in Debian).

A few questions: What version of fvwm are you using?
How is it configured, and which OS are you using?
How did you set up the toplevel window (in particular,
did you use anything like [wm sizefrom] or [wm positionfrom])?

>(I suppose Linux issues are not important since this widget is probably
>only intended for Windows...)

A few Gnome and KDE applications also use sizegrips.
It's mostly useful under OSX -- the widget itself will be
masked by the built-in sizegrip supplied by AquaTk,
but it's useful as a placeholder for geometry management.


--Joe English

Koen Danckaert

unread,
Oct 9, 2006, 9:58:24 AM10/9/06
to
>> I also tried it on Linux (RedHat EL 3.0 with fvwm2), where I saw the
>> same issue. In addition, there was a strange effect when I used the
>> sizegrip for the first time on a window: the window suddenly moves about
>> 20 pixels higher (before it starts resizing).
>
> Crap. I was afraid something like that might happen under
> some WM or another. FWIW, I haven't been able to replicate
> this problem under any of the WMs I've tried (including fvwm 2.5,
> using the default configuration as found in Debian).
>
> A few questions: What version of fvwm are you using?
> How is it configured, and which OS are you using?

OS is Redhat EL 3.0 (Linux 2.4.21-27.ELsmp)
Fvwm version is 2.4.19 (= latest stable release).
Tk version is 8.4.12

Fvwm configuration: here is the part of my .fvwm2rc file which could be relevant. (But I already tried to remove all these settings, and the problem persists.)

IgnoreModifiers L2
DeskTopSize 1x1
EdgeResistance 10000 10000
EdgeScroll 0 0
EdgeThickness 0
OpaqueMoveSize 0

MenuStyle * Fvwm, Foreground navyblue, Background aquamarine, Greyed slategray
MenuStyle * Font -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*
MenuStyle * TitleUnderlines2

ButtonStyle 4 4 35x35@0 65x50@1 35x65@0 35x35@1
ButtonStyle 6 4 50x35@1 65x65@0 35x65@0 50x35@1
ButtonStyle 8 5 40x40@1 60x40@1 60x60@0 40x60@0 40x40@1

CursorStyle Resize fleur
ColormapFocus FollowsFocus

Style * Font -adobe-helvetica-medium-r-*-*-*-130-*-*-*-*-*-*
Style * IconFont fixed
Style * HilightFore black, HilightBack darkturquoise
Style * BorderWidth 5, HandleWidth 5
Style * Icon unknown1.xpm, Color white/gray60
Style * MWMFunctions, MWMDecor, HintOverride
Style * DecorateTransient, DontStackTransientParent, NoPPosition
Style * IconBox -50 100 -0 -200, IconFill bottom right
Style * ClickToFocus
Style * TileCascadePlacement

> How did you set up the toplevel window (in particular,
> did you use anything like [wm sizefrom] or [wm positionfrom])?

The problem already shows up with the following script:

package require tile
pack [frame .f -width 200 -height 200]
pack [ttk::sizegrip .grip] -side bottom -anchor e

In fact, every time I move the window using the WM, it will again make this "jump" next time the sizegrip is used. Same after resizing with the top or left window border, but *not* after resizing with the right or bottom border (or the sizegrip itself).

Regards,
Koen

Arjen Markus

unread,
Oct 10, 2006, 5:12:33 AM10/10/06
to
I tried the tile kit with too old a version of wish (8.4.1) on Windows.
That results
in the rather disappointing message about instructions that try to do
something
illegal.

Could you please add a check that the _patch level_ is high enough?

Otherwise, the demo is looking great.

Regards,

Arjen

Kroc

unread,
Oct 11, 2006, 1:15:32 PM10/11/06
to
I tried tile078.kit on Mac OS X 10.4.8 PPC and it doesn't works:

% package require tile
couldn't find procedure Tile_Init

If it could help, here's what grep returns:

~/Desktop/tile078.vfs/lib dzolli$ grep -R Tile_Init tile
Binary file tile/Linux-x86/tile078.so matches
Binary file tile/SunOS-sparc/tile078.so matches
Binary file tile/Windows-x86/tile078.dll matches

Is it a known bug?

--
David Zolli - Kroc

George Peter Staplin

unread,
Oct 11, 2006, 5:25:44 PM10/11/06
to
Arjen Markus wrote:
> I tried the tile kit with too old a version of wish (8.4.1) on Windows.
> That results
> in the rather disappointing message about instructions that try to do
> something
> illegal.

From what I was told by Pat Thoyts some time ago they had to export some
more internal stub functions, so that Tile for Tcl in Windows would
work. Try a more recent tclkit or wish.

> Could you please add a check that the _patch level_ is high enough?

I'm not sure they *can* do that. The way the stubs loading is
implemented may not allow it. For instance right now you get faults if
you try to load an 8.5 extension into an 8.4 interp. I pointed out this
flaw and was basically told it can't be fixed easily.

Pat Thoyts

unread,
Oct 11, 2006, 7:54:31 PM10/11/06
to

We did used to do this for windows. We can avoid supplying the package
if the patchlevel is < 8.4.6. I forgot to use the modified pkgIndex is
all. You're correct about the stubs change. 8.4.6 got a couple of
internal stubs functions to get HDCs on windows. Should have been
released as 8.5 back then IMO. Changing interfaces in a minor release,
tut tut tut.

Pat Thoyts

unread,
Oct 11, 2006, 7:56:42 PM10/11/06
to
"Kroc" <kr...@kroc.tk> writes:

Should be ok. schelte bron supplied the MacOSX binaries but build the
ppc one on an Intel mac. Maybe a problem there. Or maybe there is an
os version issue (c library perhaps). You'll need to examine the
library file more closely than grep. ldd tile.dylib maybe?

Kroc

unread,
Oct 12, 2006, 3:02:37 AM10/12/06
to
Pat Thoyts a écrit :

> Should be ok. schelte bron supplied the MacOSX binaries but build the
> ppc one on an Intel mac. Maybe a problem there. Or maybe there is an
> os version issue (c library perhaps). You'll need to examine the
> library file more closely than grep. ldd tile.dylib maybe?

otool -L tile078.vfs/lib/tile/Darwin-ppc/tile078.dylib
tile078.vfs/lib/tile/Darwin-ppc/tile078.dylib:
libtile0.7.8.dylib (compatibility version 0.0.0, current
version 0.0.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
(compatibility version 2.0.0, current version 128.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
current version 88.1.6)

I tried with tclkit 8.4.11 ppc aqua, 8.4.13 ppc aqua and 8.4.13 univ
aqua, all from equi4.com.

Schelte Bron

unread,
Oct 12, 2006, 6:04:48 AM10/12/06
to
Pat Thoyts wrote:
> "Kroc" <kr...@kroc.tk> writes:
>
>>I tried tile078.kit on Mac OS X 10.4.8 PPC and it doesn't works:
>>
>>% package require tile
>>couldn't find procedure Tile_Init
>>
> Should be ok. schelte bron supplied the MacOSX binaries but build
> the ppc one on an Intel mac. Maybe a problem there. Or maybe there
> is an os version issue (c library perhaps). You'll need to examine
> the library file more closely than grep. ldd tile.dylib maybe?
>
The published kit also doesn't work for me on the Mac anymore. I
guess I must have failed to do a final check after we included the
stripped versions of the libraries.

I just tried re-wrapping the kit with the unstripped libraries, and
then it's working fine again.

Pat, do you still have the unstripped versions of the dylibs I once
sent you? They are not all that much bigger than the stripped ones,
so I suggest we just include those. At least they work.

Schelte.
--
set Reply-To [string map {nospam schelte} $header(From)]

xgar...@gmail.com

unread,
Oct 12, 2006, 8:12:43 AM10/12/06
to

Schelte Bron wrote:
> Pat Thoyts wrote:
> > "Kroc" <kr...@kroc.tk> writes:
> >
> >>I tried tile078.kit on Mac OS X 10.4.8 PPC and it doesn't works:
> >>
> >>% package require tile
> >>couldn't find procedure Tile_Init

AFAICT the problem seems to come from the tile dylib.

There is no Tile_Init symbol exported :
$ nm tile078.dylib | grep Tile_Init

The same test on the 0.7.2 release produces the following output :

$ nm libtile0.7.2.dylib | grep Tile_Init
00001bc8 T _Tile_Init

Full list of exported symbols follows:
0.7.8:
U _ApplyThemeBackground
U _DrawThemeButton
U _DrawThemeEditTextFrame
U _DrawThemeFocusRect
U _DrawThemePopupArrow
U _DrawThemePrimaryGroup
U _DrawThemeSeparator
U _DrawThemeStandaloneGrowBox
U _DrawThemeTab
U _DrawThemeTabPane
U _DrawThemeTrack
U _EraseRect
U _GetGWorld
U _GetThemeButtonContentBounds
U _GetThemeMetric
U _GetThemeStandaloneGrowBoxBounds
U _NSAddressOfSymbol
U _NSIsSymbolNameDefinedWithHint
U _NSLookupAndBindSymbolWithHint
U _QDSetPatternOrigin
U _SetGWorld
U _SetThemeBackground
U _fmod
U _memcpy
U _memset
U _strchr
U _strcmp
U _strcpy
U _strlen
U _strncmp
U _strncpy


0.7.2:
00013870 t _ActivateElement
00005f28 t _ActivateTab
00009744 t _AdjustIndex
00009760 t _AdjustIndices
0000769c t _AdjustPanes
0001c800 t _AllocateResource
0001a1e4 T _AltTheme_Init
0000df50 t _AncestryCheck
0001044c t _AnchorToSticky
00004020 t _AnimateProgressProc
00003f54 t _AnimationEnabled
U _ApplyThemeBackground
00022db8 T _AquaTheme_Init
00021690 t _ArrowElementDraw
00016414 t _ArrowElementDraw
0001a8d8 t _ArrowElementDraw
0001955c t _ArrowElementDraw
00016364 t _ArrowElementGeometry
00021624 t _ArrowElementGeometry
00029584 d _ArrowElementOptions
0002921c d _ArrowElementOptions
00028800 d _ArrowElementOptions
0001a864 t _ArrowElementSize
000194ac t _ArrowElementSize
00029284 d _ArrowElementSpec
00029f90 d _ArrowElementSpec
000295d4 d _ArrowElementSpec
00028868 d _ArrowElementSpec
0002920c d _ArrowElements
00029574 d _ArrowElements
000287f0 d _ArrowElements
00029f80 d _ArrowElements
0002927c d _ArrowPadding
00028860 d _ArrowPadding
00018b3c t _ArrowPoints
00018ca0 T _ArrowSize
0001e7dc t _BPadding
00022b20 t _BackgroundElementDraw
00015500 t _BackgroundElementDraw
000154fc t _BackgroundElementGeometry
00028504 d _BackgroundElementOptions
0002a364 d _BackgroundElementSpec
00028524 d _BackgroundElementSpec
00020340 t _BackgroundGC
00002e64 t _BaseCleanup
00002ebc t _BaseConfigure
00002e50 t _BaseInitialize
000265f8 d _BaseOptionSpecs
00003000 t _BasePostConfigure
00013fb4 T _BlinkCursor
00015614 t _BorderElementDraw
00020420 t _BorderElementDraw
00018eac t _BorderElementDraw
000155ac t _BorderElementGeometry
000203a0 t _BorderElementGeometry
00028538 d _BorderElementOptions
00028fc8 d _BorderElementOptions
00029c4c d _BorderElementOptions
00018e10 t _BorderElementSize
00028578 d _BorderElementSpec
00029cac d _BorderElementSpec
00029028 d _BorderElementSpec
00021dfc t _BoxToRect
0001b500 t _BuildOptionMap
0002a128 d _ButtonAdornmentTable
0001a64c t _ButtonBorderElementDraw
00029510 d _ButtonBorderElementOptions
0001a5b0 t _ButtonBorderElementSize
00029560 d _ButtonBorderElementSpec
000269c0 d _ButtonCommands
00003038 t _ButtonConfigure
00021fe4 t _ButtonElementDraw
00021f00 t _ButtonElementGeometry
00021ebc t _ButtonElementGeometryNoPadding
0002a14c d _ButtonElementSpec
000030c4 t _ButtonInvokeCommand
0002a3d4 d _ButtonLayout
00029674 d _ButtonLayout
00028afc d _ButtonLayout
0002a0c4 d _ButtonMargins
00026920 d _ButtonOptionSpecs
0002a0cc d _ButtonParms
0002a104 d _ButtonValueTable
000269f0 D _ButtonWidgetSpec
0001e678 t _CPadding
0001e0dc t _CacheWinEventHandler
00028368 d _CellLayout
00004130 t _CheckAnimation
000209b8 t _CheckIndicatorElementDraw
0001f40c t _CheckIndicatorElementDraw
0001f37c t _CheckIndicatorElementGeometry
00029dbc d _CheckIndicatorElementSpec
0001e278 t _CheckNamedColor
0000162c T _CheckStateOption
000032c4 t _CheckbuttonCleanup
00026b10 d _CheckbuttonCommands
00003300 t _CheckbuttonConfigure
00029a9c d _CheckbuttonIndicatorElementSpec
00028744 d _CheckbuttonIndicatorElementSpec
00003224 t _CheckbuttonInitialize
000033fc t _CheckbuttonInvokeCommand
0002a434 d _CheckbuttonLayout
000296b4 d _CheckbuttonLayout
00028b3c d _CheckbuttonLayout
00026a20 d _CheckbuttonOptionSpecs
00003390 t _CheckbuttonPostConfigure
00003168 t _CheckbuttonVariableChanged
00026b40 D _CheckbuttonWidgetSpec
00013dfc t _ClaimCursor
00021adc T _ClamTheme_Init
0001af44 T _ClassicTheme_Init
00021a24 t _ClientElementDraw
00017054 t _ClientElementDraw
0001711c t _ClientElementGeometry
000219fc t _ClientElementGeometry
0002a008 d _ClientElementSpec
00028a90 d _ClientElementSpec
0000c4a0 t _ColumnIndex
00027e78 d _ColumnOptionSpecs
00027c40 d _ComboboxCommands
0000b948 t _ComboboxConfigure
0000b9bc t _ComboboxCurrentCommand
00020668 t _ComboboxFieldElementDraw
00029d24 d _ComboboxFieldElementSpec
0000b904 t _ComboboxInitialize
00027d64 d _ComboboxLayout
0002a01c d _ComboboxLayout
00027bc8 d _ComboboxOptionSpecs
00027cc0 D _ComboboxWidgetSpec
0000770c t _ComputePositions
0000d1e0 t _ConfigureColumn
0000d2e0 t _ConfigureHeading
0000d06c t _ConfigureItem
00012e2c T _CoreConfigure
00025fe0 s _CoreEventMask
00012548 t _CoreEventProc
00002bb4 t _CoreImageChangedProc
00026094 D _CoreOptionSpecs
0000d424 t _CountRows
00013ff0 T _CreateScrollHandle
00014824 t _CreateSlave
00013ce4 t _CursorBlinkProc
00013e90 t _CursorEventProc
00013bbc t _CursorManagerDeleteProc
00027fe0 d _DataCellOptionSpecs
00009b84 t _DeleteChars
0000e018 t _DeleteItems
00014944 t _DeleteSlave
0000bf94 t _DetachItem
00016048 t _DiamondIndicatorElementDraw
00015fb8 t _DiamondIndicatorElementGeometry
0000c444 t _DisplayLayout
00007284 t _DisplayTab
00018d90 T _DrawArrow
000187e4 t _DrawBorder
0000dab4 t _DrawCells
0001f1dc t _DrawCheckMark
00018464 t _DrawCompound
00018714 t _DrawCorner
000189ec t _DrawFieldBorder
00015910 t _DrawFocusRing
0000ddcc t _DrawForest
0000da08 t _DrawHeadings
0000dc30 t _DrawItem
000200e4 t _DrawSmoothBorder
0000dd48 t _DrawSubtree
U _DrawThemeButton
U _DrawThemeEditTextFrame
U _DrawThemeFocusRect
U _DrawThemePopupArrow
U _DrawThemePrimaryGroup
U _DrawThemeSeparator
U _DrawThemeTab
U _DrawThemeTabPane
U _DrawThemeTrack
000139c0 t _ElementStateEventProc
00025fe4 s _ElementStateMask
0000df24 t _EndPosition
0000ae70 t _EntryBBoxCommand
00009eb0 t _EntryCleanup
00027b20 d _EntryCommands
0000ad38 t _EntryCompatCommand
00009f70 t _EntryConfigure
0000af9c t _EntryDeleteCommand
0000a5bc t _EntryDisplay
00008a88 t _EntryDisplayString
0000a43c t _EntryDoLayout
00008bec t _EntryEditable
00022338 t _EntryElementDraw
00022310 t _EntryElementGeometry
0002a1f0 d _EntryElementOptions
0002a210 d _EntryElementSpec
00009cd0 t _EntryEventProc
00008c00 t _EntryFetchSelection
000087ac t _EntryFreeStyleDefaults
0000b09c t _EntryGetCommand
0000a4f0 t _EntryGetGC
0000b118 t _EntryICursorCommand
0000a9b8 t _EntryIndex
0000b1a4 t _EntryIndexCommand
00008924 t _EntryInitStyleData
00008658 t _EntryInitStyleDefaults
00009db8 t _EntryInitialize
0000b258 t _EntryInsertCommand
0002978c d _EntryLayout
00027d34 d _EntryLayout
00008cd8 t _EntryLostSelection
00009468 t _EntryNeedsValidation
000277c8 d _EntryOptionSpecs
00008cf4 t _EntryOwnSelection
0000a1f4 t _EntryPlaceTextLayout
0000a138 t _EntryPostConfigure
00009658 t _EntryRevalidate
000096d0 t _EntryRevalidateBG
0000b31c t _EntrySelectionClearCommand
0000b594 t _EntrySelectionCommand
00027ae8 d _EntrySelectionCommands.0
0000b390 t _EntrySelectionFromCommand
0000b40c t _EntrySelectionPresentCommand
0000b4a4 t _EntrySelectionRangeCommand
0000b5c8 t _EntrySetCommand
00009934 t _EntrySetValue
00009818 t _EntryStoreValue
0000a178 t _EntryTextArea
00009a04 t _EntryTextVariableTrace
00008e14 t _EntryUpdateScrollbar
0000a368 t _EntryUpdateScrollbarBG
00008b50 t _EntryUpdateTextLayout
000094d4 t _EntryValidateChange
0000b654 t _EntryValidateCommand
00008d74 t _EntryVisibleRange
00027b98 D _EntryWidgetSpec
0000bcf4 T _EntryWidget_Init
0000b708 t _EntryXViewCommand
0001cb84 t _EnumerateHashTable
000017a4 T _EnumerateOptions
U _EraseRect
00008f60 t _ExpandPercents
0002058c t _FieldElementDraw
0001906c t _FieldElementDraw
00015788 t _FieldElementDraw
00020564 t _FieldElementGeometry
00015718 t _FieldElementGeometry
0002858c d _FieldElementOptions
0002903c d _FieldElementOptions
00029cc0 d _FieldElementOptions
00019044 t _FieldElementSize
00029d10 d _FieldElementSpec
0002906c d _FieldElementSpec
000285bc d _FieldElementSpec
00018ce4 T _FillArrow
0000c81c t _FindColumn
0000c5f0 t _FindItem
00015a64 t _FocusElementDraw
000159fc t _FocusElementGeometry
00028624 d _FocusElementOptions
00028654 d _FocusElementSpec
00026464 d _FrameCommands
00001e28 t _FrameConfigure
00028aa4 d _FrameLayout
00001cc4 t _FrameMargins
00026374 d _FrameOptionSpecs
00001d8c t _FrameSize
0002648c D _FrameWidgetSpec
0000c09c t _FreeColumn
0001b778 t _FreeElementImpl
0001ebcc t _FreeImageData
00002dd0 T _FreeImageList
0000be58 t _FreeItem
0000bf90 t _FreeItemCB
00014060 T _FreeScrollHandle
0001b224 t _FreeStyle
0001b9c8 t _FreeTheme
00015d10 t _GeneralSeparatorElementDraw
0001f174 t _GetBlackGC
00013c28 t _GetCursorManager
0000c244 t _GetEnumSetFromObj
U _GetGWorld
00002bb8 T _GetImageList
0000c6ac t _GetItemListFromObj
0001b5a8 t _GetOptionMap
000018ec T _GetOptionValue
0000d6ac t _GetSubLayout
00006970 t _GetTabIndex
U _GetThemeButtonContentBounds
U _GetThemeMetric
00029e24 d _GripClientData
00020ed4 t _GripElementDraw
00029e2c d _GripElementOptions
00020e50 t _GripElementSize
00029e6c d _GripElementSpec
00022274 t _GroupElementDraw
0002224c t _GroupElementGeometry
0002a1dc d _GroupElementSpec
00025fdc s _HALO
00025fd8 s _HEADINGHEIGHT
00023158 t _HasStubSupport
0001cc98 t _HashTableToDict
00028388 d _HeadingLayout
00027f18 d _HeadingOptionSpecs
0001a4d4 t _HighlightElementDraw
000294cc d _HighlightElementOptions
0001a46c t _HighlightElementSize
000294fc d _HighlightElementSpec
0002708c d _HorizontalProgressbarLayout
00027770 d _HorizontalSashLayout
0002a054 d _HorizontalSashLayout
00028c94 d _HorizontalScaleLayout
00028c44 d _HorizontalScrollbarLayout
00015b00 t _HorizontalSeparatorElementDraw
00028698 d _HorizontalSeparatorElementSpec
00029c14 d _HorizontalStepScrollbarLayout
00025fd8 s _INDENT
0000d644 t _IdentifyDisplayColumn
0000d5e0 t _IdentifyItem
0000d530 t _IdentifyRow
00005ea0 t _IdentifyTab
00017e34 t _ImageCleanup
00017f7c t _ImageDraw
000180c0 t _ImageElementDraw
0001ee08 t _ImageElementDraw
0001ed38 t _ImageElementGeometry
00028d8c d _ImageElementOptions
0001804c t _ImageElementSize
00029a10 d _ImageElementSpec
00028dcc D _ImageElementSpec
000298f8 d _ImageOptionSpecs
00017c84 t _ImageSetup
00017b9c t _ImageTextElementDraw
00028d78 D _ImageTextElementSpec
00019194 t _IndicatorElementDraw
00020734 t _IndicatorElementGeometry
00029d38 d _IndicatorElementOptions
000286d4 d _IndicatorElementOptions
00029188 d _IndicatorElementOptions
00029a2c d _IndicatorElementOptions
0001913c t _IndicatorElementSize
000291f8 d _IndicatorElementSpec
0001e154 t _InitCacheWindow
0000c06c t _InitColumn
0001c87c t _InitializeElementRecord
00009a3c t _InsertChars
0000bfec t _InsertItem
0000dedc t _InsertPosition
00014b68 t _InsertSlave
0000c7d4 t _ItemID
00028328 d _ItemLayout
0000c7a8 t _ItemName
00027db0 d _ItemOptionSpecs
0000d9d4 t _ItemState
0001e62c t _LPadding
00001f28 t _LabelAnchorSide
00001fac t _LabelAnchorSticky
00018318 t _LabelCleanup
000268c8 d _LabelCommands
0001850c t _LabelElementDraw
00028de0 d _LabelElementOptions
00018378 t _LabelElementSize
00028ee0 D _LabelElementSpec
00028acc d _LabelLayout
00026760 d _LabelOptionSpecs
00018138 t _LabelSetup
000268f0 D _LabelWidgetSpec
00002980 t _LabelframeCleanup
000029c0 t _LabelframeConfigure
0000270c t _LabelframeDoLayout
00002260 t _LabelframeGeometryLostSlaveProc
000265b8 d _LabelframeGeometryManager
0000225c t _LabelframeGeometryRequestProc
00002510 t _LabelframeLabelSize
00028ab4 d _LabelframeLayout
000264f0 d _LabelframeOptionSpecs
00002458 t _LabelframePlaceSlave
0000231c t _LabelframeRegisterSlave
000025a8 t _LabelframeSize
00002248 t _LabelframeSlaveEventHandler
00002038 t _LabelframeStyleOptions
000023b4 t _LabelframeUnregisterSlave
000265c4 D _LabelframeWidgetSpec
0001b3f4 t _LookupDefault
0001b390 t _LookupStateMap
0001bf5c t _LookupTheme
00013d6c t _LoseCursor
0001e77c t _MPadding
0001543c T _Maintainable
00015394 T _Manageable
000147f0 t _ManagerEventHandler
00025fe8 s _ManagerEventMask
000147cc t _ManagerIdleProc
0001627c t _MenuIndicatorElementDraw
00020d6c t _MenuIndicatorElementDraw
000161ec t _MenuIndicatorElementGeometry
00029dd0 d _MenuIndicatorElementOptions
0002876c d _MenuIndicatorElementOptions
00020cd4 t _MenuIndicatorElementSize
00029e10 d _MenuIndicatorElementSpec
000287dc d _MenuIndicatorElementSpec
00019760 t _MenubuttonArrowElementDraw
000292b0 d _MenubuttonArrowElementOptions
000196d0 t _MenubuttonArrowElementSize
000292f8 d _MenubuttonArrowElementSpec
000292f0 d _MenubuttonArrowPadding
00026d50 d _MenubuttonCommands
00028bcc d _MenubuttonLayout
00029744 d _MenubuttonLayout
0002a464 d _MenubuttonLayout
00026cb0 d _MenubuttonOptionSpecs
00026d78 D _MenubuttonWidgetSpec
0001b610 t _NewElementImpl
0000bde4 t _NewItem
0001b19c t _NewStyle
0001b8d0 t _NewTheme
0000c02c t _NextPreorder
0000670c t _NextTab
00006a64 t _NotebookAddCommand
0000710c t _NotebookCleanup
00027500 d _NotebookCommands
00007194 t _NotebookConfigure
00007320 t _NotebookDisplay
00006360 t _NotebookDoLayout
00029fa4 d _NotebookElementOptions
000068b4 t _NotebookEventHandler
00025fd0 s _NotebookEventMask
00006b88 t _NotebookForgetCommand
000071fc t _NotebookGetLayout
00006c14 t _NotebookIndexCommand
00007024 t _NotebookInitialize
00027588 d _NotebookLayout
000274d8 d _NotebookManagerSpec
00027410 d _NotebookOptionSpecs
00006574 t _NotebookPlaceSlave
0000660c t _NotebookPlaceSlaves
00006d38 t _NotebookSelectCommand
000060a4 t _NotebookSize
00005dac t _NotebookStyleOptions
00006ed4 t _NotebookTabCommand
00006dc4 t _NotebookTabsCommand
00027558 d _NotebookWidgetSpec
000073c8 T _Notebook_Init
00012ea4 T _NullCleanup
000154f0 T _NullElementDraw
000154ec T _NullElementGeometry
000284e0 D _NullElementOptions
000284f0 D _NullElementSpec
0001e540 t _NullImageChanged
00017c80 t _NullImageChanged
00012e1c T _NullInitialize
00012e24 T _NullPostConfigure
00015904 t _PaddingElementDraw
0001584c t _PaddingElementGeometry
000285d0 d _PaddingElementOptions
00028610 d _PaddingElementSpec
00007974 t _PaneAdded
000079d8 t _PaneConfigured
000221b0 t _PaneElementDraw
0002217c t _PaneElementGeometry
0002a1c8 d _PaneElementSpec
0002762c d _PaneOptionSpecs
00027398 d _PaneOptionSpecs
000079d4 t _PaneRemoved
00007ddc t _PanedAddCommand
00007b44 t _PanedCleanup
000276a4 d _PanedCommands
00007ca8 t _PanedDisplay
00025fd4 s _PanedEventMask
00007a84 t _PanedEventProc
00008064 t _PanedForgetCommand
00007a4c t _PanedGeometryRequestProc
00007bb4 t _PanedGetLayout
000080f4 t _PanedIdentifyCommand
00007abc t _PanedInitialize
00007ec8 t _PanedInsertCommand
00027760 d _PanedLayout
0002767c d _PanedManagerSpec
000275dc d _PanedOptionSpecs
00008248 t _PanedPaneCommand
00007944 t _PanedPlaceSlaves
00008344 t _PanedSashposCommand
0000758c t _PanedSize
000276fc d _PanedWidgetSpec
00008564 T _Paned_Init
0001fdf8 t _PbarElementDraw
00022888 t _PbarElementDraw
00016c90 t _PbarElementDraw
0002153c t _PbarElementDraw
0001fba0 t _PbarElementDrawStripes
0002283c t _PbarElementGeometry
00016b98 t _PbarElementGeometry
00021504 t _PbarElementGeometry
0001faa8 t _PbarElementGeometry
00029b28 d _PbarElementOptions
000289c8 d _PbarElementOptions
0002a2dc d _PbarElementOptions
00028a38 d _PbarElementSpec
0002a33c d _PbarElementSpec
00029f6c d _PbarElementSpec
00029bc8 d _PbarElementSpec
0000d4cc t _PlaceColumns
00007874 t _PlacePanes
00005b0c t _PointToValue
0002249c t _PopupArrowElementDraw
0002248c t _PopupArrowElementGeometry
0002a224 d _PopupArrowElementSpec
00013964 t _PressElement
000042f4 t _ProgressbarCleanup
00026ffc d _ProgressbarCommands
00004368 t _ProgressbarConfigure
000045a4 t _ProgressbarDeterminateLayout
000047f0 t _ProgressbarDoLayout
00004998 t _ProgressbarGetLayout
0000469c t _ProgressbarIndeterminateLayout
000042e0 t _ProgressbarInitialize
0002a4c4 d _ProgressbarLayout
00026eb0 d _ProgressbarModeStrings
00026ebc d _ProgressbarOptionSpecs
00004448 t _ProgressbarPostConfigure
00004500 t _ProgressbarSize
00004d4c t _ProgressbarStartCommand
00004c4c t _ProgressbarStartStopCommand
00004a6c t _ProgressbarStepCommand
00004d74 t _ProgressbarStopCommand
0002703c d _ProgressbarWidgetSpec
00004d9c T _Progressbar_Init
U _QDSetPatternOrigin
00025fd8 s _ROWHEIGHT
0001e6d8 t _RPadding
0001f604 t _RadioIndicatorElementDraw
000207c0 t _RadioIndicatorElementDraw
0001f578 t _RadioIndicatorElementGeometry
00029da8 d _RadioIndicatorElementSpec
000035b0 t _RadiobuttonCleanup
00026c38 d _RadiobuttonCommands
000035ec t _RadiobuttonConfigure
00028758 d _RadiobuttonIndicatorElementSpec
00029ab0 d _RadiobuttonIndicatorElementSpec
000036e8 t _RadiobuttonInvokeCommand
0002a404 d _RadiobuttonLayout
00028b84 d _RadiobuttonLayout
000296fc d _RadiobuttonLayout
00026b70 d _RadiobuttonOptionSpecs
0000367c t _RadiobuttonPostConfigure
000034f4 t _RadiobuttonVariableChanged
00026c68 D _RadiobuttonWidgetSpec
00014784 t _RecomputeLayout
000146e8 t _RecomputeSize
00012148 t _RedisplayWidget
0001718c T _RegisterElements
00001b80 t _RegisterThemes
0000196c t _RegisterWidgets
000138ec t _ReleaseElement
00014c58 t _RemoveSlave
0000fdd0 t _RowElementDraw
0002841c d _RowElementOptions
0002844c d _RowElementSpec
000283b8 d _RowLayout
0000e0b4 t _RowNumber
00028058 d _RowOptionSpecs
000092ec t _RunValidationScript
000295e8 d _SashClientData
0001abd0 t _SashElementDraw
0002772c d _SashElementOptions
000084f8 t _SashElementSize
0001aad0 t _SashElementSize
0002774c d _SashElementSpec
00029660 d _SashElementSpec
000295f0 d _SashOptions
0002721c d _ScaleCommands
00004f40 t _ScaleConfigure
000057a0 t _ScaleCoordsCommand
0002a25c d _ScaleData
000058c8 t _ScaleDoLayout
0000521c t _ScaleFraction
00005424 t _ScaleGetCommand
000050cc t _ScaleGetLayout
00005324 t _ScaleIdentifyCommand
00004f18 t _ScaleInitialize
000270b4 d _ScaleOptionSpecs
00005020 t _ScalePostConfigure
00005544 t _ScaleSetCommand
00005a50 t _ScaleSize
00004e3c t _ScaleVariableChanged
00027264 D _ScaleWidgetSpec
0001466c t _ScheduleUpdate
00026e30 d _ScrollbarCommands
00003c20 t _ScrollbarDeltaCommand
00003820 t _ScrollbarDoLayout
00029e80 d _ScrollbarElementOptions
00003d90 t _ScrollbarFractionCommand
00003b24 t _ScrollbarGetCommand
00003818 t _ScrollbarGetLayout
000037d0 t _ScrollbarInitialize
00026db8 d _ScrollbarOptionSpecs
000039bc t _ScrollbarSetCommand
000143e4 T _ScrollbarUpdateRequired
00026e80 D _ScrollbarWidgetSpec
00014310 T _Scrolled
000143f4 T _ScrollviewCommand
00006784 t _SelectNextTab
00006660 t _SelectTab
000016f8 T _SendVirtualEvent
0002631c d _SeparatorCommands
00022a7c t _SeparatorElementDraw
00015af0 t _SeparatorElementGeometry
00028668 d _SeparatorElementOptions
00022a6c t _SeparatorElementSize
000286c0 d _SeparatorElementSpec
0002a350 d _SeparatorElementSpec
00001cbc t _SeparatorGetLayout
00028cb4 d _SeparatorLayout
000262cc d _SeparatorOptionSpecs
00026344 D _SeparatorWidgetSpec
U _SetGWorld
U _SetThemeBackground
000074fc t _ShoveDown
00007468 t _ShoveUp
00014800 t _SlaveEventHandler
00025fe8 s _SlaveEventMask
00019dd4 t _SliderElementDraw
000168e4 t _SliderElementDraw
00021438 t _SliderElementGeometry
00016820 t _SliderElementGeometry
0002282c t _SliderElementGeometry
00028944 d _SliderElementOptions
000293f4 d _SliderElementOptions
00019cc8 t _SliderElementSize
000289b4 d _SliderElementSpec
00029f58 d _SliderElementSpec
0002a2c8 d _SliderElementSpec
00029464 d _SliderElementSpec
00015e40 t _SquareIndicatorElementDraw
00015db4 t _SquareIndicatorElementGeometry
000062a0 t _SqueezeTabs
00000e88 t _StateSpecDupIntRep
0002602c d _StateSpecObjType
00000eb0 t _StateSpecSetFromAny
00001080 t _StateSpecUpdateString
0001ff14 T _StepTheme_Init
00017e60 t _StippleOver
0001cfa0 t _StyleConfigureCmd
0001d424 t _StyleElementCreateCmd
00029858 D _StyleElementEnsemble
0001d544 t _StyleElementNamesCmd
0001d5c8 t _StyleElementOptionsCmd
00029888 D _StyleEnsemble
0001d744 t _StyleLayoutCmd
0001cda4 t _StyleMapCmd
0001d930 t _StyleObjCmd
0001d184 t _StyleThemeCreateCmd
0002981c D _StyleThemeEnsemble
0001d33c t _StyleThemeNamesCmd
0001d34c t _StyleThemeSettingsCmd
0001d878 t _StyleThemeUseCmd
00025fec s _TAB_HEIGHT
00025ff0 s _TAB_OVERLAP
0001e730 t _TPadding
00026050 D _TTKCompoundStrings
00026040 D _TTKDefaultStrings
0001b458 t _TTKGetOptionSpec
000105a4 t _TTKInitPadding
00011610 t _TTKNewLayout
00026074 D _TTKOrientStrings
00026080 d _TTKStateStrings
000067d4 t _TabAdded
00006838 t _TabConfigured
000217f0 t _TabElementDraw
00016de4 t _TabElementDraw
000220c8 t _TabElementDraw
00016d68 t _TabElementGeometry
000217d4 t _TabElementGeometry
000220bc t _TabElementGeometry
00028a4c d _TabElementOptions
0002a1b4 d _TabElementSpec
00029ff4 d _TabElementSpec
00028a7c d _TabElementSpec
0002a494 d _TabLayout
00027598 d _TabLayout
000297cc d _TabLayout
000272a8 d _TabOptionSpecs
000067d8 t _TabRemoved
00005f3c t _TabState
00027298 d _TabStateStrings
0002a160 d _TabStyleTable
00005fdc t _TabrowSize
000231a8 T _Tcl_InitStubs
00017830 t _TextCleanup
0001785c t _TextDraw
00017b34 t _TextElementDraw
00028cc4 d _TextElementOptions
00017ac4 t _TextElementSize
00028d64 D _TextElementSpec
00017774 t _TextReqWidth
00017660 t _TextSetup
00002ae0 t _TextVariableChanged
0000bc10 t _TextareaElementGeometry
00027cf0 d _TextareaElementOptions
00027d20 d _TextareaElementSpec
0001bdfc t _ThemeChanged
0001bd84 t _ThemeChangedProc
000297fc d _ThemeChangedScript.0
0001b8c8 t _ThemeEnabled
0002a094 d _ThemeStateTable
0002a238 d _ThemeTrackEnableTable
0002120c t _ThumbElementDraw
00019bc8 t _ThumbElementDraw
0001673c t _ThumbElementDraw
0001f9a8 t _ThumbElementDraw
000211a0 t _ThumbElementGeometry
000166a0 t _ThumbElementGeometry
0001f90c t _ThumbElementGeometry
000288d0 d _ThumbElementOptions
00029ac4 d _ThumbElementOptions
00029380 d _ThumbElementOptions
00019b2c t _ThumbElementSize
00028930 d _ThumbElementSpec
00029f44 d _ThumbElementSpec
000293e0 d _ThumbElementSpec
00029b14 d _ThumbElementSpec
00001bc8 T _Tile_Init
00023284 T _Tk_InitStubs
00022c2c t _ToolbarBackgroundElementDraw
0002a378 d _ToolbarBackgroundElementSpec
0002a3c4 d _ToolbarLayout
0002265c t _TrackElementDraw
00022610 t _TrackElementGeometry
0002a264 d _TrackElementOptions
0002a2b4 d _TrackElementSpec
00013b34 T _TrackElementState
0002a38c d _TreeHeaderAdornmentTable
00022cd4 t _TreeHeaderElementDraw
0002a3b0 d _TreeHeaderElementSpec
0002a4d4 d _TreeHeadingLayout
0000d480 t _TreeWidth
0001a064 t _TreeitemIndicatorDraw
0000fcc8 t _TreeitemIndicatorDraw
000294b8 d _TreeitemIndicatorElementSpec
00028408 d _TreeitemIndicatorElementSpec
000283c8 d _TreeitemIndicatorOptions
00029478 d _TreeitemIndicatorOptions
00019fd8 t _TreeitemIndicatorSize
0000fc3c t _TreeitemIndicatorSize
0000e158 t _TreeviewChildrenCommand
0000cebc t _TreeviewCleanup
0000eb60 t _TreeviewColumnCommand
00028208 d _TreeviewCommands
0000cf8c t _TreeviewConfigure
0000f4e8 t _TreeviewDeleteCommand
0000f3b0 t _TreeviewDetachCommand
0000de58 t _TreeviewDisplay
0000d800 t _TreeviewDoLayout
0000e6c4 t _TreeviewExistsCommand
0000f8e8 t _TreeviewFocusCommand
0000c93c t _TreeviewFreeColumns
0000d708 t _TreeviewGetLayout
0000ec70 t _TreeviewHeadingCommand
0000e78c t _TreeviewIdentifyCommand
0000e5ec t _TreeviewIndexCommand
0000ca04 t _TreeviewInitColumns
0000cb80 t _TreeviewInitDisplayColumns
0000cd20 t _TreeviewInitialize
0000f0e4 t _TreeviewInsertCommand
0000ea50 t _TreeviewItemCommand
000282f8 d _TreeviewLayout
0000f658 t _TreeviewMoveCommand
0000e474 t _TreeviewNextCommand
000280b4 d _TreeviewOptionSpecs
0000e39c t _TreeviewParentCommand
0000e530 t _TreeviewPrevCommand
0000f7c4 t _TreeviewSeeCommand
0000f9b8 t _TreeviewSelectionCommand
0000ed88 t _TreeviewSetCommand
0000d93c t _TreeviewSize
000282c8 D _TreeviewWidgetSpec
0000f7bc t _TreeviewYViewCommand
0000fe74 T _Treeview_Init
000050d4 t _TroughBox
000165b8 t _TroughElementDraw
000210cc t _TroughElementDraw
000199a4 t _TroughElementDraw
00016548 t _TroughElementGeometry
0002930c d _TroughElementOptions
0002887c d _TroughElementOptions
000198fc t _TroughElementSize
0002936c d _TroughElementSpec
000288bc d _TroughElementSpec
00029f30 d _TroughElementSpec
00005154 t _TroughRange
000122a4 T _TtkRedisplayWidget
00012318 T _TtkResizeWidget
000108a4 T _Ttk_AddPadding
00014d90 T _Ttk_AddSlave
000104ec T _Ttk_AnchorBox
00010004 T _Ttk_BoxContains
0001122c T _Ttk_BuildLayoutTemplate
0001204c T _Ttk_ChangeElementState
0001dc60 t _Ttk_ClearCache
0001c570 t _Ttk_CloneElement
00014ea0 T _Ttk_ConfigureSlave
0001ef0c t _Ttk_CreateImageElement
000116d0 T _Ttk_CreateLayout
000149c8 T _Ttk_CreateManager
0001db88 T _Ttk_CreateResourceCache
000117e0 T _Ttk_CreateSubLayout
0001be64 T _Ttk_CreateTheme
00014a70 T _Ttk_DeleteManager
0001caf4 T _Ttk_DrawElement
00011e1c T _Ttk_DrawLayout
00011d34 t _Ttk_DrawNodeList
0001c4a4 T _Ttk_ElementName
0001ca3c T _Ttk_ElementSize
00010300 T _Ttk_ExpandBox
0001e834 t _Ttk_Fill
0001c358 T _Ttk_FindLayoutTemplate
000137c4 T _Ttk_FireTrace
00014f7c T _Ttk_ForgetSlave
00011680 T _Ttk_FreeLayout
00010cb0 t _Ttk_FreeLayoutNode
00010da8 T _Ttk_FreeLayoutTemplate
0001dfbc T _Ttk_FreeResourceCache
00020050 t _Ttk_GCForColor
00014d48 T _Ttk_GeometryRequestProc
0001073c T _Ttk_GetBorderFromObj
00001554 T _Ttk_GetButtonDefaultStateFromObj
0000159c T _Ttk_GetCompoundFromObj
0001c064 T _Ttk_GetCurrentTheme
0001c0b8 T _Ttk_GetDefaultTheme
0001c3e4 T _Ttk_GetElement
000015e4 T _Ttk_GetOrientFromObj
00010604 T _Ttk_GetPaddingFromObj
0001c1c8 T _Ttk_GetResourceCache
00015138 T _Ttk_GetSlaveFromObj
00001424 T _Ttk_GetStateMapFromObj
000012a8 T _Ttk_GetStateSpecFromObj
000109a4 T _Ttk_GetStickyFromObj
0001c2b4 T _Ttk_GetStyle
0001c000 T _Ttk_GetTheme
0001f14c T _Ttk_ImageInit
00010e24 t _Ttk_InstantiateLayout
00011f8c T _Ttk_LayoutFindNode
00011ec0 T _Ttk_LayoutIdentify
00011f10 t _Ttk_LayoutNodeFind
00011e28 t _Ttk_LayoutNodeIdentify
00011aa8 T _Ttk_LayoutNodeInternalPadding
00011b10 T _Ttk_LayoutNodeInternalParcel
00011f94 T _Ttk_LayoutNodeName
00011f9c T _Ttk_LayoutNodeParcel
00011b7c T _Ttk_LayoutNodeReqSize
00011fac T _Ttk_LayoutNodeSetParcel
00011b60 T _Ttk_LayoutSize
00014d54 T _Ttk_LostSlaveProc
00023154 T _Ttk_MacPlatformInit
0000ffe4 T _Ttk_MakeBox
00010864 T _Ttk_MakePadding
000150b4 T _Ttk_ManagerLayoutChanged
000150bc T _Ttk_ManagerSizeChanged
00010c48 t _Ttk_NewLayoutNode
0000122c T _Ttk_NewStateSpecObj
00010b9c T _Ttk_NewStickyObj
00010d18 t _Ttk_NewTemplateNode
000119e0 t _Ttk_NodeListSize
000118ec t _Ttk_NodeSize
000150c4 T _Ttk_NumberSlaves
00010208 T _Ttk_PackBox
00010278 T _Ttk_PadBox
00010e9c T _Ttk_ParseLayoutTemplate
00010548 T _Ttk_PlaceBox
00011d00 T _Ttk_PlaceLayout
00011fc4 T _Ttk_PlaceLayoutNode
00011bac t _Ttk_PlaceNodeList
00014fdc T _Ttk_PlaceSlave
000118d0 T _Ttk_QueryOption
0001c998 T _Ttk_QueryStyle
000118c8 T _Ttk_RebindSublayout
0001bd00 T _Ttk_RegisterCleanup
0001c678 T _Ttk_RegisterElement
0001c4ac T _Ttk_RegisterElementFactory
0001c7bc T _Ttk_RegisterElementSpec
0001c274 T _Ttk_RegisterLayout
0001c21c t _Ttk_RegisterLayoutTemplate
0001e1a0 T _Ttk_RegisterNamedColor
00010904 T _Ttk_RelievePadding
00015318 T _Ttk_ReorderSlave
0001bf50 T _Ttk_SetThemeEnabledProc
000150cc T _Ttk_SlaveData
000150f4 T _Ttk_SlaveIndex
000150e0 T _Ttk_SlaveWindow
00001310 T _Ttk_StateMapLookup
00001504 T _Ttk_StateTableLookup
00010360 T _Ttk_StickBox
0001e944 t _Ttk_Stripe
0001bb4c t _Ttk_StylePkgFree
0001da40 T _Ttk_StylePkgInit
0001ea78 t _Ttk_Tile
000135e8 T _Ttk_TraceVariable
00010884 T _Ttk_UniformPadding
00015048 T _Ttk_UnmapSlave
000112d8 T _Ttk_UnparseLayoutTemplate
00013700 T _Ttk_UntraceVariable
0001e2ec t _Ttk_Use
0001e4d4 T _Ttk_UseBorder
0001e468 T _Ttk_UseColor
0001e40c T _Ttk_UseFont
0001e544 T _Ttk_UseImage
0001c10c T _Ttk_UseTheme
000120c8 t _UpdateGeometry
00012060 t _UpdateLayout
0001408c t _UpdateScrollbar
00014238 t _UpdateScrollbarBG
00005c9c t _ValueToPoint
00013500 t _VarTraceProc
000041cc t _VariableChanged
0002706c d _VerticalProgressbarLayout
00027780 d _VerticalSashLayout
0002a074 d _VerticalSashLayout
00028c74 d _VerticalScaleLayout
00028c14 d _VerticalScrollbarLayout
00015c08 t _VerticalSeparatorElementDraw
000286ac d _VerticalSeparatorElementSpec
00029bdc d _VerticalStepScrollbarLayout
0002a5e0 b _WIN32_XDRAWLINE_HACK
0002a5dc b _WIN32_XDRAWLINE_HACK
00012f48 T _WidgetCgetCommand
00012c28 T _WidgetChangeState
00012520 t _WidgetCleanup
00013000 T _WidgetConfigureCommand
00012840 T _WidgetConstructorObjCmd
00012f00 T _WidgetDisplay
00012ea8 T _WidgetDoLayout
00012368 T _WidgetEnsembleCommand
00012c44 T _WidgetGetLayout
00012cd8 T _WidgetGetOrientedLayout
00013400 T _WidgetIdentifyCommand
0001244c t _WidgetInstanceObjCmd
000124e0 t _WidgetInstanceObjCmdDeleted
000132d8 T _WidgetInstateCommand
00012f10 T _WidgetSize
000131f4 T _WidgetStateCommand
00012810 t _WidgetWorldChanged
00000e10 t ___initialize_Cplusplus
00000df0 t __dyld_func_lookup
00000000 t __mh_dylib_header
000290bc d _checkbutton_pixels
000290f0 D _checkbutton_spec
00029080 D _checkbutton_states
000284c0 d _cm_key.0
00021e3c t _computeButtonDrawInfo
00029298 d _directionStrings
00026c98 d _directionStrings
00028fb8 d _fieldShadowColors
U _fmod
0000c328 t _foreachHashEntry
0002615c d _initScript
000264bc d _labelAnchorStrings
U _memcmp
U _memcpy
U _memset
00028478 d _optStrings.0
00029810 d _optStrings.1
000100cc t _packBottom
0001012c t _packLeft
000101a8 t _packRight
00028464 d _packSideStrings
00010050 t _packTop
00029140 d _radiobutton_pixels
00029174 D _radiobutton_spec
00029104 D _radiobutton_states
000281f4 d _selopStrings.0
00028ef8 d _shadowColors
000280a8 d _showStrings
U _sprintf
U _sscanf
00026004 d _stateNames
U _strchr
U _strcmp
U _strcpy
U _strlen
U _strncpy
00011ec8 t _tail
0002a500 D _tclIntPlatStubsPtr
0002a4fc D _tclIntStubsPtr
0002a4f8 D _tclPlatStubsPtr
0002a4f4 D _tclStubsPtr
00028f58 D _thinShadowColors
0002a5f4 S _tkIntPlatStubsPtr
0002a5ec S _tkIntStubsPtr
0002a5e4 S _tkIntXlibStubsPtr
0002a5f0 S _tkPlatStubsPtr
0002a5e8 S _tkStubsPtr
00026218 D _ttkStubs
0000c3ac t _unshare
000277b0 d _validateReasonStrings
00027794 d _validateStrings
00028494 d _widgetClassProcs
00000de8 t cfm_stub_binding_helper
00026000 d dyld__mh_dylib_header
0002a508 s dyld_func_lookup_pointer
0002a504 s dyld_lazy_symbol_binding_entry_point
00000db8 t dyld_stub_binding_helper

Hope it helps,
Xavier

Kevin Walzer

unread,
Oct 12, 2006, 9:31:03 AM10/12/06
to

Why build the Aqua .dylibs for each architecture (PPC and x86)? It is
much cleaner to build them as universal binaries. I've been building
Tile as a universal binary and shipping it with my own applications for
months. At the very least, build them separately and then lipo them
together.

--
Kevin Walzer
Poetic Code
http://www.kevin-walzer.com

xgar...@gmail.com

unread,
Oct 12, 2006, 11:02:14 AM10/12/06
to
> Why build the Aqua .dylibs for each architecture (PPC and x86)? It is
> much cleaner to build them as universal binaries. I've been building
> Tile as a universal binary and shipping it with my own applications for
> months. At the very least, build them separately and then lipo them
> together.

This is not a joke :
Isn't a universal binary only a folder containing two builds ?

Regards,
Xavier

Kevin Walzer

unread,
Oct 12, 2006, 11:17:58 AM10/12/06
to
No, it's a single binary with support for both architectures.

There are two ways to build a universal binary on OS X.

1. Configure as a universal binary from the get-go using flags like this:

export CFLAGS="-arch ppc -arch i386 -isysroot
/Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4"

Then run configure, make, etc. as usual. This build would have to be
done on OS X 10.4 with Xcode 2.4 installed and gcc 4.0. This is how I do
it. The build has to link to libraries that are themselves universal
binaries, i.e. the Tcl and Tk libraries have to be universal as well.

2. Build separately for each architecture and then use the "lipo"
command to bind them together:

lipo -o libtile-universal.dylib libtile-x86.dylib libtile-ppc.dylib

(or something like that).

--Kevin

Eric Hassold

unread,
Oct 12, 2006, 11:32:46 AM10/12/06
to
xgar...@gmail.com wrote :

> This is not a joke :
> Isn't a universal binary only a folder containing two builds ?

No, this is a single binary (exe, dynamic library, etc...) file which
contains several copies for different architectures. The "lipo" command
line utility can be used to add, list or extract files embedded into
this universal container.

Kevin Walzer wrote:
> At the very least, build them separately and then lipo them
> together.

AFAIK, directly compiling universal object files from compiler (passing
several architectures to compiler with -arch flag) doesn't produce
better code than compiling separately then merge with lipo. Also,
compiling on an Intel machine for deployment on 10.2/10.3 systems
requires to build the PPC version using 10.3.9 SDK, with specific
CFLAGS, and the Intel version with 10.4 SDK with other flags. Hence,
building PPC and Intel versions separately, and merging them with lipo,
was (from our experience in providing eTcl for MaxOSX as universal
binary) not "the very least" option but actually best option, if not the
only functional solution to produce universal binary supporting
deployment on all (includign older) Mac platforms (from PPC 10.2+).

Eric

-----
Eric Hassold
Evolane - http://www.evolane.com/


Schelte Bron

unread,
Oct 12, 2006, 2:10:11 PM10/12/06
to
Kevin Walzer wrote:
> Why build the Aqua .dylibs for each architecture (PPC and x86)? It
> is much cleaner to build them as universal binaries. I've been
> building Tile as a universal binary and shipping it with my own
> applications for months. At the very least, build them separately
> and then lipo them together.
>
The tile kit contains libraries for several other platforms besides
the Mac too. To find the correct library the pkgIndex file combines
the os and machine type and uses the resulting value as the name of
a directory. To be able to use a universal binary for the Mac means
that additional code would be needed to end up with the same
directory name for both x86 and ppc.

Universal binaries were invented to solve a problem that has already
been solved in the kit. And the solution in the kit is more general
because it works for all platforms. You could actually see the tile
kit as a universal binary for linux, mac, solaris and windows.

Size is also not an argument since a Mac universal library is bigger
than the x86 and ppc libraries together. So, in this specific case
it's not cleaner to use a universal binary. It actually complicates
things without bringing any benefits.

Kroc

unread,
Oct 13, 2006, 3:37:54 AM10/13/06
to
Schelte Bron a écrit :

> The published kit also doesn't work for me on the Mac anymore. I
> guess I must have failed to do a final check after we included the
> stripped versions of the libraries.
>
> I just tried re-wrapping the kit with the unstripped libraries, and
> then it's working fine again.

I also try the unstripped libraries Schelte gently sent me and it works
for me too.

jo...@swri.edu

unread,
Oct 13, 2006, 11:31:23 AM10/13/06
to

In case it helps, I found if I used strip without parameters, universal
binaries can be messed up in some ways.

However, if you do a "strip -x -S", it reduces the size somewhat, and
still works universally. This is only on Mac and universal binaries.

HTH,
Joey

Kevin Walzer

unread,
Oct 13, 2006, 11:35:26 AM10/13/06
to
Eric Hassold wrote:

>
> AFAIK, directly compiling universal object files from compiler (passing
> several architectures to compiler with -arch flag) doesn't produce
> better code than compiling separately then merge with lipo.

"Better code" isn't really the point. It's less work to compile as a
universal binary in terms of the number of steps you have to take:
compile once, or compile twice + lipo.

Also,
> compiling on an Intel machine for deployment on 10.2/10.3 systems
> requires to build the PPC version using 10.3.9 SDK, with specific
> CFLAGS, and the Intel version with 10.4 SDK with other flags. Hence,
> building PPC and Intel versions separately, and merging them with lipo,
> was (from our experience in providing eTcl for MaxOSX as universal
> binary) not "the very least" option but actually best option, if not the
> only functional solution to produce universal binary supporting
> deployment on all (includign older) Mac platforms (from PPC 10.2+).

Of course, if you are supporting older versions of OS X, then lipo does
become the better (indeed, the only) option.

Pat Thoyts

unread,
Oct 13, 2006, 2:07:35 PM10/13/06
to

I've updated the kit file at tktable.sourceforge.net with new Darwin-*
binaries. It also handles the Windows tclkit < 8.4.6 too (by not
providing the package)
0 new messages