[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pspp-cvs] pspp lib/gtksheet/ChangeLog lib/gtksheet/gtkshe...
From: |
John Darrington |
Subject: |
[Pspp-cvs] pspp lib/gtksheet/ChangeLog lib/gtksheet/gtkshe... |
Date: |
Mon, 09 Jul 2007 05:21:13 +0000 |
CVSROOT: /sources/pspp
Module name: pspp
Changes by: John Darrington <jmd> 07/07/09 05:21:13
Modified files:
lib/gtksheet : ChangeLog gtksheet.c gtksheet.h
src/ui/gui : ChangeLog data-editor.c data-editor.glade
data-editor.h
Log message:
Implemented the "Insert Case" button and menuitem.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/lib/gtksheet/ChangeLog?cvsroot=pspp&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/pspp/lib/gtksheet/gtksheet.c?cvsroot=pspp&r1=1.20&r2=1.21
http://cvs.savannah.gnu.org/viewcvs/pspp/lib/gtksheet/gtksheet.h?cvsroot=pspp&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/ChangeLog?cvsroot=pspp&r1=1.65&r2=1.66
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/data-editor.c?cvsroot=pspp&r1=1.35&r2=1.36
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/data-editor.glade?cvsroot=pspp&r1=1.22&r2=1.23
http://cvs.savannah.gnu.org/viewcvs/pspp/src/ui/gui/data-editor.h?cvsroot=pspp&r1=1.14&r2=1.15
Patches:
Index: lib/gtksheet/ChangeLog
===================================================================
RCS file: /sources/pspp/pspp/lib/gtksheet/ChangeLog,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- lib/gtksheet/ChangeLog 7 Jul 2007 01:52:44 -0000 1.14
+++ lib/gtksheet/ChangeLog 9 Jul 2007 05:21:12 -0000 1.15
@@ -1,3 +1,8 @@
+09 July 2007 John Darrington <address@hidden>
+
+ * gtksheet.c gtksheet.h (gtk_sheet_get_active_cell): Allowed row,
+ column to be NULL.
+
07 July 2007 John Darrington <address@hidden>
* gsheet-column-iface.c gsheet-column-iface.h gsheet-row-iface.c
Index: lib/gtksheet/gtksheet.c
===================================================================
RCS file: /sources/pspp/pspp/lib/gtksheet/gtksheet.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- lib/gtksheet/gtksheet.c 8 Jul 2007 06:13:06 -0000 1.20
+++ lib/gtksheet/gtksheet.c 9 Jul 2007 05:21:12 -0000 1.21
@@ -3925,8 +3925,8 @@
g_return_if_fail (sheet != NULL);
g_return_if_fail (GTK_IS_SHEET (sheet));
- *row = sheet->active_cell.row;
- *column = sheet->active_cell.col;
+ if ( row ) *row = sheet->active_cell.row;
+ if (column) *column = sheet->active_cell.col;
}
static void
Index: lib/gtksheet/gtksheet.h
===================================================================
RCS file: /sources/pspp/pspp/lib/gtksheet/gtksheet.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- lib/gtksheet/gtksheet.h 7 Jul 2007 01:52:44 -0000 1.10
+++ lib/gtksheet/gtksheet.h 9 Jul 2007 05:21:12 -0000 1.11
@@ -532,6 +532,10 @@
gboolean
gtk_sheet_set_active_cell (GtkSheet *sheet,
gint row, gint column);
+
+/* Sets *ROW and *COLUMN to be the coordinates of the active cell.
+ ROW and/or COLUMN may be null if the caller is not interested in their
+ values */
void
gtk_sheet_get_active_cell (GtkSheet *sheet,
gint *row, gint *column);
Index: src/ui/gui/ChangeLog
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/ChangeLog,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -b -r1.65 -r1.66
--- src/ui/gui/ChangeLog 8 Jul 2007 02:39:10 -0000 1.65
+++ src/ui/gui/ChangeLog 9 Jul 2007 05:21:12 -0000 1.66
@@ -1,5 +1,10 @@
2007-07-08 John Darrington <address@hidden>
+ * data-editor.c data-editor.glade data-editor.h: Implemented
+ the "Insert Case" button/dialog.
+
+2007-07-08 John Darrington <address@hidden>
+
* goto-case-dialog.c goto-case-dialog.h (new files)
* automake.mk data-editor.c data-editor.glade data-editor.h
psppire-case-file.c psppire-case-file.h psppire-data-store.c
Index: src/ui/gui/data-editor.c
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/data-editor.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -b -r1.35 -r1.36
--- src/ui/gui/data-editor.c 8 Jul 2007 11:13:54 -0000 1.35
+++ src/ui/gui/data-editor.c 9 Jul 2007 05:21:12 -0000 1.36
@@ -59,6 +59,9 @@
static void insert_variable (GtkAction *, gpointer data);
+static void insert_case (GtkAction *a, gpointer data);
+
+
/* Switch between the VAR SHEET and the DATA SHEET */
@@ -248,11 +251,6 @@
G_CALLBACK (insert_variable), de);
-
- g_signal_connect (de->insert_variable, "activate",
- G_CALLBACK (insert_variable), de);
-
-
gtk_action_connect_proxy (de->insert_variable,
get_widget_assert (de->xml,
"button-insert-variable")
);
@@ -261,6 +259,28 @@
get_widget_assert (de->xml, "data_insert-variable")
);
+
+ de->insert_case =
+ gtk_action_new ("insert-case",
+ _("Insert Case"),
+ _("Create a new case at the current position"),
+ "pspp-insert-case");
+
+ g_signal_connect (de->insert_case, "activate",
+ G_CALLBACK (insert_case), de);
+
+
+ gtk_action_connect_proxy (de->insert_case,
+ get_widget_assert (de->xml, "button-insert-case")
+ );
+
+
+ gtk_action_connect_proxy (de->insert_case,
+ get_widget_assert (de->xml, "data_insert-case")
+ );
+
+
+
de->invoke_goto_dialog =
gtk_action_new ("goto-case-dialog",
_("Goto Case"),
@@ -636,9 +656,6 @@
static void
select_sheet (struct data_editor *de, guint page_num)
{
- GtkWidget *insert_variable = get_widget_assert (de->xml,
"data_insert-variable");
- GtkWidget *insert_cases = get_widget_assert (de->xml, "insert-cases");
-
GtkWidget *view_data = get_widget_assert (de->xml, "view_data");
GtkWidget *view_variables = get_widget_assert (de->xml, "view_variables");
@@ -647,14 +664,15 @@
case PAGE_VAR_SHEET:
gtk_widget_hide (view_variables);
gtk_widget_show (view_data);
- gtk_widget_set_sensitive (insert_variable, TRUE);
- gtk_widget_set_sensitive (insert_cases, FALSE);
+ gtk_action_set_sensitive (de->insert_variable, TRUE);
+ gtk_action_set_sensitive (de->insert_case, FALSE);
gtk_action_set_sensitive (de->invoke_goto_dialog, FALSE);
break;
case PAGE_DATA_SHEET:
gtk_widget_show (view_variables);
gtk_widget_hide (view_data);
gtk_action_set_sensitive (de->invoke_goto_dialog, TRUE);
+ gtk_action_set_sensitive (de->insert_case, TRUE);
break;
default:
g_assert_not_reached ();
@@ -864,6 +882,25 @@
}
}
+static void
+insert_case (GtkAction *action, gpointer data)
+{
+ gint current_row ;
+ struct data_editor *de = data;
+
+ GtkSheet *data_sheet =
+ GTK_SHEET (get_widget_assert (de->xml, "data_sheet"));
+
+ PsppireDataStore *ds = PSPPIRE_DATA_STORE
+ (gtk_sheet_get_model (data_sheet) );
+
+
+ gtk_sheet_get_active_cell (data_sheet, ¤t_row, NULL);
+
+ if (current_row < 0) current_row = 0;
+
+ psppire_data_store_insert_new_case (ds, current_row);
+}
/* Insert a new variable before the current row in the variable sheet,
or before the current column in the data sheet, whichever is selected */
Index: src/ui/gui/data-editor.glade
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/data-editor.glade,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -b -r1.22 -r1.23
--- src/ui/gui/data-editor.glade 8 Jul 2007 11:13:54 -0000 1.22
+++ src/ui/gui/data-editor.glade 9 Jul 2007 05:21:12 -0000 1.23
@@ -280,7 +280,7 @@
</widget>
</child>
<child>
- <widget class="GtkMenuItem" id="insert-cases">
+ <widget class="GtkMenuItem" id="data_insert-case">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="label" translatable="yes">Insert
Cases</property>
Index: src/ui/gui/data-editor.h
===================================================================
RCS file: /sources/pspp/pspp/src/ui/gui/data-editor.h,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- src/ui/gui/data-editor.h 8 Jul 2007 02:39:10 -0000 1.14
+++ src/ui/gui/data-editor.h 9 Jul 2007 05:21:12 -0000 1.15
@@ -41,6 +41,7 @@
GtkAction *invoke_variable_info_dialog;
GtkAction *insert_variable;
+ GtkAction *insert_case;
GladeXML *xml;