3 # Commands provided by Tk without official support. Use them at your
4 # own risk. They may change or go away without notice.
6 # See the file "license.terms" for information on usage and redistribution
7 # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
9 # ----------------------------------------------------------------------
10 # Unsupported compatibility interface for folks accessing Tk's private
11 # commands and variable against recommended usage.
12 # ----------------------------------------------------------------------
14 namespace eval ::tk::unsupported {
16 # Map from the old global names of Tk private commands to their
17 # new namespace-encapsulated names.
19 variable PrivateCommands
20 array set PrivateCommands
{
21 tkButtonAutoInvoke
::tk::ButtonAutoInvoke
22 tkButtonDown
::tk::ButtonDown
23 tkButtonEnter
::tk::ButtonEnter
24 tkButtonInvoke
::tk::ButtonInvoke
25 tkButtonLeave
::tk::ButtonLeave
26 tkButtonUp
::tk::ButtonUp
27 tkCancelRepeat
::tk::CancelRepeat
28 tkCheckRadioDown
::tk::CheckRadioDown
29 tkCheckRadioEnter
::tk::CheckRadioEnter
30 tkCheckRadioInvoke
::tk::CheckRadioInvoke
31 tkColorDialog
::tk::dialog::color::
32 tkColorDialog_BuildDialog
::tk::dialog::color::BuildDialog
33 tkColorDialog_CancelCmd
::tk::dialog::color::CancelCmd
34 tkColorDialog_Config
::tk::dialog::color::Config
35 tkColorDialog_CreateSelector
::tk::dialog::color::CreateSelector
36 tkColorDialog_DrawColorScale
::tk::dialog::color::DrawColorScale
37 tkColorDialog_EnterColorBar
::tk::dialog::color::EnterColorBar
38 tkColorDialog_InitValues
::tk::dialog::color::InitValues
39 tkColorDialog_HandleRGBEntry
::tk::dialog::color::HandleRGBEntry
40 tkColorDialog_HandleSelEntry
::tk::dialog::color::HandleSelEntry
41 tkColorDialog_LeaveColorBar
::tk::dialog::color::LeaveColorBar
42 tkColorDialog_MoveSelector
::tk::dialog::color::MoveSelector
43 tkColorDialog_OkCmd
::tk::dialog::color::OkCmd
44 tkColorDialog_RedrawColorBars
::tk::dialog::color::RedrawColorBars
45 tkColorDialog_RedrawFinalColor
::tk::dialog::color::RedrawFinalColor
46 tkColorDialog_ReleaseMouse
::tk::dialog::color::ReleaseMouse
47 tkColorDialog_ResizeColorBars
::tk::dialog::color::ResizeColorBars
48 tkColorDialog_RgbToX
::tk::dialog::color::RgbToX
49 tkColorDialog_SetRGBValue
::tk::dialog::color::SetRGBValue
50 tkColorDialog_StartMove
::tk::dialog::color::StartMove
51 tkColorDialog_XToRgb
::tk::dialog::color::XToRGB
52 tkConsoleAbout
::tk::ConsoleAbout
53 tkConsoleBind
::tk::ConsoleBind
54 tkConsoleExit
::tk::ConsoleExit
55 tkConsoleHistory
::tk::ConsoleHistory
56 tkConsoleInit
::tk::ConsoleInit
57 tkConsoleInsert
::tk::ConsoleInsert
58 tkConsoleInvoke
::tk::ConsoleInvoke
59 tkConsoleOutput
::tk::ConsoleOutput
60 tkConsolePrompt
::tk::ConsolePrompt
61 tkConsoleSource
::tk::ConsoleSource
63 tkEntryAutoScan
::tk::EntryAutoScan
64 tkEntryBackspace
::tk::EntryBackspace
65 tkEntryButton1
::tk::EntryButton1
66 tkEntryClosestGap
::tk::EntryClosestGap
67 tkEntryGetSelection
::tk::EntryGetSelection
68 tkEntryInsert
::tk::EntryInsert
69 tkEntryKeySelect
::tk::EntryKeySelect
70 tkEntryMouseSelect
::tk::EntryMouseSelect
71 tkEntryNextWord
::tk::EntryNextWord
72 tkEntryPaste
::tk::EntryPaste
73 tkEntryPreviousWord
::tk::EntryPreviousWord
74 tkEntrySeeInsert
::tk::EntrySeeInsert
75 tkEntrySetCursor
::tk::EntrySetCursor
76 tkEntryTranspose
::tk::EntryTranspose
77 tkEventMotifBindings
::tk::EventMotifBindings
78 tkFDGetFileTypes
::tk::FDGetFileTypes
79 tkFirstMenu
::tk::FirstMenu
80 tkFocusGroup_BindIn
::tk::FocusGroup_BindIn
81 tkFocusGroup_BindOut
::tk::FocusGroup_BindOut
82 tkFocusGroup_Create
::tk::FocusGroup_Create
83 tkFocusGroup_Destroy
::tk::FocusGroup_Destroy
84 tkFocusGroup_In
::tk::FocusGroup_In
85 tkFocusGroup_Out
::tk::FocusGroup_Out
86 tkFocusOK
::tk::FocusOK
87 tkGenerateMenuSelect
::tk::GenerateMenuSelect
88 tkIconList
::tk::IconList
89 tkIconList_Add
::tk::IconList_Add
90 tkIconList_Arrange
::tk::IconList_Arrange
91 tkIconList_AutoScan
::tk::IconList_AutoScan
92 tkIconList_Btn1
::tk::IconList_Btn1
93 tkIconList_Config
::tk::IconList_Config
94 tkIconList_Create
::tk::IconList_Create
95 tkIconList_CtrlBtn1
::tk::IconList_CtrlBtn1
96 tkIconList_Curselection
::tk::IconList_CurSelection
97 tkIconList_DeleteAll
::tk::IconList_DeleteAll
98 tkIconList_Double1
::tk::IconList_Double1
99 tkIconList_DrawSelection
::tk::IconList_DrawSelection
100 tkIconList_FocusIn
::tk::IconList_FocusIn
101 tkIconList_FocusOut
::tk::IconList_FocusOut
102 tkIconList_Get
::tk::IconList_Get
103 tkIconList_Goto
::tk::IconList_Goto
104 tkIconList_Index
::tk::IconList_Index
105 tkIconList_Invoke
::tk::IconList_Invoke
106 tkIconList_KeyPress
::tk::IconList_KeyPress
107 tkIconList_Leave1
::tk::IconList_Leave1
108 tkIconList_LeftRight
::tk::IconList_LeftRight
109 tkIconList_Motion1
::tk::IconList_Motion1
110 tkIconList_Reset
::tk::IconList_Reset
111 tkIconList_ReturnKey
::tk::IconList_ReturnKey
112 tkIconList_See
::tk::IconList_See
113 tkIconList_Select
::tk::IconList_Select
114 tkIconList_Selection
::tk::IconList_Selection
115 tkIconList_ShiftBtn1
::tk::IconList_ShiftBtn1
116 tkIconList_UpDown
::tk::IconList_UpDown
117 tkListbox
::tk::Listbox
118 tkListboxAutoScan
::tk::ListboxAutoScan
119 tkListboxBeginExtend
::tk::ListboxBeginExtend
120 tkListboxBeginSelect
::tk::ListboxBeginSelect
121 tkListboxBeginToggle
::tk::ListboxBeginToggle
122 tkListboxCancel
::tk::ListboxCancel
123 tkListboxDataExtend
::tk::ListboxDataExtend
124 tkListboxExtendUpDown
::tk::ListboxExtendUpDown
125 tkListboxKeyAccel_Goto
::tk::ListboxKeyAccel_Goto
126 tkListboxKeyAccel_Key
::tk::ListboxKeyAccel_Key
127 tkListboxKeyAccel_Reset
::tk::ListboxKeyAccel_Reset
128 tkListboxKeyAccel_Set
::tk::ListboxKeyAccel_Set
129 tkListboxKeyAccel_Unset
::tk::ListboxKeyAccel_Unxet
130 tkListboxMotion
::tk::ListboxMotion
131 tkListboxSelectAll
::tk::ListboxSelectAll
132 tkListboxUpDown
::tk::ListboxUpDown
133 tkListboxBeginToggle
::tk::ListboxBeginToggle
134 tkMbButtonUp
::tk::MbButtonUp
135 tkMbEnter
::tk::MbEnter
136 tkMbLeave
::tk::MbLeave
137 tkMbMotion
::tk::MbMotion
138 tkMbPost
::tk::MbPost
139 tkMenuButtonDown
::tk::MenuButtonDown
140 tkMenuDownArrow
::tk::MenuDownArrow
141 tkMenuDup
::tk::MenuDup
142 tkMenuEscape
::tk::MenuEscape
143 tkMenuFind
::tk::MenuFind
144 tkMenuFindName
::tk::MenuFindName
145 tkMenuFirstEntry
::tk::MenuFirstEntry
146 tkMenuInvoke
::tk::MenuInvoke
147 tkMenuLeave
::tk::MenuLeave
148 tkMenuLeftArrow
::tk::MenuLeftArrow
149 tkMenuMotion
::tk::MenuMotion
150 tkMenuNextEntry
::tk::MenuNextEntry
151 tkMenuNextMenu
::tk::MenuNextMenu
152 tkMenuRightArrow
::tk::MenuRightArrow
153 tkMenuUnpost
::tk::MenuUnpost
154 tkMenuUpArrow
::tk::MenuUpArrow
155 tkMessageBox
::tk::MessageBox
156 tkMotifFDialog
::tk::MotifFDialog
157 tkMotifFDialog_ActivateDList
::tk::MotifFDialog_ActivateDList
158 tkMotifFDialog_ActivateFList
::tk::MotifFDialog_ActivateFList
159 tkMotifFDialog_ActivateFEnt
::tk::MotifFDialog_ActivateFEnt
160 tkMotifFDialog_ActivateSEnt
::tk::MotifFDialog_ActivateSEnt
161 tkMotifFDialog
::tk::MotifFDialog
162 tkMotifFDialog_BrowseDList
::tk::MotifFDialog_BrowseDList
163 tkMotifFDialog_BrowseFList
::tk::MotifFDialog_BrowseFList
164 tkMotifFDialog_BuildUI
::tk::MotifFDialog_BuildUI
165 tkMotifFDialog_CancelCmd
::tk::MotifFDialog_CancelCmd
166 tkMotifFDialog_Config
::tk::MotifFDialog_Config
167 tkMotifFDialog_Create
::tk::MotifFDialog_Create
168 tkMotifFDialog_FileTypes
::tk::MotifFDialog_FileTypes
169 tkMotifFDialog_FilterCmd
::tk::MotifFDialog_FilterCmd
170 tkMotifFDialog_InterpFilter
::tk::MotifFDialog_InterpFilter
171 tkMotifFDialog_LoadFiles
::tk::MotifFDialog_LoadFiles
172 tkMotifFDialog_MakeSList
::tk::MotifFDialog_MakeSList
173 tkMotifFDialog_OkCmd
::tk::MotifFDialog_OkCmd
174 tkMotifFDialog_SetFilter
::tk::MotifFDialog_SetFilter
175 tkMotifFDialog_SetListMode
::tk::MotifFDialog_SetListMode
176 tkMotifFDialog_Update
::tk::MotifFDialog_Update
177 tkPostOverPoint
::tk::PostOverPoint
178 tkRecolorTree
::tk::RecolorTree
179 tkRestoreOldGrab
::tk::RestoreOldGrab
180 tkSaveGrabInfo
::tk::SaveGrabInfo
181 tkScaleActivate
::tk::ScaleActivate
182 tkScaleButtonDown
::tk::ScaleButtonDown
183 tkScaleButton2Down
::tk::ScaleButton2Down
184 tkScaleControlPress
::tk::ScaleControlPress
185 tkScaleDrag
::tk::ScaleDrag
186 tkScaleEndDrag
::tk::ScaleEndDrag
187 tkScaleIncrement
::tk::ScaleIncrement
188 tkScreenChanged
::tk::ScreenChanged
189 tkScrollButtonDown
::tk::ScrollButtonDown
190 tkScrollButton2Down
::tk::ScrollButton2Down
191 tkScrollButtonDrag
::tk::ScrollButtonDrag
192 tkScrollButtonUp
::tk::ScrollButtonUp
193 tkScrollByPages
::tk::ScrollByPages
194 tkScrollByUnits
::tk::ScrollByUnits
195 tkScrollEndDrag
::tk::ScrollEndDrag
196 tkScrollSelect
::tk::ScrollSelect
197 tkScrollStartDrag
::tk::ScrollStartDrag
198 tkScrollTopBottom
::tk::ScrollTopBottom
199 tkScrollToPos
::tk::ScrollToPos
200 tkTabToWindow
::tk::TabToWindow
201 tkTearOffMenu
::tk::TearOffMenu
202 tkTextAutoScan
::tk::TextAutoScan
203 tkTextButton1
::tk::TextButton1
204 tkTextClosestGap
::tk::TextClosestGap
205 tkTextInsert
::tk::TextInsert
206 tkTextKeyExtend
::tk::TextKeyExtend
207 tkTextKeySelect
::tk::TextKeySelect
208 tkTextNextPara
::tk::TextNextPara
209 tkTextNextPos
::tk::TextNextPos
210 tkTextNextWord
::tk::TextNextWord
211 tkTextPaste
::tk::TextPaste
212 tkTextPrevPara
::tk::TextPrevPara
213 tkTextPrevPos
::tk::TextPrevPos
214 tkTextPrevWord
::tk::TextPrevWord
215 tkTextResetAnchor
::tk::TextResetAnchor
216 tkTextScrollPages
::tk::TextScrollPages
217 tkTextSelectTo
::tk::TextSelectTo
218 tkTextSetCursor
::tk::TextSetCursor
219 tkTextTranspose
::tk::TextTranspose
220 tkTextUpDownLine
::tk::TextUpDownLine
221 tkTraverseToMenu
::tk::TraverseToMenu
222 tkTraverseWithinMenu
::tk::TraverseWithinMenu
223 unsupported1
::tk::unsupported::MacWindowStyle
226 # Map from the old global names of Tk private variable to their
227 # new namespace-encapsulated names.
229 variable PrivateVariables
230 array set PrivateVariables
{
231 droped_to_start
::tk::mac::Droped_to_start
232 histNum
::tk::HistNum
233 stub_location
::tk::mac::Stub_location
234 tkFocusIn
::tk::FocusIn
235 tkFocusOut
::tk::FocusOut
236 tkPalette
::tk::Palette
238 tkPrivMsgBox
::tk::PrivMsgBox
242 # ::tk::unsupported::ExposePrivateCommand --
244 # Expose one of Tk's private commands to be visible under its
248 # cmd Global name by which the command was once known,
249 # or a glob-style pattern.
255 # The old command name in the global namespace is aliased to the
258 proc ::tk::unsupported::ExposePrivateCommand {cmd
} {
259 variable PrivateCommands
260 set cmds
[array get PrivateCommands
$cmd]
261 if {[llength $cmds] == 0} {
262 return -code error "No compatibility support for \[$cmd]"
264 foreach {old new
} $cmds {
265 namespace eval :: [list interp alias
{} $old {}] $new
269 # ::tk::unsupported::ExposePrivateVariable --
271 # Expose one of Tk's private variables to be visible under its
275 # var Global name by which the variable was once known,
276 # or a glob-style pattern.
282 # The old variable name in the global namespace is aliased to the
285 proc ::tk::unsupported::ExposePrivateVariable {var
} {
286 variable PrivateVariables
287 set vars
[array get PrivateVariables
$var]
288 if {[llength $vars] == 0} {
289 return -code error "No compatibility support for \$$var"
291 namespace eval ::tk::mac {}
292 foreach {old new
} $vars {
293 namespace eval :: [list upvar "#0" $new $old]