Topic: [howto] semplice applet per GNOME  (Letto 3511 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline manzo

  • python neanderthalensis
  • *
  • moderatore
  • Post: 478
  • Punti reputazione: 1
    • Mostra profilo
[howto] semplice applet per GNOME
« il: Novembre 08, 2007, 15:56 »
vediamo come scrivere e registrare una semplice applicazione pygtk che potremo "aggiungere" nel pannello di Gnome.

prima di tutto scriviamo il programma:

[hlpycode]#!/usr/bin/env python
import pygtk
pygtk.require('2.0')

import gtk
import gnomeapplet

def applet_factory(applet, iid):
  label = gtk.Label("Python Ruleggia!")
  applet.add(label)
  applet.show_all()
  return gtk.TRUE

gnomeapplet.bonobo_factory("OAFIID:GNOME_ManzoApplet_Factory",gnomeapplet.Applet.__gtype__,"Python Ruleggia!", "0", applet_factory)[/hlpycode]

lo salviamo ad esempio come /usr/bin/pysample.py (e ricordiamoci di dare l'attributo di esecuzione)

a questo punto bisogna preparare un file XML da salvare in /usr/lib/bonobo/servers che potrebbe chiamarsi GNOME_ManzoApplet.server ; l'importante è l'estensione .server :)

<oaf_info>
<oaf_server iid="OAFIID:GNOME_ManzoApplet_Factory"
            type="exe" location="/usr/bin/pysample.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="GNOME Applet in Python by Manzo"/>
        <oaf_attribute name="description" type="string" value="Esempio di Applet in Python by Manzo"/>
</oaf_server>

<oaf_server iid="OAFIID:GNOME_ManzoApplet"
            type="factory" location="OAFIID:GNOME_ManzoApplet_Factory">

        <oaf_attribute name="repo_ids" type="stringv">
                <item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
                <item value="IDL:Bonobo/Control:1.0"/>
                <item value="IDL:Bonobo/Unknown:1.0"/>
        </oaf_attribute>
        <oaf_attribute name="name" type="string" value="GNOME Applet in Python by Manzo"/>
        <oaf_attribute name="description" type="string" value="Esempio di Applet in Python by Manzo"/>
        <oaf_attribute name="panel:category" type="string" value="Utility"/>
        <oaf_attribute name="panel:icon" type="string" value="bug-buddy.png"/>
</oaf_server>
</oaf_info>

una volta salvato questo file, possiamo fare click destro sul pannello di Gnome, scegliere "Aggiungi" e nell'elenco vedremo la nostra nuova applet  8)

Questo è solo lo "scheletro", infatti l'applet è solo un container GTK che va popolato di controlli.

Offline nightmare01

  • python unicellularis
  • *
  • Post: 16
  • Punti reputazione: 0
    • Mostra profilo
Re: [howto] semplice applet per GNOME
« Risposta #1 il: Luglio 07, 2009, 15:33 »
Interessante! grazie per l'how-to!  :ok: :ok:

Offline angelo06

  • python unicellularis
  • *
  • Post: 23
  • Punti reputazione: 0
    • Mostra profilo
Re: [howto] semplice applet per GNOME
« Risposta #2 il: Aprile 15, 2012, 16:21 »
Scusate so che il post e vecchio, ma questo howto e per GNOME volevo sapere come fare con LXDE