+/**
+ * pspp_sheet_view_get_special_cells:
+ * @tree_view: a #PsppSheetView
+ *
+ * Returns which grid lines are enabled in @tree_view.
+ *
+ * Return value: a #PsppSheetViewSpecialCells value indicating whether rows in
+ * the sheet view contain special cells.
+ */
+PsppSheetViewSpecialCells
+pspp_sheet_view_get_special_cells (PsppSheetView *tree_view)
+{
+ g_return_val_if_fail (PSPP_IS_SHEET_VIEW (tree_view), 0);
+
+ return tree_view->priv->special_cells;
+}
+
+/**
+ * pspp_sheet_view_set_special_cells:
+ * @tree_view: a #PsppSheetView
+ * @special_cells: a #PsppSheetViewSpecialCells value indicating whether rows in
+ * the sheet view contain special cells.
+ *
+ * Sets whether rows in the sheet view contain special cells, controlling the
+ * rendering of row selections.
+ */
+void
+pspp_sheet_view_set_special_cells (PsppSheetView *tree_view,
+ PsppSheetViewSpecialCells special_cells)
+{
+ PsppSheetViewPrivate *priv;
+
+ g_return_if_fail (PSPP_IS_SHEET_VIEW (tree_view));
+
+ priv = tree_view->priv;
+
+ if (priv->special_cells != special_cells)
+ {
+ priv->special_cells = special_cells;
+ gtk_widget_queue_draw (GTK_WIDGET (tree_view));
+ g_object_notify (G_OBJECT (tree_view), "special-cells");
+ }
+}
+
+int
+pspp_sheet_view_get_fixed_height (const PsppSheetView *tree_view)
+{
+ /* XXX (re)calculate fixed_height if necessary */
+ return tree_view->priv->fixed_height;
+}
+
+void
+pspp_sheet_view_set_fixed_height (PsppSheetView *tree_view,
+ int fixed_height)
+{
+ g_return_if_fail (fixed_height > 0);
+
+ if (tree_view->priv->fixed_height != fixed_height)
+ {
+ tree_view->priv->fixed_height = fixed_height;
+ g_object_notify (G_OBJECT (tree_view), "fixed-height");
+ }
+ if (!tree_view->priv->fixed_height_set)
+ {
+ tree_view->priv->fixed_height_set = TRUE;
+ g_object_notify (G_OBJECT (tree_view), "fixed-height-set");
+ }
+}
+