antiright-devel
[Top][All Lists]
Advanced

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

[Antiright-devel] antiright ACE-desktop/guidl/Horizontal_Deskbar....


From: Jeffrey Bedard
Subject: [Antiright-devel] antiright ACE-desktop/guidl/Horizontal_Deskbar....
Date: Sat, 24 Mar 2007 04:17:13 +0000

CVSROOT:        /sources/antiright
Module name:    antiright
Changes by:     Jeffrey Bedard <jefbed> 07/03/24 04:17:13

Modified files:
        ACE-desktop/guidl: Horizontal_Deskbar.gdl 
        gtkshell       : Makefile callbacks.c callbacks.h 
                         dialog_options.c gtkshell.c gtkshell.h main.c 
                         option_options.c terminal.c terminal_struct.h 

Log message:
        Use 'make' by default in configure.
        Added a launcher for the IDE to Horizontal_Deskbar.gdl
        Tuned lex/yacc dependency building in Makefile.
        Removed gsh_quit_cb and signal group code.
        Fixed integer signedness warning in dialog_options.c.
        Added an initialization routine for GSH_Terminal and used in gsh_GSH.
        Refactored main(), removed setting of -os from main, as parenting is
        delayed, thus allowing it to be done as a regular option.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/ACE-desktop/guidl/Horizontal_Deskbar.gdl?cvsroot=antiright&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/Makefile?cvsroot=antiright&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/callbacks.c?cvsroot=antiright&r1=1.15&r2=1.16
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/callbacks.h?cvsroot=antiright&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/dialog_options.c?cvsroot=antiright&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.c?cvsroot=antiright&r1=1.22&r2=1.23
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/gtkshell.h?cvsroot=antiright&r1=1.27&r2=1.28
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/main.c?cvsroot=antiright&r1=1.15&r2=1.16
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/option_options.c?cvsroot=antiright&r1=1.16&r2=1.17
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/terminal.c?cvsroot=antiright&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/terminal_struct.h?cvsroot=antiright&r1=1.1&r2=1.2

Patches:
Index: ACE-desktop/guidl/Horizontal_Deskbar.gdl
===================================================================
RCS file: 
/sources/antiright/antiright/ACE-desktop/guidl/Horizontal_Deskbar.gdl,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- ACE-desktop/guidl/Horizontal_Deskbar.gdl    22 Mar 2007 08:32:04 -0000      
1.3
+++ ACE-desktop/guidl/Horizontal_Deskbar.gdl    24 Mar 2007 04:17:13 -0000      
1.4
@@ -3,22 +3,27 @@
 option "rows" 1;
 option "geometry" "+0-0";
 option "undecorated";
-
-add button "ACE,ACE_32.png::ACE,ACE_32.png::eclipse,gtk-execute";
+// menu button
+add button "ACE,ACE_32.png::ACE,ACE_32.png::ACE -A 
IDE,Text_Editor_32.png::eclipse,gtk-execute";
+// This is a simple "separator."
+add label "|";
+// command prompt
 add prompt "env";
-
+add label "|";
+// For unlabeled items, the space between the item command and the comma allows
+// for a blank label.
 add buttons 
        "ACE Lock ,Lock_Display_32.png",
        "ACE Terminal ,Terminal_32.png",
        "ACE File_Manager ,File_Manager_32.png",
        "ACE Browser ,Browser_32.png",
        "ACE Text_Editor ,Text_Editor_32.png",
-       "ACE Calculator ,Calculator_32.png";
+       "ACE Calculator ,Calculator_32.png",
+       "ACE Sticky_Note ,Sticky_Note_32.png";
 add label "|";
 add buttons 
        "ACE Screen,Screen_32.png",
-       "ACE System_Monitor,System_Monitor_32.png",
-       "ACE Sticky_Note,Sticky_Note_32.png";
+       "ACE System_Monitor,System_Monitor_32.png";
 add label "|";
 add updating label "date '+%m/%d/%y%n%H:%M:%S'";
 

Index: gtkshell/Makefile
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/Makefile,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- gtkshell/Makefile   19 Mar 2007 10:18:25 -0000      1.17
+++ gtkshell/Makefile   24 Mar 2007 04:17:13 -0000      1.18
@@ -32,28 +32,30 @@
 LDFLAGS+=`pkg-config --libs gtk+-2.0` `pkg-config --libs vte`
 #LDFLAGS+=-lefence
 
-objects=gtkshell.o arguments.o options.o callbacks.o updated.o\
+objects=y.tab.o lex.yy.o gtkshell.o arguments.o options.o callbacks.o 
updated.o\
        label.o button.o text.o updated_label.o updated_progress.o\
        updated_options.o add_options.o option_options.o dialog_options.o\
        file_dialog.o row.o containers.o geometry.o font.o dragdrop.o\
-       image_button.o y.tab.o lex.yy.o terminal.o terminal_options.o\
+       image_button.o terminal.o terminal_options.o\
        guidl_util.o
 
 program=main.o 
 
-all: gtkshell
+all: y.tab.c gtkshell
 
 
-gtkshell: y.tab.c $(objects) $(program)
+gtkshell: y.tab.h $(objects) $(program)
        $(CC) -o gtkshell $(objects) $(program) $(LDFLAGS)
        ar rcs libgtkshell.a $(objects)
 
 lex.yy.c: guidl.lex
        lex guidl.lex
 
-y.tab.c: lex.yy.c guidl.y
+y.tab.h: lex.yy.c guidl.y
        yacc -d guidl.y
 
+y.tab.c: y.tab.h
+
 parser-clean:
        rm -f *.yy.c *.tab.c *.tab.h
 

Index: gtkshell/callbacks.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/callbacks.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- gtkshell/callbacks.c        2 Mar 2007 19:12:00 -0000       1.15
+++ gtkshell/callbacks.c        24 Mar 2007 04:17:13 -0000      1.16
@@ -31,7 +31,7 @@
 #endif                         /* DEBUG */
 
        if (ARPBOOL(gsh) && ((gsh->bflags & GSH_CBEXIT) == GSH_CBEXIT))
-               exit(EXIT_SUCCESS);
+               gtk_main_quit();
 
 #ifdef DEBUG
        ARBUG("==>made it past exit");

Index: gtkshell/callbacks.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/callbacks.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- gtkshell/callbacks.h        28 Feb 2007 03:53:51 -0000      1.5
+++ gtkshell/callbacks.h        24 Mar 2007 04:17:13 -0000      1.6
@@ -1,6 +1,6 @@
 /*
   AntiRight
-  (c) 2002-2006 Jeffrey Bedard
+  (c) 2002-2007 Jeffrey Bedard
   address@hidden
 
   This file is part of AntiRight.
@@ -30,9 +30,9 @@
 };
 
 void
-     system_cb(GtkWidget *widget, gpointer data);
+system_cb(GtkWidget *widget, gpointer data);
 
 void
-     entry_cb(GtkWidget *widget, gpointer data);
+entry_cb(GtkWidget *widget, gpointer data);
 
-#endif
+#endif /* not GSH_CALLBACKS_H */

Index: gtkshell/dialog_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/dialog_options.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- gtkshell/dialog_options.c   7 Mar 2007 06:44:47 -0000       1.11
+++ gtkshell/dialog_options.c   24 Mar 2007 04:17:13 -0000      1.12
@@ -30,7 +30,7 @@
 static void
 gsh_setup_message_dialog(struct GSH * gsh, 
                         int argc, char **argv,
-                        unsigned int *counter, 
+                        int *counter, 
                         GtkMessageType type) __attribute__((noreturn));
 
 static void
@@ -60,7 +60,7 @@
 
 static void
 gsh_setup_message_dialog(struct GSH * gsh, int argc, char **argv,
-                        unsigned int *counter, GtkMessageType type)
+                        int *counter, GtkMessageType type)
 {
        gsh_count(argc, counter);
        gsh_message_dialog(gsh, type, argv[(*counter)]);

Index: gtkshell/gtkshell.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -b -r1.22 -r1.23
--- gtkshell/gtkshell.c 9 Mar 2007 20:00:29 -0000       1.22
+++ gtkshell/gtkshell.c 24 Mar 2007 04:17:13 -0000      1.23
@@ -68,8 +68,9 @@
 {
        gsh->geometry = (gchar *)NULL;
        gsh->bflags=0;
-       gsh_GSH_Rows(&gsh->rows);
-       gsh_GSH_Updater(&gsh->update);
+       gsh_GSH_Rows(&(gsh->rows));
+       gsh_GSH_Updater(&(gsh->update));
+       gsh_GSH_Terminal(&(gsh->terminal));
 }
 struct GSH *
 gsh_new_GSH()

Index: gtkshell/gtkshell.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/gtkshell.h,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- gtkshell/gtkshell.h 19 Mar 2007 09:33:07 -0000      1.27
+++ gtkshell/gtkshell.h 24 Mar 2007 04:17:13 -0000      1.28
@@ -31,6 +31,7 @@
 #include <sys/stat.h>
 #include <vte/vte.h>
 #include <unistd.h>
+#include <signal.h>
 
 #include "../libantiright/library.h"
 

Index: gtkshell/main.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/main.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- gtkshell/main.c     19 Mar 2007 07:09:30 -0000      1.15
+++ gtkshell/main.c     24 Mar 2007 04:17:13 -0000      1.16
@@ -22,39 +22,48 @@
 
 #include "gtkshell.h"
 
-int
-main(int argc, char **argv)
+static void
+init_GUI(struct GSH * gsh, int * argc, char *** argv)
 {
-       //Store application structure on stack.
-       struct GSH gsh;
-
-       gsh.terminal.script=NULL;
-       gsh.terminal.width=80;
-       gsh.terminal.height=32;
-
-       gsh_stack_init(&gsh, &argc, &argv);
+       gsh_stack_init(gsh, argc, argv);
 
-#ifdef DEBUG
-       g_debug("rows:\t%d\n", gsh.rows.rows);
-       g_debug("row:\t%d\n", gsh.rows.row);
-#endif                         /* DEBUG */
-
-       gsh.bflags |= (((argc > 1) && (strlen(argv[1]) == 3))
-                && !strncmp(argv[1], "-os", 3)) ? GSH_SCROLL : GSH_NONE;
-
-       gsh_setup_containers(&gsh);
-       gsh_parse_arguments(&gsh, argc, argv);
-       gsh_setup_base_container(&gsh);
-
-       gsh_check_and_set_geometry(&gsh);
-       gtk_widget_show(gsh.window);
-       gtk_main();
+       /* Initialize toplevel child containers, with parenting delayed.  */
+       gsh_setup_containers(gsh);
+       /* Create all application widgets based on command line arguments.  */
+       gsh_parse_arguments(gsh, *argc, *argv);
+       /* Choose the correct parenting of the widget hierarchy based on options
+        * set.  */
+       gsh_setup_base_container(gsh);
+       /* If geometry has been set in command line arguments, use that, else
+        * use a reasonable default.  */
+       gsh_check_and_set_geometry(gsh);
+       /* Show everything when ready.  */
+       gtk_widget_show(gsh->window);
+}
 
-       if(gsh.terminal.script != NULL)
+static void
+cleanup(struct GSH * gsh)
+{
+       /* If the terminal was used, it created a temporary command script,
+        * which must be removed on program exit.  A better way to do this would
+        * be to install a timer to remove the script.  This is necessary as
+        * premature script removal breaks the terminal command fork.  */
+       if(gsh->terminal.script != NULL)
        {
-               unlink(gsh.terminal.script);
-               free(gsh.terminal.script);
+               unlink(gsh->terminal.script);
+               free(gsh->terminal.script);
        }
+}
+
+int
+main(int argc, char **argv)
+{
+       /* Store application structure on stack. */
+       struct GSH gsh;
+
+       init_GUI(&gsh, &argc, &argv); /* Setup GUI.  */
+       gtk_main(); /* application main loop  */
+       cleanup(&gsh); /* Clean temporary files.  */
 
        return (EXIT_SUCCESS);
 }

Index: gtkshell/option_options.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/option_options.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -b -r1.16 -r1.17
--- gtkshell/option_options.c   19 Mar 2007 10:18:25 -0000      1.16
+++ gtkshell/option_options.c   24 Mar 2007 04:17:13 -0000      1.17
@@ -77,17 +77,21 @@
 
                break;
 
-       case 'r':
+       case 'r': /* Set number of rows per column.  */
                gsh_count(argc, counter);
                gsh->rows.rows =
                        (unsigned int) atoi(argv[(*counter)]);
                break;
 
+       case 's': /* Use scrolling parent container.  */
+               GSH_SET(GSH_SCROLL);
+               break;
+
        case 't':
                gsh_handle_terminal_options(gsh, argc, argv, counter);
                break;
 
-       case 'u':
+       case 'u': /* Set time for updating widgets' timer, in miliseconds.  */
                gsh_count(argc, counter);
                gsh->update.period = atoi(argv[*counter]);
                break;

Index: gtkshell/terminal.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/terminal.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- gtkshell/terminal.c 19 Mar 2007 10:18:25 -0000      1.4
+++ gtkshell/terminal.c 24 Mar 2007 04:17:13 -0000      1.5
@@ -139,14 +139,24 @@
        gsh->terminal.script=gsh_terminal_command_script(command);
 
        /* Run the script in the terminal widget.  */
-       vte_terminal_fork_command(VTE_TERMINAL(gsh->terminal.widget),
-                                 gsh->terminal.script, NULL, NULL, NULL,
-                                 TRUE, TRUE, TRUE);
+       setpgrp(vte_terminal_fork_command(VTE_TERMINAL(gsh->terminal.widget),
+                                         gsh->terminal.script, NULL, NULL, 
+                                         NULL, TRUE, TRUE, TRUE), getpgrp());
 
        /* SCRIPT must be freed later, so preserve reference.  */
 }
 
 void
+gsh_GSH_Terminal(struct GSH_Terminal * term)
+{
+       term->widget=NULL;
+       term->font=NULL;
+       term->script=NULL;
+       term->width=80;
+       term->height=24;
+}
+
+void
 gsh_setup_terminal(struct GSH * gsh, const gchar * command)
 {
        /* VTE-based terminal.  */

Index: gtkshell/terminal_struct.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/terminal_struct.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- gtkshell/terminal_struct.h  19 Mar 2007 07:09:30 -0000      1.1
+++ gtkshell/terminal_struct.h  24 Mar 2007 04:17:13 -0000      1.2
@@ -31,5 +31,8 @@
        guint width, height;
 };
 
+void
+gsh_GSH_Terminal(struct GSH_Terminal * term);
+
 #endif /* not GSH_TERMINAL_STRUCT_H */
 




reply via email to

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