2010-10-23 63 views
1

我還沒有找到關於pynotify的文檔...所以我不知道pynotify.init()funciont代表什麼。幫幫我吧:)pynotify.init代表什麼?

+2

你讀過這個嗎? http://download.gna.org/py-notify/reference/index.html – 2010-10-23 16:34:33

+3

但這不是pynotify: - \ – xRobot 2010-10-23 17:15:50

回答

3

,如果你正在談論的Python包裝的libnotify

的notify.init()只是包裝C函數notify_init(),它初始化通知庫。

更多的例子檢查:http://roscidus.com/desktop/node/336

代碼源是在這裏:http://www.galago-project.org/downloads.php

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

和Ubuntu的方針:https://wiki.ubuntu.com/NotificationDevelopmentGuidelines#How%20do%20I%20get%20these%20slick%20icons

更新:

這裏是來自源代碼的C代碼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; 
} 

所以基本上它做它initalisaing的d-BUS通信和一些信號添加到它。

+0

它說,pynotify.init()初始化pynotify,但它沒有說什麼意思是初始化pynotify : - \ – xRobot 2010-10-23 18:58:02

+0

@xRobot:我剛剛更新了我的答案,有關更詳細的信息,您可以從上面鏈接的源代碼中查看洞代碼。 – mouad 2010-10-23 19:15:31