Follow the rev tools palette by a window

Richmond richmondmathewson at gmail.com
Sat Nov 13 02:39:35 EST 2010


On 11/13/2010 01:16 AM, zryip theSlug wrote:
> On Mon, Mar 1, 2010 at 10:02 PM, zryip theSlug<zryip.theslug at gmail.com>  wrote:
>> Dear list members,
>>
>> To follow the rev tools palette by a window (a palette), I use the
>> send message in time form below :
>>
>> command scanForRevToolsLoc
>>    set the topLeft of this stack to the bottomLeft of stack "Revtools"
>>    send "scanForRevToolsLoc" to me in 100 milliseconds
>> end scanForRevToolsLoc
>>
>> This handler works as expect excepted for one thing: it seems that
>> dragging the tools palette by it's title bar, give no time to the RR
>> engine. So during the drag, nothing is intercepted by the
>> scanForRevToolsLoc handler. It performs only when the user release the
>> mouse on the palette.
>>
>> Is it possible to have something more in "real time"?
>>
>> TIA
> I reply myself to this old message I sent. I agree that is a bad
> habit, but that is the fault of Richmond!

Molluscan humour?

Now; down to business!

Do you mean that when you drag the revTools palette you want another
stack to follow it (e.g. 'glued to' one side)?

I have done this previously, having at one time had a supplementary
palettised stack with additional controls that followed the revTools 
palette.

HOWEVER, there was a bit of lag-time and after a while I began to feel
seasick.

In that sort of situation you could probably get away with a few lines of
script in the revTools stack script such as:

on mouseDrag
   set the left of stack "myRubbish" to the right of stack "revTools"
end mouseDrag

> Instead to use a send in time handler, a possible solution consists to
> insert a front script with a moveStack handler.
>
> Here is the front script:
>
> constant kColorPickerName = "ASG_ColorPicker"
> constant kToolsPaletteName = "revTools"
>
> on moveStack
>     _dockPicker --
>     pass moveStack
> end moveStack
>
> on resizeStack
>     _dockPicker --
>     pass resizeStack
> end resizeStack
>
> private command _dockPicker
>     if (_StackIsToolsPalette()) then
>        if (_PickerIsDocked()) then
>           send "dockPicker" to cd 1 of stack kColorPickerName
>        end if
>     end if
> end _dockPicker
>
> private function _StackIsToolsPalette
>     return (the short name of the owner of the target is kToolsPaletteName)
> end _StackIsToolsPalette
>
> private function _PickerIsDocked
>     return (the cIsDocked of stack kColorPickerName)
> end _PickerIsDocked
>
>
> And the script to dock the palette to the "revtools" palette:
>
> constant kToolsPaletteName = "revTools"
>
> command dockPicker
>     set the topLeft of this stack to the bottomLeft of stack kToolsPaletteName
>     go to this stack
> end dockPicker
>
>
> All working now in "real time".
>
>
> Best regards,




More information about the use-livecode mailing list