Changeset 8127 in ntrip for trunk/BNC/qwt/qwt_magnifier.cpp
- Timestamp:
- May 10, 2017, 3:20:54 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BNC/qwt/qwt_magnifier.cpp
r4271 r8127 19 19 isEnabled( false ), 20 20 wheelFactor( 0.9 ), 21 wheel ButtonState( Qt::NoButton),21 wheelModifiers( Qt::NoModifier ), 22 22 mouseFactor( 0.95 ), 23 23 mouseButton( Qt::RightButton ), 24 mouseButton State( Qt::NoButton),24 mouseButtonModifiers( Qt::NoModifier ), 25 25 keyFactor( 0.9 ), 26 26 zoomInKey( Qt::Key_Plus ), 27 zoomInKeyModifiers( Qt::NoModifier ), 27 28 zoomOutKey( Qt::Key_Minus ), 28 zoomInKeyModifiers( Qt::NoModifier ),29 29 zoomOutKeyModifiers( Qt::NoModifier ), 30 30 mousePressed( false ) … … 35 35 36 36 double wheelFactor; 37 int wheelButtonState;37 Qt::KeyboardModifiers wheelModifiers; 38 38 39 39 double mouseFactor; 40 int mouseButton; 41 int mouseButtonState; 40 41 Qt::MouseButton mouseButton; 42 Qt::KeyboardModifiers mouseButtonModifiers; 42 43 43 44 double keyFactor; 45 44 46 int zoomInKey; 47 Qt::KeyboardModifiers zoomInKeyModifiers; 48 45 49 int zoomOutKey; 46 int zoomInKeyModifiers; 47 int zoomOutKeyModifiers; 50 Qt::KeyboardModifiers zoomOutKeyModifiers; 48 51 49 52 bool mousePressed; … … 109 112 The wheel factor defines the ratio between the current range 110 113 on the parent widget and the zoomed range for each step of the wheel. 114 115 Use values > 1 for magnification (i.e. 2.0) and values < 1 for 116 scaling down (i.e. 1/2.0 = 0.5). You can use this feature for 117 inverting the direction of the wheel. 118 111 119 The default value is 0.9. 112 120 … … 130 138 131 139 /*! 132 Assign a mandatory button statefor zooming in/out using the wheel.133 The default button state is Qt::NoButton.134 135 \param buttonState Button state136 \sa wheel ButtonState()137 */ 138 void QwtMagnifier::setWheel ButtonState( int buttonState)139 { 140 d_data->wheel ButtonState = buttonState;141 } 142 143 /*! 144 \return Wheel button state145 \sa setWheel ButtonState()146 */ 147 int QwtMagnifier::wheelButtonState() const148 { 149 return d_data->wheel ButtonState;140 Assign keyboard modifiers for zooming in/out using the wheel. 141 The default modifiers are Qt::NoModifiers. 142 143 \param modifiers Keyboard modifiers 144 \sa wheelModifiers() 145 */ 146 void QwtMagnifier::setWheelModifiers( Qt::KeyboardModifiers modifiers ) 147 { 148 d_data->wheelModifiers = modifiers; 149 } 150 151 /*! 152 \return Wheel modifiers 153 \sa setWheelModifiers() 154 */ 155 Qt::KeyboardModifiers QwtMagnifier::wheelModifiers() const 156 { 157 return d_data->wheelModifiers; 150 158 } 151 159 … … 179 187 180 188 \param button Button 181 \param buttonState Button state 189 \param modifiers Keyboard modifiers 190 182 191 \sa getMouseButton() 183 192 */ 184 void QwtMagnifier::setMouseButton( int button, int buttonState ) 193 void QwtMagnifier::setMouseButton( 194 Qt::MouseButton button, Qt::KeyboardModifiers modifiers ) 185 195 { 186 196 d_data->mouseButton = button; 187 d_data->mouseButton State = buttonState;197 d_data->mouseButtonModifiers = modifiers; 188 198 } 189 199 190 200 //! \sa setMouseButton() 191 201 void QwtMagnifier::getMouseButton( 192 int &button, int &buttonState) const202 Qt::MouseButton &button, Qt::KeyboardModifiers &modifiers ) const 193 203 { 194 204 button = d_data->mouseButton; 195 buttonState = d_data->mouseButtonState;205 modifiers = d_data->mouseButtonModifiers; 196 206 } 197 207 … … 229 239 \sa getZoomInKey(), setZoomOutKey() 230 240 */ 231 void QwtMagnifier::setZoomInKey( int key, int modifiers ) 241 void QwtMagnifier::setZoomInKey( int key, 242 Qt::KeyboardModifiers modifiers ) 232 243 { 233 244 d_data->zoomInKey = key; … … 235 246 } 236 247 237 //! \sa setZoomInKey() 238 void QwtMagnifier::getZoomInKey( int &key, int &modifiers ) const 248 /*! 249 \brief Retrieve the settings of the zoom in key 250 251 \param key Key code, see Qt::Key 252 \param modifiers Keyboard modifiers 253 254 \sa setZoomInKey() 255 */ 256 void QwtMagnifier::getZoomInKey( int &key, 257 Qt::KeyboardModifiers &modifiers ) const 239 258 { 240 259 key = d_data->zoomInKey; … … 250 269 \sa getZoomOutKey(), setZoomOutKey() 251 270 */ 252 void QwtMagnifier::setZoomOutKey( int key, int modifiers ) 271 void QwtMagnifier::setZoomOutKey( int key, 272 Qt::KeyboardModifiers modifiers ) 253 273 { 254 274 d_data->zoomOutKey = key; … … 256 276 } 257 277 258 //! \sa setZoomOutKey() 259 void QwtMagnifier::getZoomOutKey( int &key, int &modifiers ) const 278 /*! 279 \brief Retrieve the settings of the zoom out key 280 281 \param key Key code, see Qt::Key 282 \param modifiers Keyboard modifiers 283 284 \sa setZoomOutKey() 285 */ 286 void QwtMagnifier::getZoomOutKey( int &key, 287 Qt::KeyboardModifiers &modifiers ) const 260 288 { 261 289 key = d_data->zoomOutKey; … … 266 294 \brief Event filter 267 295 268 When isEnabled() the mouse events of the observed widget are filtered. 296 When isEnabled() is true, the mouse events of the 297 observed widget are filtered. 269 298 270 299 \param object Object to be filtered 271 300 \param event Event 301 302 \return Forwarded to QObject::eventFilter() 272 303 273 304 \sa widgetMousePressEvent(), widgetMouseReleaseEvent(), … … 283 314 case QEvent::MouseButtonPress: 284 315 { 285 widgetMousePressEvent( ( QMouseEvent * )event);316 widgetMousePressEvent( static_cast<QMouseEvent *>( event ) ); 286 317 break; 287 318 } 288 319 case QEvent::MouseMove: 289 320 { 290 widgetMouseMoveEvent( ( QMouseEvent * )event);321 widgetMouseMoveEvent( static_cast<QMouseEvent *>( event ) ); 291 322 break; 292 323 } 293 324 case QEvent::MouseButtonRelease: 294 325 { 295 widgetMouseReleaseEvent( ( QMouseEvent * )event);326 widgetMouseReleaseEvent( static_cast<QMouseEvent *>( event ) ); 296 327 break; 297 328 } 298 329 case QEvent::Wheel: 299 330 { 300 widgetWheelEvent( ( QWheelEvent * )event);331 widgetWheelEvent( static_cast<QWheelEvent *>( event ) ); 301 332 break; 302 333 } 303 334 case QEvent::KeyPress: 304 335 { 305 widgetKeyPressEvent( ( QKeyEvent * )event);336 widgetKeyPressEvent( static_cast<QKeyEvent *>( event ) ); 306 337 break; 307 338 } 308 339 case QEvent::KeyRelease: 309 340 { 310 widgetKeyReleaseEvent( ( QKeyEvent * )event);341 widgetKeyReleaseEvent( static_cast<QKeyEvent *>( event ) ); 311 342 break; 312 343 } … … 325 356 void QwtMagnifier::widgetMousePressEvent( QMouseEvent *mouseEvent ) 326 357 { 327 if ( ( mouseEvent->button() != d_data->mouseButton) 328 || parentWidget() == NULL ) 329 { 358 if ( parentWidget() == NULL ) 330 359 return; 331 } 332 333 if ( ( mouseEvent->modifiers() & Qt::KeyboardModifierMask ) != 334 ( int )( d_data->mouseButtonState & Qt::KeyboardModifierMask ) ) 360 361 if ( ( mouseEvent->button() != d_data->mouseButton ) || 362 ( mouseEvent->modifiers() != d_data->mouseButtonModifiers ) ) 335 363 { 336 364 return; … … 338 366 339 367 d_data->hasMouseTracking = parentWidget()->hasMouseTracking(); 368 340 369 parentWidget()->setMouseTracking( true ); 341 370 d_data->mousePos = mouseEvent->pos(); … … 393 422 void QwtMagnifier::widgetWheelEvent( QWheelEvent *wheelEvent ) 394 423 { 395 if ( ( wheelEvent->modifiers() & Qt::KeyboardModifierMask ) != 396 ( int )( d_data->wheelButtonState & Qt::KeyboardModifierMask ) ) 424 if ( wheelEvent->modifiers() != d_data->wheelModifiers ) 397 425 { 398 426 return; … … 411 439 */ 412 440 double f = qPow( d_data->wheelFactor, 413 qAbs( wheelEvent->delta() / 120 ) );441 qAbs( wheelEvent->delta() / 120.0 ) ); 414 442 415 443 if ( wheelEvent->delta() > 0 ) … … 428 456 void QwtMagnifier::widgetKeyPressEvent( QKeyEvent *keyEvent ) 429 457 { 430 const int key = keyEvent->key(); 431 const int state = keyEvent->modifiers(); 432 433 if ( key == d_data->zoomInKey && 434 state == d_data->zoomInKeyModifiers ) 458 if ( keyEvent->key() == d_data->zoomInKey && 459 keyEvent->modifiers() == d_data->zoomInKeyModifiers ) 435 460 { 436 461 rescale( d_data->keyFactor ); 437 462 } 438 else if ( key == d_data->zoomOutKey &&439 state== d_data->zoomOutKeyModifiers )463 else if ( keyEvent->key() == d_data->zoomOutKey && 464 keyEvent->modifiers() == d_data->zoomOutKeyModifiers ) 440 465 { 441 466 rescale( 1.0 / d_data->keyFactor ); … … 457 482 QWidget *QwtMagnifier::parentWidget() 458 483 { 459 if ( parent()->inherits( "QWidget" ) ) 460 return ( QWidget * )parent(); 461 462 return NULL; 484 return qobject_cast<QWidget *>( parent() ); 463 485 } 464 486 … … 466 488 const QWidget *QwtMagnifier::parentWidget() const 467 489 { 468 if ( parent()->inherits( "QWidget" ) ) 469 return ( const QWidget * )parent(); 470 471 return NULL; 472 } 473 490 return qobject_cast<const QWidget *>( parent() ); 491 } 492
Note:
See TracChangeset
for help on using the changeset viewer.