Changeset 8127 in ntrip for trunk/BNC/qwt/qwt_event_pattern.cpp


Ignore:
Timestamp:
May 10, 2017, 3:20:54 PM (7 years ago)
Author:
stoecker
Message:

update qwt and qwtpolar, many QT5 fixes (unfinished)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/qwt/qwt_event_pattern.cpp

    r4271 r8127  
    3838void QwtEventPattern::initMousePattern( int numButtons )
    3939{
    40     const int altButton = Qt::AltModifier;
    41     const int controlButton = Qt::ControlModifier;
    42     const int shiftButton = Qt::ShiftModifier;
    43 
    4440    d_mousePattern.resize( MousePatternCount );
    4541
     
    4945        {
    5046            setMousePattern( MouseSelect1, Qt::LeftButton );
    51             setMousePattern( MouseSelect2, Qt::LeftButton, controlButton );
    52             setMousePattern( MouseSelect3, Qt::LeftButton, altButton );
     47            setMousePattern( MouseSelect2, Qt::LeftButton, Qt::ControlModifier );
     48            setMousePattern( MouseSelect3, Qt::LeftButton, Qt::AltModifier );
    5349            break;
    5450        }
     
    5753            setMousePattern( MouseSelect1, Qt::LeftButton );
    5854            setMousePattern( MouseSelect2, Qt::RightButton );
    59             setMousePattern( MouseSelect3, Qt::LeftButton, altButton );
     55            setMousePattern( MouseSelect3, Qt::LeftButton, Qt::AltModifier );
    6056            break;
    6157        }
     
    6763        }
    6864    }
    69     for ( int i = 0; i < 3; i++ )
    70     {
    71         setMousePattern( MouseSelect4 + i,
    72                          d_mousePattern[MouseSelect1 + i].button,
    73                          d_mousePattern[MouseSelect1 + i].state | shiftButton );
    74     }
     65
     66    setMousePattern( MouseSelect4, d_mousePattern[MouseSelect1].button,
     67        d_mousePattern[MouseSelect1].modifiers | Qt::ShiftModifier );
     68
     69    setMousePattern( MouseSelect5, d_mousePattern[MouseSelect2].button,
     70        d_mousePattern[MouseSelect2].modifiers | Qt::ShiftModifier );
     71
     72    setMousePattern( MouseSelect6, d_mousePattern[MouseSelect3].button,
     73        d_mousePattern[MouseSelect3].modifiers | Qt::ShiftModifier );
    7574}
    7675
     
    103102  \param pattern Index of the pattern
    104103  \param button Button
    105   \param state State
     104  \param modifiers Keyboard modifiers
    106105
    107106  \sa QMouseEvent
    108107*/
    109 void QwtEventPattern::setMousePattern( uint pattern, int button, int state )
    110 {
    111     if ( pattern < ( uint )d_mousePattern.count() )
     108void QwtEventPattern::setMousePattern( MousePatternCode pattern,
     109    Qt::MouseButton button, Qt::KeyboardModifiers modifiers )
     110{
     111    if ( pattern >= 0 && pattern < MousePatternCount )
    112112    {
    113         d_mousePattern[int( pattern )].button = button;
    114         d_mousePattern[int( pattern )].state = state;
     113        d_mousePattern[ pattern ].button = button;
     114        d_mousePattern[ pattern ].modifiers = modifiers;
    115115    }
    116116}
     
    121121  \param pattern Index of the pattern
    122122  \param key Key
    123   \param state State
     123  \param modifiers Keyboard modifiers
    124124
    125125  \sa QKeyEvent
    126126*/
    127 void QwtEventPattern::setKeyPattern( uint pattern, int key, int state )
    128 {
    129     if ( pattern < ( uint )d_keyPattern.count() )
     127void QwtEventPattern::setKeyPattern( KeyPatternCode pattern,
     128    int key, Qt::KeyboardModifiers modifiers )
     129{
     130    if ( pattern >= 0 && pattern < KeyPatternCount )
    130131    {
    131         d_keyPattern[int( pattern )].key = key;
    132         d_keyPattern[int( pattern )].state = state;
     132        d_keyPattern[ pattern ].key = key;
     133        d_keyPattern[ pattern ].modifiers = modifiers;
    133134    }
    134135}
     
    146147}
    147148
    148 //! Return mouse patterns
     149//! \return Mouse pattern
    149150const QVector<QwtEventPattern::MousePattern> &
    150151QwtEventPattern::mousePattern() const
     
    153154}
    154155
    155 //! Return key patterns
     156//! \return Key pattern
    156157const QVector<QwtEventPattern::KeyPattern> &
    157158QwtEventPattern::keyPattern() const
     
    160161}
    161162
    162 //! Return ,ouse patterns
     163//! \return Mouse pattern
    163164QVector<QwtEventPattern::MousePattern> &QwtEventPattern::mousePattern()
    164165{
     
    166167}
    167168
    168 //! Return Key patterns
     169//! \return Key pattern
    169170QVector<QwtEventPattern::KeyPattern> &QwtEventPattern::keyPattern()
    170171{
     
    179180  are set.
    180181
    181   \param pattern Index of the event pattern
     182  \param code Index of the event pattern
    182183  \param event Mouse event
    183184  \return true if matches
     
    185186  \sa keyMatch()
    186187*/
    187 bool QwtEventPattern::mouseMatch( uint pattern,
     188bool QwtEventPattern::mouseMatch( MousePatternCode code,
    188189    const QMouseEvent *event ) const
    189190{
    190     bool ok = false;
    191 
    192     if ( event && pattern < ( uint )d_mousePattern.count() )
    193         ok = mouseMatch( d_mousePattern[int( pattern )], event );
    194 
    195     return ok;
     191    if ( code >= 0 && code < MousePatternCount )
     192        return mouseMatch( d_mousePattern[ code ], event );
     193
     194    return false;
    196195}
    197196
     
    213212    const QMouseEvent *event ) const
    214213{
    215     if ( event->button() != pattern.button )
     214    if ( event == NULL )
    216215        return false;
    217216
    218     const bool matched =
    219         ( event->modifiers() & Qt::KeyboardModifierMask ) ==
    220             ( int )( pattern.state & Qt::KeyboardModifierMask );
    221 
    222     return matched;
     217    const MousePattern mousePattern( event->button(), event->modifiers() );
     218    return mousePattern == pattern;
    223219}
    224220
     
    230226  are set.
    231227
    232   \param pattern Index of the event pattern
     228  \param code Index of the event pattern
    233229  \param event Key event
    234230  \return true if matches
     
    236232  \sa mouseMatch()
    237233*/
    238 bool QwtEventPattern::keyMatch( uint pattern,
     234bool QwtEventPattern::keyMatch( KeyPatternCode code,
    239235    const QKeyEvent *event ) const
    240236{
    241     bool ok = false;
    242 
    243     if ( event && pattern < ( uint )d_keyPattern.count() )
    244         ok = keyMatch( d_keyPattern[int( pattern )], event );
    245 
    246     return ok;
     237    if ( code >= 0 && code < KeyPatternCount )
     238        return keyMatch( d_keyPattern[ code ], event );
     239
     240    return false;
    247241}
    248242
     
    264258    const KeyPattern &pattern, const QKeyEvent *event ) const
    265259{
    266     if ( event->key() != pattern.key )
     260    if ( event == NULL )
    267261        return false;
    268262
    269     const bool matched =
    270         ( event->modifiers() & Qt::KeyboardModifierMask ) ==
    271             ( int )( pattern.state & Qt::KeyboardModifierMask );
    272 
    273     return matched;
    274 }
     263    const KeyPattern keyPattern( event->key(), event->modifiers() );
     264    return keyPattern == pattern;
     265}
Note: See TracChangeset for help on using the changeset viewer.