Beispiel #1
0
void Gesture::unregister_handler( QObject* receiver_P, const char* slot_P )
    {
    if( !handlers.contains( receiver_P ))
        return;
    handlers.remove( receiver_P );
    disconnect( this, SIGNAL( handle_gesture( const QString&, WId )),
        receiver_P, slot_P );
    if( handlers.count() == 0 )
        update_grab();
    }
Beispiel #2
0
void Gesture::register_handler( QObject* receiver_P, const char* slot_P )
    {
    if( handlers.contains( receiver_P ))
        return;
    handlers[ receiver_P ] = true;
    connect( this, SIGNAL( handle_gesture( const QString&, WId )),
        receiver_P, slot_P );
    if( handlers.count() == 1 )
        update_grab();
    }
Beispiel #3
0
void Gesture::set_exclude( Windowdef_list* windows_P )
{
    delete exclude;
    // check for count() > 0 - empty exclude list means no window is excluded,
    // but empty Windowdef_list matches everything
    if( windows_P != NULL && windows_P->count() > 0 )
        exclude = windows_P->copy();
    else
        exclude = NULL;
    update_grab();
}
Beispiel #4
0
void Gesture::unregister_handler( QObject* receiver_P, const char* slot_P )
{
    if( !handlers.contains( receiver_P ))
        return;
    handlers.remove( receiver_P );

    disconnect( this, SIGNAL(handle_gesture(StrokePoints)),
                receiver_P, slot_P
              );
    disconnect( receiver_P, SIGNAL(gotScore(ActionData*const,qreal)),
                this, SLOT(handleScore(ActionData*const,qreal))
              );
    if( handlers.count() == 0 )
        update_grab();
}
Beispiel #5
0
void Gesture::register_handler( QObject* receiver_P, const char* slot_P )
{
    if( handlers.contains( receiver_P ))
        return;
    handlers[ receiver_P ] = true;
    // connect directly because we want to be sure that all triggers submitted
    // their scores back to this object before executing the best match we
    // could find.
    connect( this, SIGNAL(handle_gesture(StrokePoints)),
             receiver_P, slot_P,
             Qt::DirectConnection
           );
    connect( receiver_P, SIGNAL(gotScore(ActionData*const,qreal)),
             this, SLOT(handleScore(ActionData*const,qreal)),
             Qt::DirectConnection
           );
    if( handlers.count() == 1 )
        update_grab();
}
Beispiel #6
0
void Gesture::active_window_changed( WId )
{
    update_grab();
}