1.1.4: 2006-10-05 Murray Cumming * glom/libglom/sharedptr.h: cast_*(): Make the new sharedptr share the refcount with the original, avoiding early deletions of the object that they share. That was stupid of me. * glom/libglom/test_sharedptr_layoutitem.cc: More testing. 2006-10-05 Murray Cumming * glom/libglom/Makefile.am: * glom/libglom/test_sharedptr_layoutitem.cc: Added test. 2006-10-05 Murray Cumming * glom/libglom/document/document_glom.cc: add_column(): Do an extra, probably unnecessary, check for a null field before dereferencing it. construct_specified_columns(): Do not clone the field - just use it. * glom/utility_widgets/db_adddel/db_adddel.cc: get_data_layout_groups_plus_new_fields(): When building a default layout, because no layout is defined, store that layout in the document (saving it to disk when in developer mode). This fixes a dereference of a deleted field, though that should not be necessary so I suspect a fundamental sharedptr problem. But luckily, this is the correct thing to do anyway, for efficiency, and so that layout data is preserved. 2006-10-03 Murray Cumming * glom/base_db.cc: * glom/base_db.h: get_table_fields_to_show_for_sequence_add_group(), Do not clone the layout items - just supply the originals, so that we can store some data in them and have that data preserved for next time. This should also be more efficient because it does less object copying and therefore less memory copying. * glom/libglom/data_structure/layout/layoutitem_field.cc: * glom/libglom/data_structure/layout/layoutitem_field.h: Added get/set_display_width() which is not saved in the document for now. * glom/utility_widgets/db_adddel/db_adddel.cc: * glom/utility_widgets/db_adddel/db_adddel.h: add_column() Take a non-const layout item, so that we can store the display_width in it, in property changed signal for the ViewColumn width property. Use any previously set display_width when creating the columns. This means that columns widths are remembered when navigating between tables. Bug #358089 from Peter Williams. 2006-10-02 Murray Cumming * glom/mode_data/box_data.cc: get_find_where_clause(): When multiple fields are specified in a Find, join them together in the SQL where clause with AND, instead of just joining them together, because that would be an invalid SQL statement. Obviously. * glom/utility_widgets/db_adddel/glom_db_treemodel.cc: refresh_from_database(): When the SQL command fails, output it to stdcerr, to help debugging.