gnumeric r17234 - in trunk: . src
- From: mortenw svn gnome org
- To: svn-commits-list gnome org
- Subject: gnumeric r17234 - in trunk: . src
- Date: Fri, 20 Mar 2009 21:05:02 +0000 (UTC)
Author: mortenw
Date: Fri Mar 20 21:05:02 2009
New Revision: 17234
URL: http://svn.gnome.org/viewvc/gnumeric?rev=17234&view=rev
Log:
(sheet_widget_adjustment_clear_sheet, sheet_widget_checkbox_clear_sheet,
sheet_widget_radio_button_clear_sheet, sheet_widget_list_base_clear_sheet):
Remove.
(so_clear_sheet): New generic function replacing the above.
Modified:
trunk/ChangeLog
trunk/src/sheet-object-widget.c
Modified: trunk/src/sheet-object-widget.c
==============================================================================
--- trunk/src/sheet-object-widget.c (original)
+++ trunk/src/sheet-object-widget.c Fri Mar 20 21:05:02 2009
@@ -78,7 +78,7 @@
}
static GnmCellRef *
-so_get_ref (SheetObject *so, GnmCellRef *res, gboolean force_sheet)
+so_get_ref (SheetObject const *so, GnmCellRef *res, gboolean force_sheet)
{
GnmValue *target;
GnmDependent *dep = NULL;
@@ -86,7 +86,7 @@
g_return_val_if_fail (so != NULL, NULL);
/* Let's hope there's just one. */
- sheet_object_foreach_dep (so, cb_so_get_ref, &dep);
+ sheet_object_foreach_dep ((SheetObject*)so, cb_so_get_ref, &dep);
g_return_val_if_fail (dep, NULL);
if (dep->texpr == NULL)
@@ -104,6 +104,22 @@
return res;
}
+static void
+cb_so_clear_sheet (GnmDependent *dep, SheetObject *so, gpointer user)
+{
+ if (dependent_is_linked (dep))
+ dependent_unlink (dep);
+ dep->sheet = NULL;
+}
+
+static gboolean
+so_clear_sheet (SheetObject *so)
+{
+ /* Note: This implements sheet_object_clear_sheet. */
+ sheet_object_foreach_dep (so, cb_so_clear_sheet, NULL);
+ return FALSE;
+}
+
static void
so_widget_view_destroy (SheetObjectView *sov)
@@ -1045,17 +1061,6 @@
return FALSE;
}
-static gboolean
-sheet_widget_adjustment_clear_sheet (SheetObject *so)
-{
- SheetWidgetAdjustment *swa = SHEET_WIDGET_ADJUSTMENT (so);
-
- if (dependent_is_linked (&swa->dep))
- dependent_unlink (&swa->dep);
- swa->dep.sheet = NULL;
- return FALSE;
-}
-
static void
sheet_widget_adjustment_foreach_dep (SheetObject *so,
SheetObjectForeachDepFunc func,
@@ -1156,7 +1161,7 @@
SOW_MAKE_TYPE (adjustment, Adjustment,
sheet_widget_adjustment_user_config,
sheet_widget_adjustment_set_sheet,
- sheet_widget_adjustment_clear_sheet,
+ so_clear_sheet,
sheet_widget_adjustment_foreach_dep,
sheet_widget_adjustment_copy,
sheet_widget_adjustment_read_xml_dom,
@@ -1654,17 +1659,6 @@
return FALSE;
}
-static gboolean
-sheet_widget_checkbox_clear_sheet (SheetObject *so)
-{
- SheetWidgetCheckbox *swc = SHEET_WIDGET_CHECKBOX (so);
-
- if (dependent_is_linked (&swc->dep))
- dependent_unlink (&swc->dep);
- swc->dep.sheet = NULL;
- return FALSE;
-}
-
static void
sheet_widget_checkbox_foreach_dep (SheetObject *so,
SheetObjectForeachDepFunc func,
@@ -1755,7 +1749,7 @@
SOW_MAKE_TYPE (checkbox, Checkbox,
sheet_widget_checkbox_user_config,
sheet_widget_checkbox_set_sheet,
- sheet_widget_checkbox_clear_sheet,
+ so_clear_sheet,
sheet_widget_checkbox_foreach_dep,
sheet_widget_checkbox_copy,
sheet_widget_checkbox_read_xml_dom,
@@ -1901,19 +1895,6 @@
return FALSE;
}
-static gboolean
-sheet_widget_radio_button_clear_sheet (SheetObject *so)
-{
- SheetWidgetRadioButton *swrb = SHEET_WIDGET_RADIO_BUTTON (so);
-
- g_return_val_if_fail (swrb != NULL, TRUE);
-
- if (dependent_is_linked (&swrb->dep))
- dependent_unlink (&swrb->dep);
- swrb->dep.sheet = NULL;
- return FALSE;
-}
-
static void
sheet_widget_radio_button_foreach_dep (SheetObject *so,
SheetObjectForeachDepFunc func,
@@ -1995,7 +1976,7 @@
SOW_MAKE_TYPE (radio_button, RadioButton,
NULL,
sheet_widget_radio_button_set_sheet,
- sheet_widget_radio_button_clear_sheet,
+ so_clear_sheet,
sheet_widget_radio_button_foreach_dep,
NULL,
NULL,
@@ -2191,21 +2172,6 @@
return FALSE;
}
-static gboolean
-sheet_widget_list_base_clear_sheet (SheetObject *so)
-{
- SheetWidgetListBase *swl = SHEET_WIDGET_LIST_BASE (so);
-
- g_return_val_if_fail (swl != NULL, TRUE);
-
- if (dependent_is_linked (&swl->content_dep))
- dependent_unlink (&swl->content_dep);
- if (dependent_is_linked (&swl->output_dep))
- dependent_unlink (&swl->output_dep);
- swl->content_dep.sheet = swl->output_dep.sheet = NULL;
- return FALSE;
-}
-
static void
sheet_widget_list_base_foreach_dep (SheetObject *so,
SheetObjectForeachDepFunc func,
@@ -2259,7 +2225,7 @@
SOW_MAKE_TYPE (list_base, ListBase,
sheet_widget_list_base_user_config,
sheet_widget_list_base_set_sheet,
- sheet_widget_list_base_clear_sheet,
+ so_clear_sheet,
sheet_widget_list_base_foreach_dep,
NULL,
sheet_widget_list_base_read_xml_dom,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]