1.19.14: 2011-10-18 Murray Cumming Add a simple SQL injection test. * tests/test_selfhosting_sqlinjection.cc: Attempt to do bad things that would be possible if our SQL values were not escaped properly in the SQL. (libgda takes care of this.) * Makefile_tests.am: Mention the new test. 2011-10-18 Murray Cumming Self hosting test: Check that other tables exist. * glom/libglom/document/document.[h|cc]: Added get_field_primary_key(), for use by: * tests/test_selfhosting_utils.[h|cc]: Added test_table_exists(). * tests/test_selfhosting_new_from_example.cc: Add quick checks that some other tables exist. 2011-10-18 Murray Cumming Test some query functions. * tests/test_selfhosting_utils.[h|cc]: Added test_model_expected_size(). * tests/test_selfhosting_new_from_example.cc: Test the quick find and the count query. 2011-10-18 Murray Cumming Avoid a compiler warning. * glom/libglom/data_structure/glomconversions.cc: format_time(): Return a result from the catch block. 2011-10-17 Murray Cumming Avoid some copy/pasting of code. * glom/mode_design/print_layouts/print_layout_toolbar_button.cc: * glom/utility_widgets/layouttoolbar.cc: * glom/utility_widgets/layouttoolbarbutton.cc: Moved get_icon_path() to: * glom/utils_ui.[h|cc] 2011-10-17 Murray Cumming Test report contents. * glom/libglom/xsl_utils.[h|cc]: transform(): Return the contents, not a filepath. * glom/libglom/report_builder.[h|cc]: report_build(): return the contents, not the path. Add report_build_and_save() to get a temporary filepath. * glom/mode_data/box_data_manyrecords.cc: * glom/frame_glom.cc: Adapted. * tests/test_selfhosting_new_then_report.cc: Check that some expected text is in the generated HTML. 2011-10-17 Murray Cumming Test report building. * tests/test_selfhosting_new_from_example.cc: Move most code into utility functions in: * tests/test_selfhosting_utils.[h|cc]: * tests/test_selfhosting_new_then_report.cc: Add a new test that also generates a HTML report. * Makefile_tests: Mention the new files. 2011-10-18 Murray Cumming Film Manager example: Change default table. * examples/example_film_manager.glom: Make the Scenes table appear first so people get a better idea of what this is about - managing production of a single film, not managing a collection of films. 2011-10-18 Murray Cumming Add a test for the locale problem and for a missing translated date format. * tests/test_glom_date_in_locales.sh: A new test that sets LANG and then tries to start glom with it's date-checking option, to see if any fail. However, this is not run during "make check", or even distributed, because it depends on you having the locales installed and configured. 2011-10-18 Murray Cumming Add try/catch around all uses of std::locale(""). * glom/libglom/data_structure/glomconversions.cc: Add try/catch with a warning whenever we use std::locale(""), which means the current locale, because that can throw an exception if the locale is not properly configure. * glom/main.cc: Mention that a non-installed or not-properly-configured locale could be the cause of the problem. However, I would like to know exactly what it means for a locale to be properly configured. 2011-10-18 Murray Cumming Command line: Correct some exit results. * glom/main.cc: Use EXIT_FAILURE and EXIT_SUCCESS instead of 0 and -1, and use the correct ones. 2011-10-18 Murray Cumming libglom: FieldFomatting: Correct some parameter names. * glom/libglom/data_structure/layout/fieldformatting.h: get_choices_related() Rename relationship_name to relatioship. It was already correct in the .cc file. 2011-10-18 Murray Cumming Correct the pkg-config file. * glom/libglom/glom.pc.in: Depend on libgdamm-5.0, not ligdamm-4.0. And depend on libxslt, because we just moved the xslt stuff into libglom. 2011-10-17 Murray Cumming Move ReportBuilder to libglom, to make testing easier. * glom/report_builder.[h|cc]: * glom/xsl_utils.[h|cc]: Moved to: * glom/libglom/report_builder.[h|cc]: * glom/libglom/xsl_utils.[h|cc]: * Makefile_glom.am, Makefile_libglom.am: Adapted, also adding a -D define for libglom to access the xslt file, though I am not happy about a library needing a file to be installed. 2011-10-17 Murray Cumming ReportBuilder: Do not depend on Base_DB unnecessarily. * glom/report_builder.[h|cc]: Just add get/set_document() instead. 2011-10-17 Murray Cumming Move report building code around. * glom/report_builder.[h|cc]: report_build(): Return the filepath, instead of opening it in the browser. * glom/xsl_utils[h|cc]: transform_and_open(): Rename to transform(), returning the filepath. Also correct some ustring filepath to std::string. * glom/utils_ui[h|cc]: Added show_report_in_browser(). * glom/frame_glom.cc: on_menu_report_selected(): * glom/mode_data/box_data_manyrecords.cc: print_layout: Adapted. 2011-10-17 Murray Cumming Move some XSLT-processing code around. * glom/mode_data/box_data.h: Remove declaration of non-implemented and unused xslt_process() method. * glom/xsl_utils.[h|cc]: Move xslt_process() in to the .cc file as a static function. 2011-10-17 Murray Cumming Move some Report code around. * glom/mode_data/box_data_manyrecords.cc: print_layout(): Move the report creation to ReportBuilder. * glom/report_builder.[h|cc]: Added create_standard_list_report(). * glom/xsl_utils.cc: Do not output all the XSL and HTML to std::cout, but do output the temporary file name of the generated HTML file. 2011-10-17 Murray Cumming XSLT file: Minor fixes. * xslt/print_report_to_html.xsl: Change xsl::version to version, which is apparently more correct. Specify the encoding as UTF-8. 2011-10-17 Murray Cumming Tests: Add general XML validity of XSLT files. * tests/test_xslt_file_validation.sh: New test, based on the other ones. * Makefile_tests.am: Mention the new test. 2011-10-17 Murray Cumming Remove an unused XSL file. * xslt/print_details_to_html.xsl: Remove this because it is no longer used. * Makefile.am: Remove mention of it. 2011-10-17 Murray Cumming Examples: Remove all column_width attributes now that defaults are good. * examples/example_film_manager.glom: * examples/example_lesson_planner.glom: * examples/example_music_collection.glom: * examples/example_project_manager.glom: * examples/example_smallbusiness.glom: * examples/sqlite/test_sqlite_music/test_sqlite_music.glom: * examples/tests/example_field_formatting_test.glom: * ldtp/database-templates/PostgresCentral/Test.glom: * ldtp/database-templates/SQLite/Test.glom: A simple regexxer replace. 2011-10-17 Murray Cumming List View: Correct the default column widths. * glom/utils_ui.[h|cc]: get_suitable_field_width_for_widget(): Added a for_treeview parameter and adjust the width accordingly. * glom/mode_data/db_adddel/db_adddel.cc: treeview_append_colum(): Replace the overly-generic division-by-3 hack with the new parameter, and add some hard-coded extra space. 2011-10-17 Murray Cumming Details: Avoid an outdent after group titles * glom/mode_data/flowtablewithfields.cc: add_layout_group(): Work around * the GtkFrame bug #644199