Beispiel #1
0
void BaseEditor::OnMouseWheelEvt(wxMouseEvent& event)
{
	int lines = -event.GetWheelRotation() / event.GetWheelDelta();

	if (event.ShiftDown())
	{
		int nPos = GetScrollPos(wxHORIZONTAL);
		SetScrollPos(wxHORIZONTAL, nPos + lines * event.GetLinesPerAction() * SCROLL_LINE_DISTANCE);
		UpdateScrollPosition(GetScrollPos(wxHORIZONTAL), GetScrollPos(wxVERTICAL));
	}
	else if (event.ControlDown())
	{
		if (lines < 0)
		{
			ZoomIn();
		}
		else
		{
			ZoomOut();
		}
	}
	else
	{
		int nPos = GetScrollPos(wxVERTICAL);
		SetScrollPos(wxVERTICAL, nPos + lines * event.GetLinesPerAction() * SCROLL_LINE_DISTANCE);
		UpdateScrollPosition(GetScrollPos(wxHORIZONTAL), GetScrollPos(wxVERTICAL));
	}
}
Beispiel #2
0
void
TrafficWidget::OnAction(int id)
{
  switch ((Action)id) {
  case CLOSE:
    PageActions::Restore();
    break;

  case DETAILS:
    OpenDetails();
    break;

  case PREVIOUS_ITEM:
    PreviousTarget();
    break;

  case NEXT_ITEM:
    NextTarget();
    break;

  case ZOOM_IN:
    ZoomIn();
    break;

  case ZOOM_OUT:
    ZoomOut();
    break;
  }
}
Beispiel #3
0
//------------------------------------------------------------------------
bool CIronSight::ZoomOut()
{
	if(m_pWeapon->IsBusy())
		return false;

	if(!m_zoomed)
	{
		EnterZoom(m_pShared->zoomParams.zoom_in_time, m_pShared->zoomParams.layer.c_str(), true);
		m_currentStep = 1;
	}
	else
	{
		int currentStep = m_currentStep;
		int nextStep = currentStep-1;

		if(nextStep < 1)
			return false;
		else
		{
			float oFoV = GetZoomFoVScale(currentStep);
			float tFoV = GetZoomFoVScale(nextStep);

			ZoomIn(m_pShared->zoomParams.stage_time, oFoV, tFoV, true);

			m_currentStep = nextStep;
			return true;
		}
	}

	return false;
}
Beispiel #4
0
/*----------------------------------------------------------------------
 * FrameMouseWheelCallback (generic callback)
 * is called when the mouse wheel is activated
 * params:
 *   + int frame :
 *   + int thot_mod_mask : what key is currently pressed
 *   [THOT_MOD_CTRL || THOT_MOD_ALT || THOT_MOD_SHIFT]
 *   + int x,y : the mouse position in the frame
 *   + int direction : >0 if wheel up <0 if wheel down
 *   + int delta : wheel delta, normally 120.
 * return:
 *   + TRUE : if the event must be forwarded to other widgets
 *   + FALSE : if the event is cought
 ----------------------------------------------------------------------*/
ThotBool FrameMouseWheelCallback( int frame, int thot_mod_mask,
                                 int direction, int delta,
                                 int x, int y )
{
  Document   document;
  View       view;

  if (direction > 0)
    {
      /* wheel mice up*/
      FrameToView (frame, &document, &view);
      if (thot_mod_mask & THOT_MOD_CTRL)
        /* if CTRL is down then zoom */
        ZoomOut (document, view);	   
      else if (thot_mod_mask & THOT_MOD_SHIFT)
        HorizontalScroll (frame, -39, 1);
      else
        VerticalScroll (frame, -39, 1);
    }
  else
    {
      /* wheel mice down */
      FrameToView (frame, &document, &view); 
      if (thot_mod_mask & THOT_MOD_CTRL)
        /* if CTRL is down then zoom */
        ZoomIn (document, view);
      else if (thot_mod_mask & THOT_MOD_SHIFT)
        HorizontalScroll (frame, 39, 1);          
      else
        VerticalScroll (frame, 39, 1);
    }
  return TRUE;
}
Beispiel #5
0
//------------------------------------------------------------------------
void CIronSight::EnterZoom(float time, const char *zoom_layer, bool smooth, int zoomStep)
{
	if(IsZoomingOut())
	{
		OnZoomedOut();
	}

	ResetTurnOff();
	OnEnterZoom();
	SetActorSpeedScale(0.35f);

	// marcok: please leave goc alone
	if(!UseAlternativeIronSight() && !g_pGameCVars->g_show_crosshair_tp)
		m_pWeapon->FadeCrosshair(1.0f, 0.0f, WEAPON_FADECROSSHAIR_ZOOM);

	float oFoV = GetZoomFoVScale(0);
	float tFoV = GetZoomFoVScale(zoomStep);

	ZoomIn(time, oFoV, tFoV, smooth);

	if(UseAlternativeIronSight())
		m_pWeapon->SetActionSuffix(m_pShared->zoomParams.suffix_FC.c_str());
	else
		m_pWeapon->SetActionSuffix(m_pShared->zoomParams.suffix.c_str());

	m_pWeapon->PlayAction(m_pShared->actions.zoom_in, 0, false, CItem::eIPAF_Default);
}
Beispiel #6
0
void CFFTDisp::OnLButtonUp(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default

	// 保存当前坐标
	CPoint ptTemp;
	ptTemp = point;
	//ScreenToClient( &ptTemp );
	m_ptRightClick = ptTemp;

	// 找到主框架
	CMainFrame* pFrame = NULL;
	pFrame = (CMainFrame*)(AfxGetApp()->m_pMainWnd);
	if ( pFrame != NULL )
	{
		if ( pFrame->m_bZoomOut )
		{
			ZoomOut();
		}
		else if ( pFrame->m_bZoomIn )
		{
			ZoomIn();
		}		
	}

	CWnd::OnLButtonUp(nFlags, point);
}
Beispiel #7
0
//--------------------------------------------------------------------
void InterView::MouseDown(BPoint point)
{
	BMenuItem *selected;
	BPoint cursor;
	uint32 buttons;

	GetMouse(&cursor, &buttons, false);

	if (buttons & B_PRIMARY_MOUSE_BUTTON)
	{
		mouseDown = true;
		mouseCoord = point;
		SetMouseEventMask(B_POINTER_EVENTS,B_LOCK_WINDOW_FOCUS);
//		be_app->SetCursor(B_I_BEAM_CURSOR);
	}

	if (buttons & B_SECONDARY_MOUSE_BUTTON)
	{
		ConvertToScreen(&point);
		selected = menu->Go(point);
		if ( selected && (selected->Message() != NULL))
			if (selected->Message()->what == MSG_ZOOM_IN)
				ZoomIn();
			else if (selected->Message()->what == MSG_ZOOM_OUT)
				ZoomOut();
			else
				msgDest->PostMessage(selected->Message());
 	}

	if (buttons & B_TERTIARY_MOUSE_BUTTON)
	{
		((InterApp*)be_app)->theWin->SwapFullScreenNoMenu();
	}
}
CompositingWidget::CompositingWidget(QWidget* parent) : QWidget(parent), 
                                                        scale_(1.0),
                                                        offset_(0, 0),
                                                        selected_image_idx_(-1) {
  setMinimumSize(WIDGET_SIZE, WIDGET_SIZE);
  setMaximumSize(WIDGET_SIZE, WIDGET_SIZE);
  resize(WIDGET_SIZE, WIDGET_SIZE);
  QPalette pal = palette();
  pal.setColor(backgroundRole(), Qt::black);
  setPalette(pal);
  setAutoFillBackground(true);
  
  setAcceptDrops(true);
  
  QPushButton* zoom_in = new QPushButton("+", this);
  QPushButton* zoom_out = new QPushButton("-", this);
  
  zoom_in->show();
  zoom_out->show();

  zoom_out->setGeometry(10, height() - 15 - zoom_out->height() * 2,
                        zoom_out->width(), zoom_out->height());   
  zoom_in->setGeometry(10, height() - 10 - zoom_in->height(), zoom_in->width(), zoom_in->height());
  
  connect(zoom_in, SIGNAL(clicked()), this, SLOT(ZoomIn()));
  connect(zoom_out, SIGNAL(clicked()), this, SLOT(ZoomOut()));
}
Beispiel #9
0
bool
FlarmTrafficControl::OnKeyDown(unsigned key_code)
{
  switch (key_code) {
  case KEY_UP:
    if (!HasPointer())
      break;

    ZoomIn();
    return true;

  case KEY_DOWN:
    if (!HasPointer())
      break;

    ZoomOut();
    return true;

#ifdef GNAV
  case '6':
    PrevTarget();
    return true;

  case '7':
    NextTarget();
    return true;
#endif
  }

  return FlarmTrafficWindow::OnKeyDown(key_code) ||
    InputEvents::processKey(key_code);
}
Beispiel #10
0
bool
FlarmTrafficControl::OnMouseGesture(const TCHAR* gesture)
{
  if (StringIsEqual(gesture, _T("U"))) {
    ZoomIn();
    return true;
  }
  if (StringIsEqual(gesture, _T("D"))) {
    ZoomOut();
    return true;
  }
  if (StringIsEqual(gesture, _T("UD"))) {
    SetAutoZoom(true);
    return true;
  }
  if (StringIsEqual(gesture, _T("DR"))) {
    OpenDetails();
    return true;
  }
  if (StringIsEqual(gesture, _T("RL"))) {
    SwitchData();
    return true;
  }

  return InputEvents::processGesture(gesture);
}
Beispiel #11
0
//------------------------------------------------------------------------
void CIronSight::ZoomIn()
{
	if(m_pWeapon->IsBusy())
		return;

	if(!m_zoomed)
	{
		EnterZoom(m_pShared->zoomParams.zoom_in_time, m_pShared->zoomParams.layer.c_str(), true);
		m_currentStep = 1;
	}
	else
	{
		int currentStep = m_currentStep;
		int nextStep = currentStep+1;

		if(nextStep > m_pShared->zoomParams.stages.size())
			return;
		else
		{
			float oFoV = GetZoomFoVScale(currentStep);
			float tFoV = GetZoomFoVScale(nextStep);

			ZoomIn(m_pShared->zoomParams.stage_time, oFoV, tFoV, true);

			m_currentStep = nextStep;
		}
	}
}
Beispiel #12
0
bool
FlarmTrafficControl::on_mouse_gesture(const TCHAR* gesture)
{
  if (StringIsEqual(gesture, _T("U"))) {
    ZoomIn();
    return true;
  }
  if (StringIsEqual(gesture, _T("D"))) {
    ZoomOut();
    return true;
  }
  if (StringIsEqual(gesture, _T("L"))) {
    PrevTarget();
    return true;
  }
  if (StringIsEqual(gesture, _T("R"))) {
    NextTarget();
    return true;
  }
  if (StringIsEqual(gesture, _T("UD"))) {
    SetAutoZoom(true);
    return true;
  }
  if (StringIsEqual(gesture, _T("DR"))) {
    OpenDetails();
    return true;
  }
  if (StringIsEqual(gesture, _T("RL"))) {
    SwitchData();
    return true;
  }

  return false;
}
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
void CTFHunterRifle::HandleZooms( void )
{
	// Get the owning player.
	CTFPlayer *pPlayer = ToTFPlayer( GetOwner() );
	if ( !pPlayer )
		return;

	// Handle the zoom when taunting.
	if ( pPlayer->m_Shared.InCond( TF_COND_TAUNTING ) )
	{
		if ( pPlayer->m_Shared.InCond( TF_COND_AIMING ) )
		{
			ToggleZoom();
		}

		//Don't rezoom in the middle of a taunt.
		ResetTimers();
	}

	if ( m_flUnzoomTime > 0 && gpGlobals->curtime > m_flUnzoomTime )
	{
		if ( m_bRezoomAfterShot )
		{
			ZoomOutIn();
			m_bRezoomAfterShot = false;
		}
		else
		{
			ZoomOut();
		}

		m_flUnzoomTime = -1;
	}

	if ( m_flRezoomTime > 0 )
	{
		if ( gpGlobals->curtime > m_flRezoomTime )
		{
            ZoomIn();
			m_flRezoomTime = -1;
		}
	}

	if ( ( pPlayer->m_nButtons & IN_ATTACK2 ) && ( m_flNextSecondaryAttack <= gpGlobals->curtime ) )
	{
		// If we're in the process of rezooming, just cancel it
		if ( m_flRezoomTime > 0 || m_flUnzoomTime > 0 )
		{
			// Prevent them from rezooming in less time than they would have
			m_flNextSecondaryAttack = m_flRezoomTime + TF_WEAPON_HUNTERRIFLE_ZOOM_TIME;
			m_flRezoomTime = -1;
		}
		else
		{
			Zoom();
		}
	}
}
void MazeGraphicsView::wheelEvent(QWheelEvent* event)
{
    if (event->delta() > 0)
        ZoomIn();
    else
        ZoomOut();

    SetupMatrix();
}
void CScalableLayout::ZoomIn( CDuiString sNodeName )
{
	if (!m_pRootNode)
	{
		return;
	}
	CScalableNode::Ptr pNode = m_pRootNode->FindChild(sNodeName);

	ZoomIn(pNode);
}
void CScalableLayout::SetContent( CScalableNode::Ptr pRoot,int nMaxLevel )
{
	m_pRootNode = pRoot;
	m_pCurrentNode = pRoot;
	m_nMaxLevel = nMaxLevel;

	m_pProgress->SetMinValue(0);
	m_pProgress->SetMaxValue(m_nMaxLevel + 1);

	ZoomIn(m_pRootNode);
}
Beispiel #17
0
void BlackHole::Update(float dt){
    if (!updateEn) return;
    
    if (!isZooming){
        BaseCircle::Update(dt);
    }else if (isZooming == ZOOM_OUT){
        ZoomOut(dt);
    }else {
        ZoomIn(dt);
    }
}
Beispiel #18
0
BOOL CMapManagerView::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt) 
{
	// TODO: Add your message handler code here and/or call default
	if(m_IsLoadMap) 
	{	
		CPoint centerpoint ;
		centerpoint.x=(m_CurWinScope.left+m_CurWinScope.right)/2;
		centerpoint.y=(m_CurWinScope.top+m_CurWinScope.bottom)/2;
		if(zDelta>0)
		{
         ZoomIn(0.4,centerpoint);
		}
		if(zDelta<0)
		{
          ZoomIn(0.7,centerpoint);
		}
	}
	Invalidate();
	return CView::OnMouseWheel(nFlags, zDelta, pt);
}
Beispiel #19
0
BOOL Document_LoadImage(LPSTR lpFilePath)
{
	static BYTE	ImageCode[ 1024 * 256 ];// 存放图组压缩数据
	static BYTE	TileImage[ 32 * 15 ];// 存放图块数据

	DWORD	dwImageCount	= 0;
	DWORD	dwLen		= 0;

	HBITMAP	hBitmap1x	= NULL;
	HBITMAP	hBitmap2x	= NULL;
	HBITMAP	hBitmapOld	= NULL;

	DWORD	i		= 0;
	FILE	*fpGop		= NULL;

	if (lpFilePath == NULL)
	{
		return FALSE;
	}

	fpGop = fopen(lpFilePath, "rb");

	if (fpGop == NULL)
	{
		return FALSE;
	}

	// 图组数据的长度
	fread(&dwLen, sizeof(DWORD), 1, fpGop);

	fread(ImageCode, dwLen, 1, fpGop);

	// 创建图块,放大1倍
	g_dwImageCount = ((WORD*)ImageCode)[ 0 ] - 1;
	for (i = 0; i < g_dwImageCount; i++)
	{
		GetImage(ImageCode, i, TileImage, 32 * 15);

		hBitmap1x = CreateBitmapFrom8Bits(TileImage, 32, 15, g_Palette);

		hBitmap2x = ZoomIn(hBitmap1x, 2);

		hBitmapOld = (HBITMAP)::SelectObject(g_hDCTileImage[ i ], hBitmap2x);

		::DeleteObject(hBitmap1x);
		::DeleteObject(hBitmapOld);

		// 迷你地图用的
		::BitBlt(g_hDCMiniTileImage[ i ], 0, 0, 1, 1, g_hDCTileImage[ i ], 32, 15, SRCCOPY);
	}
	return TRUE;
}
Beispiel #20
0
bool C2DView::OnKeyDown( char *s ){
	if ( ViewState == View_Idle ) {
		if ( !strcmp( s,"Insert" ) ) {
			ZoomOut();
			return true;
		}
		if ( !strcmp( s,"Delete" ) ) {
			ZoomIn();
			return true;
		}
	}
	return false;
}
Beispiel #21
0
void ZoomablePageView::wheelEvent(QWheelEvent *event)
{
   if(event->modifiers() == Qt::CTRL) {
      if(event->angleDelta().y() > 0) {
         emit ZoomIn();
      } else {
         emit ZoomOut();
      }
      event->accept();
   } else {
      QTableView::wheelEvent(event);
   }
}
Beispiel #22
0
void CIronSight::TurnOff(bool enable, bool smooth, bool anim)
{
	if(!enable && (m_savedFoVScale > 0.0f))
	{
		OnEnterZoom();

		float oFoV = GetZoomFoVScale(0);
		float tFoV = m_savedFoVScale;

		SetActorSpeedScale(0.35f);

		ZoomIn(m_pShared->zoomParams.zoom_out_time, oFoV, tFoV, smooth);

		if(anim)
		{
			if(UseAlternativeIronSight())
				m_pWeapon->SetActionSuffix(m_pShared->zoomParams.suffix_FC.c_str());
			else
				m_pWeapon->SetActionSuffix(m_pShared->zoomParams.suffix.c_str());

			m_pWeapon->PlayAction(m_pShared->actions.zoom_in);
		}

		m_pWeapon->GetScheduler()->TimerAction((uint32)(m_pShared->zoomParams.zoom_out_time*1000), CSchedulerAction<DisableTurnOffAction>::Create(this), false);
		m_savedFoVScale = 0.0f;
	}
	else if(m_zoomed && enable)
	{
		m_pWeapon->SetBusy(true);
		m_savedFoVScale = GetActorFoVScale();

		OnLeaveZoom();

		float oFoV = GetZoomFoVScale(0);
		float tFoV = m_savedFoVScale;

		SetActorSpeedScale(1);
		ZoomOut(m_pShared->zoomParams.zoom_out_time, tFoV, oFoV, smooth);

		m_pWeapon->StopLayer(m_pShared->zoomParams.layer, CItem::eIPAF_Default|CItem::eIPAF_NoBlend);
		m_pWeapon->SetDefaultIdleAnimation(eIGS_FirstPerson, g_pItemStrings->idle);

		if(anim)
		{
			m_pWeapon->PlayAction(m_pShared->actions.zoom_out);
			m_pWeapon->SetActionSuffix("");
		}

		m_pWeapon->GetScheduler()->TimerAction((uint32)(m_pShared->zoomParams.zoom_out_time*1000), CSchedulerAction<EnableTurnOffAction>::Create(this), false);
	}
}
Beispiel #23
0
LRESULT CDataView::OnKeyDown(TCHAR vk, UINT cRepeat, UINT flags)
{
	switch (vk) {
	case VK_ADD:
	case VK_OEM_PLUS:
		ZoomIn();
		break;
	case VK_SUBTRACT:
	case VK_OEM_MINUS:
		ZoomOut();
		break;
	}
	return 0;
}
void CScalableLayout::Notify( TNotifyUI& msg )
{
	if (msg.sType == _T("click"))
	{
		if (msg.pSender == m_pZoomout)
		{
			ZoomOut();
		}
		else
		{
			ZoomIn(msg.pSender->GetName());
		}
	}
}
Beispiel #25
0
void ZoomablePageView::keyPressEvent(QKeyEvent *event)
{
   if(event->modifiers().testFlag(Qt::ControlModifier)) {
      if(event->key() == Qt::Key_Plus) {
         emit ZoomIn();
         event->accept();
      } else if(event->key() == Qt::Key_Minus) {
         emit ZoomOut();
         event->accept();
      }
   }
   if(!event->isAccepted()) {
      QTableView::keyPressEvent(event);
   }
}
LRESULT CScalableLayout::MessageHandler( UINT uMsg, WPARAM wParam, LPARAM lParam, bool& bHandled )
{
	if (uMsg == WM_MOUSEWHEEL)
	{
		WORD fwKeys = LOWORD(wParam);    // key flags
		if (fwKeys != 0)
		{
			return 0;
		}

		short zDelta = (short) HIWORD(wParam);    // wheel rotation

		POINT pt;
		pt.x = (short) LOWORD(lParam);    // horizontal position of pointer
		pt.y = (short) HIWORD(lParam);    // vertical position of pointer

		::ScreenToClient(m_hParentWnd,&pt);

		if (zDelta > 0)
		{
			// zoom in
			CControlUI *pHit = GetManager()->FindControl(pt);

			CButtonUI *pHitButton = dynamic_cast<CButtonUI*>(pHit);
			if (pHitButton == 0)
			{
				return 0;
			}

			ZoomIn(pHitButton->GetName());
		}
		else
		{
			RECT rc = m_pContainer->GetPos();
			if (!::PtInRect(&rc,pt))
			{
				return 0;
			}

			ZoomOut();
		}

		bHandled = TRUE;
		return 0;
	}

	return 0;
}
Beispiel #27
0
void CMapManagerView::ZoomaxRect()
{
	//求出拉框矩形中心点的逻辑坐标
	POINT center;
	center.x = (m_rtZoom.left+m_rtZoom.right)/2;
	center.y = (m_rtZoom.top+m_rtZoom.bottom)/2;
	
	//计算相似系数
	unsigned long dx = labs(m_CurWinScope.right - m_CurWinScope.left);
	unsigned long dy = labs(m_CurWinScope.top - m_CurWinScope.bottom);
	double kx = double(fabs((double)m_rtZoom.right - m_rtZoom.left)/dx);
	double ky = double(fabs((double)m_rtZoom.top - m_rtZoom.bottom)/dy);
	double k = (kx- ky)>0?kx:ky;

    ZoomIn(2*k,center);
}
int CRoWidget::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: ZoomIn(); break;
        case 1: ZoomOut(); break;
        case 2: RotateUp(); break;
        case 3: RotateDown(); break;
        default: ;
        }
        _id -= 4;
    }
    return _id;
}
TKeyResponse CAafAppCameraView::OfferKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType)
{
	if(aType == EEventKey)
	{
		switch(aKeyEvent.iCode) 
		{
		case EKeyOK:
			{
				if (iContainer)
				{
					if (iContainer->IsImageCaptured())
					{
						iContainer->StartViewFinderL();
					}
					else
					{
						iContainer->CaptureL();
					}
				}
			}
			break;
		case EStdKeyUpArrow:
			{				
				ZoomIn();			

				return EKeyWasConsumed;
			}				
		case EStdKeyDownArrow:
			{
				ZoomOut();

				return EKeyWasConsumed;
			}

			// If not arrow up or arrow down key has been pressed
		default:
			{
				
			}
			break;
		}
	}

	return EKeyWasNotConsumed;
}
Beispiel #30
0
  bool HandleMouseEvent(const Lum::OS::MouseEvent& event)
  {
    if (!visible) {
      return false;
    }

    if (event.type==Lum::OS::MouseEvent::down &&
        PointIsIn(event) &&
        event.button==Lum::OS::MouseEvent::button1) {
      requestNewMap=false;
      startLon=lon;
      startLat=lat;
      startX=event.x;
      startY=event.y;
      return true;
    }
    else if (event.IsGrabEnd() &&
             event.button==Lum::OS::MouseEvent::button1) {
      HandleMouseMove(event);
      requestNewMap=true;
      Redraw();
    }
    else if (event.type==Lum::OS::MouseEvent::move &&
             event.IsGrabed() &&
             event.button==Lum::OS::MouseEvent::none &&
             event.qualifier==Lum::OS::qualifierButton1) {
      HandleMouseMove(event);
      Redraw();
      return true;
    }
    else if (event.type==Lum::OS::MouseEvent::down &&
             event.button==Lum::OS::MouseEvent::button4) {
      ZoomIn(1.35);

      return true;
    }
    else if (event.type==Lum::OS::MouseEvent::down &&
             event.button==Lum::OS::MouseEvent::button5) {
      ZoomOut(1.35);

      return true;
    }

    return false;
  }