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 add_options.h ...


From: Jeffrey Bedard
Subject: [Antiright-devel] antiright/gtkshell add_options.c add_options.h ...
Date: Mon, 12 Feb 2007 16:36:56 +0000

CVSROOT:        /sources/antiright
Module name:    antiright
Changes by:     Jeffrey Bedard <jefbed> 07/02/12 16:36:56

Modified files:
        gtkshell       : add_options.c add_options.h arguments.c 
                         arguments.h button.c button.h callbacks.c 
                         callbacks.h containers.c containers.h 
                         dialog_options.c dialog_options.h file_dialog.c 
                         file_dialog.h geometry.c geometry.h gtkshell.c 
                         gtkshell.h label.c label.h main.c 
                         option_options.c option_options.h options.c 
                         options.h row.h 

Log message:
        Began global variable elimination and structuring.  

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/add_options.c?cvsroot=antiright&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/add_options.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/arguments.c?cvsroot=antiright&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/arguments.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/button.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/button.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/callbacks.c?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/callbacks.h?cvsroot=antiright&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/containers.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/containers.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/dialog_options.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/dialog_options.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/file_dialog.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/file_dialog.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/geometry.c?cvsroot=antiright&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/geometry.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.c?cvsroot=antiright&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.h?cvsroot=antiright&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/label.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/label.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/main.c?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/option_options.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/option_options.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/options.c?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/options.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/row.h?cvsroot=antiright&r1=1.2&r2=1.3

Patches:
Index: add_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/add_options.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- add_options.c       7 Feb 2007 16:05:58 -0000       1.2
+++ add_options.c       12 Feb 2007 16:36:56 -0000      1.3
@@ -22,49 +22,48 @@
 
 #include "gtkshell.h"
 
-extern GtkWidget *gsh_button;
-
 void
-gsh_handle_add_arguments(int argc, char **argv, unsigned int *counter)
+gsh_handle_add_arguments(struct GSH *gsh, int argc, char **argv, int *counter)
 {
        assert(strlen(argv[(*counter)])>1);
        switch(argv[(*counter)][2])
        {
-               case 'b':
+        case 'b': /* FIXME: not really implemented.  */
                        gsh_count(argc, counter);
                        {
                                GtkWidget *icon_view;
                                icon_view=gtk_icon_view_new();
+                /* has to be managed.  */
                        }
                        break;
                case 'I':
                        gsh_count(argc, counter);
-                gsh_image_button(argv[*counter], argv[*counter+1]);
+            gsh_image_button(gsh, argv[*counter], argv[*counter+1]);
                        gsh_count(argc, counter);
-                       gtk_button_set_label(GTK_BUTTON(gsh_button), "");
+            gtk_button_set_label(GTK_BUTTON(gsh->button), "");
                        break;
                case 'i':
                        gsh_count(argc, counter);
-                       gsh_image_button(argv[(*counter)], argv[(*counter)+1]);
+            gsh_image_button(gsh, argv[(*counter)], argv[(*counter)+1]);
                        gsh_count(argc, counter);
                        break;
                case 'l':
                        gsh_count(argc, counter);
-                       gsh_add_label(argv[(*counter)]);
+                       gsh_add_label(gsh, argv[(*counter)]);
                        break;
                case 'p':
                        gsh_count(argc, counter);
-                       gsh_setup_prompt_command_entry(argv[(*counter)]);
+            gsh_setup_prompt_command_entry(gsh, argv[(*counter)]);
                        break;
                case 't':
                        gsh_count(argc, counter);
-                       gsh_setup_command_entry(argv[(*counter)]);
+                       gsh_setup_command_entry(gsh, argv[(*counter)]);
                        break;
                case 'T':
-                       gsh_text_area();
+                       gsh_text_area(gsh);
                        break;
                case 'u':
-                       gsh_handle_updated_arguments(argc, argv, counter);
+                       gsh_handle_updated_arguments(gsh, argc, argv, counter);
                        break;
        }
 }

Index: add_options.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/add_options.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- add_options.h       1 Feb 2007 20:45:49 -0000       1.1
+++ add_options.h       12 Feb 2007 16:36:56 -0000      1.2
@@ -23,8 +23,10 @@
 #ifndef GSH_ADD_OPTIONS_H
 #define GSH_ADD_OPTIONS_H
 
+#include "gtkshell.h"
+
 void
-gsh_handle_add_arguments(int argc, char **argv, unsigned int *counter);
+gsh_handle_add_arguments(struct GSH *gsh, int argc, char **argv, int *counter);
 
 #endif
 

Index: arguments.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/arguments.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- arguments.c 9 Feb 2007 03:16:12 -0000       1.2
+++ arguments.c 12 Feb 2007 16:36:56 -0000      1.3
@@ -22,23 +22,20 @@
 
 #include "gtkshell.h"
 
-extern unsigned int gsh_rows;
-extern unsigned int gsh_row;
-
 void
-gsh_parse_arguments(int argc, char **argv)
+gsh_parse_arguments(struct GSH *gsh, int argc, char **argv)
 {
- unsigned int counter;
+ int counter;
 
- for (counter = 1; counter < (unsigned int)argc; counter++)
+ for (counter = 1; counter < argc; counter++)
  {
   if (argv[counter][0] == '-')
   {
-   gsh_handle_switch_arguments(argc, argv, &counter);
+   gsh_handle_switch_arguments(gsh, argc, argv, &counter);
   }
   else
   {
-   gsh_command_button(argv[counter]);
+   gsh_command_button(gsh, argv[counter]);
   }
  }
 }

Index: arguments.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/arguments.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- arguments.h 1 Feb 2007 20:45:49 -0000       1.1
+++ arguments.h 12 Feb 2007 16:36:56 -0000      1.2
@@ -22,8 +22,10 @@
 #ifndef GSH_ARGUMENTS_H
 #define GSH_ARGUMENTS_H
 
+#include "gtkshell.h"
+
 void
-gsh_parse_arguments(int argc, char **argv);
+gsh_parse_arguments(struct GSH *gsh, int argc, char **argv);
 
 void
 gsh_check_row();

Index: button.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/button.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- button.c    1 Feb 2007 20:45:49 -0000       1.1
+++ button.c    12 Feb 2007 16:36:56 -0000      1.2
@@ -25,24 +25,29 @@
 GtkWidget *gsh_button;
 
 void
-gsh_command_button(char *command)
+gsh_command_button(struct GSH *gsh, char *command)
 {
  char           *label_text;
+ struct GSH_CBData *cb;
+ cb=(struct GSH_CBData *)xmalloc(sizeof(struct GSH_CBData));
+ cb->gsh=gsh;
+ /* Try to do without allocation.  */
+ asprintf((char **)&cb->data, "%s", command);
  label_text = antiright_beautified_label(command);
- gsh_button = gtk_button_new_with_label(label_text);
+ gsh->button = gtk_button_new_with_label(label_text);
  free(label_text);
- g_signal_connect(G_OBJECT(gsh_button), "clicked",
-                 G_CALLBACK(system_cb), command);
- gsh_manage(gsh_button);
+ g_signal_connect(G_OBJECT(gsh->button), "clicked",
+                 G_CALLBACK(system_cb), cb);
+ gsh_manage(gsh, gsh->button);
 }
 
 void
-gsh_image_button(char *command, char *filename)
+gsh_image_button(struct GSH *gsh, char *command, char *filename)
 {
        GtkWidget *image;
        image=gtk_image_new_from_file(filename);
        gsh_command_button(command);
-       gtk_button_set_image(GTK_BUTTON(gsh_button), image);
-       gtk_button_set_relief(GTK_BUTTON(gsh_button), GTK_RELIEF_NONE);
+       gtk_button_set_image(GTK_BUTTON(gsh->button), image);
+       gtk_button_set_relief(GTK_BUTTON(gsh->button), GTK_RELIEF_NONE);
 }
 

Index: button.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/button.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- button.h    1 Feb 2007 20:45:49 -0000       1.1
+++ button.h    12 Feb 2007 16:36:56 -0000      1.2
@@ -23,9 +23,9 @@
 #define GSH_BUTTON_H
 
 void
-gsh_command_button(char *command);
+gsh_command_button(struct GSH *gsh, char *command);
 
 void
-gsh_image_button(char *command, char *filename);
+gsh_image_button(struct GSH *gsh, char *command, char *filename);
 
 #endif

Index: callbacks.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/callbacks.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- callbacks.c 9 Feb 2007 03:16:12 -0000       1.3
+++ callbacks.c 12 Feb 2007 16:36:56 -0000      1.4
@@ -22,33 +22,33 @@
 
 #include "gtkshell.h"
 
-gboolean gsh_button_exits=FALSE;
-
 void
-gsh_test_exit()
+gsh_test_exit(struct GSH *gsh)
 {
-       if (gsh_button_exits)
+       if (gsh->flags.button_exits)
                exit(0);
 }
 
 void
 system_cb(GtkWidget * widget, gpointer data)
 {
+    struct GSH_CBData *cb;
+    cb=(struct GSH_CBData *)data;
        UNUSED(widget);
 
-       antiright_system(data);
-       gsh_test_exit();
+       antiright_system(cb->data);
+       gsh_test_exit(cb->gsh);
 }
 
 void
 entry_cb(GtkWidget * widget, gpointer data)
 {
-       gchar          *command;
        const gchar    *input;
+    struct GSH_CBData *cb;
+
+    cb=(struct GSH_CBData *)data;
 
        input = gtk_entry_get_text(GTK_ENTRY(widget));
-       asprintf(&command, "%s %s", (char *) data, (char *) input);
-       system_cb(NULL, command);
-       free(command);
+       sysprintf("%s %s", (char *) cb->data, (char *) input);
 }
 

Index: callbacks.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/callbacks.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- callbacks.h 8 Feb 2007 23:22:31 -0000       1.2
+++ callbacks.h 12 Feb 2007 16:36:56 -0000      1.3
@@ -22,6 +22,12 @@
 #ifndef GSH_CALLBACKS_H
 #define GSH_CALLBACKS_H
 
+struct GSH_CBData
+{
+    struct GSH *gsh;
+    gpointer data;
+};
+
 void
 system_cb(GtkWidget * widget, gpointer data);
 

Index: containers.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/containers.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- containers.c        9 Feb 2007 03:16:12 -0000       1.1
+++ containers.c        12 Feb 2007 16:36:56 -0000      1.2
@@ -22,47 +22,44 @@
 
 #include "gtkshell.h"
 
-GtkWidget *scrolled_window;
-gboolean gsh_dont_scroll=FALSE;
-
 void
-gsh_setup_scrolled_window()
+gsh_setup_scrolled_window(struct GSH *gsh)
 {
-       scrolled_window=gtk_scrolled_window_new(NULL,NULL);
+       gsh->scrolled_window=gtk_scrolled_window_new(NULL,NULL);
        gtk_scrolled_window_set_policy(
-               GTK_SCROLLED_WINDOW(scrolled_window),
+               GTK_SCROLLED_WINDOW(gsh->scrolled_window),
                GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
        gtk_scrolled_window_set_shadow_type(
-               GTK_SCROLLED_WINDOW(scrolled_window),
+               GTK_SCROLLED_WINDOW(gsh->scrolled_window),
                GTK_SHADOW_OUT);
-       gtk_container_add(GTK_CONTAINER(gsh_window), 
-               scrolled_window);
-       gtk_widget_show(scrolled_window);
+       gtk_container_add(GTK_CONTAINER(gsh->window), 
+               gsh->scrolled_window);
+       gtk_widget_show(gsh->scrolled_window);
 
 }
 
 void
-gsh_setup_containers()
+gsh_setup_containers(struct GSH *gsh)
 {
-       gsh_hbox = gtk_hbox_new(FALSE, 2);
+       gsh->rows.h = gtk_hbox_new(FALSE, 2);
        
-       if(!gsh_dont_scroll)
+       if(!gsh->flags.dont_scroll)
        {
-               gsh_setup_scrolled_window();
+               gsh_setup_scrolled_window(gsh);
                gtk_scrolled_window_add_with_viewport(
-                       GTK_SCROLLED_WINDOW(scrolled_window), 
-                       gsh_hbox);
+                       GTK_SCROLLED_WINDOW(gsh->scrolled_window), 
+                       gsh->rows.h);
        }
        else
        {
-               gtk_container_add(GTK_CONTAINER(gsh_window),
-                       gsh_hbox);
+               gtk_container_add(GTK_CONTAINER(gsh->window),
+                       gsh->rows.h);
        }
 
- gtk_widget_show(gsh_hbox);
- gsh_vbox = gtk_vbox_new(FALSE, 2);
- gtk_container_add(GTK_CONTAINER(gsh_hbox), gsh_vbox);
- gtk_widget_show(gsh_vbox);
+ gtk_widget_show(gsh->rows.h);
+ gsh->rows.v = gtk_vbox_new(FALSE, 2);
+ gtk_container_add(GTK_CONTAINER(gsh->rows.h), gsh->rows.v);
+ gtk_widget_show(gsh->rows.v);
 }
 
 

Index: containers.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/containers.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- containers.h        9 Feb 2007 03:16:12 -0000       1.1
+++ containers.h        12 Feb 2007 16:36:56 -0000      1.2
@@ -24,10 +24,10 @@
 #define GSH_CONTAINERS_H
 
 void
-gsh_setup_scrolled_window();
+gsh_setup_scrolled_window(struct GSH *gsh);
 
 void
-gsh_setup_containers();
+gsh_setup_containers(struct GSH *gsh);
 
 #endif /* GSH_CONTAINERS_H */
 

Index: dialog_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/dialog_options.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- dialog_options.c    1 Feb 2007 20:45:49 -0000       1.1
+++ dialog_options.c    12 Feb 2007 16:36:56 -0000      1.2
@@ -1,6 +1,6 @@
 /*
   AntiRight
-  (c) 2002-2006 Jeffrey Bedard
+  (c) 2002-2007 Jeffrey Bedard
   address@hidden
 
   This file is part of AntiRight.
@@ -23,11 +23,11 @@
 #include "gtkshell.h"
 
 void
-gsh_message_dialog(GtkMessageType type, char *text)
+gsh_message_dialog(struct GSH *gsh, GtkMessageType type, char *text)
 {
        GtkWidget *dialog;
        dialog=gtk_message_dialog_new(
-               GTK_WINDOW(gsh_window),
+               GTK_WINDOW(gsh->window),
                GTK_DIALOG_DESTROY_WITH_PARENT,
                type,
                GTK_BUTTONS_CLOSE,
@@ -36,11 +36,11 @@
        exit(0);
 }
 void
-gsh_setup_message_dialog(int argc, char **argv,
+gsh_setup_message_dialog(struct GSH *gsh, int argc, char **argv,
        unsigned int *counter, GtkMessageType type)
 {
        gsh_count(argc, counter);
-       gsh_message_dialog(type, argv[(*counter)]);
+       gsh_message_dialog(gsh, type, argv[(*counter)]);
 }
 
 void
@@ -54,7 +54,7 @@
                gchar *font;
                font=gtk_font_selection_dialog_get_font_name(
                        GTK_FONT_SELECTION_DIALOG(dialog));
-               puts(font);
+               gprint("%s\n", font);
                g_free(font);
        }
        exit(0);
@@ -62,36 +62,36 @@
 
 
 void
-gsh_handle_dialog_arguments(int argc, char **argv,
-       unsigned int *counter)
+gsh_handle_dialog_arguments(struct GSH *gsh, int argc, char **argv,
+       int *counter)
 {
        assert(strlen(argv[(*counter)])>2);
        switch(argv[(*counter)][2])
        {
                case 'D': /* Folder Creation Selector */
-                       gsh_folder_create_dialog();
+                       gsh_folder_create_dialog(gsh);
                        break;
                case 'd': /* Folder Selector */
-                       gsh_folder_open_dialog();
+                       gsh_folder_open_dialog(gsh);
                        break;
                case 'e': /* Error Message */
-                       gsh_setup_message_dialog(argc,argv,
+                       gsh_setup_message_dialog(gsh,argc,argv,
                                counter, GTK_MESSAGE_ERROR);
                        break;
                case 'F': /* Font Selection */
                        gsh_font_dialog();
                case 'f': /* File Selection */
-                       gsh_file_open_dialog();
+                       gsh_file_open_dialog(gsh);
                        break;
                case 'i': /* Information */
-                       gsh_setup_message_dialog(argc,argv,
+                       gsh_setup_message_dialog(gsh,argc,argv,
                                counter, GTK_MESSAGE_INFO);
                        break;
                case 's': /* Filename Selection for Saving */
-                       gsh_file_save_dialog();
+                       gsh_file_save_dialog(gsh);
                        break;
                case 'w': /* Warning */
-                       gsh_setup_message_dialog(argc,argv,
+                       gsh_setup_message_dialog(gsh,argc,argv,
                                counter,
                                GTK_MESSAGE_WARNING);
                        break;

Index: dialog_options.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/dialog_options.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- dialog_options.h    1 Feb 2007 20:45:49 -0000       1.1
+++ dialog_options.h    12 Feb 2007 16:36:56 -0000      1.2
@@ -24,8 +24,8 @@
 #define GSH_DIALOG_OPTIONS
 
 void
-gsh_handle_dialog_arguments(int argc, char **argv,
-       unsigned int *counter);
+gsh_handle_dialog_arguments(struct GSH *gsh, int argc, char **argv,
+       int *counter);
 
 
 #endif

Index: file_dialog.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/file_dialog.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- file_dialog.c       1 Feb 2007 20:45:49 -0000       1.1
+++ file_dialog.c       12 Feb 2007 16:36:56 -0000      1.2
@@ -24,14 +24,14 @@
 
 /* Taken from the GTK+ Reference Manual */
 void
-gsh_file_dialog(GtkFileChooserAction action)
+gsh_file_dialog(struct GSH *gsh, GtkFileChooserAction action)
 {
        GtkWidget *dialog;
 
        dialog=
                gtk_file_chooser_dialog_new(
                        "File Chooser",
-                       GTK_WINDOW(gsh_window),
+                       GTK_WINDOW(gsh->window),
                        action,
                        GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
                        GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
@@ -41,7 +41,7 @@
        {
                gchar *name;
                name=gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
-               puts(name);
+               gprint("%s\n", name);
                g_free(name);
        }
 
@@ -49,26 +49,26 @@
 }
 
 void
-gsh_file_open_dialog()
+gsh_file_open_dialog(struct GSH *gsh)
 {
-       gsh_file_dialog(GTK_FILE_CHOOSER_ACTION_OPEN);
+       gsh_file_dialog(gsh, GTK_FILE_CHOOSER_ACTION_OPEN);
 }
 
 void
-gsh_file_save_dialog()
+gsh_file_save_dialog(struct GSH *gsh)
 {
-       gsh_file_dialog(GTK_FILE_CHOOSER_ACTION_SAVE);
+       gsh_file_dialog(gsh, GTK_FILE_CHOOSER_ACTION_SAVE);
 }
 
 void
-gsh_folder_create_dialog()
+gsh_folder_create_dialog(struct GSH *gsh)
 {
-       gsh_file_dialog(GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER);
+       gsh_file_dialog(gsh, GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER);
 }
 
 void
-gsh_folder_open_dialog()
+gsh_folder_open_dialog(struct GSH *gsh)
 {
-       gsh_file_dialog(GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);
+       gsh_file_dialog(gsh, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);
 }
 

Index: file_dialog.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/file_dialog.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- file_dialog.h       1 Feb 2007 20:45:49 -0000       1.1
+++ file_dialog.h       12 Feb 2007 16:36:56 -0000      1.2
@@ -23,14 +23,14 @@
 #ifndef GSH_FILE_DIALOG
 #define GSH_FILE_DIALOG
 void   
-gsh_file_dialog(GtkFileChooserAction action);
+gsh_file_dialog(struct GSH *gsh, GtkFileChooserAction action);
 void
-gsh_file_open_dialog();
+gsh_file_open_dialog(struct GSH *gsh);
 void
-gsh_file_save_dialog();
+gsh_file_save_dialog(struct GSH *gsh);
 void
-gsh_folder_open_dialog();
+gsh_folder_open_dialog(struct GSH *gsh);
 void
-gsh_folder_create_dialog();
+gsh_folder_create_dialog(struct GSH *gsh);
 #endif
 

Index: geometry.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/geometry.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- geometry.c  11 Feb 2007 21:42:08 -0000      1.2
+++ geometry.c  12 Feb 2007 16:36:56 -0000      1.3
@@ -23,24 +23,22 @@
 #include "gtkshell.h"
 
 
-extern char *gsh_geometry;
-
 void
-gsh_set_geometry()
+gsh_set_geometry(struct GSH *gsh)
 {
-       assert(gsh_geometry);
-       gtk_window_parse_geometry(GTK_WINDOW(gsh_window), 
-               gsh_geometry);
+       assert(gsh->geometry);
+       gtk_window_parse_geometry(GTK_WINDOW(gsh->window), 
+               gsh->geometry);
 }
 
 void
-gsh_check_and_set_geometry()
+gsh_check_and_set_geometry(struct GSH *gsh)
 {
-       if(!gsh_geometry)
-               asprintf(&gsh_geometry, "400x300");
+       if(gsh->geometry)
+               asprintf(&gsh->geometry, "400x300");
 
-       gsh_set_geometry();
-       free(gsh_geometry);
+       gsh_set_geometry(gsh);
+       free(gsh->geometry);
 
 }
 

Index: geometry.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/geometry.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- geometry.h  11 Feb 2007 04:23:30 -0000      1.1
+++ geometry.h  12 Feb 2007 16:36:56 -0000      1.2
@@ -24,10 +24,10 @@
 #define GSH_GEOMETRY_H
 
 void
-gsh_set_geometry();
+gsh_set_geometry(struct GSH *gsh);
 
 void
-gsh_check_and_set_geometry();
+gsh_check_and_set_geometry(struct GSH *gsh);
 
 #endif /* GSH_GEOMETRY_H */
 

Index: gtkshell.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gtkshell.c  11 Feb 2007 04:23:30 -0000      1.4
+++ gtkshell.c  12 Feb 2007 16:36:56 -0000      1.5
@@ -37,10 +37,13 @@
        return(window);         
 }
 
-void
+struct GSH *
 gsh_init(int *argc, char ***argv)
 {
+    struct GSH *gsh;
        gtk_init(argc, argv);
-       gsh_window=gsh_create_main_window();
+    gsh=(struct GSH *)xmalloc(sizeof(struct GSH));
+       gsh->window=gsh_create_main_window();
+    return gsh;
 }
 

Index: gtkshell.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gtkshell.h  11 Feb 2007 04:23:30 -0000      1.4
+++ gtkshell.h  12 Feb 2007 16:36:56 -0000      1.5
@@ -44,21 +44,27 @@
 #include "containers.h"
 #include "geometry.h"
 
-GtkWidget      *gsh_window;
-GtkWidget      *gsh_hbox;
-GtkWidget      *gsh_vbox;
-GtkWidget      *gsh_label;
+struct GSH_Flags
+{
+    gboolean dont_scroll;
+    gboolean button_exits;
+};
+
+struct GSH
+{
+    GtkWidget *window;
+    GtkWidget *scrolled_window;
+    struct GSH_Rows rows;
+    struct GSH_Flags flags;
+    GtkWidget *label;
+    GtkWidget *button;
+    gchar *geometry;
+    unsigned int update_period;
+};
 
-
-void
+struct GSH *
 gsh_init(int *argc, char ***argv);
 
-void
-gsh_set_geometry();
-
-void
-gsh_check_and_set_geometry();
-
 GtkWidget *
 gsh_create_main_window();
 

Index: label.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/label.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- label.c     1 Feb 2007 20:45:49 -0000       1.1
+++ label.c     12 Feb 2007 16:36:56 -0000      1.2
@@ -23,12 +23,12 @@
 #include "gtkshell.h"
 
 void
-gsh_add_label(char *text)
+gsh_add_label(struct GSH *gsh, char *text)
 {
  GtkWidget      *label;
 
  label = gtk_label_new(text);
- gsh_manage(label);
+ gsh_manage(gsh, label);
 }
 
 void
@@ -41,3 +41,4 @@
        gtk_label_set_markup(GTK_LABEL(label), markup);
        g_free(markup);
 }
+

Index: label.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/label.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- label.h     1 Feb 2007 20:45:49 -0000       1.1
+++ label.h     12 Feb 2007 16:36:56 -0000      1.2
@@ -24,7 +24,7 @@
 #define GSH_LABEL_H
 
 void
-gsh_add_label(char *text);
+gsh_add_label(struct GSH *gsh, char *text);
 
 void
 gsh_set_label(GtkWidget *label, char *text);

Index: main.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/main.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- main.c      4 Feb 2007 04:44:24 -0000       1.3
+++ main.c      12 Feb 2007 16:36:56 -0000      1.4
@@ -22,26 +22,25 @@
 
 #include "gtkshell.h"
 
-extern gboolean gsh_dont_scroll;
-
 int
 main(int argc, char **argv)
 {
-       gtk_init(&argc, &argv);
+    struct GSH *gsh;
 
-       gsh_window=gsh_create_main_window();
+       gsh=gsh_init(&argc, &argv);
        
        if(((argc > 1) && (strlen(argv[1]) == 3)) 
                && !strncmp(argv[1], "-os", 3))
-       {
-               gsh_dont_scroll=TRUE;
-       }
-       gsh_setup_containers();
-       gsh_parse_arguments(argc, argv);
+        gsh->flags.dont_scroll=TRUE;
+    else
+        gsh->flags.dont_scroll=FALSE;
+
+       gsh_setup_containers(gsh);
+       gsh_parse_arguments(gsh, argc, argv);
 
-       gsh_check_and_set_geometry();
+       gsh_check_and_set_geometry(gsh);
 
-       gtk_widget_show(gsh_window);
+       gtk_widget_show(gsh->window);
        
        gtk_main();
 

Index: option_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/option_options.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- option_options.c    1 Feb 2007 20:45:49 -0000       1.1
+++ option_options.c    12 Feb 2007 16:36:56 -0000      1.2
@@ -22,35 +22,30 @@
 
 #include "gtkshell.h"
 
-extern unsigned int gsh_rows;
-extern gboolean gsh_button_exits;
-extern unsigned int gsh_update_period;
-char *gsh_geometry;
-
 void
-gsh_handle_option_arguments(int argc, char **argv, unsigned int *counter)
+gsh_handle_option_arguments(struct GSH *gsh, int argc, char **argv, int 
*counter)
 {
        switch(argv[(*counter)][2])
        {
                case 'e':
-                       gsh_button_exits=TRUE;
+                       gsh->flags.button_exits=TRUE;
                        break;
                case 'g':
                        gsh_count(argc, counter);
-                       asprintf(&gsh_geometry, "%s", argv[(*counter)]);
+                       asprintf(&gsh->geometry, "%s", argv[(*counter)]);
                        break;
                case 'n':
-                       gtk_window_set_decorated(GTK_WINDOW(gsh_window), 
FALSE);                                             
+                       gtk_window_set_decorated(GTK_WINDOW(gsh->window), 
FALSE);                                             
                        gtk_window_set_skip_taskbar_hint(
-                               GTK_WINDOW(gsh_window), TRUE);                  
                    
+                           GTK_WINDOW(gsh->window), TRUE);                     
                 
                        break;
                case 'r':
                        gsh_count(argc, counter);
-                       gsh_rows=(unsigned int)atoi(argv[(*counter)]);
+                       gsh->rows.rows=(unsigned int)atoi(argv[(*counter)]);
                        break;
                case 'u':
                        gsh_count(argc, counter);
-                       gsh_update_period=atoi(argv[*counter]);
+                       gsh->update_period=atoi(argv[*counter]);
                        break;
        }
 }

Index: option_options.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/option_options.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- option_options.h    1 Feb 2007 20:45:49 -0000       1.1
+++ option_options.h    12 Feb 2007 16:36:56 -0000      1.2
@@ -24,6 +24,7 @@
 #define GSH_OPTION_OPTIONS_H
 
 void
-gsh_handle_option_arguments(int argc, char **argv, unsigned int *counter);
+gsh_handle_option_arguments(
+    struct GSH *gsh, int argc, char **argv, unsigned int *counter);
 
 #endif

Index: options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/options.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- options.c   7 Feb 2007 16:44:23 -0000       1.3
+++ options.c   12 Feb 2007 16:36:56 -0000      1.4
@@ -22,9 +22,6 @@
 
 #include "gtkshell.h"
 
-extern unsigned int gsh_rows;
-extern GtkWidget *gsh_button;
-
 void
 gsh_count(int argc, int *counter)
 {
@@ -33,19 +30,19 @@
 }
 
 void
-gsh_handle_switch_arguments(int argc, char **argv, unsigned int *counter)
+gsh_handle_switch_arguments(struct GSH *gsh, int argc, char **argv, int 
*counter)
 {
-       gsh_check_row();
+       gsh_check_row(gsh);
        switch (argv[(*counter)][1])
        {
                case 'a':
-                       gsh_handle_add_arguments(
+                       gsh_handle_add_arguments(gsh,
                                argc, 
                                argv, 
                                counter);
                        break;
                case 'd':       
-                       gsh_handle_dialog_arguments(
+                       gsh_handle_dialog_arguments(gsh,
                                argc, 
                                argv, 
                                counter);
@@ -55,13 +52,13 @@
             exit(1);
             break;
                case 'o':
-                       gsh_handle_option_arguments(
+                       gsh_handle_option_arguments(gsh,
                                argc, 
                                argv, 
                                counter);
                        break;
                default:
-                       g_printerr("%s:  undefined\n", argv[(*counter)]);
+                       g_printerr("%s:  %s undefined\n", argv[0], 
argv[(*counter)]);
                        break;
        }
 }

Index: options.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/options.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- options.h   1 Feb 2007 20:45:49 -0000       1.1
+++ options.h   12 Feb 2007 16:36:56 -0000      1.2
@@ -22,10 +22,12 @@
 #ifndef GSH_OPTIONS_H
 #define GSH_OPTIONS_H
 
+#include "gtkshell.h"
+
 void
 gsh_count(int argc, int *counter);
 
 void
-gsh_handle_switch_arguments(int argc, char **argv, unsigned int *counter);
+gsh_handle_switch_arguments(struct GSH *gsh, int argc, char **argv, int 
*counter);
 
 #endif

Index: row.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/row.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- row.h       9 Feb 2007 03:16:12 -0000       1.2
+++ row.h       12 Feb 2007 16:36:56 -0000      1.3
@@ -22,6 +22,14 @@
 #ifndef GSH_ROW_H
 #define GSH_ROW_H
 
+struct Rows
+{
+    GtkWidget *h;
+    GtkWidget *v;
+    unsigned int row;
+    unsigned int rows;
+}
+
 void
 gsh_manage(GtkWidget *widget);
 




reply via email to

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