Я пытаюсь разработать апплет Gnome.Я использую CentOS 6.5 (панель Gnome 2.30.2).
Я пытался создать базовый апплет, копируя из:
Я сделал следующее:
Создайте файл сервера
-rw-r--r--. 1 myself mygroup ... /usr/lib/bonobo/servers/psleApplet.server
Код:
<oaf_info>
<oaf_server iid="OAFIID:PsleApplet_Factory" type="exe" location="/usr/local/bin/psleApplet.py">
<oaf_attribute name="repo_ids" type="stringv">
<item value="IDL:Bonobo/GenericFactory:1.0"/>
<item value="IDL:Bonobo/Unknown:1.0"/>
</oaf_attribute>
<oaf_attribute name="name" type="string" value="foo Factory"/>
<oaf_attribute name="description" type="string" value="bar (factory)"/>
</oaf_server>
<oaf_server iid="OAFIID:PsleApplet" type="factory" location="OAFIID:PsleApplet_Factory">
<oaf_attribute name="repo_ids" type="stringv">
<item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
<item value="IDL:Bonobo/Controle:1.0"/>
<item value="IDL:Bonobo/Unknown:1.0"/>
</oaf_attribute>
<oaf_attribute name="name" type="string" value="foo"/>
<oaf_attribute name="description" type="string" value="bar"/>
<oaf_attribute name="panel:category" type="string" value="Utility"/>
<oaf_attribute name="panel:icon" type="string" value="gnome-applets.png"/>
</oaf_server>
</oaf_info>
Создание базового файла Python
-rwxr-xr-x. 1 myself mygroup ... /usr/local/bin/psleApplet.py
Код:
#!/usr/bin/env python
import sys
import gtk
import pygtk
import gnomeapplet
pygtk.require('2.0')
def applet_factory(applet, iid):
label = gtk.Label('It works!')
applet.add(label)
applet.show_all()
print 'Factory started.'
return True
if _name__ == '__main__':
print "Sarting factory."
gnomeapplet.bonnobo_factory('OAFIID:PsleApplet_Factory', gnomeapplet.Applet.__gtype__,'Sample Applet', '0.1', applet_factory)
Дополнительная информация
Здесьмой вывод, когда я запускаю файл Python из консоли:
>/usr/local/bin/psleApplet.py
Starting factory.
Обратите внимание, что сообщение «Factory завод» не появляется.
Ссылочный значок существует:
-rw-r--r--. 1 root root ... /usr/share/pixmaps/gnome-applets.png
Так что все вроде бы нормально, но я не могу найти свой апплет в списке после щелчка правой кнопкой мыши на панели> Добавить на панель
Что я сделал не так?