Automated setup file uploaded
Tariel Gogoberidze
tariel at mac.com
Wed Jul 18 18:33:37 CDT 2007
On Date: Wed, 18 Jul 2007 16:08:47 +0200 Klaus Major wrote:
>> 1) what should be the trigger to write IDE stack positions to
>> file? shutdownRequest in Home stack? )
>
> I think "mctools" will be the candidate for writing prefs.
> The user might close the home stack to gain screen space before
> quitting MC.
>
>> 2) What should be the trigger to read external file ? (preOpenStack
>> in "McTools.mc" and "home" stacks?
>
> "home" sounds good, since this will be loaded first anyway.
and later answering Robert Brenstein ..
>> Do we really want to modify Home stack?
> No, we don't :-)
> That was just a (obviously too) quick idea, since many folks will use
> their own and probably modified "home" stack...
OK Klaus, I'll leave write / read triggers and saving place for you to
decide. You are the list Poobah after all :)
As for script I posted yesterday which is using OpenStacks to register
stack locations on ShutDown, it's no good because during the session
developer may open, position and then CLOSE any of IDE stacks and
querying OpenStacks on shutDownRequest would not allow to register all
changes in stack Locations.
The script below has more general approach. It takes about 0.5-1 sec to
register ALL IDE stack positions and about 1-1.5 sec to restore them.
If you guys can leave with such delay, the script below may be
considered....
on RememberIDEstacksPositions
-- put the milliseconds into tTime
lock messages
put "McHome.mc" & cr & the substacks of stack "McHome.mc" & cr & \
"McTools.mc" & cr & the substacks of stack "McTools.mc" & cr & \
"McHelp.mc" & cr & the substacks of stack "McHelp.mc" into
tIDEstacksList
repeat for each line L in tIDEstacksList
put L &","& the rect of stack L & cr after tPositionsList
end repeat
unlock messages
put StoragePositionsPath () into FL
put tPositionsList into url ("file:"&FL)
-- put the milliseconds - tTime
end RememberIDEstacksPositions
on RestoreIDEstackPositions
put StoragePositionsPath () into FL
if there is a file FL then
-- put the milliseconds into tTime
put url ("file:"&FL) into tPositions
put the windowBoundingRect into tMonitorRect
lock messages
repeat for each line L in tPositions
put item 1 of L into tStack
if there is a stack tStack then
set the rect of stack tStack to (item 2 to 5 of L)
-- if user changed resolution or monitor
if (the left of stack tStack) + 10 > item 3 of tMonitorRect then
set the left of stack tStack to the left of stack tStack -
100 -- to make it accessable
end if
if the top of stack tStack > item 4 of tMonitorRect then
set the top of stack tStack to item 4 of tMonitorRect - 100
end if
end if
end repeat
unlock messages
-- put the milliseconds - tTime
end if
end RestoreIDEstackPositions
function StoragePositionsPath
set the itemDel to "/"
return item 1 to -2 of the effective fileName of stack "home" &
"/IDEstackPositions.txt"
end StoragePositionsPath
best regards
Tariel
More information about the metacard
mailing list