Développement d'applications compatibles Unity en Python - par où commencer?

16

Je suis un programmeur expérimenté qui souhaite développer des applications pour Linux, spécifiquement GTK, et plus spécifiquement des applications compatibles Unity. Mis à part l'étape évidente de l'apprentissage de Python, quelle est la meilleure façon d'apprendre des choses comme:

  • Comment développer une interface graphique (probablement en utilisant Glade)? Existe-t-il de bons tutoriels Glade2?
  • Où sont les appels d'API spécifiques à Unity? (comme placer une icône de notification sur le panneau supérieur et utiliser des «badges» sur les icônes de lancement ( nombre de messages à la Unity Mail ).

En outre, existe-t-il de bons IDE Python similaires à Xcode ou Visual Studio, où vous pouvez concevoir votre interface, puis double-cliquer sur les boutons et les widgets pour leur lier du code?

Merci pour toute aide.

CaptSaltyJack
la source
1
Vous devriez poser la question IDE séparément (mais cherchez d'abord d'autres questions car il y a déjà beaucoup de questions sur les IDE). Peut-être aussi poser des questions séparées pour les indicateurs et les badges.
dv3500ea

Réponses:

10

Bonne question.

Tout d'abord, les indicateurs ne sont en aucun cas spécifiques à Unity. En fait, ils fonctionnent aussi bien sur Xfce ou KDE. C'est très, très, simple à utiliser. Vous allez créer un objet indicateur, définir le nom des icônes à utiliser lorsqu'il a besoin d'attention, etc., et y attacher simplement des menus. Les indicateurs sont ensuite envoyés sur dbus et correctement affichés d'une manière adaptée à l'environnement de bureau actuel. Dans Unity, Gnome Shell, Xfce et LXDE, il sera affiché sous forme de menus GTK, et dans KDE il sera affiché sous forme de menus Qt, etc. Très soigné. Vous pouvez trouver plus d'informations à ce sujet ici: http://unity.ubuntu.com/projects/appindicators/

Dans le volet droit de Glade, vous avez une page Signaux sous Propriétés. Ici, vous pouvez simplement taper le nom de la méthode à utiliser comme gestionnaire pour ce signal. Dans votre code, vous allez simplement créer un objet gtk.Builder, charger le XML produit par Glade et utiliser la méthode gtk.Builder.connect_signals pour connecter tous vos signaux à leurs méthodes. Cela signifie que vous pouvez utiliser les interfaces Glade dans presque tous les langages de programmation. Étant donné que c'est si facile et que les langues sont différentes par nature, il est peu logique d'ajouter du codage à Glade lui-même. Pour coder Python (et d'autres langages), je recommanderai de jeter un œil à Geany ( http://apt.ubuntu.com/p/geany ). C'est un très bon éditeur / IDE.

D'autres choses dans Unity sont si nouvelles, il y a peu de documentation, sauf comme exemples de code. Certaines API sont en train de devenir stables, comme pour Scopes and Lenses, qui n'étaient même pas appelées ainsi il y a peu de temps. En tant que débutant, j'attendrais un peu avant d'examiner ces choses.

Les entrées du lanceur sont en fait simplement appelées LauncherEntry dans le code et peuvent utiliser une barre de progression, un compteur et des listes rapides. Je n'ai pas vraiment codé cela moi-même, mais cette page a un exemple et cela semble très facile, comme le reste des API Unity: http://bazaar.launchpad.net/~unity-team/libunity/trunk/view/ tête: /examples/launcher.py

Jo-Erlend Schinstad
la source
Et consultez également developer.ubuntu.com !
David Planella