如何用Python开发符合Unity标准的应用程序?从哪里开始?

我是一名有经验的程序员,对开发Linux应用程序特别是GTK感兴趣,尤其是那些符合Unity标准的应用程序。除了学习Python这个显而易见的步骤之外,还有什么最好的方法来学习以下内容呢:
- 如何开发GUI界面(可能使用Glade)?有没有一些好的Glade2教程? - Unity特定的API调用在哪里?(例如将通知图标放在顶部面板上,并在启动图标上使用“徽章”(类似于Unity Mail的消息计数)。 此外,是否有任何类似于Xcode或Visual Studio的好的Python集成开发环境(IDE),可以在其中设计界面,然后双击按钮和小部件以将代码与它们关联起来?
感谢您的帮助。

1你应该单独提出关于IDE的问题(但是先寻找其他问题,因为已经有很多关于IDE的问题了)。或许还可以单独提问关于指示器和徽章的问题。 - dv3500ea
2个回答

好问题。
首先,appindicators在任何方面都不是特定于Unity的。实际上,它们在Xfce或KDE上同样运行良好。使用起来非常简单。您将创建一个指示器对象,设置需要注意时使用的图标名称等,并将菜单附加到它上面。然后,指示器会通过dbus发送,并以适合当前桌面环境的方式正确显示出来。在Unity、Gnome Shell、Xfce和LXDE中,它将显示为GTK菜单;在KDE中,它将显示为Qt菜单,等等。非常巧妙。您可以在这里找到更多相关信息:http://unity.ubuntu.com/projects/appindicators/
在Glade的右窗格下,您可以在属性下找到一个信号页面。在这里,您只需输入要用作该信号处理程序的方法的名称即可。在您的代码中,您只需创建一个gtk.Builder对象,加载Glade生成的XML并使用gtk.Builder.connect_signals方法将所有信号连接到它们的方法。这意味着您几乎可以在任何编程语言中使用Glade界面。由于这样非常容易,而且语言本质上是不同的,因此在Glade本身中添加编码几乎没有意义。对于编写Python(和其他语言)的代码,我建议看一下Geany(http://apt.ubuntu.com/p/geany)。它是一个非常好的编辑器/IDE。
Unity中的其他东西都很新,除了代码示例外,几乎没有文档。其中一些API现在才变得稳定,例如Scopes和Lenses,这些API不久前甚至还没有这个名字。作为初学者,我建议等一段时间再研究这些内容。
在代码中,启动器上的条目实际上只是被称为LauncherEntry,并且它可以使用进度条、计数器和快速列表。我自己并没有编写过这个功能,但是这个页面有一个示例,看起来非常简单,就像Unity的其他API一样:http://bazaar.launchpad.net/~unity-team/libunity/trunk/view/head:/examples/launcher.py

还有,也可以去 http://developer.ubuntu.com 看看! - David Planella