Desarrollo de aplicaciones compatibles con Unity en Python: ¿por dónde empezar?

16

Soy un programador experimentado que está interesado en desarrollar aplicaciones para Linux, específicamente GTK, y más específicamente aplicaciones que cumplen con Unity. Además del paso obvio de aprender Python, ¿cuál es la mejor manera de aprender cosas como:

  • ¿Cómo desarrollar una interfaz GUI (probablemente usando Glade)? ¿Hay algún buen tutorial de Glade2?
  • ¿Dónde están las llamadas API específicas de Unity? (como colocar un ícono de notificación en el panel superior y usar "distintivos" en los íconos de inicio (al igual que el recuento de mensajes de Unity Mail ).

Además, ¿hay algún buen IDE de Python que sea similar a Xcode o Visual Studio, donde pueda diseñar su interfaz y luego hacer doble clic en botones y widgets para vincular el código con ellos?

Gracias por cualquier ayuda.

CaptSaltyJack
fuente
1
Debe hacer la pregunta IDE por separado (pero primero busque otras preguntas porque ya hay muchas preguntas sobre IDE). Quizás también haga preguntas separadas para indicadores e insignias.
dv3500ea

Respuestas:

10

Buena pregunta.

En primer lugar, los appindicadores no son específicos de Unity de ninguna manera. En realidad, se ejecutan igual de bien en Xfce o KDE. Es muy, muy, fácil de usar. Creará un objeto indicador, establecerá el nombre de los iconos para usar cuando necesite atención, etc., y simplemente adjúntele menús. Los indicadores se envían a través de dbus y se muestran correctamente de manera adecuada para el entorno de escritorio actual. En Unity, Gnome Shell, Xfce y LXDE, se mostrará como menús GTK, y en KDE se mostrará como menús Qt, etc. Muy ordenado. Puede encontrar más información al respecto aquí: http://unity.ubuntu.com/projects/appindicators/

En el panel derecho de Glade, tiene una página de Señales en Propiedades. Aquí puede simplemente escribir el nombre del método para usar como controlador de esa señal. En su código, simplemente creará un objeto gtk.Builder, cargará el XML que produce Glade y usará el método gtk.Builder.connect_signals para conectar todas sus señales a sus métodos. Esto significa que puede usar interfaces Glade en casi cualquier lenguaje de programación. Como eso es tan fácil y dado que los idiomas son diferentes por naturaleza, tiene poco sentido agregar codificación al propio Glade. Para codificar Python (y otros idiomas), recomendaré echar un vistazo a Geany ( http://apt.ubuntu.com/p/geany ). Es un muy buen editor / IDE.

Otras cosas en Unity son tan nuevas que hay poca documentación, excepto como ejemplos de código. Algunas de las API se están volviendo estables, como Scopes y Lenses, que ni siquiera se llamaban hace un tiempo. Como principiante, esperaría un poco antes de analizar esas cosas.

Las entradas en el iniciador, en realidad, solo se denominan LauncherEntry en el código, y puede usar una barra de progreso, un contador y QuickLists. En realidad no lo he codificado, pero esta página tiene un ejemplo y parece muy fácil, como el resto de las API de Unity: http://bazaar.launchpad.net/~unity-team/libunity/trunk/view/ head: /examples/launcher.py

Jo-Erlend Schinstad
fuente
Y echa un vistazo developer.ubuntu.com así!
David Planella