1.19.18: 2011-11-07 Murray Cumming Add a test of backup and restore. * glom/application.cc: on_menu_developer_export_backup(), do_restore_backup(): Move code into * glom/libglom/document/document.[h|cc]: save_backup() and restore_backup_file() so it is easier to test. * tests/test_selfhosting_new_from_example.cc: Move some testing into: * tests/test_selfhosting_utils.[h|cc]: test_example_musiccollection_data() to avoid repeating code. * Makefile_tests.am: Added a new test: * tests/test_selfhosting_new_then_backup_restore.cc: Test the new Document functions, though the data check currently fails and is commented out. I think it is just a problem in the test because the data is there when using the UI. 2011-11-07 Murray Cumming Rename a test utility function. * tests/test_selfhosting_utils.[h|cc]: Rename test_create_and_selfhost() to test_create_and_selfhost_from_example(). * tests/test_selfhosting_new_from_example.cc: * tests/test_selfhosting_new_then_get_privs.cc: * tests/test_selfhosting_new_then_image.cc: * tests/test_selfhosting_new_then_report.cc: * tests/test_selfhosting_sqlinjection.cc: Adapated. 2011-11-06 Murray Cumming Require libgda 5.0.2 * configure.ac: Require the lastest libgda to avoid several bugs at runtime - See the comments in configure.ac. 2011-11-04 Murray Cumming > Creating from examples: Do not create users and groups with SQLite. * glom/libglom/db_utils.cc: add_groups_from_document(), set_table_privileges_groups_from_document(): Do nothing if the database backed doesn't support this feature, to avoid errors when using SQLite. 2011-11-04 Murray Cumming Handle GdaBlob in query results instead of just GdaBinary. * glom/libglom/data_structure/field.cc: to_file_format(): The Value might have a GdaBlob that needs to be read first, to get the GdaBinary. This can happen with SQLite. * glom/libglom/python_embed/pygdavalue_conversions.cc: glom_pygda_value_as_boost_pyobject(): Handle GdaBlob too, though neither this or the GdaBinary case use the data length, so this code is doomed if it is ever used. I need to find out if Python can really represent binary data, or if this should just not be handled here. * glom/utility_widgets/imageglom.cc: get_binary(): Handle GdaBlob too in the original data. * tests/test_selfhosting_new_then_image.cc: Handle GdaBlob in the data that is read back, for SQLite. Uncomment the SQLite test, fixing make check with the latest libgda. 1.19.17: 2011-11-04 Murray Cumming Handle gdouble results from python functions. * glom/libglom/data_structure/field.cc: Add a mapping instead of ignoring doubles. This avoids a stderr warning and probably makes calculations work. 2011-11-04 Murray Cumming Fix some warnings about invalid field types with choices. * glom/mode_data/datawidget/combochoiceswithtreemodel.cc: set_choices_related(): Set full field details on the layout_choice_extra fields, to avoid invalid field types, and stderr warnings about them. 2011-11-03 Murray Cumming Updated examples screenshots. * docs/website/screenshots/glom_example_filmmanager.png: * docs/website/screenshots/glom_example_musiccollection.png: * docs/website/screenshots/glom_example_projectmanager.png: * docs/website/screenshots/glom_example_smallbusiness.png: * docs/website/screenshots/small_glom_data_details.png: Updated. * examples/example_film_manager.glom: * examples/example_music_collection.glom: * examples/example_project_manager.glom: Saved some changes that I made to match the details. 2011-11-03 Murray Cumming Update screenshots for the website. * docs/website/screenshots/*.png: Updated these screenshots, partly by copying some from user_guide/C/figures/. They are used here: http://www.glom.org/wiki/index.php?title=Screenshots after uploading with "make post-html" 2011-11-03 Murray Cumming FlowTable: In developer mode, draw some lines. * glom/utility_widgets/flowtable.[h|cc]: on_draw(): Draw some dashed lines a little like the lines drawn in on_expose_event() in Glom 1.18. This is not very good, but it was not very good before, but I still think we need something to show the boundaries. 2011-11-03 Murray Cumming Small Business example: Add a little more data so the report is useful. * examples/example_smallbusiness.glom: Contacts: Add towns and countries. 2011-11-03 Murray Cumming Do not blank the data when showing the field definitions dialog. * glom/frame_glom.cc: do_menu_developer_fields(): Only blank the data view if using SQLite, which requires it, because it looks like a bug to the user. 2011-11-03 Murray Cumming Fix make check. * examples/example_smallbusiness.glom: Resaved with correctly-formatted image data now that libgda works again. * tests/test_selfhosting_new_then_image.cc: Comment out the SQLite test because it fails and we do not care so much about that. Still, I will investigate it. 2011-11-02 Murray Cumming Add and use utility functions for creating temporary files. * glom/libglom/utils.[h|cc]: Added get_temp_file_uri(), get_temp_file_path(), get_temp_directory_uri() and get_temp_directory_path(), using the correct awkward code that avoids overwriting existing files. * glom/application.cc: * glom/libglom/connectionpool_backends/postgres_self.cc: * glom/libglom/report_builder.cc: * glom/utility_widgets/imageglom.cc: * tests/import/utils.cc: * tests/test_document_autosave.cc: * tests/test_selfhosting_new_empty.cc: * tests/test_selfhosting_utils.cc: Use these functions instead of repeating the same stuff badly. * Makefile_tests.am: Link to libglom so the import tests can use the new utility functions. 2011-11-02 Murray Cumming Make connections to central PostgreSQL servers work again. * glom/libglom/connectionpool_backends/postgres_central.cc: Do not forget a previously-successful connection-but-not-to-the-database. 2011-11-01 Murray Cumming Added test for Glom::Priv getting of group and user names. * tests/test_selfhosting_new_then_get_privs.cc: Added a test of some Glom::Privs functions. * Makefile_tests.am: Mention the new test. 2011-10-31 Murray Cumming libglom: Remove an unused Utils::sqlbuilder_get_full_query() overload. * glom/libglom/utils.[h|cc]: Nothing uses the version that takes a string and parameters. 2011-10-31 Murray Cumming libglom: Utils::sqlbuilder_get_full_query(): Improve the result. * glom/libglom/utils.cc: Use the GdaConnection's statement_to_sql() instead of just GdaStatement's to_sql() so we a) have correct quoting, and b) use the server's specific SQL dialect. 2011-10-29 Murray Cumming Image fields test: Load data from a file and check setting and getting. * tests/test_image.glom: Added an image file to set and get in the database. * Makefile_tests.am: Distribute the image file. * tests/test_selfhosting_new_then_image.cc: Load the data from the file, set it in the database, and check that the data read back is the same. Correct the type check. However, the data equality test still fails because of libgda bug #662922 . 2011-10-29 Murray Cumming libglom: Added build_sql_update_with_where_clause(). * glom/libglom/utils.[h|cc]: Added build_sql_update_with_where_clause(). * glom/base_db.cc: set_field_value_in_database(): use it here instead of manually creating a SqlBuilder. 2011-10-28 Murray Cumming Add a test for Image fields. * Makefile_tests.am: * tests/test_selfhosting_new_then_image.cc: Add a test to read an image field value, though this currently fails. I will later add a write-then-read test. 2011-10-28 Murray Cumming Add a test for Image fields. * Makefile_tests.am: * tests/test_selfhosting_new_then_image.cc: Add a test to read an image field value, though this currently fails. I will later add a write-then-read test. 2011-10-28 Murray Cumming Fix make check by correcting the DTD. * glom/glom_document.dtd: Corrections relating to the print layout definitions. 2011-10-28 Murray Cumming Small Business Example: Make the report example more like the one in screenshots. * examples/example_smallbusiness.glom: 2011-10-28 Murray Cumming More fixes for the Frame label issue. * glom/mode_data/box_data_list_related.cc: Only set or unset the Gtk::Frame label if it is or isn't there already, to avoid a warning. * glom/mode_data/box_data_portal.[h|cc]: Remove the unused implementation of one init_db_details() method, making it pure virtual instead. 2011-10-27 Murray Cumming Notebook: Avoid truncating related records buttons. * glom/mode_data/box_data_list_related.cc: Use Gtk::Frame::unset_label() instead of just hiding the frame's label, because that apparently leads to an incorrect allocation, causing the buttons to be cut in half horizontally at the bottom. This is caused by a regression in GTK+ 3: See bug #662915 1.19.16: