[gnumeric] disable/enable printarea menu items as needed
- From: Andreas J. Guelzow <guelzow src gnome org>
- To: svn-commits-list gnome org
- Subject: [gnumeric] disable/enable printarea menu items as needed
- Date: Wed, 17 Jun 2009 10:23:57 -0400 (EDT)
commit 082f4eea0fd9d5bd9361abe998027efb65c034f9
Author: Andreas J. Guelzow <aguelzow pyrshep ca>
Date: Wed Jun 17 08:23:13 2009 -0600
disable/enable printarea menu items as needed
2009-06-17 Andreas J. Guelzow <aguelzow pyrshep ca>
* src/commands.c (cmd_define_name_undo): we have to update the
printarea menu items
(cmd_define_name_redo): ditto
* src/wbc-gtk.c (wbcg_menu_state_update): update the printarea menu
items
* src/workbook-control.h: add enum for printarea menu item update
2009-06-17 Andreas J. Guelzow <aguelzow pyrshep ca>
* xlsx-write.c (xlsx_write_breaks): Quiet enum handling
ChangeLog | 9 +++++++++
plugins/excel/ChangeLog | 4 ++++
plugins/excel/xlsx-write.c | 1 +
src/commands.c | 9 ++++++++-
src/wbc-gtk.c | 8 ++++++++
src/workbook-control.h | 5 +++--
6 files changed, 33 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index b4477d5..acab870 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2009-06-17 Andreas J. Guelzow <aguelzow pyrshep ca>
+
+ * src/commands.c (cmd_define_name_undo): we have to update the
+ printarea menu items
+ (cmd_define_name_redo): ditto
+ * src/wbc-gtk.c (wbcg_menu_state_update): update the printarea menu
+ items
+ * src/workbook-control.h: add enum for printarea menu item update
+
2009-06-16 Andreas J. Guelzow <aguelzow pyrshep ca>
* src/gnm-so-filled.c (gnm_so_filled_write_xml_sax): be rather safe
diff --git a/plugins/excel/ChangeLog b/plugins/excel/ChangeLog
index fc48748..a5c726c 100644
--- a/plugins/excel/ChangeLog
+++ b/plugins/excel/ChangeLog
@@ -1,3 +1,7 @@
+2009-06-17 Andreas J. Guelzow <aguelzow pyrshep ca>
+
+ * xlsx-write.c (xlsx_write_breaks): Quiet enum handling
+
2009-06-16 Morten Welinder <terra gnome org>
* boot.c: Quiet pivot debugging.
diff --git a/plugins/excel/xlsx-write.c b/plugins/excel/xlsx-write.c
index b59689a..6569676 100644
--- a/plugins/excel/xlsx-write.c
+++ b/plugins/excel/xlsx-write.c
@@ -862,6 +862,7 @@ xlsx_write_breaks (XLSXWriteState *state, GsfXMLOut *xml, GnmPageBreaks *breaks)
switch (binfo->type) {
case GNM_PAGE_BREAK_MANUAL : gsf_xml_out_add_bool (xml, "man", TRUE); break;
case GNM_PAGE_BREAK_AUTO : break;
+ case GNM_PAGE_BREAK_NONE : break;
case GNM_PAGE_BREAK_DATA_SLICE :gsf_xml_out_add_bool (xml, "pt", TRUE); break;
}
gsf_xml_out_end_element (xml); /* </brk> */
diff --git a/src/commands.c b/src/commands.c
index 8183191..d5c11d8 100644
--- a/src/commands.c
+++ b/src/commands.c
@@ -5714,7 +5714,7 @@ MAKE_GNM_COMMAND (CmdDefineName, cmd_define_name, NULL)
static gboolean
cmd_define_name_undo (GnmCommand *cmd,
- G_GNUC_UNUSED WorkbookControl *wbc)
+ WorkbookControl *wbc)
{
CmdDefineName *me = CMD_DEFINE_NAME (cmd);
GnmNamedExpr *nexpr = expr_name_lookup (&(me->pp), me->name);
@@ -5729,6 +5729,10 @@ cmd_define_name_undo (GnmCommand *cmd,
expr_name_set_expr (nexpr, me->texpr); /* restore old def */
me->texpr = texpr;
+
+ WORKBOOK_FOREACH_VIEW (wb_control_get_workbook (wbc), each_wbv, {
+ wb_view_menus_update (each_wbv);
+ });
return FALSE;
}
@@ -5757,6 +5761,9 @@ cmd_define_name_redo (GnmCommand *cmd, WorkbookControl *wbc)
expr_name_set_expr (nexpr, me->texpr);
me->texpr = tmp; /* store the old definition */
}
+ WORKBOOK_FOREACH_VIEW (wb_control_get_workbook (wbc), each_wbv, {
+ wb_view_menus_update (each_wbv);
+ });
return FALSE;
}
diff --git a/src/wbc-gtk.c b/src/wbc-gtk.c
index 3353ea2..ad04105 100644
--- a/src/wbc-gtk.c
+++ b/src/wbc-gtk.c
@@ -1430,6 +1430,7 @@ wbcg_menu_state_update (WorkbookControl *wbc, int flags)
gboolean has_filtered_rows = sheet->has_filtered_rows;
gboolean edit_object = scg != NULL &&
(scg->selected_objects != NULL || wbcg->new_object != NULL);
+ gboolean has_print_area;
if (!has_filtered_rows) {
GSList *ptr = sheet->filters;
@@ -1470,6 +1471,13 @@ wbcg_menu_state_update (WorkbookControl *wbc, int flags)
wbc_gtk_set_action_sensitivity (wbcg, "DataConsolidate", !has_guru);
if (MS_CONSOLIDATE & flags)
wbc_gtk_set_action_sensitivity (wbcg, "DataFilterShowAll", has_filtered_rows);
+ if (MS_SHOW_PRINTAREA & flags) {
+ GnmRange *print_area = sheet_get_nominal_printarea (sheet);
+ has_print_area = (print_area != NULL);
+ g_free (print_area);
+ wbc_gtk_set_action_sensitivity (wbcg, "FilePrintAreaClear", has_print_area);
+ wbc_gtk_set_action_sensitivity (wbcg, "FilePrintAreaShow", has_print_area);
+ }
if (MS_FREEZE_VS_THAW & flags) {
/* Cheat and use the same accelerator for both states because
diff --git a/src/workbook-control.h b/src/workbook-control.h
index 5d3ba45..0de7ad6 100644
--- a/src/workbook-control.h
+++ b/src/workbook-control.h
@@ -53,14 +53,15 @@ enum {
MS_DEFINE_NAME = 1 << 7,
MS_CONSOLIDATE = 1 << 8,
MS_FREEZE_VS_THAW = 1 << 9,
- MS_ADD_VS_REMOVE_FILTER = 1 << 10
+ MS_ADD_VS_REMOVE_FILTER = 1 << 10,
+ MS_SHOW_PRINTAREA = 1 << 11
};
#define MS_ALL \
(MS_INSERT_COLS | MS_INSERT_ROWS | MS_INSERT_CELLS | \
MS_SHOWHIDE_DETAIL | MS_PASTE_SPECIAL | \
MS_PRINT_SETUP | MS_SEARCH_REPLACE | MS_DEFINE_NAME | MS_CONSOLIDATE | \
- MS_FREEZE_VS_THAW | MS_ADD_VS_REMOVE_FILTER)
+ MS_FREEZE_VS_THAW | MS_ADD_VS_REMOVE_FILTER | MS_SHOW_PRINTAREA)
#define MS_GURU_MENU_ITEMS \
(MS_PRINT_SETUP | MS_SEARCH_REPLACE | MS_DEFINE_NAME | MS_CONSOLIDATE)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]