[glom] Print Layout: Use the correct numeric formatting.
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glom] Print Layout: Use the correct numeric formatting.
- Date: Mon, 19 Sep 2011 20:37:28 +0000 (UTC)
commit f2bfeccae19f54e1cd4e6fc700ec0250ee1247dc
Author: Murray Cumming <murrayc murrayc com>
Date: Mon Sep 19 22:37:22 2011 +0200
Print Layout: Use the correct numeric formatting.
* glom/print_layout/canvas_print_layout.cc: set_canvas_item_field_value():
For instance, use the default field formatting. Otherwise numbers tend
to have thousands separators and no decimal places by default.
ChangeLog | 16 ++++++++++++----
glom/print_layout/canvas_print_layout.cc | 26 +++++++++++++++++++-------
2 files changed, 31 insertions(+), 11 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 644e147..0a0aafc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,17 @@
-2011-09-19 Murray Cumming <murrayc murrayc-desktop>
+2011-09-19 Murray Cumming <murrayc murrayc com>
- reviewed by: <delete if not using a buddy>
+ Print Layout: Use the correct numeric formatting.
- * glom/utility_widgets/canvas/canvas_image_movable.cc:
- * glom/utility_widgets/imageglom.cc:
+ * glom/print_layout/canvas_print_layout.cc: set_canvas_item_field_value():
+ For instance, use the default field formatting. Otherwise numbers tend
+ to have thousands separators and no decimal places by default.
+
+2011-09-19 Murray Cumming <murrayc murrayc com>
+
+ Images: Avoid a warning when choosing.
+
+ * glom/utility_widgets/imageglom.cc: on_menupopup_activate_select_file():
+ Avoid a warning about reinitializing a GValue when choosing an image file.
2011-09-13 Murray Cumming <murrayc murrayc com>>
diff --git a/glom/print_layout/canvas_print_layout.cc b/glom/print_layout/canvas_print_layout.cc
index ded230b..dc23405 100644
--- a/glom/print_layout/canvas_print_layout.cc
+++ b/glom/print_layout/canvas_print_layout.cc
@@ -799,10 +799,10 @@ void Canvas_PrintLayout::fill_with_data_portal(const Glib::RefPtr<CanvasLayoutIt
//TODO: Add a function to goocanvas for this.
//TODO: Move the child stuff into group in goocanvas.
- LayoutGroup::type_list_items child_layout_items = portal->get_items();
+ const LayoutGroup::type_list_items child_layout_items = portal->get_items();
//Build and run the SQL query for this portal:
- type_vecConstLayoutFields fields_shown = get_portal_fields_to_show(portal);
+ const type_vecConstLayoutFields fields_shown = get_portal_fields_to_show(portal);
FoundSet found_set;
found_set.m_table_name = portal->get_table_used(Glib::ustring() /* parent table_name, not used. */);
@@ -830,7 +830,7 @@ void Canvas_PrintLayout::fill_with_data_portal(const Glib::RefPtr<CanvasLayoutIt
for(int row = 0; row < rows_count; ++row)
{
int db_col = 0;
- LayoutGroup::type_list_items::iterator iter_child_layout_items = child_layout_items.begin();
+ LayoutGroup::type_list_items::const_iterator iter_child_layout_items = child_layout_items.begin();
for(int col = 0; col < cols_count; ++col)
{
//Glib::RefPtr<Goocanvas::Item> canvas_child = base_item->get_cell_child(row, col); //TODO: Add this to Goocanvas::Table.
@@ -885,10 +885,22 @@ void Canvas_PrintLayout::set_canvas_item_field_value(const Glib::RefPtr<Goocanva
return;
}
- //FieldFormatting& formatting = field->m_formatting;
- //apply_formatting(canvas_item, formatting);
- const Glib::ustring text =
- Conversions::get_text_for_gda_value(field->get_glom_type(), value, field->m_formatting.m_numeric_format);
+ Glib::ustring text;
+
+ sharedptr<LayoutItem_WithFormatting> with_formatting =
+ sharedptr<LayoutItem_WithFormatting>::cast_dynamic(field);
+ if(with_formatting)
+ {
+ const FieldFormatting& formatting = with_formatting->get_formatting_used();
+ text = Conversions::get_text_for_gda_value(field->get_glom_type(),
+ value, formatting.m_numeric_format);
+ }
+ else
+ {
+ text = Conversions::get_text_for_gda_value(field->get_glom_type(),
+ value);
+ }
+
canvas_text->set_text(text);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]