[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Antiright-devel] antiright gtkshell/about_dialog.c gtkshell/gtks...
From: |
Jeffrey Bedard |
Subject: |
[Antiright-devel] antiright gtkshell/about_dialog.c gtkshell/gtks... |
Date: |
Sat, 28 Apr 2007 22:26:24 +0000 |
CVSROOT: /sources/antiright
Module name: antiright
Changes by: Jeffrey Bedard <jefbed> 07/04/28 22:26:23
Modified files:
gtkshell : about_dialog.c gtkshell.c gtkshell.h
guidl_dialog.c guidl_dictionary.c
guidl_dictionary.h guidl_options.c guidl_util.c
guidl_util.h guidl_widgets.c init.c menu.c
options.c row.c terminal.c terminal.h text.c
text.h
libantiright : macros.h pipe.c pipe.h tuple.c tuple.h util.c
util.h
Log message:
Major refactoring and splitting out functionality to static procedures.
Started using class system extensively through dictionary code.
Began modifying base structure classes to follow class conventions.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/about_dialog.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.c?cvsroot=antiright&r1=1.25&r2=1.26
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.h?cvsroot=antiright&r1=1.34&r2=1.35
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_dialog.c?cvsroot=antiright&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_dictionary.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_dictionary.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_options.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_util.c?cvsroot=antiright&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_util.h?cvsroot=antiright&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/guidl_widgets.c?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/init.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/menu.c?cvsroot=antiright&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/options.c?cvsroot=antiright&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/row.c?cvsroot=antiright&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/terminal.c?cvsroot=antiright&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/terminal.h?cvsroot=antiright&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/text.c?cvsroot=antiright&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/text.h?cvsroot=antiright&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/macros.h?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/pipe.c?cvsroot=antiright&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/pipe.h?cvsroot=antiright&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/tuple.c?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/tuple.h?cvsroot=antiright&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/util.c?cvsroot=antiright&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/antiright/libantiright/util.h?cvsroot=antiright&r1=1.7&r2=1.8
Patches:
Index: gtkshell/about_dialog.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/about_dialog.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/about_dialog.c 2 Apr 2007 18:31:41 -0000 1.1
+++ gtkshell/about_dialog.c 28 Apr 2007 22:26:23 -0000 1.2
@@ -22,23 +22,46 @@
#include "gtkshell.h"
-static void
-setup_about_license(GtkWidget * dialog)
+static gchar *
+get_license_filename()
{
- gchar * text;
gchar * filename;
+
ar_asprintf(&filename, "%s/%s/antiright/COPYING",
PREFIX, "share/doc");
+
+ return filename;
+}
+
+static gchar *
+get_license_text()
+{
+ gchar * filename;
+
+ filename=get_license_filename();
+ {
+ gchar * text;
+
text=antiright_read_named_file(filename);
g_free(filename);
+
+ return text;
+ }
+}
+
+static void
+setup_about_license(GtkWidget * dialog)
+{
+ gchar * text;
+
+ text=get_license_text();
gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(dialog),
text);
g_free(text);
-
}
static void
-setup_about_fields(GtkWidget * dialog)
+setup_authors_field(GtkWidget * dialog)
{
const gchar *authors[] =
{
@@ -46,6 +69,15 @@
NULL
};
+ gtk_about_dialog_set_authors(GTK_ABOUT_DIALOG(dialog),
+ authors);
+}
+
+static void
+setup_about_fields(GtkWidget * dialog)
+{
+ setup_authors_field(dialog);
+
gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(dialog),
PACKAGE_STRING);
@@ -57,8 +89,6 @@
setup_about_license(dialog);
- gtk_about_dialog_set_authors(GTK_ABOUT_DIALOG(dialog),
- authors);
gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(dialog),
"The desktop scripting environment.");
Index: gtkshell/gtkshell.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -b -r1.25 -r1.26
--- gtkshell/gtkshell.c 16 Apr 2007 01:19:51 -0000 1.25
+++ gtkshell/gtkshell.c 28 Apr 2007 22:26:23 -0000 1.26
@@ -49,14 +49,14 @@
return (window);
}
static void
-gsh_GSH_Rows(struct GSH_Rows * rows)
+gsh_setup_GSH_Rows(struct GSH_Rows * rows)
{
rows->row = 1;
/* Use an arbitrary, though reasonable, initial number of rows. */
rows->rows = 8;
}
static void
-gsh_GSH_Updater(struct GSH_Updater * update)
+gsh_setup_GSH_Updater(struct GSH_Updater * update)
{
update->period = 1000;
@@ -64,13 +64,13 @@
update->list = (GSList *) NULL;
}
void
-gsh_GSH(struct GSH * gsh)
+gsh_setup_GSH(struct GSH * gsh)
{
gsh->geometry = (gchar *)NULL;
gsh->bflags=0;
- gsh_GSH_Rows(&(gsh->rows));
- gsh_GSH_Updater(&(gsh->update));
- gsh_GSH_Terminal(&(gsh->terminal));
+ gsh_setup_GSH_Rows(&(gsh->rows));
+ gsh_setup_GSH_Updater(&(gsh->update));
+ gsh_setup_GSH_Terminal(&(gsh->terminal));
}
struct GSH *
@@ -79,7 +79,7 @@
struct GSH *gsh;
gsh = (struct GSH *) xmalloc(sizeof(struct GSH));
- gsh_GSH(gsh);
+ gsh_setup_GSH(gsh);
return gsh;
}
Index: gtkshell/gtkshell.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.h,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -b -r1.34 -r1.35
--- gtkshell/gtkshell.h 16 Apr 2007 01:50:31 -0000 1.34
+++ gtkshell/gtkshell.h 28 Apr 2007 22:26:23 -0000 1.35
@@ -104,7 +104,7 @@
gsh_create_main_window();
void
-gsh_GSH(struct GSH * gsh);
+gsh_setup_GSH(struct GSH * gsh);
struct GSH *
gsh_new_GSH();
Index: gtkshell/guidl_dialog.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_dialog.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gtkshell/guidl_dialog.c 16 Apr 2007 01:19:51 -0000 1.4
+++ gtkshell/guidl_dialog.c 28 Apr 2007 22:26:23 -0000 1.5
@@ -44,8 +44,8 @@
static void
setup_dictionary()
{
- setup_definitions(gsh_guidl_env->dictionaries.dialogs
- =ar_new_ARTupleVector());
+ setup_definitions(gsh_guidl_env->dictionaries->dialogs
+ = ARNEW(ar, ARTupleVector));
}
void
@@ -56,9 +56,8 @@
{
const gchar * result;
- result=gsh_guidl_lookup(gsh_guidl_env->dictionaries.dialogs,
- (gpointer)dialog_type);
- if(result != NULL)
+ if((result=$(gsh_guidl_env->dictionaries->dialogs,
+ find, dialog_type)) != NULL)
gsh_guidl_add(result, argument);
}
}
Index: gtkshell/guidl_dictionary.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_dictionary.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/guidl_dictionary.c 24 Apr 2007 00:17:01 -0000 1.1
+++ gtkshell/guidl_dictionary.c 28 Apr 2007 22:26:23 -0000 1.2
@@ -22,34 +22,16 @@
#include "gtkshell.h"
-const gchar *
-gsh_guidl_lookup(struct ARTupleVector * dict, gchar * term)
-{
-#ifdef DEBUG
- ARPASSERT(dict);
- ARPASSERT(term);
-#endif /* DEBUG */
-
- {
- const gchar * result;
-
- if((result = dict->find(dict, term)) == NULL)
- ARWARN("item not found in dictionary");
-
- return result;
- }
-}
-
#define GSH_DELETE_DICTIONARY(base, dict)\
{\
if(base->dict != NULL)\
{\
- ar_delete_ARTupleVector(base->dict);\
+ $(base->dict, delete);\
base->dict=NULL;\
}\
}
-void
+static void
gsh_delete_GDLDictionaries_contents(struct GDLDictionaries * dictionaries)
{
GSH_DELETE_DICTIONARY(dictionaries, widgets);
@@ -57,10 +39,30 @@
GSH_DELETE_DICTIONARY(dictionaries, dialogs);
}
-void
+static void
gsh_delete_GDLDictionaries(struct GDLDictionaries * dictionaries)
{
gsh_delete_GDLDictionaries_contents(dictionaries);
g_free(dictionaries);
}
+static void
+gsh_setup_GDLDictionaries(struct GDLDictionaries * dictionaries)
+{
+ dictionaries->widgets=NULL;
+ dictionaries->options=NULL;
+ dictionaries->dialogs=NULL;
+ dictionaries->delete=&gsh_delete_GDLDictionaries;
+}
+
+struct GDLDictionaries *
+gsh_new_GDLDictionaries()
+{
+ struct GDLDictionaries * dictionaries;
+
+ dictionaries=g_malloc(sizeof(struct GDLDictionaries));
+ gsh_setup_GDLDictionaries(dictionaries);
+
+ return dictionaries;
+}
+
Index: gtkshell/guidl_dictionary.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_dictionary.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/guidl_dictionary.h 24 Apr 2007 00:17:02 -0000 1.1
+++ gtkshell/guidl_dictionary.h 28 Apr 2007 22:26:23 -0000 1.2
@@ -28,25 +28,17 @@
struct ARTupleVector * widgets;
struct ARTupleVector * dialogs;
struct ARTupleVector * options;
+ void (*delete)(struct GDLDictionaries *);
};
#define GSH_GUIDL_CHECK_DICTIONARY(dict)\
{\
- if(gsh_guidl_env->dictionaries.dict==NULL)\
+ if(gsh_guidl_env->dictionaries->dict==NULL)\
setup_dictionary();\
}
#define GSH_GUIDL_DEFINE(dict, a, b)\
- dict->add(dict, (gchar *)a, (gchar *)b)
-
-const gchar *
-gsh_guidl_lookup(struct ARTupleVector * dict, gchar * term);
-
-void
-gsh_delete_GDLDictionaries_contents(struct GDLDictionaries * dictionaries);
-
-void
-gsh_delete_GDLDictionaries(struct GDLDictionaries * dictionaries);
+ $(dict, add, (gchar *)a, (gchar *)b)
struct GDLDictionaries *
gsh_new_GDLDictionaries();
Index: gtkshell/guidl_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_options.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/guidl_options.c 24 Apr 2007 00:17:02 -0000 1.1
+++ gtkshell/guidl_options.c 28 Apr 2007 22:26:23 -0000 1.2
@@ -48,8 +48,8 @@
static void
setup_dictionary()
{
- gsh_guidl_env->dictionaries.options=ar_new_ARTupleVector();
- setup_definitions(gsh_guidl_env->dictionaries.options);
+ setup_definitions(gsh_guidl_env->dictionaries->options
+ =ARNEW(ar, ARTupleVector));
}
void
@@ -59,10 +59,9 @@
GSH_GUIDL_CHECK_DICTIONARY(options);
#ifdef DEBUG
- ARPASSERT(gsh_guidl_env->dictionaries.options);
+ ARPASSERT(gsh_guidl_env->dictionaries->options);
#endif /* DEBUG */
- result=gsh_guidl_lookup(gsh_guidl_env->dictionaries.options,
- option);
+ result=$(gsh_guidl_env->dictionaries->options, find, option);
g_free(option);
if(result != NULL)
gsh_guidl_add(result, argument);
Index: gtkshell/guidl_util.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_util.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- gtkshell/guidl_util.c 27 Apr 2007 02:02:06 -0000 1.10
+++ gtkshell/guidl_util.c 28 Apr 2007 22:26:23 -0000 1.11
@@ -24,30 +24,22 @@
struct GDLEnvironment * gsh_guidl_env=NULL;
-void
-gsh_setup_GDLEnvironment(struct GDLEnvironment * env)
-{
- ar_setup_ARArguments(&(env->args));
- gsh_setup_GDLDictionaries(&(env->dictionaries));
-}
-
-void
-gsh_setup_GDLDictionaries(struct GDLDictionaries * dictionaries)
+static void
+gsh_delete_GDLEnvironment(struct GDLEnvironment * env)
{
- dictionaries->widgets=NULL;
- dictionaries->options=NULL;
- dictionaries->dialogs=NULL;
+#ifdef DEBUG
+ ARPASSERT(env);
+#endif /* DEBUG */
+ $(env->dictionaries, delete);
+ ar_delete_ARArguments_contents(&(env->args));
}
-struct GDLDictionaries *
-gsh_new_GDLDictionaries()
+static void
+gsh_setup_GDLEnvironment(struct GDLEnvironment * env)
{
- struct GDLDictionaries * dictionaries;
-
- dictionaries=g_malloc(sizeof(struct GDLDictionaries));
- gsh_setup_GDLDictionaries(dictionaries);
-
- return dictionaries;
+ ar_setup_ARArguments(&(env->args));
+ env->dictionaries=ARNEW(gsh, GDLDictionaries);
+ env->delete=&gsh_delete_GDLEnvironment;
}
struct GDLEnvironment *
@@ -66,15 +58,6 @@
gsh_guidl_env=gsh_new_GDLEnvironment();
}
-
-void
-gsh_delete_GDLEnvironment(struct GDLEnvironment * env)
-{
- ARPASSERT(env);
- gsh_delete_GDLDictionaries_contents(&(env->dictionaries));
- ar_delete_ARArguments_contents(&(env->args));
-}
-
void
gsh_append_arg(gchar * arg)
{
Index: gtkshell/guidl_util.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_util.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- gtkshell/guidl_util.h 27 Apr 2007 02:02:06 -0000 1.6
+++ gtkshell/guidl_util.h 28 Apr 2007 22:26:23 -0000 1.7
@@ -26,23 +26,14 @@
struct GDLEnvironment
{
- struct GDLDictionaries dictionaries;
+ struct GDLDictionaries * dictionaries;
struct ARArguments args;
+ void (*delete)(struct GDLEnvironment *);
};
-void
-gsh_delete_GDLEnvironment(struct GDLEnvironment * env);
-
-
struct GDLEnvironment *
gsh_new_GDLEnvironment();
-void
-gsh_setup_GDLEnvironment(struct GDLEnvironment * env);
-
-void
-gsh_setup_GDLDictionaries(struct GDLDictionaries * dictionaries);
-
int
yylex();
Index: gtkshell/guidl_widgets.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/guidl_widgets.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- gtkshell/guidl_widgets.c 27 Apr 2007 02:02:06 -0000 1.3
+++ gtkshell/guidl_widgets.c 28 Apr 2007 22:26:23 -0000 1.4
@@ -46,16 +46,15 @@
static void
setup_dictionary()
{
- setup_definitions(gsh_guidl_env->dictionaries.widgets
- =ar_new_ARTupleVector());
+ setup_definitions(gsh_guidl_env->dictionaries->widgets
+ = ARNEW(ar, ARTupleVector));
}
void
gsh_guidl_widget(gchar * widget, gchar * argument)
{
GSH_GUIDL_CHECK_DICTIONARY(widgets);
- gsh_guidl_add(gsh_guidl_lookup(gsh_guidl_env->dictionaries.widgets,
- widget),
+ gsh_guidl_add($(gsh_guidl_env->dictionaries->widgets, find, widget),
argument);
g_free(widget);
}
Index: gtkshell/init.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/init.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/init.c 6 Apr 2007 15:32:22 -0000 1.1
+++ gtkshell/init.c 28 Apr 2007 22:26:23 -0000 1.2
@@ -39,7 +39,7 @@
gsh_stack_init(struct GSH * gsh, int *argc, char ***argv)
{
gtk_init(argc, argv);
- gsh_GSH(gsh);
+ gsh_setup_GSH(gsh);
gsh->window = gsh_create_main_window();
}
Index: gtkshell/menu.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/menu.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gtkshell/menu.c 27 Apr 2007 21:33:27 -0000 1.4
+++ gtkshell/menu.c 28 Apr 2007 22:26:23 -0000 1.5
@@ -29,23 +29,18 @@
menuitem_parse(struct GSH * gsh, gchar * string)
{
gchar **pair;
- gchar * command;
pair=g_strsplit(string, ",", 2);
- command=g_strdup(pair[0]);
-
#ifdef DEBUG
ARPASSERT(command);
#endif /* DEBUG */
if(ARPBOOL(pair[0]) && ARPBOOL(pair[1]))
- gsh_image_button(gsh, command, pair[1]);
+ gsh_image_button(gsh, pair[0], pair[1]);
else
- gsh_command_button(gsh, command);
+ gsh_command_button(gsh, pair[0]);
- /* Command is duplicated in callback setup, so free here. */
- g_free(command);
g_strfreev(pair);
}
@@ -68,29 +63,44 @@
gsh->rows.v=old_row;
}
-void
-menubutton_parse(struct GSH * gsh, gchar **tokens)
+static GtkWidget *
+add_menu_bar(struct GSH * gsh)
{
GtkWidget * menu_bar;
- GtkWidget * menu_item;
- GtkWidget * menu;
menu_bar = gtk_menu_bar_new();
gtk_widget_show(menu_bar);
gsh_manage(gsh, menu_bar);
- {
+
+ return menu_bar;
+}
+
+static GtkWidget *
+add_menu_launcher(struct GSH * gsh, gchar * label)
+{
GtkWidget * old_row;
old_row=gsh->rows.v;
- gsh->rows.v=menu_bar;
+ gsh->rows.v=add_menu_bar(gsh);
GSH_SET(GSH_MENU_BUTTON);
- menu_item=gsh_add_button(gsh, tokens[0]);
+ {
+ GtkWidget * menu_item;
+
+ gtk_widget_show(menu_item=gsh_add_button(gsh, label));
gsh->rows.v=old_row;
+
+ return menu_item;
}
- menu=gtk_menu_new();
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_item), menu);
- gtk_widget_show(menu_item);
- gtk_widget_show(menu);
+}
+
+void
+menubutton_parse(struct GSH * gsh, gchar **tokens)
+{
+ GtkWidget * menu;
+
+ gtk_widget_show(menu=gtk_menu_new());
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(add_menu_launcher(gsh,
+ tokens[0])), menu);
add_menu_items(gsh, menu, tokens);
}
Index: gtkshell/options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/options.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- gtkshell/options.c 21 Apr 2007 22:21:57 -0000 1.16
+++ gtkshell/options.c 28 Apr 2007 22:26:23 -0000 1.17
@@ -50,7 +50,7 @@
common_guidl_handler(struct GSH * gsh)
{
if(gsh_guidl_env == NULL)
- gsh_guidl_env=gsh_new_GDLEnvironment();
+ gsh_guidl_env=ARNEW(gsh, GDLEnvironment);
/* Determine whether or not to include an initial
dummy argument. Needed as argv[0] is skipped
@@ -64,7 +64,7 @@
#endif /* DEBUG */
gsh_parse_arguments(gsh, gsh_guidl_env->args.argc,
gsh_guidl_env->args.argv);
- gsh_delete_GDLEnvironment(gsh_guidl_env);
+ $(gsh_guidl_env, delete);
gsh_guidl_env=NULL;
}
@@ -97,6 +97,8 @@
case 'o':
gsh_handle_option_arguments(gsh, argc, argv, counter);
break;
+ case 't': /* test area. */
+ break;
default:
g_warning("%s: %s undefined\n", argv[0], argv[(*counter)]);
}
Index: gtkshell/row.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/row.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- gtkshell/row.c 27 Apr 2007 20:51:42 -0000 1.16
+++ gtkshell/row.c 28 Apr 2007 22:26:23 -0000 1.17
@@ -29,40 +29,70 @@
gsh->rows.row++;
}
-void
-gsh_manage(struct GSH * gsh, GtkWidget *widget)
+
+static void
+manage_menu_item(GtkWidget * container, GtkWidget * widget)
+{
+ gtk_menu_shell_append(GTK_MENU_SHELL(container), widget);
+}
+
+static gboolean
+test_manage_menu_item(GtkWidget * container, GtkWidget * widget)
{
- if(GTK_IS_MENU(gsh->rows.v) || GTK_IS_MENU_BAR(gsh->rows.v)
- || GTK_IS_MENU_ITEM(gsh->rows.v))
- {
- gtk_menu_shell_append(GTK_MENU_SHELL(gsh->rows.v), widget);
- }
+ if(GTK_IS_MENU(container) || GTK_IS_MENU_BAR(container)
+ || GTK_IS_MENU_ITEM(container))
+ manage_menu_item(container, widget);
else
- {
+ return FALSE;
+
+ return TRUE;
+}
+
+static void
+manage_normal(struct GSH * gsh, GtkWidget * widget)
+{
gsh_check_row(gsh);
gtk_container_add(GTK_CONTAINER(gsh->rows.v), widget);
gsh_manage_generic(gsh, widget);
- }
}
void
-gsh_manage_unexpanded(struct GSH * gsh, GtkWidget *widget)
+gsh_manage(struct GSH * gsh, GtkWidget *widget)
{
+ if(!test_manage_menu_item(gsh->rows.v, widget))
+ manage_normal(gsh, widget);
+}
+
+static gboolean
+test_manage_unexpanded(struct GSH * gsh)
+{
+ /* Alias to reduce dereferences. */
+ GtkWidget * container = gsh->rows.v;
/*
* Checking for a 1 row counter allows the ACE Deskbar to
* maintain a decent appearance.
*/
- if ((gsh->rows.rows != 1)
- && !GTK_IS_MENU(gsh->rows.v)
- && !GTK_IS_MENU_BAR(gsh->rows.v)
- && !GTK_IS_MENU_ITEM(gsh->rows.v))
- {
+
+ return ((gsh->rows.rows != 1) && !GTK_IS_MENU(container)
+ && !GTK_IS_MENU_BAR(container)
+ && !GTK_IS_MENU_ITEM(container));
+}
+
+static void
+manage_unexpanded(struct GSH * gsh, GtkWidget * widget)
+{
gsh_check_row(gsh);
gtk_box_pack_start(GTK_BOX(gsh->rows.v), widget,
FALSE, FALSE, 0);
gsh_manage_generic(gsh, widget);
- }
+}
+
+void
+gsh_manage_unexpanded(struct GSH * gsh, GtkWidget *widget)
+{
+ if(test_manage_unexpanded(gsh))
+ manage_unexpanded(gsh, widget);
else
gsh_manage(gsh, widget);
}
@@ -70,9 +100,9 @@
void
gsh_new_row(struct GSH * gsh)
{
- 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);
+ GtkWidget * column = gsh->rows.v = gtk_vbox_new(FALSE, 2);
+ gtk_container_add(GTK_CONTAINER(gsh->rows.h), column);
+ gtk_widget_show(column);
gsh->rows.row = 1;
}
Index: gtkshell/terminal.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/terminal.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- gtkshell/terminal.c 16 Apr 2007 01:19:51 -0000 1.7
+++ gtkshell/terminal.c 28 Apr 2007 22:26:23 -0000 1.8
@@ -79,8 +79,10 @@
/* Open temporary file, store file descriptor in FD and file name in
* NAME. NAME is modified in calling function. */
fd = g_file_open_tmp("gshterm.XXXXXX", name, NULL);
+#ifdef DEBUG
/* Check for success. */
ARASSERT(fd != -1);
+#endif /* DEBUG */
return fd;
}
@@ -119,9 +121,11 @@
if(fsync(fd) == -1)
ARERR("cannot write script file");
- ARASSERT(fprintf(script, "#!/bin/sh\nexport LINES=%d\n"
+ if(fprintf(script, "#!/bin/sh\nexport LINES=%d\n"
"export COLUMNS=%d\n%s\n",
- gsh->terminal.height, gsh->terminal.width, command) != -1);
+ gsh->terminal.height, gsh->terminal.width, command)
+ == -1)
+ ARERR("cannot write to script file");
fclose(script); /* Close and flush buffers. */
#ifdef DEBUG
@@ -149,7 +153,7 @@
}
void
-gsh_GSH_Terminal(struct GSH_Terminal * term)
+gsh_setup_GSH_Terminal(struct GSH_Terminal * term)
{
term->widget=NULL;
term->font=NULL;
Index: gtkshell/terminal.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/terminal.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- gtkshell/terminal.h 19 Mar 2007 07:09:30 -0000 1.2
+++ gtkshell/terminal.h 28 Apr 2007 22:26:23 -0000 1.3
@@ -24,6 +24,9 @@
#define GSH_TERMINAL_H
void
+gsh_setup_GSH_Terminal(struct GSH_Terminal * term);
+
+void
gsh_setup_terminal(struct GSH * gsh, const gchar * command);
#endif
Index: gtkshell/text.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/text.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- gtkshell/text.c 24 Apr 2007 21:54:21 -0000 1.20
+++ gtkshell/text.c 28 Apr 2007 22:26:23 -0000 1.21
@@ -34,22 +34,40 @@
gtk_combo_box_prepend_text(widget, "ACE");
}
-GtkWidget *
-gsh_setup_command_entry(struct GSH * gsh, char *command)
+static void
+setup_entry_cb(struct GSH * gsh, GtkWidget * entry, const gchar * command)
{
- GtkWidget *entry;
- struct GSH_CBData *cb;
+ struct GSH_CBData * cb;
+#ifdef DEBUG
+ /* Validate parameters. */
ARPASSERT(gsh);
+ ARPASSERT(entry);
+ ARPASSERT(command);
+#endif /* DEBUG */
+
cb=gsh_new_GSH_CBData(gsh, (gpointer)((command != NULL)
? command : "echo"));
- /* Create widget. */
- entry = gtk_combo_box_entry_new_text();
- append_sample_entries(GTK_COMBO_BOX(entry));
+
(void) g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(entry))),
"activate",
G_CALLBACK(gsh_entry_cb),
(gpointer) cb);
+}
+
+GtkWidget *
+gsh_setup_command_entry(struct GSH * gsh, const gchar *command)
+{
+ GtkWidget *entry;
+
+#ifdef DEBUG
+ ARPASSERT(gsh);
+#endif /* DEBUG */
+
+ /* Create widget. */
+ entry = gtk_combo_box_entry_new_text();
+ setup_entry_cb(gsh, entry, command);
+ append_sample_entries(GTK_COMBO_BOX(entry));
/* Do not fill remaining container area. */
gsh_manage_unexpanded(gsh, entry);
@@ -72,24 +90,26 @@
void
gsh_text_area_set_text(GtkWidget * widget, const gchar * text)
{
- GtkTextBuffer * buffer;
-
- buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));
- gtk_text_buffer_set_text(buffer, text,
+ gtk_text_buffer_set_text(
+ gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget)), text,
strlen(text));
}
/* This is currently just a text file viewer. */
void
-gsh_text_editor(struct GSH * gsh, char *filename)
+gsh_text_editor(struct GSH * gsh, const gchar *filename)
{
- char * text;
-
+#ifdef DEBUG
ARPASSERT(gsh);
ARPASSERT(filename);
+#endif /* DEBUG */
+ {
+ gchar * text;
+
text=antiright_read_named_file(filename);
gsh_text_area_set_text(gsh_text_area(gsh), text);
g_free(text);
+ }
ARIFNP(gsh->geometry)
- asprintf(&gsh->geometry, "775x700");
+ gsh->geometry=g_strdup("775x700");
}
Index: gtkshell/text.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/text.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- gtkshell/text.h 5 Mar 2007 01:05:42 -0000 1.6
+++ gtkshell/text.h 28 Apr 2007 22:26:23 -0000 1.7
@@ -24,10 +24,10 @@
#define GSH_TEXT_H
GtkWidget *
-gsh_setup_command_entry(struct GSH * gsh, char *command);
+gsh_setup_command_entry(struct GSH * gsh, const gchar *command);
void
-gsh_setup_prompt_command_entry(struct GSH * gsh, char *command);
+gsh_setup_prompt_command_entry(struct GSH * gsh, const gchar *command);
GtkWidget *
gsh_text_area(struct GSH * gsh);
@@ -36,6 +36,6 @@
gsh_text_area_set_text(GtkWidget * widget, const gchar * text);
void
-gsh_text_editor(struct GSH * gsh, char *filename);
+gsh_text_editor(struct GSH * gsh, const gchar *filename);
#endif
Index: libantiright/macros.h
===================================================================
RCS file: /sources/antiright/antiright/libantiright/macros.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- libantiright/macros.h 27 Apr 2007 21:46:06 -0000 1.3
+++ libantiright/macros.h 28 Apr 2007 22:26:23 -0000 1.4
@@ -44,11 +44,16 @@
#define ARASSERT /* undefined */
#endif /* DEBUG */
+#ifdef DEBUG
#define ARBASSERT(x) \
ARASSERT(ARBBOOL(x))
#define ARPASSERT(x) \
ARASSERT(ARPBOOL(x))
+#else /* not DEBUG */
+#define ARBASSERT(x) /* undefined */
+#define ARPASSERT(x) /* undefined */
+#endif /* DEBUG */
#define ARIFB(x) \
if(ARBBOOL(x))
@@ -68,9 +73,12 @@
else
#define ARMETHOD(class, method, ...)\
- class->method(class, __VA_ARGS__)
+ class->method(class, ##__VA_ARGS__)
#define $ ARMETHOD
+#define ARNEW(package, class, ...)\
+ package##_new_##class(##__VA_ARGS__)
+
#endif /* not LIBAR_MACROS_H */
Index: libantiright/pipe.c
===================================================================
RCS file: /sources/antiright/antiright/libantiright/pipe.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- libantiright/pipe.c 27 Apr 2007 02:02:06 -0000 1.9
+++ libantiright/pipe.c 28 Apr 2007 22:26:23 -0000 1.10
@@ -46,7 +46,7 @@
}
gchar *
-antiright_read_named_file(gchar * filename)
+antiright_read_named_file(const gchar * filename)
{
FILE * file;
gchar * contents;
@@ -84,9 +84,6 @@
return (text);
}
-
-
-
/* void */
/* antiright_pipe_write(char *command_string, char* data) */
/* { */
Index: libantiright/pipe.h
===================================================================
RCS file: /sources/antiright/antiright/libantiright/pipe.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- libantiright/pipe.h 27 Apr 2007 02:02:06 -0000 1.6
+++ libantiright/pipe.h 28 Apr 2007 22:26:23 -0000 1.7
@@ -28,7 +28,7 @@
antiright_read_file(FILE *file);
gchar *
-antiright_read_named_file(gchar * filename);
+antiright_read_named_file(const gchar * filename);
/* void */
/* antiright_pipe_write(char *command_string, char* data); */
Index: libantiright/tuple.c
===================================================================
RCS file: /sources/antiright/antiright/libantiright/tuple.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- libantiright/tuple.c 16 Apr 2007 01:50:31 -0000 1.1
+++ libantiright/tuple.c 28 Apr 2007 22:26:23 -0000 1.2
@@ -22,36 +22,16 @@
#include "library.h"
-struct ARTuple *
-ar_new_ARTuple(gchar * key, gchar * value)
-{
- struct ARTuple * tuple;
-
- tuple=g_malloc(sizeof(struct ARTuple));
- tuple->key=g_strdup(key);
- tuple->value=g_strdup(value);
-
- return tuple;
-}
-
-void
-ar_delete_ARTuple(struct ARTuple * tuple)
-{
- g_free(tuple->key);
- g_free(tuple->value);
- g_free(tuple);
-}
-
struct ARTupleVector *
ar_new_ARTupleVector()
{
struct ARTupleVector * vector;
vector=g_malloc(sizeof(struct ARTupleVector));
- vector->data=NULL;
- vector->elements=0;
- vector->add=&ar_ARTupleVector_add;
- vector->find=&ar_ARTupleVector_find;
+ vector->__hash=g_hash_table_new(&g_str_hash, &g_str_equal);
+ vector->add=&ar_add_ARTupleVector;
+ vector->find=&ar_find_ARTupleVector;
+ vector->delete=&ar_delete_ARTupleVector;
return vector;
}
@@ -59,32 +39,22 @@
void
ar_delete_ARTupleVector(struct ARTupleVector * vector)
{
- while(vector->elements > 1)
- ar_delete_ARTuple(vector->data[(--(vector->elements))-1]);
+ g_hash_table_destroy(vector->__hash);
g_free(vector);
}
void
-ar_ARTupleVector_add(struct ARTupleVector * vector,
- gchar * key, gchar * value)
+ar_add_ARTupleVector(struct ARTupleVector * vector,
+ const gchar * key, const gchar * value)
{
- vector->data=realloc(vector->data,
- ++vector->elements * sizeof(struct ARTuple *));
- vector->data[vector->elements-1]=ar_new_ARTuple(key, value);
+ g_hash_table_insert(vector->__hash, (gpointer)key, (gpointer)value);
}
const gchar *
-ar_ARTupleVector_find(struct ARTupleVector * vector,
- gchar * term)
+ar_find_ARTupleVector(struct ARTupleVector * vector,
+ const gchar * term)
{
- guint i;
-#ifdef DEBUG
- ARPASSERT(vector);
- ARPASSERT(vector->data);
-#endif /* DEBUG */
- for(i=0; i < vector->elements; i++)
- if(!strcmp(vector->data[i]->key, term))
- return vector->data[i]->value;
- /* TERM not found. */
- return NULL;
+ return (const gchar *)g_hash_table_lookup(vector->__hash,
+ (gconstpointer)term);
}
+
Index: libantiright/tuple.h
===================================================================
RCS file: /sources/antiright/antiright/libantiright/tuple.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- libantiright/tuple.h 16 Apr 2007 01:50:31 -0000 1.1
+++ libantiright/tuple.h 28 Apr 2007 22:26:23 -0000 1.2
@@ -23,26 +23,14 @@
#ifndef AR_TUPLE_H
#define AR_TUPLE_H
-struct ARTuple
-{
- gchar * key;
- gchar * value;
-};
-
struct ARTupleVector
{
- struct ARTuple ** data;
- guint elements;
- void (*add)(struct ARTupleVector *, gchar *, gchar *);
- const gchar * (*find)(struct ARTupleVector *, gchar *);
+ GHashTable * __hash;
+ void (*add)(struct ARTupleVector *, const gchar *, const gchar *);
+ const gchar * (*find)(struct ARTupleVector *, const gchar *);
+ void (*delete)(struct ARTupleVector *);
};
-struct ARTuple *
-ar_new_ARTuple(gchar * key, gchar * value);
-
-void
-ar_delete_ARTuple(struct ARTuple * tuple);
-
struct ARTupleVector *
ar_new_ARTupleVector();
@@ -50,14 +38,12 @@
ar_delete_ARTupleVector(struct ARTupleVector * vector);
void
-ar_ARTupleVector_add(struct ARTupleVector * vector,
- gchar * key, gchar * value);
-
+ar_add_ARTupleVector(struct ARTupleVector * vector,
+ const gchar * key, const gchar * value);
const gchar *
-ar_ARTupleVector_find(struct ARTupleVector * vector,
- gchar * term);
-
+ar_find_ARTupleVector(struct ARTupleVector * vector,
+ const gchar * term);
#endif /* AR_TUPLE_H */
Index: libantiright/util.c
===================================================================
RCS file: /sources/antiright/antiright/libantiright/util.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- libantiright/util.c 16 Apr 2007 01:19:51 -0000 1.11
+++ libantiright/util.c 28 Apr 2007 22:26:23 -0000 1.12
@@ -73,7 +73,7 @@
ar_delete_ARArguments_contents(args);
g_free(args);
}
-
+/*
void
rand_seed()
{
@@ -85,4 +85,4 @@
{
return random() % (finish - start) + start;
}
-
+*/
Index: libantiright/util.h
===================================================================
RCS file: /sources/antiright/antiright/libantiright/util.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- libantiright/util.h 13 Apr 2007 22:49:32 -0000 1.7
+++ libantiright/util.h 28 Apr 2007 22:26:23 -0000 1.8
@@ -61,11 +61,11 @@
xmalloc(size_t size);
#define UNUSED(arg) { arg = arg; }
-
+/*
void
rand_seed();
int
rand_ranged(int start, int finish);
-
+*/
#endif
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Antiright-devel] antiright gtkshell/about_dialog.c gtkshell/gtks...,
Jeffrey Bedard <=