在Python中开发Unity兼容的应用程序 – 从哪里开始?

我是一名经验丰富的程序员,有兴趣为Linux开发应用程序,特别是GTK,更具体地说是符合Unity标准的应用程序。 除了学习Python的明显步骤之外,学习以下内容的最佳方法是:

  • 如何开发GUI界面(可能使用Glade)? 有没有好的Glade2教程?
  • Unity特定的API调用在哪里? (例如在顶部面板上放置一个通知图标,并在启动图标上使用“徽章”( Unity邮件的消息计数)。

此外,是否有任何类似于Xcode或Visual Studio的优秀Python IDE,您可以在其中设计界面,然后双击按钮和小部件以将代码绑定到它们?

谢谢你的帮助。

好问题。

首先,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,它们甚至在不久之前都没有被称为。 作为一个初学者,在等待这些事情之前我会稍等一下。

启动器上的条目实际上在代码中被称为LauncherEntry,它可以使用进度条,计数器和QuickLists。 我自己并没有真正编写过这个,但是这个页面有一个例子,看起来非常简单,就像Unity API的其他部分一样: http : //bazaar.launchpad.net/~unity-team/libunity/trunk/view/头:/examples/launcher.py

这里有一个API列表: