antiright-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Antiright-devel] antiright/gtkshell add_options.c containers.c g...


From: Jeffrey Bedard
Subject: [Antiright-devel] antiright/gtkshell add_options.c containers.c g...
Date: Fri, 02 Mar 2007 16:41:44 +0000

CVSROOT:        /sources/antiright
Module name:    antiright
Changes by:     Jeffrey Bedard <jefbed> 07/03/02 16:41:44

Modified files:
        gtkshell       : add_options.c containers.c gtkshell.c updated.c 
                         updated_label.c updated_label.h 
                         updated_options.c updated_progress.c 
                         updated_progress.h 

Log message:
        Refactored updater argument handling code, using generic add function
        with pointer to widget add funcction.  Split out functions
        embedded in add_options and gtkshell.c.  

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/add_options.c?cvsroot=antiright&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/containers.c?cvsroot=antiright&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.c?cvsroot=antiright&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated.c?cvsroot=antiright&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated_label.c?cvsroot=antiright&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated_label.h?cvsroot=antiright&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated_options.c?cvsroot=antiright&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated_progress.c?cvsroot=antiright&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/updated_progress.h?cvsroot=antiright&r1=1.5&r2=1.6

Patches:
Index: add_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/add_options.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- add_options.c       2 Mar 2007 15:40:01 -0000       1.12
+++ add_options.c       2 Mar 2007 16:41:43 -0000       1.13
@@ -22,6 +22,41 @@
 
 #include "gtkshell.h"
 
+static void
+add_new_window(struct GSH * gsh)
+{
+       gsh->window=gsh_create_main_window();
+       gsh->rows.row=1;
+       gsh_setup_containers(gsh);
+       gtk_widget_show(gsh->window);
+}
+
+static void
+add_piped_label(struct GSH * gsh)
+{
+       gchar * output;
+
+       output=antiright_read_file(stdin);
+       gsh_add_label(gsh, output);
+       g_free(output);
+}
+
+static void
+add_piped_text(struct GSH * gsh)
+{
+       gchar * output;
+       GtkTextBuffer * buffer;
+       GtkWidget * widget;
+
+       widget=gsh_text_area(gsh);
+       buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));
+       output=antiright_read_file(stdin);
+       gtk_text_buffer_set_text(buffer, output,
+                       strlen(output));
+       g_free(output);
+}
+
+
 void
 gsh_handle_add_arguments(struct GSH * gsh, int argc, char **argv, int *counter)
 {
@@ -47,27 +82,10 @@
                gsh_add_label(gsh, argv[(*counter)]);
                break;
        case 'P':
-               {
-                       gchar * output;
-                       GtkTextBuffer * buffer;
-                       GtkWidget * widget;
-
-                       widget=gsh_text_area(gsh);
-                       buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));
-                       output=antiright_read_file(stdin);
-                       gtk_text_buffer_set_text(buffer, output,
-                                                strlen(output));
-                       g_free(output);
-               }
+               add_piped_text(gsh);
                break;
        case 'p':
-               {
-                       gchar * output;
-
-                       output=antiright_read_file(stdin);
-                       gsh_add_label(gsh, output);
-                       g_free(output);
-               }
+               add_piped_label(gsh);
                break;
 
        case 'r': /* Force creation of a new row.  */
@@ -92,10 +110,7 @@
                break;
 
        case 'w':
-               gsh->window=gsh_create_main_window();
-               gsh->rows.row=1;
-               gsh_setup_containers(gsh);
-               gtk_widget_show(gsh->window);
+               add_new_window(gsh);
                break;
        }
 }

Index: containers.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/containers.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- containers.c        2 Mar 2007 03:56:07 -0000       1.8
+++ containers.c        2 Mar 2007 16:41:43 -0000       1.9
@@ -22,22 +22,43 @@
 
 #include "gtkshell.h"
 
-void
-gsh_setup_scrolled_window(struct GSH * gsh)
+static void
+scrolled_window_options(struct GSH * gsh)
 {
-       gsh->scrolled_window = gtk_scrolled_window_new(NULL, NULL);
        gtk_scrolled_window_set_policy(
                            GTK_SCROLLED_WINDOW(gsh->scrolled_window),
                          GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
        gtk_scrolled_window_set_shadow_type(
                            GTK_SCROLLED_WINDOW(gsh->scrolled_window),
                                            GTK_SHADOW_OUT);
+}
+
+void
+gsh_setup_scrolled_window(struct GSH * gsh)
+{
+       gsh->scrolled_window = gtk_scrolled_window_new(NULL, NULL);
+       scrolled_window_options(gsh);
        gtk_container_add(GTK_CONTAINER(gsh->window),
                          gsh->scrolled_window);
        gtk_widget_show(gsh->scrolled_window);
 
 }
 
+static void
+setup_framed(struct GSH * gsh)
+{
+       GtkWidget *frame;
+
+       frame = gtk_frame_new(NULL);
+       gtk_container_add(GTK_CONTAINER(gsh->window),
+                       frame);
+       gtk_widget_show(frame);
+       gtk_container_add(GTK_CONTAINER(frame),
+                       gsh->rows.h);
+}
+
+
 void
 gsh_setup_containers(struct GSH * gsh)
 {
@@ -51,16 +72,7 @@
                                                      gsh->rows.h);
        }
        else
-       {
-               GtkWidget *frame;
-
-               frame = gtk_frame_new(NULL);
-               gtk_container_add(GTK_CONTAINER(gsh->window),
-                                 frame);
-               gtk_widget_show(frame);
-               gtk_container_add(GTK_CONTAINER(frame),
-                                 gsh->rows.h);
-       }
+               setup_framed(gsh);
 
        gtk_widget_show(gsh->rows.h);
        gsh_new_row(gsh);

Index: gtkshell.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- gtkshell.c  2 Mar 2007 03:56:07 -0000       1.19
+++ gtkshell.c  2 Mar 2007 16:41:43 -0000       1.20
@@ -23,6 +23,21 @@
 
 #include "gtkshell.h"
 
+static void
+setup_quit_signal(GtkWidget * window, const gchar * signal)
+{
+       /* @null@ */
+       (void) g_signal_connect(window, signal, 
+                       G_CALLBACK(gtk_main_quit), NULL);
+}
+
+static void
+setup_quit_signals(GtkWidget * window)
+{
+       setup_quit_signal(window, "delete-event");
+       setup_quit_signal(window, "destroy");
+}
+
 GtkWidget *
 gsh_create_main_window()
 {
@@ -30,12 +45,7 @@
 
        window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
 
-       /* @null@ */
-       (void) g_signal_connect(window, "delete-event",
-                               G_CALLBACK(gtk_main_quit), NULL);
-       /* @null@ */
-       (void) g_signal_connect(window, "destroy",
-                               G_CALLBACK(gtk_main_quit), NULL);
+       setup_quit_signals(window);
 
        return (window);
 }
@@ -43,6 +53,7 @@
 gsh_GSH_Rows(struct GSH_Rows * rows)
 {
        rows->row = 1;
+       /* Use an arbitrary, though reasonable, initial number of rows.  */
        rows->rows = 8;
 }
 static void
@@ -59,9 +70,9 @@
 {
        /* @null */
        gsh->geometry = (gchar *) NULL;
+       gsh->bflags=0;
        gsh_GSH_Rows(&gsh->rows);
        gsh_GSH_Updater(&gsh->update);
-       gsh->bflags=0;
 }
 struct GSH *
 gsh_new_GSH()

Index: updated.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- updated.c   28 Feb 2007 03:53:51 -0000      1.10
+++ updated.c   2 Mar 2007 16:41:43 -0000       1.11
@@ -31,7 +31,7 @@
        ARBUG("gsh_append_updater()");
 #endif                         /* DEBUG */
 
-       if ((gsh != NULL) && (item != NULL))
+       if (ARPBOOL(gsh) && ARPBOOL(item))
                gsh->update.list = g_slist_prepend(gsh->update.list, item);
 
 #ifdef DEBUG
@@ -40,14 +40,13 @@
 }
 
 static void
-gsh_assign_updater(
-                  gsh_updater_data * item,
+gsh_assign_updater(gsh_updater_data * item,
                   void (*function) (gchar *, gpointer),
                   gchar *command, GtkWidget *widget)
 {
        /* Assign the values to ITEM's members.  */
 
-       asprintf(&item->command, "%s", command);
+       ar_asprintf(&item->command, "%s", command);
 
        /* No allocation necessary as these are duplicate pointers.  */
 
@@ -81,7 +80,7 @@
         * empty.
         */
 
-       ARIFP(data)
+       ARWIFNP(data)
        {
                gsh_updater_data *item;
 
@@ -93,10 +92,6 @@
                ARPASSERT(item->function);
                item->function(item->command, item->widget);
        }
-       else
-       {
-               ARWARN("data is NULL, operation not performed");
-       }
 }
 
 static gint
@@ -111,7 +106,7 @@
        gsh = (struct GSH *) data;
 
 
-       if ((gsh != NULL) && (gsh->update.list != NULL))
+       if (ARPBOOL(gsh) && ARPBOOL(gsh->update.list))
                g_slist_foreach(gsh->update.list, gsh_update_each, gsh);
        else
        {
@@ -130,14 +125,10 @@
        ARBUG("gsh_start_updates()");
 #endif                         /* DEBUG */
 
-       if (gsh != NULL)
+       ARWIFNP (gsh)
        {
                (void) gsh_perform_updates(gsh);
                (void) g_timeout_add(gsh->update.period, gsh_perform_updates,
                                     gsh);
        }
-       else
-       {
-               ARWARN("application structure invalid, operation not 
performed");
-       }
 }

Index: updated_label.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated_label.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- updated_label.c     28 Feb 2007 03:53:51 -0000      1.12
+++ updated_label.c     2 Mar 2007 16:41:43 -0000       1.13
@@ -59,7 +59,7 @@
 }
 
 void
-gsh_add_updated_label(struct GSH * gsh, char *command)
+gsh_add_updated_label(struct GSH * gsh, const gchar *command)
 {
        GtkWidget *widget;
 

Index: updated_label.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated_label.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- updated_label.h     28 Feb 2007 03:53:51 -0000      1.5
+++ updated_label.h     2 Mar 2007 16:41:43 -0000       1.6
@@ -24,6 +24,6 @@
 #define GSH_UPDATED_LABEL_H
 
 void
-     gsh_add_updated_label(struct GSH * gsh, char *command);
+gsh_add_updated_label(struct GSH * gsh, const gchar *command);
 
 #endif                         /* GSH_UPDATED_LABEL_H */

Index: updated_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated_options.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- updated_options.c   2 Mar 2007 03:56:07 -0000       1.9
+++ updated_options.c   2 Mar 2007 16:41:43 -0000       1.10
@@ -41,6 +41,14 @@
        gsh_test_updating(gsh);
 }
 
+static void
+add_updater(struct GSH * gsh, int argc, int * counter, char **argv,
+                  void (*add_func)(struct GSH *, const gchar *))
+{
+       gsh_updater_argument_generic(gsh, argc, counter);
+       (*add_func)(gsh, (const gchar *)argv[*counter + 1]);
+}
+
 void
 gsh_handle_updated_arguments(struct GSH * gsh, int argc,
                             char **argv, int *counter)
@@ -49,12 +57,12 @@
        switch (argv[(*counter)][3])
        {
        case 'l':
-               gsh_add_updated_label(gsh, argv[*counter + 1]);
-               gsh_updater_argument_generic(gsh, argc, counter);
+               add_updater(gsh, argc, counter, argv,
+                           &gsh_add_updated_label);
                break;
        case 'p':
-               gsh_add_updated_progress(gsh, argv[*counter + 1]);
-               gsh_updater_argument_generic(gsh, argc, counter);
+               add_updater(gsh, argc, counter, argv,
+                           &gsh_add_updated_label);
                break;
        }
 }

Index: updated_progress.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated_progress.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- updated_progress.c  28 Feb 2007 03:53:51 -0000      1.7
+++ updated_progress.c  2 Mar 2007 16:41:43 -0000       1.8
@@ -37,7 +37,7 @@
        free(results);
 }
 void
-gsh_add_updated_progress(struct GSH * gsh, gchar *command)
+gsh_add_updated_progress(struct GSH * gsh, const gchar *command)
 {
        GtkWidget *widget;
 

Index: updated_progress.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/updated_progress.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- updated_progress.h  28 Feb 2007 03:53:51 -0000      1.5
+++ updated_progress.h  2 Mar 2007 16:41:43 -0000       1.6
@@ -24,6 +24,6 @@
 #define GSH_UPDATED_PROGRESS_H
 
 void
-     gsh_add_updated_progress(struct GSH * gsh, gchar *command);
+gsh_add_updated_progress(struct GSH * gsh, const gchar *command);
 
 #endif




reply via email to

[Prev in Thread] Current Thread [Next in Thread]