2010-10-23 10 views
1

Je n'ai pas trouvé de documentation sur pynotify ... donc je ne sais pas à quoi pynotify.init() fonciont correspond. Aide-moi :)Que signifie pynotify.init?

+2

Avez-vous lu ça? http://download.gna.org/py-notify/reference/index.html –

+3

mais ce n'est pas pynotify: - \ – xRobot

Répondre

3

si vous parlez de l'emballage python pour libnotify

la notify.init() juste envelopper la fonction C notify_init() qui initialise la bibliothèque de notifications.

Pour plus d'exemples vérifier: http://roscidus.com/desktop/node/336

la source de code est ici: http://www.galago-project.org/downloads.php

l'API C: http://www.galago-project.org/docs/api/libnotify/notify_8h.html

et la ligne directrice ubuntu: https://wiki.ubuntu.com/NotificationDevelopmentGuidelines#How%20do%20I%20get%20these%20slick%20icons

Mise à jour:

Voici le code du trou en C de la source e:

/** 
* notify_init: 
* @app_name: The name of the application initializing libnotify. 
* 
* Initialized libnotify. This must be called before any other functions. 
* 
* Returns: %TRUE if successful, or %FALSE on error. 
*/ 
gboolean 
notify_init(const char *app_name) 
{ 
    GError *error = NULL; 
    DBusGConnection *bus = NULL; 

    g_return_val_if_fail(app_name != NULL, FALSE); 
    g_return_val_if_fail(*app_name != '\0', FALSE); 

    if (_initted) 
     return TRUE; 

    _app_name = g_strdup(app_name); 

    g_type_init(); 

    bus = dbus_g_bus_get(DBUS_BUS_SESSION, &error); 

    if (error != NULL) 
    { 
     g_message("Unable to get session bus: %s", error->message); 
     g_error_free(error); 
     return FALSE; 
    } 

    _proxy = dbus_g_proxy_new_for_name(bus, 
             NOTIFY_DBUS_NAME, 
             NOTIFY_DBUS_CORE_OBJECT, 
             NOTIFY_DBUS_CORE_INTERFACE); 
    dbus_g_connection_unref(bus); 

    dbus_g_object_register_marshaller(notify_marshal_VOID__UINT_STRING, 
             G_TYPE_NONE, 
             G_TYPE_UINT, 
             G_TYPE_STRING, G_TYPE_INVALID); 

    dbus_g_proxy_add_signal(_proxy, "NotificationClosed", 
          G_TYPE_UINT, G_TYPE_INVALID); 
    dbus_g_proxy_add_signal(_proxy, "ActionInvoked", 
          G_TYPE_UINT, G_TYPE_STRING, 
          G_TYPE_INVALID); 

    _initted = TRUE; 

    return TRUE; 
} 

donc en gros ce qu'elle est le fait initalisaing le D-BUS pour la communication et ajouter quelques signaux à elle.

+0

il est dit que pynotify.init() initialise pynotify mais il ne dit pas ce que signifie initialize pynotify : - \ – xRobot

+0

@xRobot: je viens de mettre à jour ma réponse, pour plus de détails, vous pouvez vérifier le code du trou à partir du code source à partir du lien ci-dessus. – mouad