[glom/feature_choices_related_layout] In progress
- From: Murray Cumming <murrayc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glom/feature_choices_related_layout] In progress
- Date: Tue, 7 Sep 2010 11:19:25 +0000 (UTC)
commit 788dfe840af70eaeb2343fd7214a0624a6a758ff
Author: Murray Cumming <murrayc murrayc com>
Date: Tue Sep 7 13:19:12 2010 +0200
In progress
glom/libglom/utils.cc | 8 ++++++++
glom/libglom/utils.h | 4 ++++
.../layout/layout_item_dialogs/box_formatting.cc | 8 +++++---
.../layout_item_dialogs/dialog_fieldslist.cc | 1 +
.../layout/layout_item_dialogs/dialog_group_by.cc | 2 +-
5 files changed, 19 insertions(+), 4 deletions(-)
---
diff --git a/glom/libglom/utils.cc b/glom/libglom/utils.cc
index 8fb125c..2691fa0 100644
--- a/glom/libglom/utils.cc
+++ b/glom/libglom/utils.cc
@@ -1157,4 +1157,12 @@ Glib::ustring Utils::get_list_of_layout_items_for_display(const LayoutGroup::typ
return result;
}
+Glib::ustring Utils::get_list_of_layout_items_for_display(const sharedptr<const LayoutGroup>& layout_group)
+{
+ if(layout_group)
+ return get_list_of_layout_items_for_display(layout_group->m_list_items);
+ else
+ return Glib::ustring();
+}
+
} //namespace Glom
diff --git a/glom/libglom/utils.h b/glom/libglom/utils.h
index e50e350..4415e08 100644
--- a/glom/libglom/utils.h
+++ b/glom/libglom/utils.h
@@ -181,6 +181,10 @@ Glib::ustring get_directory_child_with_suffix(const Glib::ustring& uri_directory
*/
Glib::ustring get_list_of_layout_items_for_display(const LayoutGroup::type_list_items& list_layout_fields);
+/** Get a string to display to the user, as a representation of a list of layout items.
+ */
+Glib::ustring get_list_of_layout_items_for_display(const sharedptr<const LayoutGroup>& layout_group);
+
} //namespace Utils
} //namespace Glom
diff --git a/glom/mode_design/layout/layout_item_dialogs/box_formatting.cc b/glom/mode_design/layout/layout_item_dialogs/box_formatting.cc
index 174f91a..a85ca73 100644
--- a/glom/mode_design/layout/layout_item_dialogs/box_formatting.cc
+++ b/glom/mode_design/layout/layout_item_dialogs/box_formatting.cc
@@ -275,14 +275,16 @@ void Box_Formatting::set_formatting(const FieldFormatting& format, bool show_num
//Show the list of fields in a label:
const Glib::ustring text_extra_fields =
- Utils::get_list_of_layout_items_for_display(choices_field_extras->m_list_items);
+ Utils::get_list_of_layout_items_for_display(choices_field_extras);
m_label_choices_extra_fields->set_text(text_extra_fields);
//Update the contents of the dialog that will be shown if Edit is clicked:
+ const Glib::ustring related_to_table =
+ (choices_relationship ? choices_relationship->get_to_table() : Glib::ustring());
if(choices_field_extras)
- m_dialog_choices_extra_fields->set_fields(m_table_name, choices_field_extras->m_list_items);
+ m_dialog_choices_extra_fields->set_fields(related_to_table, choices_field_extras->m_list_items);
else
- m_dialog_choices_extra_fields->set_fields(m_table_name, LayoutGroup::type_list_items());
+ m_dialog_choices_extra_fields->set_fields(related_to_table, LayoutGroup::type_list_items());
diff --git a/glom/mode_design/layout/layout_item_dialogs/dialog_fieldslist.cc b/glom/mode_design/layout/layout_item_dialogs/dialog_fieldslist.cc
index 17c4f39..ca146e7 100644
--- a/glom/mode_design/layout/layout_item_dialogs/dialog_fieldslist.cc
+++ b/glom/mode_design/layout/layout_item_dialogs/dialog_fieldslist.cc
@@ -218,6 +218,7 @@ void Dialog_FieldsList::on_treeview_fields_selection_changed()
void Dialog_FieldsList::on_button_add_field()
{
+ std::cout << "debug: " << m_table_name << std::endl;
//Get the chosen fields:
type_list_field_items fields_list = offer_field_list(m_table_name, this);
for(type_list_field_items::iterator iter_chosen = fields_list.begin(); iter_chosen != fields_list.end(); ++iter_chosen)
diff --git a/glom/mode_design/layout/layout_item_dialogs/dialog_group_by.cc b/glom/mode_design/layout/layout_item_dialogs/dialog_group_by.cc
index dce12be..147b550 100644
--- a/glom/mode_design/layout/layout_item_dialogs/dialog_group_by.cc
+++ b/glom/mode_design/layout/layout_item_dialogs/dialog_group_by.cc
@@ -210,7 +210,7 @@ void Dialog_GroupBy::update_labels()
//Secondary Fields:
const Glib::ustring text_secondary_fields =
- Utils::get_list_of_layout_items_for_display(m_layout_item->m_group_secondary_fields->m_list_items);
+ Utils::get_list_of_layout_items_for_display(m_layout_item->m_group_secondary_fields);
m_label_secondary_fields->set_text(text_secondary_fields);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]