From: Jerry L. <jer...@ek...> - 2006-01-03 23:47:39
|
It looks like something like: ********************************************** proc RebuildScriptsMenu {} { foreach w [winfo children .menubar.scripts ] { destroy $w } .menubar.scripts delete 0 end .menubar.scripts add command -label "Refresh Scripts Menu" - command RebuildScriptsMenu .menubar.scripts add separator # Add the menu items if { [file isdirectory "~/SQLScripts" ]} { BuildScriptMenu .menubar.scripts "~/SQLScripts/" } # if using aqua... AppleScript execute { set foo to current application tell app "Finder" to activate delay 0.05 tell foo to activate } } ******************************************************* might do the job. If the delay is too small, the menus will still not show cascading items properly. There is a flash when the finder comes forward.... Any comments? Jerry > Rats! It looks like I might have to conjure some applescript > on the mac side.... > > Thanks for the pointers.... > > > Jerry > On Jan 3, 2006, at 5:08 PM, Alastair Davies wrote: > >> Jerry, >> >> Nobody has suggested any work-around other than the one you have >> already identified, but the problem is at least recorded in two >> bugs on Sourceforge, namely bugs #940760 and #1068293. >> >> Sorry not to be able to be more helpful. >> Kind regards, Alastair >> >> >> Jerry LeVan wrote: >>> Well the holidays are over so I thought I would try to repost my >>> problem just in case the problem slipped between the cracks. In >>> short, rebuilding a menu after the application has started results >>> in the contents of submenus not being displayed. Having the main >>> window of the app lose focus and then regain the focus seems to >>> bring back the contents of the submenus.... >>> >>> Help, >>> >>> Jerry >>> >>>> Hi, >>>> >>>> I am having a problem with "refreshing a menu". My application >>>> builds a menu >>>> based on a directory tree, it chooses files in the tree based on >>>> some criteria. >>>> >>>> A subdirectory in a directory will generate a cascading submenu >>>> of the current >>>> menu and the process will continue... >>>> >>>> If the user adds a file to the directory tree then I want to be >>>> able to update >>>> the menu structure. >>>> >>>> Here is what I am doing... >>>> >>>> proc RebuildScriptsMenu {} { >>>> foreach w [winfo children .menubar.scripts ] { destroy $w } >>>> .menubar.scripts delete 0 end >>>> .menubar.scripts add command -label "Refresh Scripts Menu" - >>>> command RebuildScriptsMenu >>>> .menubar.scripts add separator >>>> # Add the menu items >>>> if { [file isdirectory "~/SQLScripts" ]} { >>>> BuildScriptMenu .menubar.scripts "~/SQLScripts/" >>>> } >>>> } >>>> >>>> The BuildScriptMenu recursively descents the directory rooted at >>>> " ~/SQLSCripts" and >>>> builds the menu. >>>> >>>> When I choose the "Rebuild Scripts Menu", the menu structure is >>>> rebuilt *but* none of >>>> the items in any of the submenus is visible *unless* I somehow >>>> poke the application by >>>> sending it to the back and bringing it back or opening another >>>> window in the application ( >>>> and possibly some other pokery :). >>>> >>>> I have scattered update and update idletasks about but it does >>>> no good. >>>> >>>> In addition my Linux box does *not* seem to have this problem. >>>> ( I have not >>>> tried rebooting into windows to check there yet.) >>>> >>>> Is this a known problem with Aqua Tcl/Tk ( latest full release)? >>>> Is there a simple fix? >>>> >>>> Thanks >>>> >>>> Jerry >>>> >>> >>> >>> ------------------------------------------------------- >>> This SF.net email is sponsored by: Splunk Inc. Do you grep >>> through log files >>> for problems? Stop! Download the new AJAX search engine that makes >>> searching your log files as easy as surfing the web. DOWNLOAD >>> SPLUNK! >>> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click >>> _______________________________________________ >>> Tcl-mac mailing list >>> Tc...@li... >>> https://lists.sourceforge.net/lists/listinfo/tcl-mac >>> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through > log files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD > SPLUNK! > http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click > _______________________________________________ > Tcl-mac mailing list > Tc...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-mac |