• # Re: event filtering avec Qt/KDE

    Posté par . En réponse au journal event filtering avec Qt/KDE. Évalué à 2.

    avec Qt dans ton KHTMLPart tu cree une fonction :
    void KHTMLPart::focusInEvent{QFocusEvent *e)
    {
    if(e->gotFocus())//pourrait etre enlevé car c forcément du in mais bon
    emit ihavethefocus(TRUE);
    else
    e->ignore();
    }

    void KHTMLPart::focusOutEvent{QFocusEvent *e)
    {
    if(e->lostFocus())//pourrait etre enlevé car c forcément du in mais bon
    emit ihavethefocus(FALSE);
    else
    e->ignore();
    }

    tu les déclares dans ton .h -ce sont pas des slots-, tu crée un signals void ihavethefocus(bool); (tu peux aussi faire qu'un signal ihavethefocus(), ne surchargé que focusinevent, mais bon là tu sais aussi quand il le perd

    ensuite tu connecte a partir d'une autre class le signal ihavethefocus de KHTMLPart à un slot de la class de ton plugin

    (ca marche si bien sûr khtmlpart découle de QWidget, et que le plugin découle de QObject

    voila mais lit la class QEvent dont tout les évenements découlent t'apprendra bcp