コード例 #1
0
ファイル: sysbuttons.cpp プロジェクト: IMAN4K/QtPro
void MinimizeButton::paintEvent(QPaintEvent *) {
	QPainter p(this);
	p.setOpacity(_eff.currentf());
	p.setRenderHint(QPainter::SmoothPixmapTransform);
	if (_pixmap.isNull()) QTimer::singleShot(10, this, SLOT(timerCall()));
	else p.drawPixmap(_rect, _pixmap);
}
コード例 #2
0
ViewerController::ViewerController()
{
	mCameraOrbitButton = Qt::MidButton;
	mLUTSetMouseButton = Qt::RightButton;
	mFastSliceChangeMouseButton = Qt::MidButton;
	mCutPlaneOffsetButton = Qt::RightButton;

	mCutPlaneKeyboardModifiers = Qt::ControlModifier | Qt::MetaModifier;

	mTimer.setSingleShot( false );
	QObject::connect( &mTimer, SIGNAL(timeout()), this, SLOT( timerCall() ) );
}
コード例 #3
0
ファイル: delayedresponse.cpp プロジェクト: parkouss/funq
DelayedResponse::DelayedResponse(JsonClient * client,
                                 const QtJson::JsonObject & command,
                                 int interval, int timerOut)
    : QObject(client), m_client(client), m_hasResponded(false), m_nbCall(0) {
    Q_ASSERT(client);
    m_timer.setInterval(interval);
    connect(&m_timer, SIGNAL(timeout()), this, SLOT(timerCall()));

    QTimer::singleShot(timerOut, this, SLOT(onTimerOut()));

    m_action = command["action"].toString();
}
コード例 #4
0
bool
ViewerController::mouseMoveEvent ( BaseViewerState::Ptr aViewerState, const MouseEventInfo &aEventInfo )
{
	ViewerState &state = *(boost::polymorphic_downcast< ViewerState *>( aViewerState.get() ) );

	QPoint diff = mTrackInfo.trackUpdate( aEventInfo.event->pos(), aEventInfo.event->globalPos() );
	if ( state.viewType == vt3D && mInteractionMode == imORBIT_CAMERA ) {
		state.getViewerWindow< GeneralViewer >().cameraOrbit( Vector2f( diff.x() * -0.2f, diff.y() * -0.2f ) );
		return true;
	}
	if ( state.viewType == vt3D && mInteractionMode == imCUT_PLANE ) {
		state.getViewerWindow< GeneralViewer >().cameraOrbit( Vector2f( diff.x() * -0.2f, diff.y() * -0.2f ) );
		glm::fvec3 dir = -1.0f*state.getViewerWindow< GeneralViewer >().getCameraTargetDirection();
		glm::fvec3 pos = state.getViewerWindow< GeneralViewer >().getCameraTargetPosition() + dir * state.mVolumeRenderConfig.cutPlaneCameraTargetOffset; 
		state.getViewerWindow< GeneralViewer >().setCutPlane( soglu::Planef( pos, dir ) );
		return true;
	}
	if ( mInteractionMode == imLUT_SETTING ) {
		glm::fvec2 oldVal = state.getViewerWindow< GeneralViewer >().getLUTWindow();
		state.getViewerWindow< GeneralViewer >().setLUTWindow( oldVal + glm::fvec2(diff.x(), diff.y()));
		return true;
	}
	if ( mInteractionMode == imCUT_PLANE_OFFSET ) {
		float oldVal = state.mVolumeRenderConfig.cutPlaneCameraTargetOffset;
		state.getViewerWindow< GeneralViewer >().setCutPlaneCameraTargetOffset( oldVal + 0.3*(diff.x() + diff.y()) );
		return true;
	}
	if ( mInteractionMode == imFAST_SLICE_CHANGE ) {
		int speed = mTrackInfo.mStartLocalPosition.y() - aEventInfo.event->pos().y();
		mTmpViewer = &(state.getViewerWindow< GeneralViewer >());
		mPositive = speed > 0;
		if( speed != 0 ) {
			float ms = 1000.0f / abs(speed);
			mTimer.setInterval( max<int>( static_cast<int>( ms ), 10 ) );
			mTimer.start();
			timerCall();
		} else {
			mTimer.stop();
		}
		return true;
	}

	if ( state.viewType == vt2DAlignedSlices ) {
		state.getViewerWindow< GeneralViewer >().updateMouseInfo( fromGLM(aEventInfo.realCoordinates) );
	}
	return false;
}