Logo Search packages:      
Sourcecode: libnotify version File versions  Download package

G_BEGIN_DECLS gboolean notify_init ( const char *  app_name  ) 

Initializes the notifications library.

Parameters:
app_name The application name.
Returns:
TRUE if the library initialized properly and a connection to a notification server was made.
notify_init: : 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.

Definition at line 51 of file notify.c.

{
      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;
}


Generated by  Doxygen 1.6.0   Back to index