• [^] # Re: GTK-Qt-OpenOffice.org: un pas de plus vers une meilleure intégration

    Posté par (site web personnel) . En réponse à la dépêche GTK-Qt-OpenOffice.org: un pas de plus vers une meilleure intégration. Évalué à 4.

    > Qt est au même niveau que GTK+

    C'est tout a fait vrai.

    > l'un ne peut pas utiliser l'autre
    C'est tout a fait faux.

    cf la derniere release de sodipodi qui integre des dialogues KDE dans une appli gtk.

    L'etape d'apres est deja prevue:
    http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdenonbeta/qtgtk/README?re(...)

    Donc les deux peuvent etre utilises en parallele sans trop de problemes.

    > Les deux dessinent à coup d'appels à la XLib.

    Oui et non. Oui parce sous X11, a un moment donne, pour dessiner sur un serveur X, il faut faire appel a la Xlib.

    Non, car dans gtk comme dans Qt, il a deux niveau de dessinage. Le premier, c'est celui ou tu dessines sur le contexte graphique, x11 donc sous unix, cocoa sous macos, win32 sous windows.

    Le second, c'est celui ou tu dessines les controles graphiques. Qt et Gtk passent tous deux par un moteur de theme. Ce n'est donc pas Qt ou Gtk qui dessinne, mais le moteur de theme a qui on dit "dessine moi un bouton enfonce, dessine moi une checkbox, ..."

    A noter que sous windows XP, Qt utilise le moteur de theme de XP, et donc les applis Qt ont un look natif.

    Ce qu'a fait le mec dans le cas qui nous occupe, c'est appeler le moteur de theme de Qt depuis le moteur de theme de Gtk. Il serait tout aussi facile (mais c'est un exercice different) d'utiliser le moteur de Gtk dans des applications Qt ou KDE.

    En ce qui concerne Mozilla, je suis moins sur. Il me semble qu'il y a un moteur de theme Mozilla, qui utilise gtk pour dessiner sur l'ecran, sans utiliser les themes gtk proprement dit. Ca fait donc un troisieme moteur de theme.

    A priori, avec un peu de volonte, il est possible de croiser des themes dans tous les sens, voire de developper un meta-moteur de theme qui serait utilise par tous les autres moteurs de themes.