+/* Move to row 0 keeping the current column */
+static void
+row0 (PsppireSheet *sheet)
+{
+ gtk_adjustment_set_value (sheet->vadjustment,
+ sheet->vadjustment->lower);
+
+ change_active_cell (sheet, 0, sheet->active_cell.col);
+}
+
+/* Move to column 0 keeping the current row */
+static void
+col0 (PsppireSheet *sheet)
+{
+ gtk_adjustment_set_value (sheet->hadjustment,
+ sheet->hadjustment->lower);
+
+ change_active_cell (sheet, sheet->active_cell.row, 0);
+}
+
+/* Move to last column keeping the current row */
+static void
+col_last (PsppireSheet *sheet)
+{
+ glong last_col = psppire_axis_unit_count (sheet->haxis) - 1;
+
+ gtk_adjustment_set_value (sheet->hadjustment,
+ sheet->hadjustment->upper - sheet->hadjustment->page_size);
+
+ change_active_cell (sheet, sheet->active_cell.row,
+ last_col);
+}
+
+
+/* Move to last row keeping the current column */
+static void
+row_last (PsppireSheet *sheet)
+{
+ glong last_row = psppire_axis_unit_count (sheet->vaxis) - 1;
+
+ gtk_adjustment_set_value (sheet->vadjustment,
+ sheet->vadjustment->upper- sheet->vadjustment->page_size);
+
+ change_active_cell (sheet,
+ last_row,
+ sheet->active_cell.col);
+}
+
+
+