[gnumeric] xls: improve object ordering on export.
- From: Morten Welinder <mortenw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] xls: improve object ordering on export.
- Date: Sat, 10 Mar 2012 17:49:09 +0000 (UTC)
commit 4dd0fc245b45d4c6ce13c304c537715523b85485
Author: Morten Welinder <terra gnome org>
Date: Sat Mar 10 12:30:13 2012 -0500
xls: improve object ordering on export.
ChangeLog | 5 ++
plugins/excel/ChangeLog | 7 +++
plugins/excel/ms-excel-write.c | 111 +++++++++++++++------------------------
plugins/excel/ms-excel-write.h | 2 +-
src/sheet-object-widget.c | 29 ++++------
src/sheet-object-widget.h | 46 +++++++++-------
6 files changed, 94 insertions(+), 106 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index def281c..e0edff8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-03-10 Morten Welinder <terra gnome org>
+
+ * src/sheet-object-widget.h: Grand rename. Make GNM_IS_SOW
+ public.
+
2012-03-10 Jean Brefort <jean brefort normalesup org>
* src/sheet-object-image.c (gnm_soi_write_image): make it work again.
diff --git a/plugins/excel/ChangeLog b/plugins/excel/ChangeLog
index 33d6bd7..295b80b 100644
--- a/plugins/excel/ChangeLog
+++ b/plugins/excel/ChangeLog
@@ -1,3 +1,10 @@
+2012-03-10 Morten Welinder <terra gnome org>
+
+ * ms-excel-write.c (excel_write_objs_v8): Unify writing of objects
+ to help fix stacking issues.
+ (excel_sheet_new): Eliminate special lists for lines and
+ textboxes.
+
2012-03-09 Morten Welinder <terra gnome org>
* xlsx-write.c (xlsx_write_sheet): Use new
diff --git a/plugins/excel/ms-excel-write.c b/plugins/excel/ms-excel-write.c
index 75796be..b5059b2 100644
--- a/plugins/excel/ms-excel-write.c
+++ b/plugins/excel/ms-excel-write.c
@@ -4251,10 +4251,8 @@ excel_write_ClientTextbox (ExcelWriteState *ewb, SheetObject *so,
}
static gsize
-excel_write_textbox_or_widget_v8 (ExcelWriteSheet *esheet,
- SheetObject *so,
- gboolean has_text_prop,
- gboolean is_widget)
+excel_write_other_v8 (ExcelWriteSheet *esheet,
+ SheetObject *so)
{
GString *escher = g_string_new (NULL);
GString *extra;
@@ -4278,6 +4276,9 @@ excel_write_textbox_or_widget_v8 (ExcelWriteSheet *esheet,
gboolean terminate_obj = TRUE;
gboolean transparent = FALSE;
gboolean is_image = FALSE;
+ gboolean has_text_prop = NULL != g_object_class_find_property
+ (G_OBJECT_GET_CLASS (so), "text");
+ gboolean is_widget = GNM_IS_SOW (so);
if (has_text_prop) {
g_object_get (so,
@@ -4559,27 +4560,6 @@ excel_write_textbox_or_widget_v8 (ExcelWriteSheet *esheet,
return draw_len;
}
-static gsize
-excel_write_image_v8 (ExcelWriteSheet *esheet, BlipInf *bi)
-{
- return excel_write_textbox_or_widget_v8 (esheet, bi->so, FALSE, FALSE);
-}
-
-static gsize
-excel_write_textbox_v8 (ExcelWriteSheet *esheet, SheetObject *so)
-{
- return excel_write_textbox_or_widget_v8 (esheet, so, TRUE, FALSE);
-}
-
-static gsize
-excel_write_widget_v8 (ExcelWriteSheet *esheet, SheetObject *so)
-{
- GParamSpec *pspec = g_object_class_find_property
- (G_OBJECT_GET_CLASS (so), "text");
- return excel_write_textbox_or_widget_v8 (esheet, so,
- pspec != NULL, TRUE);
-}
-
static void
write_arrow (GOArrow const *arrow, GString *escher, gsize optmark,
guint id)
@@ -4743,6 +4723,16 @@ excel_write_line_v8 (ExcelWriteSheet *esheet, SheetObject *so)
return draw_len;
}
+static gsize
+excel_write_obj_v8 (ExcelWriteSheet *esheet,
+ SheetObject *so)
+{
+ if (IS_GNM_SO_LINE (so))
+ return excel_write_line_v8 (esheet, so);
+ else
+ return excel_write_other_v8 (esheet, so);
+}
+
static void
excel_write_DIMENSION (BiffPut *bp, ExcelWriteSheet *esheet)
{
@@ -4808,8 +4798,8 @@ excel_write_PAGE_BREAK (BiffPut *bp, GnmPageBreaks const *breaks)
n = (ms_biff_max_record_len (bp) - 2 - 2) / step;
data = ms_biff_put_len_next (bp, manual_pbreaks->is_vert
- ? BIFF_VERTICALPAGEBREAKS : BIFF_HORIZONTALPAGEBREAKS,
- 2 + step * n);
+ ? BIFF_VERTICALPAGEBREAKS : BIFF_HORIZONTALPAGEBREAKS,
+ 2 + step * n);
GSF_LE_SET_GUINT16 (data, (guint16)n);
for (data += 2, i = 0 ; i < n ; data += step, i++) {
@@ -5064,9 +5054,9 @@ excel_sheet_write_INDEX (ExcelWriteSheet *esheet, gsf_off_t fpos,
unsigned pos = g_array_index (dbcells, unsigned, i);
GSF_LE_SET_GUINT32 (data + i, pos - esheet->ewb->streamPos);
d (2, g_printerr ("Writing index record"
- " 0x%4.4x - 0x%4.4x = 0x%4.4x\n",
- pos, esheet->ewb->streamPos,
- pos - esheet->ewb->streamPos););
+ " 0x%4.4x - 0x%4.4x = 0x%4.4x\n",
+ pos, esheet->ewb->streamPos,
+ pos - esheet->ewb->streamPos););
}
ms_biff_put_abs_write (bp, fpos, data, 4 * dbcells->len);
@@ -5124,7 +5114,7 @@ excel_sheet_write_DBCELL (ExcelWriteSheet *esheet,
*
* See: 'Finding records in BIFF files'
*/
-guint32
+static guint32
excel_sheet_write_block (ExcelWriteSheet *esheet, guint32 begin, int nrows,
GArray *dbcells)
{
@@ -5279,14 +5269,14 @@ excel_write_objs_v8 (ExcelWriteSheet *esheet)
/* The header */
if (bp->version >= MS_BIFF_V8) {
static guint8 const header_obj_v8[] = {
-/* DgContainers */ 0x0f, 0, 2, 0xf0, 0, 0, 0, 0, /* fill in length */
-/* Dg */ 0x10, 0, 8, 0xf0, 8, 0, 0, 0,
+ /* DgContainers */ 0x0f, 0, 2, 0xf0, 0, 0, 0, 0, /* fill in length */
+ /* Dg */ 0x10, 0, 8, 0xf0, 8, 0, 0, 0,
0, 0, 0, 0, /* fill num objects in this group + 1 */
0, 0, 0, 0, /* fill last spid in this group */
-/* SpgrContainer */0x0f, 0, 3, 0xf0, 0, 0, 0, 0, /* fill in length */
-/* SpContainer */ 0x0f, 0, 4, 0xf0, 0x28, 0, 0, 0,
-/* Spgr */ 1, 0, 9, 0xf0, 0x10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-/* Sp */ 2, 0, 0xa, 0xf0, 8, 0, 0, 0, 0, 4, 0, 0, 5, 0, 0, 0
+ /* SpgrContainer */0x0f, 0, 3, 0xf0, 0, 0, 0, 0, /* fill in length */
+ /* SpContainer */ 0x0f, 0, 4, 0xf0, 0x28, 0, 0, 0,
+ /* Spgr */ 1, 0, 9, 0xf0, 0x10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ /* Sp */ 2, 0, 0xa, 0xf0, 8, 0, 0, 0, 0, 4, 0, 0, 5, 0, 0, 0
};
guint8 buf [sizeof header_obj_v8];
unsigned last_id, num_filters = 0;
@@ -5318,17 +5308,8 @@ excel_write_objs_v8 (ExcelWriteSheet *esheet)
for (ptr = esheet->graphs; ptr != NULL ; ptr = ptr->next)
len += excel_write_chart_v8 (esheet, ptr->data);
- for (ptr = esheet->blips; ptr != NULL ; ptr = ptr->next)
- len += excel_write_image_v8 (esheet, ptr->data);
-
- for (ptr = esheet->textboxes; ptr != NULL ; ptr = ptr->next)
- len += excel_write_textbox_v8 (esheet, ptr->data);
-
- for (ptr = esheet->widgets; ptr != NULL ; ptr = ptr->next)
- len += excel_write_widget_v8 (esheet, ptr->data);
-
- for (ptr = esheet->lines; ptr != NULL ; ptr = ptr->next)
- len += excel_write_line_v8 (esheet, ptr->data);
+ for (ptr = esheet->objects; ptr != NULL ; ptr = ptr->next)
+ len += excel_write_obj_v8 (esheet, ptr->data);
len += excel_write_autofilter_objs (esheet);
@@ -5549,17 +5530,19 @@ excel_sheet_new (ExcelWriteState *ewb, Sheet *sheet,
goto unhandled;
esheet->blips = g_slist_prepend (esheet->blips, bi);
+ esheet->objects =
+ g_slist_prepend (esheet->objects, so);
handled = TRUE;
} else if (IS_CELL_COMMENT (so)) {
esheet->comments = g_slist_prepend (esheet->comments,
so);
- /* Also a textbox. Is that right for v7? */
- esheet->textboxes = g_slist_prepend (esheet->textboxes,
- so);
+ /* Also an object. Is that right for v7? */
+ esheet->objects =
+ g_slist_prepend (esheet->objects, so);
handled = TRUE;
} else if (IS_GNM_SO_FILLED (so)) {
- esheet->textboxes =
- g_slist_prepend (esheet->textboxes, so);
+ esheet->objects =
+ g_slist_prepend (esheet->objects, so);
handled = TRUE;
} else if (GNM_IS_SOW_CHECKBOX (so) ||
GNM_IS_SOW_RADIO_BUTTON (so) ||
@@ -5568,15 +5551,15 @@ excel_sheet_new (ExcelWriteState *ewb, Sheet *sheet,
GNM_IS_SOW_LIST (so) ||
GNM_IS_SOW_BUTTON (so) ||
GNM_IS_SOW_COMBO (so)) {
- esheet->widgets =
- g_slist_prepend (esheet->widgets, so);
+ esheet->objects =
+ g_slist_prepend (esheet->objects, so);
g_hash_table_insert (esheet->widget_macroname,
so,
create_macroname (so));
handled = TRUE;
} else if (IS_GNM_SO_LINE (so)) {
- esheet->lines =
- g_slist_prepend (esheet->lines, so);
+ esheet->objects =
+ g_slist_prepend (esheet->objects, so);
handled = TRUE;
} else if (IS_GNM_FILTER_COMBO (so)) {
/* Handled outside loop. */
@@ -5619,9 +5602,7 @@ excel_sheet_new (ExcelWriteState *ewb, Sheet *sheet,
static void
excel_sheet_free (ExcelWriteSheet *esheet)
{
- g_slist_free (esheet->textboxes);
- g_slist_free (esheet->widgets);
- g_slist_free (esheet->lines);
+ g_slist_free (esheet->objects);
g_slist_free (esheet->comments);
g_slist_free (esheet->graphs);
g_hash_table_destroy (esheet->commentshash);
@@ -6059,8 +6040,7 @@ excel_write_blips (ExcelWriteState *ewb, guint32 bliplen)
for (i = 0, nblips = 0; i < ewb->esheets->len; i++) {
s = g_ptr_array_index (ewb->esheets, i);
- for (b = s->blips; b != NULL; b = b->next)
- nblips++;
+ nblips += g_slist_length (s->blips);
}
memcpy (buf, header_obj_v8, sizeof header_obj_v8);
@@ -6478,12 +6458,7 @@ excel_write_state_new (GOIOContext *context, WorkbookView const *wb_view,
for (ptr = esheet->graphs ; ptr != NULL ; ptr = ptr->next)
extract_gog_object_style (&ewb->base,
(GogObject *)sheet_object_graph_get_gog (ptr->data));
- for (ptr = esheet->textboxes ; ptr != NULL ; ptr = ptr->next) {
- SheetObject *so = ptr->data;
- extract_txomarkup (ewb, so);
- }
-
- for (ptr = esheet->widgets ; ptr != NULL ; ptr = ptr->next) {
+ for (ptr = esheet->objects ; ptr != NULL ; ptr = ptr->next) {
SheetObject *so = ptr->data;
GParamSpec *pspec = g_object_class_find_property
(G_OBJECT_GET_CLASS (so), "text");
diff --git a/plugins/excel/ms-excel-write.h b/plugins/excel/ms-excel-write.h
index ae5dd08..7627674 100644
--- a/plugins/excel/ms-excel-write.h
+++ b/plugins/excel/ms-excel-write.h
@@ -49,7 +49,7 @@ typedef struct {
guint16 *col_xf;
GnmStyle **col_style;
GnmStyleList *conditions, *hlinks, *validations;
- GSList *blips, *textboxes, *widgets, *lines, *graphs, *comments;
+ GSList *blips, *objects, *graphs, *comments;
GHashTable *commentshash;
GHashTable *widget_macroname;
unsigned cur_obj, num_objs;
diff --git a/src/sheet-object-widget.c b/src/sheet-object-widget.c
index 7418eb9..e6053fa 100644
--- a/src/sheet-object-widget.c
+++ b/src/sheet-object-widget.c
@@ -177,11 +177,8 @@ static GSF_CLASS (SOWidgetView, so_widget_view,
#define SHEET_OBJECT_CONFIG_KEY "sheet-object-config-dialog"
-#define SHEET_OBJECT_WIDGET_TYPE (sheet_object_widget_get_type ())
-#define SHEET_OBJECT_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SHEET_OBJECT_WIDGET_TYPE, SheetObjectWidget))
-#define SHEET_OBJECT_WIDGET_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), SHEET_OBJECT_WIDGET_TYPE, SheetObjectWidgetClass))
-#define IS_SHEET_WIDGET_OBJECT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SHEET_OBJECT_WIDGET_TYPE))
-#define SOW_CLASS(so) (SHEET_OBJECT_WIDGET_CLASS (G_OBJECT_GET_CLASS(so)))
+#define GNM_SOW_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), GNM_SOW_TYPE, SheetObjectWidgetClass))
+#define SOW_CLASS(so) (GNM_SOW_CLASS (G_OBJECT_GET_CLASS(so)))
#define SOW_MAKE_TYPE(n1, n2, fn_config, fn_set_sheet, fn_clear_sheet, fn_foreach_dep, \
fn_copy, fn_write_sax, fn_prep_sax_parser, \
@@ -191,7 +188,7 @@ static GSF_CLASS (SOWidgetView, so_widget_view,
static void \
sheet_widget_ ## n1 ## _class_init (GObjectClass *object_class) \
{ \
- SheetObjectWidgetClass *sow_class = SHEET_OBJECT_WIDGET_CLASS (object_class); \
+ SheetObjectWidgetClass *sow_class = GNM_SOW_CLASS (object_class); \
SheetObjectClass *so_class = SHEET_OBJECT_CLASS (object_class); \
object_class->finalize = &sheet_widget_ ## n1 ## _finalize; \
object_class->set_property = fn_set_property; \
@@ -211,7 +208,7 @@ sheet_widget_ ## n1 ## _class_init (GObjectClass *object_class) \
GSF_CLASS (SheetWidget ## n2, sheet_widget_ ## n1, \
&sheet_widget_ ## n1 ## _class_init, \
&sheet_widget_ ## n1 ## _init, \
- SHEET_OBJECT_WIDGET_TYPE)
+ GNM_SOW_TYPE)
typedef struct {
SheetObject so;
@@ -224,14 +221,12 @@ typedef struct {
static GObjectClass *sheet_object_widget_class = NULL;
-static GType sheet_object_widget_get_type (void);
-
static void
sheet_widget_draw_cairo (SheetObject const *so, cairo_t *cr,
double width, double height)
{
GtkWidget *win = gtk_offscreen_window_new ();
- GtkWidget *w = SOW_CLASS(so)->create_widget (SHEET_OBJECT_WIDGET (so));
+ GtkWidget *w = SOW_CLASS(so)->create_widget (GNM_SOW (so));
gtk_container_add (GTK_CONTAINER (win), w);
gtk_widget_set_size_request (w, width, height);
@@ -284,7 +279,7 @@ static SheetObjectView *
sheet_object_widget_new_view (SheetObject *so, SheetObjectViewContainer *container)
{
GtkWidget *view_widget =
- SOW_CLASS(so)->create_widget (SHEET_OBJECT_WIDGET (so));
+ SOW_CLASS(so)->create_widget (GNM_SOW (so));
GocItem *view_item = goc_item_new (
gnm_pane_object_group (GNM_PANE (container)),
so_widget_view_get_type (),
@@ -304,7 +299,7 @@ static void
sheet_object_widget_class_init (GObjectClass *object_class)
{
SheetObjectClass *so_class = SHEET_OBJECT_CLASS (object_class);
- SheetObjectWidgetClass *sow_class = SHEET_OBJECT_WIDGET_CLASS (object_class);
+ SheetObjectWidgetClass *sow_class = GNM_SOW_CLASS (object_class);
sheet_object_widget_class = G_OBJECT_CLASS (object_class);
@@ -323,10 +318,10 @@ sheet_object_widget_init (SheetObjectWidget *sow)
so->flags |= SHEET_OBJECT_CAN_PRESS;
}
-static GSF_CLASS (SheetObjectWidget, sheet_object_widget,
- sheet_object_widget_class_init,
- sheet_object_widget_init,
- SHEET_OBJECT_TYPE)
+GSF_CLASS (SheetObjectWidget, sheet_object_widget,
+ sheet_object_widget_class_init,
+ sheet_object_widget_init,
+ SHEET_OBJECT_TYPE)
static WorkbookControl *
widget_wbc (GtkWidget *widget)
@@ -1213,7 +1208,7 @@ sheet_widget_adjustment_set_horizontal (SheetWidgetAdjustment *swa,
SheetObjectView *view = ptr->data;
GocWidget *item = get_goc_widget (view);
GtkWidget *neww =
- SOW_CLASS (swa)->create_widget (SHEET_OBJECT_WIDGET (swa));
+ SOW_CLASS (swa)->create_widget (GNM_SOW (swa));
gtk_widget_show (neww);
goc_item_set (GOC_ITEM (item), "widget", neww, NULL);
}
diff --git a/src/sheet-object-widget.h b/src/sheet-object-widget.h
index 8f7343f..b785f76 100644
--- a/src/sheet-object-widget.h
+++ b/src/sheet-object-widget.h
@@ -11,47 +11,53 @@ G_BEGIN_DECLS
void sheet_object_widget_register (void);
+GType sheet_object_widget_get_type (void);
+#define GNM_SOW_TYPE (sheet_object_widget_get_type ())
+#define GNM_SOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GNM_SOW_TYPE, SheetObjectWidget))
+#define GNM_IS_SOW(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_TYPE))
+
+
GType sheet_widget_frame_get_type (void); /* convert to non-widget */
-#define GNM_SOW_FRAME (sheet_widget_frame_get_type ())
-#define GNM_IS_SOW_FRAME(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_FRAME))
+#define GNM_SOW_FRAME_TYPE (sheet_widget_frame_get_type ())
+#define GNM_IS_SOW_FRAME(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_FRAME_TYPE))
GType sheet_widget_button_get_type (void);
-#define GNM_SOW_BUTTON (sheet_widget_button_get_type ())
-#define GNM_IS_SOW_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_BUTTON))
+#define GNM_SOW_BUTTON_TYPE (sheet_widget_button_get_type ())
+#define GNM_IS_SOW_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_BUTTON_TYPE))
GType sheet_widget_checkbox_get_type (void);
-#define GNM_SOW_CHECKBOX (sheet_widget_checkbox_get_type ())
-#define GNM_IS_SOW_CHECKBOX(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_CHECKBOX))
+#define GNM_SOW_CHECKBOX_TYPE (sheet_widget_checkbox_get_type ())
+#define GNM_IS_SOW_CHECKBOX(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_CHECKBOX_TYPE))
GType sheet_widget_toggle_button_get_type(void);
-#define GNM_SOW_TOGGLE_BUTTON (sheet_widget_toggle_button_get_type ())
-#define GNM_IS_SOW_TOGGLE_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_TOGGLE_BUTTON))
+#define GNM_SOW_TOGGLE_BUTTON_TYPE (sheet_widget_toggle_button_get_type ())
+#define GNM_IS_SOW_TOGGLE_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_TOGGLE_BUTTON_TYPE))
GType sheet_widget_radio_button_get_type (void);
-#define GNM_SOW_RADIO_BUTTON (sheet_widget_radio_button_get_type ())
-#define GNM_IS_SOW_RADIO_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_RADIO_BUTTON))
+#define GNM_SOW_RADIO_BUTTON_TYPE (sheet_widget_radio_button_get_type ())
+#define GNM_IS_SOW_RADIO_BUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_RADIO_BUTTON_TYPE))
/*Descendents of the list_base sheet widget object*/
GType sheet_widget_list_get_type (void);
-#define GNM_SOW_LIST (sheet_widget_list_get_type ())
-#define GNM_IS_SOW_LIST(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_LIST))
+#define GNM_SOW_LIST_TYPE (sheet_widget_list_get_type ())
+#define GNM_IS_SOW_LIST(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_LIST_TYPE))
GType sheet_widget_combo_get_type (void);
-#define GNM_SOW_COMBO (sheet_widget_combo_get_type ())
-#define GNM_IS_SOW_COMBO(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_COMBO))
+#define GNM_SOW_COMBO_TYPE (sheet_widget_combo_get_type ())
+#define GNM_IS_SOW_COMBO(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_COMBO_TYPE))
/*Descendents of the adjustment sheet widget object*/
GType sheet_widget_scrollbar_get_type (void);
-#define GNM_SOW_SCROLLBAR (sheet_widget_scrollbar_get_type ())
-#define GNM_IS_SOW_SCROLLBAR(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SCROLLBAR))
+#define GNM_SOW_SCROLLBAR_TYPE (sheet_widget_scrollbar_get_type ())
+#define GNM_IS_SOW_SCROLLBAR(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SCROLLBAR_TYPE))
GType sheet_widget_slider_get_type (void);
-#define GNM_SOW_SLIDER (sheet_widget_slider_get_type ())
-#define GNM_IS_SOW_SLIDER(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SLIDER))
+#define GNM_SOW_SLIDER_TYPE (sheet_widget_slider_get_type ())
+#define GNM_IS_SOW_SLIDER(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SLIDER_TYPE))
GType sheet_widget_spinbutton_get_type (void);
-#define GNM_SOW_SPINBUTTON (sheet_widget_spinbutton_get_type ())
-#define GNM_IS_SOW_SPINBUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SPINBUTTON))
+#define GNM_SOW_SPIN_BUTTON_TYPE (sheet_widget_spinbutton_get_type ())
+#define GNM_IS_SOW_SPINBUTTON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GNM_SOW_SPIN_BUTTON_TYPE))
/* ------------------------------------------------------------------------ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]