it-swarm.com.de

Entwickeln von Unity-kompatiblen Apps in Python - wo soll ich anfangen?

Ich bin ein erfahrener Programmierer, der an der Entwicklung von Apps für Linux, insbesondere für GTK, und speziell für Unity-kompatible Apps interessiert ist. Abgesehen von dem offensichtlichen Schritt des Lernens von Python, was ist der beste Weg, um Dinge zu lernen wie:

  • Wie entwickelt man eine GUI-Oberfläche (wahrscheinlich mit Glade)? Gibt es gute Glade2-Tutorials?
  • Wo sind die Unity-spezifischen API-Aufrufe? (z. B. Platzieren eines Benachrichtigungssymbols im oberen Bereich und Verwenden von "Abzeichen" in den Startsymbolen (a la nity Mail s Nachrichtenanzahl).

Gibt es auch gute Python IDEs, die Xcode oder Visual Studio ähneln, in denen Sie Ihre Benutzeroberfläche entwerfen und dann auf Schaltflächen und Widgets doppelklicken können, um den Code mit ihnen zu verknüpfen?

Vielen Dank für jede Hilfe.

16
CaptSaltyJack

Gute Frage.

Erstens sind die Indikatoren in keiner Weise einheitenspezifisch. Eigentlich laufen sie genauso gut unter Xfce oder KDE. Es ist sehr, sehr einfach zu bedienen. Sie erstellen ein Anzeigeobjekt, legen den Namen der Symbole fest, die verwendet werden sollen, wenn Aufmerksamkeit erforderlich ist, usw., und fügen einfach Menüs hinzu. Die Anzeigen werden dann über dbus gesendet und in einer für die aktuelle Desktop-Umgebung geeigneten Weise richtig angezeigt. In Unity, Gnome Shell, Xfce und LXDE wird es als GTK-Menü und in KDE als Qt-Menü usw. angezeigt. Sehr ordentlich. Weitere Informationen dazu finden Sie hier: http://unity.ubuntu.com/projects/appindicators/

Im rechten Bereich von Glade befindet sich unter Eigenschaften eine Seite Signale. Hier können Sie einfach den Namen der Methode eingeben, die als Handler für dieses Signal verwendet werden soll. In Ihrem Code erstellen Sie einfach ein gtk.Builder-Objekt, laden das von Glade erzeugte XML und verwenden die Methode gtk.Builder.connect_signals, um alle Ihre Signale mit ihren Methoden zu verbinden. Dies bedeutet, dass Sie Glade-Benutzeroberflächen in nahezu jeder Programmiersprache verwenden können. Da dies so einfach ist und die Sprachen von Natur aus unterschiedlich sind, ist es wenig sinnvoll, Glade selbst mit Codierung zu versehen. Für die Codierung von Python (und anderen Sprachen) empfehle ich einen Blick auf Geany ( http://apt.ubuntu.com/p/geany ). Es ist ein sehr guter Editor/IDE.

Andere Dinge in Unity sind so neu, dass es nur wenige Dokumentationen gibt, außer als Codebeispiele. Einige der APIs werden gerade erst stabil, beispielsweise für Scopes und Lenses, die vor einiger Zeit noch nicht so genannt wurden. Als Anfänger würde ich ein bisschen warten, bevor ich mich mit diesen Dingen beschäftige.

Die Einträge im Launcher werden im Code eigentlich nur als LauncherEntry bezeichnet. Sie können eine Fortschrittsanzeige, einen Zähler und QuickLists verwenden. Ich habe das selbst noch nicht kodiert, aber diese Seite enthält ein Beispiel und es scheint sehr einfach zu sein, wie der Rest der Unity APIs: http://Bazaar.launchpad.net/~unity-team/libunity/ trunk/view/head: /examples/launcher.py

10

Hier finden Sie eine Liste der verfügbaren APIs:

4
Jorge Castro