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