1.3.3: 2006-12-10 Murray Cumming * glom/base_db.cc: * glom/base_db.h: * glom/frame_glom.cc: * glom/libglom/utils.cc: * glom/libglom/utils.h: * glom/mode_data/box_data_list_related.cc: * glom/utility_widgets/db_adddel/glom_db_treemodel.cc: For child relationships, add an extra GROUP_BY (on the key of the target table) to ensure that we only get distinct records, with no repeats. 2006-12-10 Murray Cumming * glom/glom.glade: * glom/mode_data/dialog_layout_list_related.cc: Hide the title label and entry. They are too confusing here. 2006-12-10 Murray Cumming * glom/mode_data/dialog_layout_list_related.cc: * glom/mode_data/dialog_layout_list_related.h: * glom/glom.glade: Add a checkbox that allows us to use child (related) relationships, which are then shown in the combobox. * glom/combobox_relationship.cc: * glom/combobox_relationship.h: set_relationships(): Add boolean parameter allowing us to show related relationships without showing the parent table name too. * glom/frame_glom.cc: * glom/libglom/document/document_glom.cc: When saving/loading portals, save/load all levels of relationships, by using the existing utiltity function for saving UsesRelationship objects. * glom/libglom/data_structure/layout/usesrelationship.cc: * glom/libglom/data_structure/layout/usesrelationship.h: Added get_title_used(), get_to_field_used(), get_relationship_name_used(), get_relationship_used_allows_edit(), so we can use this generically, regardless of the level of relationships used by, for instance, a portal or layoutitem_field. * glom/base_db.cc: * glom/base_db.h: Add m_extra_join to FoundSet, for use when viewing records in a related relationship. * glom/mode_data/box_data_list_related.cc: * glom/mode_data/box_data_list_related.h: refresh_data_from_database_with_foreign_key(): When viewing a related relationship, specify an extra SQL join to make that possible, and adjust the WHERE clause too, providing these to the FoundSet object. * glom/libglom/utils.cc: * glom/libglom/utils.h: build_sql_select_with_where_clause(): Add extra_join parameter, specified when doing view of related relationship records. * glom/utility_widgets/db_adddel/glom_db_treemodel.cc: refresh_from_database(): Provide the FoundSet extra_join to build_sql_select_with_where_clause(). * glom/reports/report_builder.cc: * glom/utility_widgets/flowtablewithfields.cc: Use the generic UsesRelationship methods rather than extracting the main relationship and using that specifically, so we can adapt to related realationship portals, and even in future support >2 levels of relationships.