• # Cas de KDE

    Posté par (site web personnel) . En réponse au journal outils d'automatisation de GUI. Évalué à 5.

    KDE intègre pas mal de trucs suceptible de répondre à tes besoins, de manières différente.

    cliquer sur des boutons/menus/etc
    Si tu utilise KDE, tu peut faire appel à DCOP. Il te permet d'appeller directement les méthodes d'un certain nombre des objets de tes applications favorites.
    À priori c'est bien plus propre, par ce que ça ne dépends pas de la partie visuelle du programe.
    Pour l'utiliser, tu peut lancer kdcop.
    Sinon tape dcop dans un shell (ce que je préfère). Il va t'afficher une liste d'applications. Choisie celle qui t'interesse, par exemple amarok et tappe "dcop amarok". Il va t'afficher des objets, choisi par exemple player "dcop amarok player" et ensuite une mèthode, genre "dcop amarok player pause".
    Ensuite, dans KControl tu peut associer ça à une parole, un geste de souris, un évenement...
    Tu peut aussi agir sur la fenêre avec des trucs comme "dcop kmail kmail-mainwindow#1 maximize".

    garder le focus sur l'application testee
    Clic droit sur une barre de titre de fenêtre -> comportement des fenêtres.
    Dans "décoration des fenêtres" tu pourras ajouter un bouton "garder au premier plan".
    Pour faire des choses plus spécifiques, rends toi dans "Paramètres spécifiques à la fenêtre". Là tu pourras exprimer des critères sur l'application, le titre de la fenêtre, son rôle... pour exprimer un résultat comme "se souvenir de la position" ou "mettre telle opacité" "garder au premier plan"... en bidouillant un peu y'a par exemple moyen de faire d'une console toute simple un terminal à la quake.

    recuperer le texte des boites d'affichage
    Là par contre je sèche (sauf dans le cas des infos exportées par dcop). En général je trouve un outil en mode texte pour accéder à l'information que je souhaite (souvent possible grâce à la puissance du shell).
    C'est peut être plus propre (possibilité de le faire executer par un cron même quand l'utilisateur est déconnecté). Mais ça force à apprendre un nouveau langage.