[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Antiright-devel] antiright/gtkshell callbacks.c
From: |
Jeffrey Bedard |
Subject: |
[Antiright-devel] antiright/gtkshell callbacks.c |
Date: |
Tue, 24 Apr 2007 22:33:07 +0000 |
CVSROOT: /sources/antiright
Module name: antiright
Changes by: Jeffrey Bedard <jefbed> 07/04/24 22:33:07
Modified files:
gtkshell : callbacks.c
Log message:
Cleaned up callback function blocked tight scoping.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/callbacks.c?cvsroot=antiright&r1=1.19&r2=1.20
Patches:
Index: callbacks.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/callbacks.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- callbacks.c 24 Apr 2007 21:54:21 -0000 1.19
+++ callbacks.c 24 Apr 2007 22:33:06 -0000 1.20
@@ -44,66 +44,62 @@
static void
gsh_test_exit(struct GSH * gsh)
{
-
-#ifdef DEBUG
- ARBUG("gsh_test_exit()");
-#endif /* DEBUG */
-
- if (ARPBOOL(gsh) && ((gsh->bflags & GSH_CBEXIT) == GSH_CBEXIT))
+ if (ARPBOOL(gsh) && GSH_FLAG(GSH_CBEXIT))
gtk_main_quit();
-
-#ifdef DEBUG
- ARBUG("==>made it past exit");
-#endif /* DEBUG */
}
void
gsh_system_cb(GtkWidget *widget, gpointer data)
{
- struct GSH_CBData *cb;
-
- cb = (struct GSH_CBData *) data;
-
#ifdef DEBUG
ARBUG("system_cb");
#endif /* DEBUG */
UNUSED(widget);
- ARWIFNP(cb)
+ ARWIFNP(data)
{
+ struct GSH_CBData *cb = data;
(void) antiright_system(cb->data);
gsh_test_exit(cb->gsh);
}
}
+static void
+exec_and_test_print(struct GSH_CBData * cb, const gchar * input)
+{
+ struct GSH * gsh;
+
+ gsh=cb->gsh;
+
+ if(GSH_FLAG(GSH_PROMPT_ECHOES))
+ g_print("%s\n", input);
+ else
+ sysprintf("%s %s", (char *) cb->data,
+ (char *) input);
+}
+
void
gsh_entry_cb(GtkWidget *widget, gpointer data)
{
- const gchar *input; /* Must not be freed. */
struct GSH_CBData *cb;
+ ARPASSERT(widget);
+ ARPASSERT(data);
+
cb = (struct GSH_CBData *) data;
- ARWIFNP(widget)
{
GtkWidget * combo_box;
+ const gchar *input; /* Must not be freed. */
+
combo_box=gtk_widget_get_ancestor(widget, GTK_TYPE_COMBO_BOX);
input = gtk_combo_box_get_active_text(
GTK_COMBO_BOX(combo_box));
ARPASSERT(input);
- ARWIFNP(cb)
- {
- if((cb->gsh->bflags & GSH_PROMPT_ECHOES)
- == GSH_PROMPT_ECHOES)
- g_print("%s\n", input);
- else
- sysprintf("%s %s", (char *) cb->data,
- (char *) input);
-
+ exec_and_test_print(cb, input);
gsh_test_exit(cb->gsh);
gtk_combo_box_prepend_text(GTK_COMBO_BOX(combo_box),
(gchar *)input);
}
- }
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Antiright-devel] antiright/gtkshell callbacks.c,
Jeffrey Bedard <=