0.8.7: 2004-07-12 Murray Cumming * configure.in: Depend on bakery 2.3.8, because that has a fix to prevent the crash when changing user levels on the details view when there are related records. 2004-07-09 Murray Cumming * glom/utility_widgets/flowtable.cc: get_item_max_width(): Don't ignore the vertical padding between widgets, so that this does not incorrectly report that more items could be in the column. on_size_allocate(): Use = instead of += when using the single_items width to get the maximum width, to prevent a big gap between the first and second columns. 2004-07-09 Murray Cumming * glom/document/document_glom.cc: save_before(): Store the layout item sequence, so that the layout is not lost after a couple of saves. 2004-07-08 Murray Cumming * glom/document/document_glom.cc: load_after(): Load the field calculation from the field node rather than the lookup node, because that is where we saved it. 2004-07-08 Murray Cumming * glom/main.cc, application.[h|cc]: Make the application quit if the user presses cancel on the new-or-existing dialog. 2004-07-08 Murray Cumming * glom/glom_python.cc: Make glom_evaluate_python_function_implementation() return a Value instead of a string, and take a field type parameter. * glom/box_db_table.cc: Remove record_new(). * glom/mode_data/box_data.cc: Rename record_new_from_entered() to record_new() with an optional use_entered bool parameter, and use this everywhere instead of record_new_from_entered. This means that the first value entered in a new record in the list view will not be forgotten. Also, this now sets the default value from calculations where that is specified. 2004-07-08 Murray Cumming * glom/utility_widgets/: Added datawidget.[h|cc]: This widget can hold either an EntryGlom or a checkbox, depending on the field type. Used this in the Field Definition dialog and the FlowTableWithFields for the Details view. 2004-07-08 Murray Cumming * glom/data_structure/glomconversions: parse_value(): Return success when parsing empty date, time, and numbers as nulls. * glom/mode_design/fields/dialog_fielddefinition.cc: on_combo_lookup_relationship_changed(): Clear the list of fields before adding more. * glom/utility_widgets/flowtablewithfields.cc: Add a checkbox instead of an entryglom if it is a boolean field. 2004-07-07 Murray Cumming * glom/navigation/box_tables.cc: fill_from_database(): make the window bigger when in developer mode, because there is more to see. * glom/mode_design/fields/dialog_fielddefinition.[h|cc]: Use an EntryGlom instead of an Entry for the default value, so that it gets validated and internationalized and so that the value does not get interpreted as a string. This should deal with NULL properly. * glom/utilty_widgets/entryglom.[h|cc]: Add methods to get and set values so that code does not need to get the specific widget. * glom/data_structure/field.[h|cc]: Have both canonical and translated field type names, and make this clearer in the API. This allows us to use the english names in the XML document, but show the translated names in the user-interface. 2004-07-06 Murray Cumming * Embed python for calculated fields: * scripts/macros.m4: GLOM_ARG_ENABLE_WARNINGS: Add -Wno-long-long so that the C++ compiler does not complain about the long longs in the python headers. * Added acinclude.m4, copied from pygtk, with additions from the version in Plannet. Used the AM_CHECK_PYTHON_INCLUDES macro in configure.in to detect the python headers and libs. * glom/glade.glom: Added widgets for field calculation to the Field Definition dialog. * glom/mode_design/fields/dialog_fielddefinition.[h|cc]: Load and save the field calculation. * glom/mode_design/fields/: Added dialog_fieldcalculation.[h|cc] that can be opened from the Field Definition window to edit and test the python code. * glom/: Added glom_python.[h|cc]: With a function that can evaluate arbitrary python code as if it is a python function definition. * glom/main.cc: Intialize and terminate the python runtime.