• dragging a text icon by its outline

    From Christopher Self@21:1/5 to All on Wed Aug 3 20:13:36 2022
    I'm trying to drag an icon around a window using the icon's outline, but
    it keeps boxing my compass.

    What's wrong with this, please?:

    PROCget_window_state (play_agenda_win%, minx%, miny%, maxx%, maxy%,
    scrollx%, scrolly%, behind%)
    PROCget_icon_outline (play_agenda_win%, icon%, icminx%, icminy%, icmaxx%, icmaxy%)
    REM draw dragbox for current icon
    block!4 = 5
    block!8 = icminx% + (scrollx% - minx%)
    block!12 = icminy% + (scrolly% - maxy%)
    block!16 = icmaxx% + (scrollx% - minx%)
    block!20 = icmaxy% + (scrolly% - maxy%)
    block!24 = minx%
    block!28 = miny%
    block!32 = maxx%
    block!36 = maxy%
    SYS "Wimp_DragBox",,block


    I've bodged it so far with:

    block!8 = minx% + 8
    block!12 = maxy% - (scrolly% - icminy%)
    block!16 = maxx% - 8
    block!20 = maxy% - (scrolly% - icmaxy%)

    But I don't understand why that works.

    --
    Christopher Self

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christopher Self@21:1/5 to All on Sun Aug 7 21:37:43 2022
    This is now almost working:

    block!8 = minx% - (scrollx% - icminx%)
    block!12 = maxy% - (scrolly% - icminy%)
    block!16 = minx% - (scrollx% - icmaxx%)
    block!20 = maxy% - (scrolly% - icmaxy%)

    But it doesn't cope with an undersize window, and I still don't understand
    it.

    --
    Christopher Self

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christopher Self@21:1/5 to All on Sun Aug 14 18:42:04 2022
    I've even managed to clip it correctly now:

    block!8 = minx% - (scrollx% - icminx%)
    IF scrollx% > icminx% THEN block!8 = minx%+4
    block!12 = maxy% - (scrolly% - icminy%)
    block!16 = minx% - (scrollx% - icmaxx%)
    IF maxx% + (scrollx% - minx%) < icmaxx% THEN block!16 = maxx%-4
    block!20 = maxy% - (scrolly% - icmaxy%)

    But I still don't understand it...

    --
    Christopher Self

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)