Back to index

libindicator  12.10.0
Functions | Variables
service-manager-connect.c File Reference
#include <glib.h>
#include "libindicator/indicator-service-manager.h"

Go to the source code of this file.

Functions

gboolean timeout (gpointer data)
void connection (IndicatorServiceManager *sm, gboolean connected, gpointer user_data)
int main (int argc, char **argv)

Variables

static GMainLoop * mainloop = NULL
static gboolean passed = FALSE

Function Documentation

void connection ( IndicatorServiceManager *  sm,
gboolean  connected,
gpointer  user_data 
)

Definition at line 40 of file service-manager-connect.c.

{
       static gboolean has_connected = FALSE;

       if (has_connected && connected) {
              g_warning("We got two connected signals.  FAIL.");
              passed = FALSE;
              return;
       }

       if (!connected) {
              g_debug("Not connected");
              return;
       }

       has_connected = TRUE;
       g_debug("Connection");
       passed = TRUE;
       g_main_loop_quit(mainloop);
       return;
}

Here is the caller graph for this function:

int main ( int  argc,
char **  argv 
)

Definition at line 63 of file service-manager-connect.c.

{
       g_type_init();
       g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL);

       IndicatorServiceManager * is = indicator_service_manager_new("org.ayatana.test");
       g_signal_connect(G_OBJECT(is), INDICATOR_SERVICE_MANAGER_SIGNAL_CONNECTION_CHANGE, G_CALLBACK(connection), NULL);

       g_timeout_add_seconds(1, timeout, NULL);

       mainloop = g_main_loop_new(NULL, FALSE);
       g_main_loop_run(mainloop);

       g_object_unref(is);

       g_debug("Quiting");
       if (passed) {
              g_debug("Passed");
              return 0;
       }
       g_debug("Failed");
       return 1;
}

Here is the call graph for this function:

gboolean timeout ( gpointer  data)

Definition at line 31 of file service-manager-connect.c.

{
       passed = FALSE;
       g_error("Timeout with no connection.");
       g_main_loop_quit(mainloop);
       return FALSE;
}

Variable Documentation

GMainLoop* mainloop = NULL [static]

Definition at line 27 of file service-manager-connect.c.

gboolean passed = FALSE [static]

Definition at line 28 of file service-manager-connect.c.