//--------------------------------------------------------------------------- void __fastcall TCallCenter_Sub_Form::N13x1Click(TObject *Sender) { double scale; TMenuItem* pMenu = (TMenuItem*)Sender; if( pMenu==N1x1 ) // 1x Click scale=1.0; else if( pMenu==N2x1 ) scale=3.0; else if( pMenu==N3x1 ) scale=7.0; else if( pMenu==N4x1 ) scale=12.0; else if( pMenu==N5x1 ) scale=20.0; else if( pMenu==N6x1 ) scale=30.0; else if( pMenu==N7x1 ) scale=25.0; else if( pMenu==N8x1 ) scale=40.0; else if( pMenu==N9x1 ) scale=50.0; else if( pMenu==N10x1 ) scale=60.0; else if( pMenu==N11x1 ) scale=70.0; else if( pMenu==N12x1 ) scale=90.0; else scale=200.0; ChangeZoom(scale); }
void CChildView::OnRButtonDown(UINT nFlags, CPoint point) { int i; if (nFlags & MK_SHIFT) { if (nFlags & MK_CONTROL) { i = m_LastZoomIdx - 1; keybd_event('~', 0, 0, 0); // Disables kbd layout switching by Ctrl+Shift if (m_LastZoomIdx == -1) goto mend; } else { if (m_EditorMode) goto mend; i = g_pMainFrame->m_cbZoom.GetCurSel(); } m_LastZoomIdx = -1; if (i < g_pMainFrame->m_cbZoom.GetCount() - 1) { ChangeZoom(point, i + 1); } } else if (m_EditorMode) SelClick(point); mend: CWnd ::OnRButtonDown(nFlags, point); }
int carte::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QWidget::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: ChangeRes(); break; case 1: changeRes2((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 2: ChangeZoom(); break; case 3: ChangeZoomIn(); break; case 4: signalDessinerChemin((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 5: SignalFlag((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 6: augmenter_zoom(); break; case 7: diminuer_zoom(); break; case 8: fermerProjet(); break; case 9: setNbpoint(); break; case 10: dessinerChemin((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 11: attributCouleur((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 12: sauvegardeItineraire((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 13: placerFlag1((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 14: placerFlag2((*reinterpret_cast< const QPoint(*)>(_a[1]))); break; case 15: mousePressEvent((*reinterpret_cast< QMouseEvent*(*)>(_a[1]))); break; case 16: mouseReleaseEvent((*reinterpret_cast< QMouseEvent*(*)>(_a[1]))); break; case 17: wheelEvent((*reinterpret_cast< QWheelEvent*(*)>(_a[1]))); break; case 18: paintEvent((*reinterpret_cast< QPaintEvent*(*)>(_a[1]))); break; default: ; } _id -= 19; } return _id; }
CFuiMBROS::CFuiMBROS(Tag idn, const char *filename) :CFuiWindow(idn,filename,360,730,0) { strncpy(text,"3D-MODELS BROWSER",255); Mod = 0; //---Allocate camera object ----------------------------- oCam = new CCameraObject(); oCam->SetFBO(MBROS_WID,MBROS_HTR); oCam->MoveMouseIs(1); //--- Create the position labels ------------------------- mPOS = new CFuiLabel (8,10,MBROS_WID, 18,this); AddChild('mpos',mPOS); //----Create Display Canvas ---------------------------- oDSP = new CFuiCanva (8,30,MBROS_WID,MBROS_HTR,this); AddChild('odsp',oDSP); oDSP->EraseCanvas(); oDSP->RegisterCamera(oCam); //----Create Zoom Slider --------------------------------- zSLD = new CFuiSlider(8,300,MBROS_WID, 30,this); AddChild('zsld',zSLD); //----Create Zoom Label ---------------------------------- zLAB = new CFuiLabel (8,340,MBROS_WID, 20,this); AddChild('zlab',zLAB); //----Create Canva --------------------------------------- oINF = new CFuiCanva (8,370,MBROS_WID, 30,this); AddChild('oinf',oINF); //----Create the List box -------------------------------- oWIN = new CFuiList (8,440,MBROS_WID,200,this); oWIN->SetVScroll(); AddChild('olst',oWIN); //---Create Total label --------------------------------- wTOT = new CFuiLabel (8,650,MBROS_WID, 16,this); AddChild('wtot',wTOT); //---Create Object origin ------------------------------- wOrg = new CFuiLabel (8,670,MBROS_WID, 16,this); AddChild('worg',wOrg); //---ZB option ------------------------------------------ wZbo = new CFuiCheckBox(8, 690, 300,20,this); wZbo->IniState(0); AddChild('zbop',wZbo,"Flat object on ground (No ZB)"); //----Create surface for windows ------------------------ CFuiWindow::ReadFinished(); //----Create object list -------------------------------- Lin = 0; wObj = 0; oBOX.SetParameters(this,'olst',0); globals->tcm->GetObjLines(&oBOX); oBOX.SortAndDisplay(); //---Allocate a camera orbit ---------------------------- sCam = new CCameraOrbit(); //---Create application profile ------------------------- ctx.prof = MBROS_PROF; ctx.mode = SLEW_RCAM; rcam = globals->ccm->SetRabbitCamera(ctx,RABBIT_S_AND_C); // Change camera //---Set focus on first object -------------------------- NewSelection(); ChangeZoom(); }
//-------------------------------------------------------------------------------- // Compute Camera object position relative to object size //-------------------------------------------------------------------------------- void CFuiMBROS::SetZoom() { double ang = DegToRad(double(16)); double hm = Mod->MaxExtend() * 0.5; double dr = hm / tan(ang); if (dr < 50) dr = 50; double rat = oCam->SetRange(dr) * 100; oCam->Refresh(); zSLD->SetValue(rat); ChangeZoom(); return; }
//----------------------------------------------------------------------- // Notifications //----------------------------------------------------------------------- void CFuiMBROS::NotifyChildEvent(Tag idm,Tag itm,EFuiEvents evn) { switch (idm) { case 'sysb': SystemHandler(evn); return; //--- Zoom is changing ------------------ case 'zsld': ChangeZoom(); return; //--- A new selection is occuring ------- case 'olst': oBOX.VScrollHandler((U_INT)itm,evn); NewSelection(); return; //--- The ZB option is modified --------- case 'zbop': ChangeZB(); return; } return; }
void CChildView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) { int i; CPoint point; CRect r; if (theApp.m_map.IsEmpty()) goto mend; BOOL CtrlPressed; CtrlPressed = (GetAsyncKeyState(VK_CONTROL) & 0x8000); UpdateCursor(); switch(nChar) { case VK_ADD: case VK_SUBTRACT: case VK_OEM_PLUS: case VK_OEM_MINUS: if (!CtrlPressed) { GetClientRect(&r); point.x = r.Width()/2; point.y = r.Height()/2; i = g_pMainFrame->m_cbZoom.GetCurSel(); } break; } switch(nChar) { case VK_UP: theApp.m_map.ScrollMap(0, -32); break; case VK_DOWN: theApp.m_map.ScrollMap(0, 32); break; case VK_LEFT: theApp.m_map.ScrollMap(-32, 0); break; case VK_RIGHT: theApp.m_map.ScrollMap(32, 0); break; case VK_NEXT: if (theApp.m_map.m_iLevel > theApp.m_map.m_iMinLevel) { SelectAll(FALSE); theApp.m_map.m_iLevel--; Invalidate(FALSE); g_pMainFrame->m_cbLevel.SelectString(-1, theApp.m_map.GetLevelStr(theApp.m_map.m_iLevel)); } break; case VK_PRIOR: if (theApp.m_map.m_iLevel < theApp.m_map.m_iMaxLevel) { SelectAll(FALSE); theApp.m_map.m_iLevel++; Invalidate(FALSE); g_pMainFrame->m_cbLevel.SelectString(-1, theApp.m_map.GetLevelStr(theApp.m_map.m_iLevel)); } break; case VK_F9: if (CtrlPressed) { theApp.m_map.m_ShowSquares = !theApp.m_map.m_ShowSquares; Invalidate(FALSE); } break; case VK_ADD: case VK_OEM_PLUS: if (CtrlPressed) { if (theApp.m_map.Overlay) g_pMainFrame->SetShading(theApp.m_map.Shading - 1); } else if (i > 0) { ChangeZoom(point, i - 1); m_LastZoomIdx = -1; } break; case VK_SUBTRACT: case VK_OEM_MINUS: if (CtrlPressed) { if (theApp.m_map.Overlay) g_pMainFrame->SetShading(theApp.m_map.Shading + 1); } else if (i < g_pMainFrame->m_cbZoom.GetCount() - 1) { ChangeZoom(point, i + 1); m_LastZoomIdx = -1; } break; case VK_ESCAPE: if (m_EditorMode) OnSelectMode(); break; } mend: CWnd ::OnKeyDown(nChar, nRepCnt, nFlags); }
void CChildView::OnLButtonDown(UINT nFlags, CPoint point) { int i; CPoint pt; CContentObjects& objs = theApp.m_map.Content.Objects; CContentObj *o2; BOOL ShiftPressed = nFlags & MK_SHIFT; if (theApp.m_map.IsEmpty() || m_InPopup) goto mend; SetFocus(); i = m_NewObjectType; m_NewObjectType = 0; if (i) SelectAll(FALSE); switch (i) { case otTextLabel: SetArrowCursor(); CTextProps *tp; tp = new CTextProps(this); if (tp->DoModal() == IDOK) { CContentText *ct = new CContentText(theApp.m_map.Content); ct->StyleIdx = m_DefStyleIdx; ct->SetText(tp->m_EditText); pt = ScreenToMap(point); // ct->SetPosition(pt.x, pt.y); ct->SetPosition(pt.x - ct->BoundsRect.Width()/2, pt.y - ct->BoundsRect.Height()/2); ct->Plane = theApp.m_map.m_iLevel; ct->Selected = TRUE; m_ObjSelCount++; theApp.m_map.Content.Objects.Add(ct); InvalidateObj(ct); theApp.m_map.Content.Modified = TRUE; } return; case otMark: SetArrowCursor(); CNewMarkDlg dlg(this); if (dlg.DoModal() == IDOK) { CContentMark *cm = new CContentMark(theApp.m_map.Content); cm->Category = dlg.m_CategoryIdx; cm->ShortText = dlg.m_ShortText; cm->LongText = dlg.m_LongText; pt = ScreenToMap(point); cm->SetPosition(pt.x - cm->BoundsRect.Width()/2, pt.y - cm->BoundsRect.Height()/2); cm->Plane = theApp.m_map.m_iLevel; cm->Selected = TRUE; m_ObjSelCount++; theApp.m_map.Content.Objects.Add(cm); InvalidateObj(cm); theApp.m_map.Content.Modified = TRUE; } return; } pt = ScreenToMap(point); o2 = theApp.m_map.Content.GetObjectAt(pt, theApp.m_map.m_iLevel); if (!m_EditorMode) { if (ShiftPressed) { i = g_pMainFrame->m_cbZoom.GetCurSel(); if (nFlags & MK_CONTROL) { m_LastZoomIdx = i; i = 1; keybd_event('~', 0, 0, 0); // Disables kbd layout switching by Ctrl+Shift } else m_LastZoomIdx = -1; if (i > 0) { ChangeZoom(point, i - 1); } } else { if (o2 && o2->GetType() == otMark && !(theApp.m_map.Content.DrawOptions & cdoHideAll)) { BYTE dm = ((CContentMark*)o2)->DisplayMode; HideMarkDescriptions(); if (dm != dmExpanded) { ((CContentMark*)o2)->DisplayMode = dmExpanded; o2->Selected = FALSE; InvalidateObj(o2); } } else { m_Moving = FALSE; m_ptClick = point; SetViewCursor(m_DragHand2Cur); SetCapture(); } } } else { SelClick(point); m_ptClick = point; SetCapture(); m_Moving = FALSE; if (!o2) { m_Selection.left = m_Selection.right = point.x; m_Selection.top = m_Selection.bottom = point.y; } else m_Selection.SetRectEmpty(); } mend: CWnd ::OnLButtonDown(nFlags, point); }