Welches GUI-Toolkit wird Ubuntu Unity verwenden?

15

Ich entwickle einige Apps für GTK + und benutze daher GNOME sehr häufig.

Aber was wird das GUI-Toolkit von Unity sein?

Lyrae
quelle

Antworten:

21

Unity verwendet ein Toolkit namens Nux . Nux ist ein OpenGL-Toolkit, das als eigenständiges Widget-System ausgeführt oder in vorhandene OpenGL-Anwendungen eingebettet werden kann. In compiz wird Nux im eingebetteten Modus ausgeführt.

Obwohl nux ein Toolkit ist, ist es sehr dünn gestaltet, so dass wir bei Bedarf immer noch direkte OpenGL-Anrufe tätigen können. Nux enthält die meisten Widgets, die ein Entwickler verwenden möchte, und wird zusammen mit Unity als Toolkit entwickelt.

Unity verwendet GTK NICHT intern. Einige externe Inhalte werden mit GTK gerendert (globale Menüs sind nicht in Bearbeitung), GTK ist jedoch ansonsten nicht an Unity beteiligt.

GNOME-Anwendungen verwenden natürlich weiterhin GTK.

Jason Smith
quelle
Die Quellen zeigen, dass Unity Gtk-Funktionen an mehreren Stellen direkt aufruft: $ cat unity / src / *. Cpp | grep -c gtk_ -> 116.
Marius Gedminas
2

Die Einheit selbst ist eine Desktop-Shell. Es ist eine Shell, die auf der Gnome-Plattform basiert, so wie Gnome Shell eine andere Shell dafür ist.

Intern verwendet Unity ein eingebettetes GL-Toolkit. Dieses Toolkit ist jedoch nicht für die Entwicklung einer "Unity-Anwendung" vorgesehen. Relevant ist das Toolkit, das Anwendungsentwickler verwenden sollten, um in der Unity-Umgebung gut zu funktionieren.

Mit den bereitgestellten Bindungen können sowohl die GTK + - als auch die QT-Toolkits zum Entwickeln von mit Unity kompatiblen Anwendungen verwendet werden.

Eine Unity-kompatible Anwendung verwendet libunity zur Integration in die Unity-Shell: Launcher-Integration, Sound-Player-Integration usw. Der Umfang der Libunity ist derzeit begrenzt, wird jedoch durch die Bibliotheken der Ayatana-Initiative ergänzt: dbusmenu, indicator, notify-osd.

Eine Liste der Referenz-APIs ist jetzt verfügbar unter: http://developer.ubuntu.com/api/

dbarth
quelle
0

Ich denke, Unity-Place-Paket nutzt Unordnung. Unity nutzt auch Nux.


quelle