|
Kexi 0.9: Detailed Changes
(since 0.1 Beta 5 version)
Core Library
- Properties: various speed optimizations, warnings when properties are misused
- wait cursor is shown only for GUI modes
- If an object could not be opened in design/data view, user is asked to let it to be opened in text mode (if available)
- Kexi Dialogs better handling temporary design's data
- identifiers: non-latin1 characters converted to latin1 eg. 'oacute' to 'o'
- property is unchanged if we're moving from null value to a null pixmap, etc.
- On failed plugins loading, better error message associated with a plugin is displayed
- even more informative and easy-to-translate messages
- active window can be found even if it's detached (as in KMDI). This fixes shared actions availability for detached windows.
^ toc
Table Designer
- a few unsupported properties are now hidden
- switching from design view to data view: it's now posible to discard changes
- changing field's subtype to LongText hides "length" property; changing field's subtype to Text shows "length" property
^ toc
Query Designer
- fixed adding fields by entering column names by hand
- entering (simple) criteria is working
- added simple support for Date/DateTime/Time criterias
- SQL Editor is now able to open also invalid SQL statements, so user can now open (and probably fix) statements.
- 'check query' action is now avaialble under Key_F9 (was CTRL+Key_Enter) to avoid conflict with editor
- fixed actions availability on switching back to design
- setting column aliases available using GUI
- "caption" property temporary hidden
- wait cursor enabled while query is executed
- user is warned about empty 'column' item while 'table' item is not empty
- simple criterias are loaded to GUI
- fixed updating tables combo box on table adding
- on new table creation, combo box is updated with a new item
- clearing "PrimaryKey" flag is not needed in few cases
- it's now possible to enter "alias_name: simple_expression" in the column #1
- fixed parsing string constants
- usage of table schema is now registered to avoid conflicts
- more checks for schema changes
- information syncing fixed a bit more
- SQL Editor: focus is set correctly
^ toc
Form Designer
- forms are data-aware now
- on failed saving new form's data, all saving is rolled back
- fixed saving form data
- much improved handling form's boundaries
- after switching to/from form in data view mode, its contents position is preserved
- fixed form's size setting in data view mode
- two possible form's resize modes introduced
- in data view mode, scrollview is properly resized to avoid showing outer area; no scrollbars flickering
- check for duplicated widget factories added
- factory groups introduced
- factories loading splitted to lookup/loading stages
- added 'override' option for alternate widget class names
- optimizations
- fixed showing form's property right after form's window loading
- record navigator added in data view
- widget factories can now define custom translations for property descriptions and property value descriptions
- Gradient Widget introduced: new special effects within form surface;
- Shadow Label widgets introduced
- Avoid errors and handle invalid "dataSource" property values
- show data source errors as "#NAME?" text for Line Edit widgets and any other data-aware widgets
- "autoTabStops" form's property added; it is synced with changes made by Tab Stop dialog's checkbox
- fixed Tab/BackTab ordering within form's fields, including cycles and problems after detaching/attaching windows for Child Frame Mode. There's more realistic focusing effect when tab key is pressed (especially for Line Edit widgets).
- "pen" icon is displayed on bottom-left, on record editing
- fixed Tab/BackTab ordering when there're widgets without 'TabFocus' focus policy set
- APIs for Forms and TableViews more integrated so their behaviour is similar, as users may expect
- form's internal implementation allows to duplicate data widgets for the same data source, hide them, change their ordering, etc. For example, tab order (and visual order) of data-aware widgets is independent of column ordering within data model.
- data-aware widgets with duplicated data source are updated concurrently while editing one of them
- setting (predefined) queries as dataSource works
- data editing for _editable_ query results
- enabled setting "tablename.fieldname", "queryname.fieldname" as data-aware widget's data source
- when a table is set as form's data source, all primary key's fields are always fetched (so editing works well with autonumbers)
- data-aware widgets with invalid 'data source' property are now removed from tab-focus cycle
- on form opening: first data-aware widget with TabFocus is focused (if available)
- many improvements for Widget Library (e.g. inheriting widget class' properties and behaviour, overriding implementation of one class from by another one from another library)
- On loading, top level form widgets with negative X or Y are moved to 0 to avoid weird behaviour
- assigning predefined Kexi actions to buttons
- initial size of form surface fixed
- most of too advanced widget's properties is hidden in Kexi
^ toc
Report Designer
- introduced as a development test (hidden for default compilations, read AdvancedBuildNotes)
- data view mode: record navigator is now "page navigator" (i.e. it has + button hidden)
^ toc
Data and Project Migration
- Project Migration plugin added with Project Migration Wizard (beta implementation)
- SQLite, MySQL and PostgreSQL support added
- (Read only) import of Microsoft Access MDB file import is available as optional plugin
^ toc
Advanced Widgets
^ toc
Data Table Widget
- fixes for combo box
- better handling actions like 'save row edit'
- Empty row is appended on row deletion when 'spreadsheet mode' is on
- fixed setting row numbers in record navigator for empty data sets
- fixed editing large floating-point numbers (removed scientific mode)
- sorting settings are cleared on data source setting
- fixed repainting visible rows below a deleted row (required if no confirmation box is displayed)
- record navigator's rec # indicator field: fixed value validation on number entering and focus-out
- added support for editable comboboxes
- data table now shares data most editing functions with data forms for consistency
^ toc
Property Editor Widget
- fixed focusing, activating, buffer switching (focus is not set) focusing for combo box, and more
- resetting property value fixed
- 'undo changes' button improved
- Esc key now properly undoes changes; fixes for spin box editors, and similar: this fixes key press problems
- Home and End keys now moves to first/last row, also for nested properties
- moving selection using keyboard now ensures an item is visible (also works using Home key)
- prevent scrolling to previously selected item on mouse click
^ toc
Other Widgets
- record navigator is now a separate field and reused within forms and data tables
^ toc
Main Window
- Delete key works in the Navigator
- "Open in Text View" added to the Navigator
- fixes for actions
- fixes for saving main windows settings (now mdimode is saved to proper section)
- window_next, window_previous actions added
- fix conflict of CTRL+Tab with tabbed/ideal mode on win32
- Key_F6/F7/F8 added for data/design/text modes
- CTRL+Enter shortcut handling fixed in the Navigator
- close_project action's shortcut removed
- CTRL+F4 key closes child window on win32
- fixed setting non-latin1 characters (e.g. db name) for the title
- always ask for removing objects
- on table schema altering or removing, user is asked for closing all windows using this table
- maximized child window (dialog) state is preserved
- dock windows' width is managed for 'Tab Page' mode in the same way as for 'Childframe' mode
- hiding property editor's dock when not needed
- Navigator: double clicking on item which has no data view mode available, opens it in design mode; Unavailable actions for given object types are now hidden
^ toc
KexiDB (Database Support Library)
- DriverBehaviour improved: e.g. for autoincrement
- added Alter Table function
- improvements for CREATE TABLE statements
- 'alterTableName' function works better with already started transactions, finally works also for SQLite
- lowlevel Connection: drv_containsTable(), drv_getTablesList() added; implemented for all drivers
- 'DropTable': No error is raised if the table does not exist physically (its schema is removed even in this case)
- Support for Generic SQL Keywords Escaping
- expression classes optimized for space and speed
- 'table schema change listener' added
- fixed setting relationships within a query
- 'version' field added to kexidb driver's service files
- information about "possible problems" is displayed in details sections of error message on failed loading database driver
- DateTime values: back to ISO 8601 datetime format (ie. "1994-11-05T13:15:30" not "1994-11-05 13:15:30", backward compatible)
- Connection - in 'dropTable' function we're checking correctness of table schema object
- Connection - storing schema data: if we already have stored a schema data with the same name and type - just update it's properties as it would be an existing object
- fixed problem with retrieving handling column values when we're using raw sql statements (expanded field list is empty)
- KexiDB now uses configurable message handlers, so it can show GUI messages or print them to the console
- 'parentTable' term is now changed to 'masterTable'
- query schema object only returns master table information if if there's only one defined
- on error in 'createTable' existing table schema object is not destroyed (i.e. it is still available e.g. even if the table has been physically dropped. This fixes table designer's crash when recreating table failed.
- in connection's 'resultExists' - only appending optimizing "LIMIT 1" suffix for "SELECT" query statements
- in connection's 'createTableStatement' length parameter is now only used for text and not long text field types
- in connection: on data inserting/updating/deleting more error messages and codes added; we're checking if a master table's primary key is available
- documentation improved
^ toc
SQL Parser
- added Date/DateTime/Time types support
^ toc
Database Drivers
^ toc
SQLite Drivers
- crashes fixed for some architectures
- *KEXI DATABSE FORMAT CHANGED to 1.4*
- date-time data type is now stored as "YYYY-MM-DD HH:MM:SS", not as "YYYY-MM-DDTHH:MM:SS". This is compatible with SQLite format. The change is backward compatible.
^ toc
MySQL Driver
- MySQL driver better splitted to internal and public part, so migration driver can easier use it
- migration driver added
- on UNIX: small hack added to enable local connections without using a local socket file: if user doesn't want to use local socket file, host name is automatically set (internally) to "127.0.0.1" before connecting. This is especially usable when we're using SSH tunneling.
^ toc
Application Startup
- Support for ".kexis" shortcut files added. You can now easily create a shortcut file once, and connect to your remote database server with just one click
- "-type" command line option added (specifies a type of a file provided as argument)
- opened file types are additionally checked by name extension (if mimetype is not detected) -- useful for shortcut files
- better "database/connection settings" dialog reimplemented
^ toc
Win32 Specific
- make 'My Documents' folder as default in File Dialogs
|