What's new
This document covers version 3.1. This is a major release that contains numerous improvements and enhancements. More details can be found in the release notes.
Fixes and improvements in the Integrated Development Environment (IDE):
- Tabs are now non-movable to prevent synchronization issues.
- Added a code snippet generation function for simple querying and emailing with templates.
- Improved speed and efficiency of RefreshDB, which caches data and optimizes retrieval fields and properties for better performance with larger data structures.
- Enhanced Dbtablefields with options for on_insert and on_update to easily set dates, guids, etc.
- Added support to disable internal MySQL, although it is not recommended for using internal samples.
- Added support for UUID in SQL Server, MariaDB, and PostGres.
- Streamlined project structure maintenance through the section manager, making it easier to create functional structures.
- Fixed label nulls to not null in the table field list, resolving a typo in the column header.
- Improved property group editing, allowing groups to hold properties without affecting the sort order. Added a new group for device context with a sub-property editor.
- Enabled bulk editing of field properties for label and value, read-only and required. Provides a fast update for all fields in the form using a single function.
- Enhanced the ability to add attachments to the export file. This functionality will be further enhanced with the import feature, allowing the inclusion of database DDL files and SQL queries.
- Corrected many hint texts that did not match the associated keys.
- Added FreeTDS support, an additional database layer for the IDE to bind with PostGres and SQL Server, catering to customers who cannot use regular drivers.
- Added a location for the database DLL, useful in situations where the database driver is not automatically found during installation.
- Introduced a group editor for the device context.
- Improved the light theme to address color inconsistencies.
- Added the option to restore the last version from the versioning system. In case projects get corrupted, users can easily revert back to the previous version using the version manager.
- Enabled the restoration of selected files, allowing users to restore any file other than the last one without relying on the compare function.
- Fixed IDE crashes caused by corrupted input files.
- Enhanced exception handling of the IDE to prevent the system from crashing without the ability to recover.
- Improvement: If no main application is specified, the system defaults to the first app, avoiding error messages.
- Decoupling forms is now possible, even when a form is on a building block, ensuring corrections can be made without disrupting the entire layout.
- Added a search function in inspect to find data within a result set of nested variables, useful for PHP objects with deeper objects.
- The editor now displays the function of the code being inspected, providing convenience when working in source-code mode. Scrolling over the source will show the associated function in the PHP editor.
- Fixed the property editor when the height does not contain a valid integer, preventing the IDE from freezing.
Fixes and improvements in the Debugger(s):
- Enhanced the debugger's behavior during debugging mode, allowing users to enable and disable breakpoints according to their requirements.
- Added support for conditional breakpoints, enabling the setting of breakpoints based on expressions.
- Fixed the issue where get parameters were not passed during debug mode.
Fixes and improvements in the various editors:
- CSS Editor: Simplified interface for editing CSS.
- PHP Editor: Resolved code extraction issues from class/functions.
- PHP Editor: Improved code completion with methods.
Fixes and improvements in the wizards:
- Added support for master-detail relations using forms.
- Fixed issues with duplicates on field names that occasionally occurred.
- Fixed a bug related to using DBQuery component instead of DBTable in the Application Wizard.
Improvements in code generation:
- Modified lookup forms to work without checkboxes.
- Enabled lookup using building blocks without requiring onacceptclick.
- Fixed an endless loop issue with MD and Cloud connector.
- Added support for left and right join for table custom fields, preventing empty results.
- Improved date conversion in grid fields.
Fixes and improvements in the components:
- Introduced a new function in dbnav, allowing dynamic change of button colors.
- Added a new function in dbnav, enabling dynamic changes to button visibility and properties.
- Rounded input fields for developers who prefer that style.
- Multilevel horizontal menu functionality.
- Corrected the icon display on the grid new button.
- Added the first-child option for panel headers, enabling rounding of the header if necessary.
- Fixed parameter issues with menus, ensuring parameters are used in all cases.
Fixes and improvements in the runtime:
- Encoded data in base 64 for DBGrid onclickrow, resolving issues with edit/delete functionality.
- Enhanced collapsible refined search.
- Treated labels like other fields, allowing for horizontal label/description layouts.
- Implemented flooding protection.
- Corrected custom class on panel headers.
- Fixed the refresh of RefinedSearch, preventing crashes and displaying correct results.
- Resolved code extraction issues from class/functions.
- Optimized JavaScript and CSS inclusion by only including the necessary libraries in the generator. Additionally, embedded libraries used in building blocks, such as headers, footers, and lookup forms, are included.