[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Antiright-devel] antiright/gtkshell row.c row_struct.h
From: |
Jeffrey Bedard |
Subject: |
[Antiright-devel] antiright/gtkshell row.c row_struct.h |
Date: |
Sat, 07 Aug 2010 16:47:22 +0000 |
CVSROOT: /sources/antiright
Module name: antiright
Changes by: Jeffrey Bedard <jefbed> 10/08/07 16:47:22
Modified files:
gtkshell : row.c row_struct.h
Log message:
Removed preprocessor based logic, simplified comparisons in management
tests. Begin use of smaller bool type.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/row.c?cvsroot=antiright&r1=1.24&r2=1.25
http://cvs.savannah.gnu.org/viewcvs/antiright/gtkshell/row_struct.h?cvsroot=antiright&r1=1.3&r2=1.4
Patches:
Index: row.c
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/row.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -b -r1.24 -r1.25
--- row.c 11 Jun 2007 21:32:43 -0000 1.24
+++ row.c 7 Aug 2010 16:47:22 -0000 1.25
@@ -25,10 +25,11 @@
static void
gsh_GSHRows_new(struct GSHRows * this)
{
+ bool is_first_row=!this->v;
gtk_container_add(GTK_CONTAINER(this->h),
this->v=gtk_vbox_new(FALSE, 2));
gtk_widget_show(this->v);
- this->current = 1;
+ this->current=is_first_row?2:1;
}
static void
@@ -38,30 +39,29 @@
$(this, new);
}
+/*
static void
gsh_delete_GSHRows(struct GSHRows * rows)
{
g_free(rows);
-}
+}*/
-#define SETUP_METHODS(rows)\
-{\
- rows->delete=&gsh_delete_GSHRows;\
- rows->new=&gsh_GSHRows_new;\
- rows->check=&gsh_GSHRows_check;\
+static inline void
+setup_methods(struct GSHRows * rows)
+{
+ rows->delete=(void (*)(struct GSHRows *))&g_free;
+ rows->new=&gsh_GSHRows_new;
+ rows->check=&gsh_GSHRows_check;
}
+static inline void
+setup_member_fields(struct GSHRows * rows)
+{
/* Use an arbitrary, though reasonable, initial number of rows. */
-#define SETUP_MEMBER_FIELDS(rows)\
-{\
- rows->current=1;\
- rows->total=8;\
-}
-
-#define SETUP_GSHROWS(rows)\
-{\
- SETUP_MEMBER_FIELDS(rows);\
- SETUP_METHODS(rows);\
+ rows->current=1;
+ rows->total=8;
+ rows->h=NULL;
+ rows->v=NULL;
}
struct GSHRows *
@@ -70,7 +70,8 @@
struct GSHRows * rows;
rows = xmalloc(sizeof(struct GSHRows));
- SETUP_GSHROWS(rows);
+ setup_member_fields(rows);
+ setup_methods(rows);
return rows;
}
@@ -96,41 +97,28 @@
return FALSE;
}
-static void
-manage_normal(struct GSH * gsh, GtkWidget * widget)
-{
- if(test_manage_menu_item(gsh->rows->v, widget))
- return;
- $(gsh->rows, check);
- gtk_container_add(GTK_CONTAINER(gsh->rows->v), widget);
- gsh_manage_generic(gsh, widget);
-}
-
-#define GR gsh->rows
-#define CONTAINER GR->v
-#define TEST_MANAGE_UNEXPANDED(gsh)\
- (GSH_FLAG(GSH_NO_EXPAND) &&(GR->total != 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->rows, check);
- gtk_box_pack_start(GTK_BOX(gsh->rows->v), widget,
- FALSE, FALSE, 0);
- gsh_manage_generic(gsh, widget);
-}
-
void
gsh_manage(struct GSH * gsh, GtkWidget *widget)
{
if(GSH_FLAG(GSH_PANE_NEXT))
+ {
gsh_pane_previous(gsh, widget);
- else if(TEST_MANAGE_UNEXPANDED(gsh))
- manage_unexpanded(gsh, widget);
+ }
else
- manage_normal(gsh, widget);
+ {
+ struct GSHRows * rows = gsh->rows;
+ GtkWidget * vert = rows->v;
+
+ if(test_manage_menu_item(vert, widget))
+ return;
+ $(rows, check);
+ /* Test for unexpanded addition of a child. */
+ if(GSH_FLAG(GSH_NO_EXPAND))
+ gtk_box_pack_start(GTK_BOX(vert), widget,
+ FALSE, FALSE, 0);
+ else
+ gtk_container_add(GTK_CONTAINER(vert), widget);
+ gsh_manage_generic(gsh, widget);
+ }
}
Index: row_struct.h
===================================================================
RCS file: /sources/antiright/antiright/gtkshell/row_struct.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Antiright-devel] antiright/gtkshell row.c row_struct.h,
Jeffrey Bedard <=