Что означает pynotify.init? - PullRequest
       10

Что означает pynotify.init?

1 голос
/ 23 октября 2010

У меня нет документации по pynotify, поэтому я не знаю, что обозначает функция pynotify.init ().

1 Ответ

3 голосов
/ 23 октября 2010

, если вы говорите о оболочке Python для libnotify

notify.init () просто оборачивает функцию C notify_init (), которая инициализирует библиотеку уведомлений.

Для дополнительных примеров проверьте это: http://roscidus.com/desktop/node/336

источник кода здесь: http://www.galago -project.org / downloads.php

API C: 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 из источника:

 /**
 * 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;
}

так что в основном это то, что он делает инициализацию D-BUS для связи и добавляет к ней некоторые сигналы.

...