bool Boxx::coordsOutsideBox(Message* m)
{
- /* Helper function to look at parameter in m, decode the x and y coords
+ /* Helper function to look at x and y in m
* and see if the point is outside this Boxx's area
*/
- int x = (m->parameter >> 16) - getScreenX();
- int y = (m->parameter & 0xFFFF) - getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if ( (x < 0)
|| (y < 0)
{
int lastsel = asl.getCurrentOption();
- if (((m->parameter >> 16) - getScreenX()) < 200 && asl.mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if ((m->parameter - getScreenX()) < 200 && asl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
editsubtitles = false;
ssl.setDarkSelOption(true);
lastsel = ssl.getCurrentOption();
- if (ssl.mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (ssl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
editsubtitles = true;
ssl.setDarkSelOption(false);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (asl.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (asl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
editsubtitles = false;
ssl.setDarkSelOption(true);
ssl.draw();
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
- else if (ssl.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ else if (ssl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
editsubtitles = true;
ssl.setDarkSelOption(false);
else
{
//check if press is outside this view! then simulate cancel
- int x = (m->parameter >> 16) - getScreenX();
- int y = (m->parameter & 0xFFFF) - getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x < 0 || y < 0 || x > static_cast<int>(getWidth()) || y > static_cast<int>(getHeight()))
{
}
else */if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
quickUpdate();
boxstack->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_MOVE)
{
- if (chanListbox.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (chanListbox.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
drawData();
boxstack->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (chanListbox.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (chanListbox.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
int keyx = chanListbox.getRootBoxOffsetX();
int keyy = chanListbox.getRootBoxOffsetY() + chanListbox.getHeight() + 2;
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
quickUpdate();
boxstack->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
+ if (sl.mouseLBDOWN(x, y))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
- else if (boxRed.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ else if (boxRed.mouseLBDOWN(x, y))
{
boxstack->handleCommand(Input::RED);
}
- else if (boxGreen.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ else if (boxGreen.mouseLBDOWN(x, y))
{
- boxstack->handleCommand(Input::GREEN);
+ boxstack->handleCommand(Input::GREEN); // FIXME all these green? is this right?
}
- else if (boxYellow.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ else if (boxYellow.mouseLBDOWN(x, y))
{
boxstack->handleCommand(Input::GREEN);
}
- else if (boxBlue.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ else if (boxBlue.mouseLBDOWN(x, y))
{
boxstack->handleCommand(Input::GREEN);
}
{
if (m->message == Message::MOUSE_MOVE)
{
- if (buttonYes.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (buttonYes.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
buttonNo.setActive(0);
selectedOption = YES;
draw();
boxstack->update(this);
}
- else if (buttonNo.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ else if (buttonNo.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
buttonYes.setActive(0);
selectedOption = NO;
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (buttonYes.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (buttonYes.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
- else if (buttonNo.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ else if (buttonNo.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_MOVE)
{
- if (tabbar.mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (tabbar.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
int cancel = true;
- int x = (m->parameter >> 16) - getScreenX();
- int y = (m->parameter & 0xFFFF) - getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if ((boxRed.getX() <= x) && (boxRed.getX() + (int)boxRed.getWidth() >= x) &&
(boxRed.getY() <= y) && (boxRed.getY() + (int)boxRed.getHeight() >= y)) {
}
- if (cancel && tabbar.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (cancel && tabbar.mouseLBDOWN(x, y))
{
BoxStack::getInstance()->update(this);
cancel = false;
BoxStack::getInstance()->handleCommand(Input::BACK); //simulate cancel press
}
}
- } else if (m->message == Message::MOUSE_SCROLL)
+ }
+ else if (m->message == Message::MOUSE_SCROLL)
{
- if (tabbar.mouseAndroidScroll((m->tag >> 16) - getScreenX(), (m->tag & 0xFFFF) - getScreenY(),
- (short)(m->parameter >> 16), (short)(m->parameter & 0xFFFF)))
+ if (tabbar.mouseAndroidScroll(m->parameter - getScreenX(), m->tag - getScreenY(), 0, reinterpret_cast<ULONG>(m->data)))
{
BoxStack::getInstance()->update(this);
return;
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.draw();
doShowingBar();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
updateSelection();
boxstack->handleCommand(Input::OK); //simulate OK press
{
if (m->message == Message::MOUSE_MOVE)
{
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
- if (tabbar.mouseMove(x,y))
- {
- BoxStack::getInstance()->update(this);
- }
-
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
+ if (tabbar.mouseMove(x, y)) BoxStack::getInstance()->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
- if (tabbar.mouseLBDOWN(x,y))
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
+ if (tabbar.mouseLBDOWN(x, y))
{
BoxStack::getInstance()->update(this);
}
}
}
}
-
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- int x = (m->parameter >> 16) - getScreenX();
- int y = (m->parameter & 0xFFFF) - getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (coordsOutsideBox(m))
{
{
if (m->message == Message::MOUSE_MOVE)
{
- if (buttonYes.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (buttonYes.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
buttonNo.setActive(0);
selectedOption = YES;
draw();
BoxStack::getInstance()->update(this);
}
- else if (buttonNo.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ else if (buttonNo.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
buttonYes.setActive(0);
selectedOption = NO;
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (buttonYes.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (buttonYes.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
- else if (buttonNo.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ else if (buttonNo.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_LBDOWN)
{
- int x=(m->parameter>>16)-(int)getScreenX();
- int y=(m->parameter&0xFFFF)-(int)getScreenY();
+ int x = m->parameter - (int)getScreenX();
+ int y = m->tag - (int)getScreenY();
if (!barShowing)
{
boxstack->handleCommand(Input::OK); //simulate rok press
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.draw();
BoxStack::getInstance()->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
{
for (int i = PLAY; i < last; i++)
{
- if (button[i].mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (button[i].mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
for (int j = PLAY; j < last; j++)
button[j].setActive(0);
button[i].setActive(1);
- tabbar.activateFocus(false);
- buttons = true;
+ tabbar.activateFocus(false);
+ buttons = true;
selected=i;
draw();
BoxStack::getInstance()->update(this);
break;
}
}
- if (tabbar.mouseMove((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (tabbar.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->update(this);
return;
}
else if (m->message == Message::MOUSE_SCROLL)
{
- if (tabbar.mouseAndroidScroll((m->tag >> 16) - getScreenX(), (m->tag & 0xFFFF) - getScreenY(),
- (short)(m->parameter >> 16), (short) (m->parameter & 0xFFFF)))
+ if (tabbar.mouseAndroidScroll(m->parameter - getScreenX(), m->tag - getScreenY(), 0, reinterpret_cast<ULONG>(m->data)))
{
BoxStack::getInstance()->update(this);
return;
int cancel = true;
for (int i = PLAY; i < last; i++)
{
- if (button[i].mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (button[i].mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
buttons = true;
break;
}
}
- if (cancel && tabbar.mouseLBDOWN((m->parameter >> 16) - getScreenX(), (m->parameter & 0xFFFF) - getScreenY()))
+ if (cancel && tabbar.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
buttons = false;
button[selected].setActive(0);
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
quickUpdate();
boxstack->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.draw();
BoxStack::getInstance()->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.draw();
BoxStack::getInstance()->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
{
if (m->message == Message::MOUSE_MOVE)
{
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (buttonBack.mouseMove(x,y)) {
selectedButton=0;
buttonDelete.setActive(false);
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
- quickUpdate();
+ quickUpdate();
BoxStack::getInstance()->update(this);
}
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
BoxStack::getInstance()->handleCommand(Input::OK); //simulate OK press
}
if (m->message == Message::MOUSE_LBDOWN)
{
//check if press is outside this view! then simulate cancel
- int x = (m->parameter >> 16) - osd.getScreenX();
- int y = (m->parameter & 0xFFFF) - osd.getScreenY();
+ int x = m->parameter - osd.getScreenX();
+ int y = m->tag - osd.getScreenY();
if (osd.getVisible())
{
if ((boxRed.getX()<=x) && (boxRed.getX()+(int)boxRed.getWidth()>=x ) &&
if (m->message == Message::MOUSE_LBDOWN)
{
- UINT x = (m->parameter>>16) - getScreenX();
- UINT y = (m->parameter&0xFFFF) - getScreenY();
+ UINT x = m->parameter - getScreenX();
+ UINT y = m->tag - getScreenY();
if (!barShowing)
{
if (m->message == Message::MOUSE_LBDOWN)
{
- UINT x = (m->parameter>>16) - getScreenX();
- UINT y = (m->parameter&0xFFFF) - getScreenY();
+ UINT x = m->parameter - getScreenX();
+ UINT y = m->tag - getScreenY();
if (!barShowing)
{
{
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.draw();
boxstack->update(this);
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
boxstack->handleCommand(Input::OK); //simulate OK press
}
return DefWindowProc(wind,msg,wparam, lparam);
}
break;
- case WM_MOUSEMOVE: {
-
- lastmousemove=timeGetTime();
- SetCursor(LoadCursor(NULL,IDC_ARROW));
- SetTimer(wind,VOMP_CURSORUPDATE,4500,NULL);
- POINT mpos={GET_X_LPARAM(lparam),GET_Y_LPARAM(lparam)};
- ClientToScreen(wind,&mpos);
- if (TranslateMousePosition(&mpos)) {
- Message *mousemes=new Message();
- mousemes->message=Message::MOUSE_MOVE;
- mousemes->from=NULL;
- mousemes->p_to = Message::MOUSE_RECEIVER;
- mousemes->parameter=(mpos.x & 0xFFFF)<< 16| (mpos.y & 0xFFFF);
- mousemes->tag=0;
- messageQueue->postMessage(mousemes);
+ case WM_CONTEXTMENU:
+ if (!ContextMenu(wind,GET_X_LPARAM(lparam),GET_Y_LPARAM(lparam))) {
+ return DefWindowProc(wind, msg, wparam, lparam);
+ } else {
+ return 0;
}
-
- return 0;
- //return DefWindowProc(wind,msg,wparam, lparam);
- }
break;
case WM_TIMER:
if (wparam==VOMP_CURSORUPDATE) {
return 0;
}
return DefWindowProc(wind, msg, wparam, lparam);
-
break;
- case WM_CONTEXTMENU:
- if (!ContextMenu(wind,GET_X_LPARAM(lparam),GET_Y_LPARAM(lparam))) {
- return DefWindowProc(wind, msg, wparam, lparam);
- } else {
- return 0;
+
+ // Mouse events
+ // param = X
+ // tag = Y
+ // data = wheel delta
+
+ case WM_MOUSEMOVE:
+ {
+ lastmousemove = timeGetTime();
+ SetCursor(LoadCursor(NULL,IDC_ARROW));
+ SetTimer(wind, VOMP_CURSORUPDATE, 4500, NULL);
+ POINT mpos = { GET_X_LPARAM(lparam), GET_Y_LPARAM(lparam) };
+ ClientToScreen(wind, &mpos);
+ if (TranslateMousePosition(&mpos))
+ {
+ Message* mousemes = new Message();
+ mousemes->message = Message::MOUSE_MOVE;
+ mousemes->from = NULL;
+ mousemes->p_to = Message::MOUSE_RECEIVER;
+ mousemes->parameter = mpos.x;
+ mousemes->tag = mpos.y;
+
+ //mousemes->parameter = (mpos.x & 0xFFFF) << 16 | (mpos.y & 0xFFFF);
+ //mousemes->tag = 0;
+ messageQueue->postMessage(mousemes);
+ }
+ //return DefWindowProc(wind,msg,wparam, lparam);
+ break;
}
- break;
- case WM_LBUTTONDOWN:{
- POINT mpos={GET_X_LPARAM(lparam),GET_Y_LPARAM(lparam)};
- ClientToScreen(wind,&mpos);
- if (TranslateMousePosition(&mpos)) {
- Message *mousemes=new Message();
- mousemes->message=Message::MOUSE_LBDOWN;
- mousemes->from=NULL;
- mousemes->p_to = Message::MOUSE_RECEIVER;
- mousemes->parameter=(mpos.x & 0xFFFF)<< 16| (mpos.y & 0xFFFF);
- mousemes->tag=0;
- messageQueue->postMessage(mousemes);
+ case WM_LBUTTONDOWN:
+ {
+ POINT mpos = { GET_X_LPARAM(lparam), GET_Y_LPARAM(lparam) };
+ ClientToScreen(wind, &mpos);
+ if (TranslateMousePosition(&mpos))
+ {
+ Message* mousemes = new Message();
+ mousemes->message = Message::MOUSE_LBDOWN;
+ mousemes->from = NULL;
+ mousemes->p_to = Message::MOUSE_RECEIVER;
+ mousemes->parameter = mpos.x;
+ mousemes->tag = mpos.y;
+
+ //mousemes->parameter = (mpos.x & 0xFFFF) << 16 | (mpos.y & 0xFFFF);
+ //mousemes->tag = 0;
+ messageQueue->postMessage(mousemes);
+ }
+ break;
}
- }break;
- case WM_MOUSEWHEEL:{
- POINT mpos = { GET_X_LPARAM(lparam), GET_Y_LPARAM(lparam) };
- ClientToScreen(wind, &mpos);
- if (TranslateMousePosition(&mpos)) {
- Message *mousemes = new Message();
- mousemes->message = Message::MOUSE_SCROLL;
- mousemes->from = NULL;
+ case WM_MOUSEWHEEL:
+ {
+ POINT mpos = { GET_X_LPARAM(lparam), GET_Y_LPARAM(lparam) };
+ ClientToScreen(wind, &mpos);
+ if (TranslateMousePosition(&mpos))
+ {
+ Message* mousemes = new Message();
+ mousemes->message = Message::MOUSE_SCROLL;
+ mousemes->from = NULL;
mousemes->p_to = Message::MOUSE_RECEIVER;
- mousemes->parameter = (0 & 0xFFFF) << 16 | (GET_WHEEL_DELTA_WPARAM(wparam) &0xFFFF);
- mousemes->tag = (mpos.x & 0xFFFF) << 16 | (mpos.y & 0xFFFF);
- messageQueue->postMessage(mousemes);
- }
+ mousemes->parameter = mpos.x;
+ mousemes->tag = mpos.y;
+ mousemes->data = GET_WHEEL_DELTA_WPARAM(wparam) & 0xFFFF; // filter prob not necessary
- } break;
- default:
- return DefWindowProc(wind, msg, wparam, lparam);
+ //mousemes->parameter = (0 & 0xFFFF) << 16 | (GET_WHEEL_DELTA_WPARAM(wparam) & 0xFFFF);
+ //mousemes->tag = (mpos.x & 0xFFFF) << 16 | (mpos.y & 0xFFFF);
+ messageQueue->postMessage(mousemes);
+ }
+ break;
}
- return 0L;
+
+
+ default:
+ return DefWindowProc(wind, msg, wparam, lparam);
+ }
+
+ return 0L;
}
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.setShowSelOption(true);
sl.draw();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
ViewMan::getInstance()->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x<0 || y <0 || x>getWidth() || y>getHeight())
{
ViewMan::getInstance()->handleCommand(Input::BACK); //simulate cancel press
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.setShowSelOption(true);
sl.draw();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
ViewMan::getInstance()->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x<0 || y <0 || x>getWidth() || y>getHeight())
{
ViewMan::getInstance()->handleCommand(Input::BACK); //simulate cancel press
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.setShowSelOption(true);
sl.draw();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
ViewMan::getInstance()->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x<0 || y <0 || x>getWidth() || y>getHeight())
{
ViewMan::getInstance()->handleCommand(Input::BACK); //simulate cancel press
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.setShowSelOption(true);
sl.draw();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
ViewMan::getInstance()->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x<0 || y <0 || x>getWidth() || y>getHeight())
{
ViewMan::getInstance()->handleCommand(Input::BACK); //simulate cancel press
if (m->message == Message::MOUSE_MOVE)
{
- if (sl.mouseMove((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseMove(m->parameter - getScreenX(), m->tag - getScreenY()))
{
sl.setShowSelOption(true);
sl.draw();
}
else if (m->message == Message::MOUSE_LBDOWN)
{
- if (sl.mouseLBDOWN((m->parameter>>16)-getScreenX(),(m->parameter&0xFFFF)-getScreenY()))
+ if (sl.mouseLBDOWN(m->parameter - getScreenX(), m->tag - getScreenY()))
{
ViewMan::getInstance()->handleCommand(Input::OK); //simulate OK press
}
else
{
//check if press is outside this view! then simulate cancel
- int x=(m->parameter>>16)-getScreenX();
- int y=(m->parameter&0xFFFF)-getScreenY();
+ int x = m->parameter - getScreenX();
+ int y = m->tag - getScreenY();
if (x<0 || y <0 || x>getWidth() || y>getHeight())
{
ViewMan::getInstance()->handleCommand(Input::BACK); //simulate cancel press