From: John Hodge (sonata) Date: Thu, 29 Nov 2012 03:38:10 +0000 (+0800) Subject: Usermode/AxWin3 - Added move code to decorator X-Git-Tag: rel0.15~634 X-Git-Url: https://git.ucc.asn.au/?a=commitdiff_plain;h=27233905f121c1b8003f7d96350dab06e1686f8a;p=tpg%2Facess2.git Usermode/AxWin3 - Added move code to decorator --- diff --git a/Usermode/Applications/axwin3_src/WM/decorator.c b/Usermode/Applications/axwin3_src/WM/decorator.c index 14c04147..6600408a 100644 --- a/Usermode/Applications/axwin3_src/WM/decorator.c +++ b/Usermode/Applications/axwin3_src/WM/decorator.c @@ -133,18 +133,31 @@ void Decorator_Redraw(tWindow *Window) int Decorator_HandleMessage(tWindow *Window, int Message, int Length, const void *Data) { + static tWindow *btn1_down; switch(Message) { case WNDMSG_MOUSEMOVE: { const struct sWndMsg_MouseMove *msg = Data; + + if( btn1_down == Window ) { + WM_MoveWindow(Window, Window->X + msg->dX, Window->Y + msg->dY); + return 0; + } + if(msg->Y >= 0) return 1; // Pass - + // TODO: Handle return 0; } case WNDMSG_MOUSEBTN: { const struct sWndMsg_MouseButton *msg = Data; + if( msg->Button == 0 && !msg->bPressed ) + btn1_down = 0; + if(msg->Y >= 0) return 1; // Pass - + + if( msg->Button == 0 && msg->bPressed ) + btn1_down = Window; + // TODO: Handle return 0; } default: // Anything unhandled is passed on