-static void g_sheet_row_base_init (gpointer g_class);
+static void g_sheet_row_base_init (gpointer g_class);
GType
default_button.state = GTK_STATE_NORMAL;
default_button.label = NULL;
default_button.label_visible = TRUE;
- default_button.child = NULL;
default_button.justification = GTK_JUSTIFY_FILL;
initialized = TRUE;
gboolean
-g_sheet_row_get_visibility(const GSheetRow *row_geo,
- glong row)
-{
- g_return_val_if_fail (G_IS_SHEET_ROW (row_geo), FALSE);
-
- g_assert (G_SHEET_ROW_GET_IFACE (row_geo)->get_visibility);
-
- return (G_SHEET_ROW_GET_IFACE (row_geo)->get_visibility) (row_geo,
- row);
-
-}
-
-gboolean
-g_sheet_row_get_sensitivity(const GSheetRow *row_geo,
+g_sheet_row_get_sensitivity (const GSheetRow *row_geo,
glong row)
{
g_return_val_if_fail (G_IS_SHEET_ROW (row_geo), FALSE);
return (G_SHEET_ROW_GET_IFACE (row_geo)->get_sensitivity) (row_geo,
row);
-
}
GtkSheetButton *
-g_sheet_row_get_button(const GSheetRow *row_geo,
+g_sheet_row_get_button (const GSheetRow *row_geo,
glong row)
{
- GtkSheetButton *button = gtk_sheet_button_new();
+ GtkSheetButton *button = gtk_sheet_button_new ();
GSheetRowIface *iface = G_SHEET_ROW_GET_IFACE (row_geo);
g_return_val_if_fail (G_IS_SHEET_ROW (row_geo), FALSE);
if ( iface->get_button_label)
- button->label = iface->get_button_label(row_geo, row);
+ button->label = iface->get_button_label (row_geo, row);
return button;
}
-inline gchar *
+gchar *
g_sheet_row_get_subtitle (const GSheetRow *row_geo, glong row)
{
g_return_val_if_fail (G_IS_SHEET_ROW (row_geo), NULL);
* @sheet: pointer to the sheet
*
* Returns the top y pixel for ROW.
+ * ROW may point to the row BELOW the last row, in which case it should
+ * return the position where it would start if it existed.
* Instances may override this method in order to achieve time and/or memory
* optmisation.
*
*/
gint
-g_sheet_row_start_pixel(const GSheetRow *geo, glong row)
+g_sheet_row_start_pixel (const GSheetRow *geo, glong row)
{
gint i;
gint start_pixel = 0;
g_return_val_if_fail (G_IS_SHEET_ROW (geo), -1);
g_return_val_if_fail (row >= 0, -1);
- g_return_val_if_fail (row <
- g_sheet_row_get_row_count(geo),-1);
+ g_return_val_if_fail (row <= g_sheet_row_get_row_count (geo), -1);
- if ( G_SHEET_ROW_GET_IFACE(geo)->top_ypixel)
- return (G_SHEET_ROW_GET_IFACE(geo)->top_ypixel)(geo, row);
+ if ( G_SHEET_ROW_GET_IFACE (geo)->top_ypixel)
+ return (G_SHEET_ROW_GET_IFACE (geo)->top_ypixel)(geo, row);
- for ( i = 0 ; i < row ; ++i )
+ for (i = 0; i < row; ++i)
{
- if ( g_sheet_row_get_visibility(geo, i))
- start_pixel += g_sheet_row_get_height(geo, i);
+ start_pixel += g_sheet_row_get_height (geo, i);
}
return start_pixel;
g_return_val_if_fail (G_IS_SHEET_ROW (geo), -1);
g_return_val_if_fail (pixel >= 0, -1) ;
- if ( G_SHEET_ROW_GET_IFACE(geo)->pixel_to_row)
- return (G_SHEET_ROW_GET_IFACE(geo)->pixel_to_row)(geo, pixel);
+ if ( G_SHEET_ROW_GET_IFACE (geo)->pixel_to_row)
+ return (G_SHEET_ROW_GET_IFACE (geo)->pixel_to_row)(geo, pixel);
cy = 0;
for (i = 0; i < g_sheet_row_get_row_count (geo); ++i )
{
if (pixel >= cy &&
- pixel <= (cy + g_sheet_row_get_height (geo, i)) &&
- g_sheet_row_get_visibility (geo, i))
+ pixel <= (cy + g_sheet_row_get_height (geo, i)))
return i;
- if(g_sheet_row_get_visibility (geo, i))
- cy += g_sheet_row_get_height (geo, i);
+ cy += g_sheet_row_get_height (geo, i);
}
/* no match */