Пример #1
0
//---------------------------------------------------------------------------
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);
}
Пример #2
0
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);
}
Пример #3
0
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;
}
Пример #4
0
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();
}
Пример #5
0
//--------------------------------------------------------------------------------
//  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;
}
Пример #6
0
//-----------------------------------------------------------------------
//  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;
}
Пример #7
0
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);
}
Пример #8
0
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);
}