[glom] Print Layout: Related Records: Do not show editing formatting options.
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glom] Print Layout: Related Records: Do not show editing formatting options.
- Date: Tue, 20 Sep 2011 09:48:01 +0000 (UTC)
commit da4706f186b5cfa0e89fbb1fc8e52f48c944a8b0
Author: Murray Cumming <murrayc murrayc com>
Date: Tue Sep 20 11:47:53 2011 +0200
Print Layout: Related Records: Do not show editing formatting options.
* glom/mode_design/layout/dialog_layout.[h|cc]: Add m_editable_layout,
defaulting to true.
* glom/mode_design/layout/dialog_layout_details.cc: on_button_formatting():
Use m_editable_layout to avoid showing some formatting options.
* glom/mode_design/layout/dialog_layout_list_related.cc: set_document():
Set m_editable_layout to false for print layout.
ChangeLog | 11 +++++++++++
glom/mode_design/layout/dialog_layout.cc | 1 +
glom/mode_design/layout/dialog_layout.h | 4 ++++
glom/mode_design/layout/dialog_layout_details.cc | 2 +-
.../layout/dialog_layout_list_related.cc | 7 +++++--
glom/print_layout/canvas_print_layout.cc | 2 +-
6 files changed, 23 insertions(+), 4 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 0a0aafc..b1ce121 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2011-09-20 Murray Cumming <murrayc murrayc com>
+
+ Print Layout: Related Records: Do not show editing formatting options.
+
+ * glom/mode_design/layout/dialog_layout.[h|cc]: Add m_editable_layout,
+ defaulting to true.
+ * glom/mode_design/layout/dialog_layout_details.cc: on_button_formatting():
+ Use m_editable_layout to avoid showing some formatting options.
+ * glom/mode_design/layout/dialog_layout_list_related.cc: set_document():
+ Set m_editable_layout to false for print layout.
+
2011-09-19 Murray Cumming <murrayc murrayc com>
Print Layout: Use the correct numeric formatting.
diff --git a/glom/mode_design/layout/dialog_layout.cc b/glom/mode_design/layout/dialog_layout.cc
index 1479b2c..4620b80 100644
--- a/glom/mode_design/layout/dialog_layout.cc
+++ b/glom/mode_design/layout/dialog_layout.cc
@@ -29,6 +29,7 @@ Dialog_Layout::Dialog_Layout(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Bu
: Gtk::Dialog(cobject),
m_entry_table_title(0),
m_label_table_title(0),
+ m_editable_layout(true),
m_modified(false)
{
Gtk::Button* button = 0;
diff --git a/glom/mode_design/layout/dialog_layout.h b/glom/mode_design/layout/dialog_layout.h
index 0cb538d..2e5bcd9 100644
--- a/glom/mode_design/layout/dialog_layout.h
+++ b/glom/mode_design/layout/dialog_layout.h
@@ -72,6 +72,10 @@ protected:
Glib::ustring m_table_name;
Glib::ustring m_layout_name, m_layout_platform; //As in the document.
+ //Whether the layout is for a view that allows editing.
+ //If so, various editing options will be available in the formatting.
+ bool m_editable_layout;
+
bool m_modified;
};
diff --git a/glom/mode_design/layout/dialog_layout_details.cc b/glom/mode_design/layout/dialog_layout_details.cc
index e608b9d..6c81370 100644
--- a/glom/mode_design/layout/dialog_layout_details.cc
+++ b/glom/mode_design/layout/dialog_layout_details.cc
@@ -895,7 +895,7 @@ void Dialog_Layout_Details::on_button_formatting()
if(field)
{
//Handle field formatting, which includes more than the generic formatting stuff:
- sharedptr<LayoutItem_Field> chosenitem = offer_field_formatting(field, get_fields_table(), this);
+ sharedptr<LayoutItem_Field> chosenitem = offer_field_formatting(field, get_fields_table(), this, m_editable_layout);
if(chosenitem)
{
*field = *chosenitem; //TODO_Performance.
diff --git a/glom/mode_design/layout/dialog_layout_list_related.cc b/glom/mode_design/layout/dialog_layout_list_related.cc
index f68ae3e..cea7ccf 100644
--- a/glom/mode_design/layout/dialog_layout_list_related.cc
+++ b/glom/mode_design/layout/dialog_layout_list_related.cc
@@ -48,7 +48,7 @@ Dialog_Layout_List_Related::Dialog_Layout_List_Related(BaseObjectType* cobject,
m_spinbutton_row_line_width(0),
m_spinbutton_column_line_width(0),
m_colorbutton_line(0)
-{
+{
// Show the appropriate alternate widgets:
m_box_table_widgets->hide();
m_box_related_table_widgets->show();
@@ -146,8 +146,11 @@ void Dialog_Layout_List_Related::set_document(const Glib::ustring& layout_name,
Gdk::Color color( portal->get_print_layout_line_color() );
m_colorbutton_line->set_color(color);
+
+ //Avoid showing formatting options that are about editing:
+ m_editable_layout = false;
}
-
+
update_ui();
}
diff --git a/glom/print_layout/canvas_print_layout.cc b/glom/print_layout/canvas_print_layout.cc
index dc23405..8ddcf02 100644
--- a/glom/print_layout/canvas_print_layout.cc
+++ b/glom/print_layout/canvas_print_layout.cc
@@ -480,7 +480,7 @@ void Canvas_PrintLayout::on_context_menu_formatting()
m_dialog_format->signal_hide().connect( sigc::mem_fun(*this, &Canvas_PrintLayout::on_dialog_format_hide) );
//We need an if here, because they have no common base class.
- //TODO: Maybe they should.
+ //TODO: Maybe they should. TODO: Maybe they already do.
if(layout_item_field)
{
const FieldFormatting& formatting = layout_item_field->m_formatting;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]