1 #ifndef _GNM_SHEET_CONTROL_H_ 2 # define _GNM_SHEET_CONTROL_H_ 3 4 #include <gnumeric.h> 5 #include <glib-object.h> 6 7 G_BEGIN_DECLS 8 9 #define GNM_SHEET_CONTROL_TYPE (sheet_control_get_type ()) 10 #define GNM_SHEET_CONTROL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GNM_SHEET_CONTROL_TYPE, SheetControl)) 11 #define GNM_IS_SHEET_CONTROL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNM_SHEET_CONTROL_TYPE)) 12 13 /* Lifecycle */ 14 GType sheet_control_get_type (void); 15 SheetView *sc_view (SheetControl const *sc); 16 Sheet *sc_sheet (SheetControl const *sc); 17 WorkbookControl *sc_wbc (SheetControl const *sc); 18 19 /** 20 * NOTE: 21 * The GUI layer accesses the SheetControlGUI methods directly without 22 * calling the virtual. Change this if the base class becomes something 23 * more than a passthrough. 24 */ 25 void sc_resize (SheetControl *sc, gboolean force_scroll); 26 void sc_redraw_all (SheetControl *sc, gboolean headers); 27 void sc_redraw_range (SheetControl *sc, GnmRange const *r); 28 void sc_redraw_headers (SheetControl *sc, 29 gboolean const col, gboolean const row, 30 GnmRange const * r /* optional == NULL */); 31 void sc_ant (SheetControl *sc); 32 void sc_unant (SheetControl *sc); 33 34 void sc_scrollbar_config (SheetControl *sc); 35 36 void sc_mode_edit (SheetControl *sc); 37 38 void sc_set_top_left (SheetControl *sc, int col, int row); 39 void sc_recompute_visible_region(SheetControl *sc, gboolean full_recompute); 40 void sc_make_cell_visible (SheetControl *sc, int col, int row, 41 gboolean couple_panes); 42 43 void sc_cursor_bound (SheetControl *sc, GnmRange const *r); 44 void sc_set_panes (SheetControl *sc); 45 void sc_object_create_view (SheetControl *sc, SheetObject *so); 46 void sc_scale_changed (SheetControl *sc); 47 48 void sc_show_im_tooltip (SheetControl *sc, 49 GnmInputMsg *im, GnmCellPos *pos); 50 51 void sc_freeze_object_view (SheetControl *sc, gboolean freeze); 52 53 G_END_DECLS 54 55 #endif /* _GNM_SHEET_CONTROL_H_ */ 56