Update Spanish translation
[gnumeric.git] / src / workbook-control.h
blob3add0c6819c8f8a6ae5569e0b737b5fb30fb04ad
1 #ifndef _GNM_WORKBOOK_CONTROL_H_
2 # define _GNM_WORKBOOK_CONTROL_H_
4 #include <gnumeric.h>
5 #include <validation.h>
6 #include <glib-object.h>
8 G_BEGIN_DECLS
10 #define GNM_WBC_TYPE (workbook_control_get_type ())
11 #define GNM_WBC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GNM_WBC_TYPE, WorkbookControl))
12 #define GNM_IS_WBC(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNM_WBC_TYPE))
14 GType workbook_control_get_type (void);
15 void wb_control_set_view (WorkbookControl *wbc,
16 WorkbookView *optional_view,
17 Workbook *optional_wb);
18 void wb_control_init_state (WorkbookControl *wbc);
20 /* Create a new control of the same form */
21 WorkbookControl *workbook_control_new_wrapper (WorkbookControl *wbc,
22 WorkbookView *wbv, Workbook *wb,
23 void *extra);
25 void wb_control_style_feedback (WorkbookControl *wbc, GnmStyle const *changes);
26 void wb_control_edit_line_set (WorkbookControl *wbc, char const *text);
27 void wb_control_selection_descr_set (WorkbookControl *wbc, char const *text);
29 void wb_control_sheet_add (WorkbookControl *wbc, SheetView *sv);
30 void wb_control_sheet_remove (WorkbookControl *wbc, Sheet *sheet);
31 void wb_control_sheet_focus (WorkbookControl *wbc, Sheet *sheet);
32 void wb_control_sheet_remove_all (WorkbookControl *wbc);
34 void wb_control_undo_redo_truncate (WorkbookControl *wbc, int n, gboolean is_undo);
35 void wb_control_undo_redo_pop (WorkbookControl *wbc, gboolean is_undo);
36 void wb_control_undo_redo_push (WorkbookControl *wbc, gboolean is_undo,
37 char const *text, gpointer key);
38 void wb_control_undo_redo_labels (WorkbookControl *wbc,
39 char const *undo, char const *redo);
40 int wb_control_validation_msg (WorkbookControl *wbc, ValidationStyle v,
41 char const *title, char const *msg);
43 /* Menu state update flags, use them to specify which menu items to update */
44 enum {
45 MS_INSERT_COLS = 1 << 0,
46 MS_INSERT_ROWS = 1 << 1,
47 MS_INSERT_CELLS = 1 << 2,
48 MS_SHOWHIDE_DETAIL = 1 << 3,
49 MS_PASTE_SPECIAL = 1 << 4,
50 MS_PRINT_SETUP = 1 << 5,
51 MS_SEARCH_REPLACE = 1 << 6,
52 MS_DEFINE_NAME = 1 << 7,
53 MS_CONSOLIDATE = 1 << 8,
54 MS_FREEZE_VS_THAW = 1 << 9,
55 MS_ADD_VS_REMOVE_FILTER = 1 << 10,
56 MS_SHOW_PRINTAREA = 1 << 11,
57 MS_PAGE_BREAKS = 1 << 12,
58 MS_SELECT_OBJECT = 1 << 13,
59 MS_FILTER_STATE_CHANGED = 1 << 14,
60 MS_COMMENT_LINKS_RANGE = 1 << 15,
61 MS_COMMENT_LINKS = 1 << 16,
62 MS_FILE_EXPORT_IMPORT = 1 << 17
65 #define MS_ALL \
66 (MS_INSERT_COLS | MS_INSERT_ROWS | MS_INSERT_CELLS | \
67 MS_SHOWHIDE_DETAIL | MS_PASTE_SPECIAL | \
68 MS_PRINT_SETUP | MS_SEARCH_REPLACE | MS_DEFINE_NAME | MS_CONSOLIDATE | \
69 MS_FREEZE_VS_THAW | MS_ADD_VS_REMOVE_FILTER | MS_SHOW_PRINTAREA | \
70 MS_PAGE_BREAKS | MS_SELECT_OBJECT | MS_FILTER_STATE_CHANGED | MS_FILE_EXPORT_IMPORT)
71 #define MS_GURU_MENU_ITEMS \
72 (MS_PRINT_SETUP | MS_SEARCH_REPLACE | MS_DEFINE_NAME | MS_CONSOLIDATE)
74 void wb_control_menu_state_update (WorkbookControl *wbc, int flags);
75 void wb_control_update_action_sensitivity (WorkbookControl *wbc);
77 void wb_control_paste_from_selection (WorkbookControl *wbc,
78 GnmPasteTarget const *pt);
79 gboolean wb_control_claim_selection (WorkbookControl *wbc);
81 WorkbookView *wb_control_view (WorkbookControl const *wbc);
82 Workbook *wb_control_get_workbook (WorkbookControl const *wbc);
83 GODoc *wb_control_get_doc (WorkbookControl const *wbc);
84 Sheet *wb_control_cur_sheet (WorkbookControl const *wbc);
85 SheetView *wb_control_cur_sheet_view (WorkbookControl const *wbc);
87 gboolean wb_control_parse_and_jump (WorkbookControl *wbc, char const *text);
88 gboolean wb_control_jump (WorkbookControl *wbc, Sheet *sheet, const GnmRangeRef *r);
90 typedef enum {
91 navigator_top,
92 navigator_bottom,
93 navigator_last,
94 navigator_first
95 } wb_control_navigator_t;
97 void wb_control_navigate_to_cell (WorkbookControl *wbc, wb_control_navigator_t to);
100 G_END_DECLS
102 #endif /* _GNM_WORKBOOK_CONTROL_H_ */