Back to index

libindicate  12.10.0
Functions | Variables
test-interests-client.c File Reference
#include <glib.h>
#include "libindicate/indicator.h"
#include "libindicate/server.h"
#include "libindicate/interests.h"

Go to the source code of this file.

Functions

static gboolean check_interests (void)
static void interest_added (IndicateServer *server, IndicateInterests interest)
static gboolean done_timeout_cb (gpointer data)
int main (int argc, char *argv)

Variables

static gboolean passed = TRUE
static GMainLoop * mainloop = NULL
static gboolean interests [INDICATE_INTEREST_LAST] = {0}

Function Documentation

static gboolean check_interests ( void  ) [static]

Definition at line 12 of file test-interests-client.c.

{
       guint i;
       for (i = INDICATE_INTEREST_NONE + 1; i < INDICATE_INTEREST_LAST; i++) {
              if (!interests[i]) {
                     return FALSE;
              }
       }

       return TRUE;
}

Here is the caller graph for this function:

static gboolean done_timeout_cb ( gpointer  data) [static]

Definition at line 38 of file test-interests-client.c.

{
       g_debug("All interests not set");
       passed = FALSE;
       g_main_loop_quit(mainloop);
       return FALSE;
}

Here is the caller graph for this function:

static void interest_added ( IndicateServer *  server,
IndicateInterests  interest 
) [static]

Definition at line 25 of file test-interests-client.c.

{
       g_debug("Oh, someone is interested in my for: %d", interest);
       interests[interest] = TRUE;

       if (check_interests()) {
              g_main_loop_quit(mainloop);
       }

       return;
}

Here is the call graph for this function:

Here is the caller graph for this function:

int main ( int  argc,
char *  argv 
)

Definition at line 47 of file test-interests-client.c.

{
       g_type_init();

       IndicateIndicator * indicator = indicate_indicator_new();
       indicate_indicator_show(indicator);

       IndicateServer * server = indicate_server_ref_default();
       g_signal_connect(G_OBJECT(server), INDICATE_SERVER_SIGNAL_INTEREST_ADDED, G_CALLBACK(interest_added), NULL);

       g_timeout_add_seconds(2, done_timeout_cb, indicator);

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

       return !passed;
}

Here is the call graph for this function:


Variable Documentation

gboolean interests[INDICATE_INTEREST_LAST] = {0} [static]

Definition at line 9 of file test-interests-client.c.

GMainLoop* mainloop = NULL [static]

Definition at line 8 of file test-interests-client.c.

gboolean passed = TRUE [static]

Definition at line 7 of file test-interests-client.c.