void CHLRView3D::OnLButtonUp(UINT nFlags, CPoint point) { if ( nFlags & CASCADESHORTCUTKEY ) { return; } else // if ( Ctrl ) { switch (myCurrentMode) { case CurAction3d_Nothing : if (point.x == myXmin && point.y == myYmin) { // no offset between down and up --> selectEvent myXmax=point.x; myYmax=point.y; if (nFlags & MULTISELECTIONKEY ) MultiInputEvent(point.x,point.y); else InputEvent (point.x,point.y); } else { myXmax=point.x; myYmax=point.y; DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_False); if (nFlags & MULTISELECTIONKEY) MultiDragEvent(point.x,point.y,1); else DragEvent(point.x,point.y,1); } break; case CurAction3d_DynamicZooming : // SetCursor(AfxGetApp()->LoadStandardCursor()); myCurrentMode = CurAction3d_Nothing; break; case CurAction3d_WindowZooming : myXmax=point.x; myYmax=point.y; DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_False,LongDash); if ((abs(myXmin-myXmax)>ValZWMin) || (abs(myYmin-myYmax)>ValZWMin)) // Test if the zoom window is greater than a minimale window. { // Do the zoom window between Pmin and Pmax myView->WindowFitAll(myXmin,myYmin,myXmax,myYmax); } myCurrentMode = CurAction3d_Nothing; break; case CurAction3d_DynamicPanning : myCurrentMode = CurAction3d_Nothing; break; case CurAction3d_GlobalPanning : myView->Place(point.x,point.y,myCurZoom); myCurrentMode = CurAction3d_Nothing; break; case CurAction3d_DynamicRotation : myCurrentMode = CurAction3d_Nothing; break; default : Standard_Failure::Raise(" incompatible Current Mode "); break; } //switch (myCurrentMode) } // else // if ( Ctrl ) }
StateBarLogic::StateBarLogic(gkLogicTree* parent, UTsize handle): BaseLogic(parent, handle) { ADD_ISOCK(LEFT_KEY, false); ADD_ISOCK(RIGHT_KEY, false); ADD_ISOCK(UP_KEY, false); ADD_ISOCK(DOWN_KEY, false); ADD_ISOCK(OK_KEY, false); ADD_ISOCK(QUIT_KEY, false); ADD_ISOCK(IS_MOUSE_DOWN,false); ADD_ISOCK(IS_MOUSE_UP,false); ADD_ISOCK(IS_MOUSE_DRAG,DragEvent()); ADD_ISOCK(MOUSE_HIT, false); ADD_ISOCK(ENABLE, NONE); }
void CGeometryView::OnLButtonDown(UINT nFlags, CPoint point) { // save the current mouse coordinate in min myXmin=point.x; myYmin=point.y; myXmax=point.x; myYmax=point.y; if ( nFlags & MK_CONTROL ) { // Button MB1 down Control :start zomming // SetCursor(AfxGetApp()->LoadStandardCursor()); } else // if ( Ctrl ) { switch (myCurrentMode) { case CurAction3d_Nothing : // start a drag if (nFlags & MK_SHIFT) ShiftDragEvent(myXmax,myYmax,-1); else DragEvent(myXmax,myYmax,-1); break; break; case CurAction3d_DynamicZooming : // noting // SetCursor(AfxGetApp()->LoadStandardCursor()); break; case CurAction3d_WindowZooming : break; case CurAction3d_DynamicPanning :// noting // SetCursor(AfxGetApp()->LoadStandardCursor()); break; case CurAction3d_GlobalPanning :// noting // SetCursor(AfxGetApp()->LoadStandardCursor()); break; case CurAction3d_DynamicRotation : // SetCursor(AfxGetApp()->LoadStandardCursor()); if (!myDegenerateModeIsOn) myView->SetDegenerateModeOn(); myView->StartRotation(point.x,point.y); break; default : Standard_Failure::Raise(" incompatible Current Mode "); break; } } }
SetBackgroundLogic::SetBackgroundLogic(gkLogicTree* parent, size_t id):BaseLogic(parent, id), isSetBackground(false) { mWallpaperView = new WallpaperViewImpl(); ADD_ISOCK(LEFT_KEY, false); ADD_ISOCK(RIGHT_KEY, false); ADD_ISOCK(UP_KEY, false); ADD_ISOCK(DOWN_KEY, false); ADD_ISOCK(OK_KEY, false); ADD_ISOCK(QUIT_KEY, false); ADD_ISOCK(IS_MOUSE_DOWN,false); ADD_ISOCK(IS_MOUSE_UP,false); ADD_ISOCK(IS_MOUSE_DRAG,DragEvent()); ADD_ISOCK(MOUSE_HIT, false); ADD_ISOCK(ENABLE, NONE); }
AppMarketLogic::AppMarketLogic(gkLogicTree* parent, UTsize handle): BaseLogic(parent, handle) { ADD_ISOCK(LEFT_KEY, false); ADD_ISOCK(RIGHT_KEY, false); ADD_ISOCK(UP_KEY, false); ADD_ISOCK(DOWN_KEY, false); ADD_ISOCK(OK_KEY, false); ADD_ISOCK(QUIT_KEY, false); ADD_ISOCK(IS_MOUSE_DOWN,false); ADD_ISOCK(IS_MOUSE_UP,false); ADD_ISOCK(IS_MOUSE_DRAG,DragEvent()); ADD_ISOCK(MOUSE_HIT, false); ADD_ISOCK(ENABLE, NONE); gkString mAppMarketPackageName = "com.tcl.appmarket2"; gkString mAppMarketActivityName = "com.tcl.appmarket2.AppMarket2"; mFrom = "AppMarketLogic"; mSubject = "StartActivity"; mBody= mAppMarketPackageName + "\n" + mAppMarketActivityName; }
void CHLRView3D::OnMouseMove(UINT nFlags, CPoint point) { // ============================ LEFT BUTTON ======================= if ( nFlags & MK_LBUTTON) { if ( nFlags & CASCADESHORTCUTKEY ) { // move with MB1 and Control : on the dynamic zooming // Do the zoom in function of mouse's coordinates myView->Zoom(myXmax,myYmax,point.x,point.y); // save the current mouse coordinate in min myXmax = point.x; myYmax = point.y; } else // if ( Ctrl ) { switch (myCurrentMode) { case CurAction3d_Nothing : DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_False); myXmax = point.x; myYmax = point.y; if (nFlags & MULTISELECTIONKEY) MultiDragEvent(myXmax,myYmax,0); else DragEvent(myXmax,myYmax,0); DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_True); break; case CurAction3d_DynamicZooming : myView->Zoom(myXmax,myYmax,point.x,point.y); // save the current mouse coordinate in min \n"; myXmax=point.x; myYmax=point.y; break; case CurAction3d_WindowZooming : myXmax = point.x; myYmax = point.y; DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_False,LongDash); DrawRectangle(myXmin,myYmin,myXmax,myYmax,Standard_True,LongDash); break; case CurAction3d_DynamicPanning : myView->Pan(point.x-myXmax,myYmax-point.y); // Realize the panning myXmax = point.x; myYmax = point.y; break; case CurAction3d_GlobalPanning : // nothing break; case CurAction3d_DynamicRotation : myView->Rotation(point.x,point.y); myView->Redraw(); break; default : Standard_Failure::Raise(" incompatible Current Mode "); break; }// switch (myCurrentMode) }// if ( nFlags & CASCADESHORTCUTKEY ) else } else // if ( nFlags & MK_LBUTTON) // ============================ MIDDLE BUTTON ======================= if ( nFlags & MK_MBUTTON) { if ( nFlags & CASCADESHORTCUTKEY ) { myView->Pan(point.x-myXmax,myYmax-point.y); // Realize the panning myXmax = point.x; myYmax = point.y; } } else // if ( nFlags & MK_MBUTTON) // ============================ RIGHT BUTTON ======================= if ( nFlags & MK_RBUTTON) { if ( nFlags & CASCADESHORTCUTKEY ) { myView->Rotation(point.x,point.y); } }else //if ( nFlags & MK_RBUTTON) // ============================ NO BUTTON ======================= { // No buttons myXmax = point.x; myYmax = point.y; if (nFlags & MULTISELECTIONKEY) MultiMoveEvent(point.x,point.y); else MoveEvent(point.x,point.y); } }
DragEvent DrawWidget::GetDragEvent(QMouseEvent * e) const { return DragEvent(L2D(e->x()), L2D(e->y())); }