Actually implement the "clicked" signal for the EActivityHandler, and

add some small testing code for it in the test component.

svn path=/trunk/; revision=10464
This commit is contained in:
Ettore Perazzoli
2001-06-25 02:54:12 +00:00
parent 8cb68557ae
commit 2f67aaaf88
3 changed files with 41 additions and 12 deletions

View File

@ -1,3 +1,14 @@
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* evolution-test-component.c (activity_client_clicked_callback):
New callback for the "clicked" signal on the EActivityClient.
Just spit out a warning now, for testing purposes.
(timeout_callback_1): Connect it.
* evolution-activity-client.c (listener_callback): Emit the
"clicked" signal if we get the "Clicked" event from the Bonobo
listener.
2001-06-24 Ettore Perazzoli <ettore@ximian.com>
* e-shell-folder-commands.c: #include <gtk/gtklabel.h>.

View File

@ -51,7 +51,7 @@ enum {
LAST_SIGNAL
};
static guint activity_client_signals[LAST_SIGNAL] = { 0 };
static guint signals[LAST_SIGNAL] = { 0 };
struct _EvolutionActivityClientPrivate {
/* The ::Activity interface that we QI from the shell. */
@ -203,10 +203,16 @@ listener_callback (BonoboListener *listener,
char *event_name,
CORBA_any *any,
CORBA_Environment *ev,
gpointer data)
void *data)
{
/* FIXME: Implement. */
g_print ("EvolutionActivityClient: BonoboListener event -- %s\n", event_name);
EvolutionActivityClient *activity_client;
activity_client = EVOLUTION_ACTIVITY_CLIENT (data);
if (strcmp (event_name, "Clicked") == 0)
gtk_signal_emit (GTK_OBJECT (activity_client), signals[CLICKED]);
else
g_warning ("EvolutionActivityClient: Unknown event from listener -- %s", event_name);
}
@ -258,15 +264,14 @@ class_init (EvolutionActivityClientClass *klass)
object_class = GTK_OBJECT_CLASS (klass);
object_class->destroy = impl_destroy;
activity_client_signals[CLICKED] =
gtk_signal_new ("clicked",
GTK_RUN_FIRST,
object_class->type,
GTK_SIGNAL_OFFSET (EvolutionActivityClientClass, clicked),
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0);
signals[CLICKED] = gtk_signal_new ("clicked",
GTK_RUN_FIRST,
object_class->type,
GTK_SIGNAL_OFFSET (EvolutionActivityClientClass, clicked),
gtk_marshal_NONE__NONE,
GTK_TYPE_NONE, 0);
gtk_object_class_add_signals (object_class, activity_client_signals, LAST_SIGNAL);
gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL);
}

View File

@ -51,6 +51,16 @@ static EvolutionActivityClient *activity_client;
static int timeout_id = 0;
static int progress = -1;
/* Callbacks. */
static void
activity_client_clicked_callback (EvolutionActivityClient *client,
void *data)
{
g_warning ("Task bar button clicked!");
}
/* Timeout #3: We are done. */
static int
@ -109,6 +119,9 @@ timeout_callback_1 (void *data)
return FALSE;
}
gtk_signal_connect (GTK_OBJECT (activity_client), "clicked",
GTK_SIGNAL_FUNC (activity_client_clicked_callback), NULL);
g_print ("Component becoming busy -- %s\n", COMPONENT_ID);
if (suggest_display)
g_print (" --> Could display dialog box.\n");