This has one positive side effect: ViewData no longer re-saves an ORDERCLAUSE to registry after it has been read. At the same time the ORDERCLAUSE is read everytime when grid is filled, not only the first time. Those changes were needed to be able to apply an ORDERCLAUSE which was generated and saved by the new dialog.
Left for later: Moving order-columns up and down. Tested that with a TUpDown which seems to ignore clicks sometimes and then doesn't fire OnClick.
* Add feature: Read and write all options from / to registry, using some existing CSV-options
* Fix bug: Correct escaping for db, table, columns, values for terminator, etc.
* Style change: Drop superflous checkboxes from checkbox/edit pairs to save clicks. Checking for empty edits has the same effect.
* Style change: Don't convert backslashes in filename to slashes. No need to take care of escaping, esc() does that better.
- popupmenu in query memo
- query helpers
- SynCompletionProposal
Drops function.txt and parser for that file.
Pros:
- No dependency on this file anymore
- Much easier and safer coding
- File-parsing no longer needed
Notes:
The old function.txt was meant to be editable and extensible for users but I never saw or heard anyone who does that, most likely because it wasn't documented. Another problem was that the file resided in the programs-directory, where only administrators have write-access, so in these cases it couldn't be edited anyway.
The PHP file in /extras can be used for creating an up-to-date list for mysql.pas .
As not all functions of the new list are available in all mysql-versions, it would be the best if we would fetch the list by the use of HELP commands. Contra: Would result in poor performancing popupmenu and many servers don't have the help-tables filled.
As a benefit, function.txt is read into 3 stringlists at startup now: Names, Declarations and Descriptions. Used in SynCompletionProposal and to fill the above mentioned helpers-list.
Also fixes a minor issue in SynMemoQueryDragOver using an unset "Accept" var.
* Remove feature: columns listed in tree view (helps fix repeated queries; need to cache these and move to different GUI location)
* Remove feature: SELECT COUNT(*) on all tables with MySQL < 3.23 (performance killer)
* Add feature: Cache table lists for tree view (improves performance and fixes repeated queries)
* Add feature: Master refresh button clears entire table list cache.
* Add feature: Refresh button in table list view popup clear table list cache for database being viewed.
* Add feature: Restore active database after user queries.
Wrote a small console app which removes these properties automatically in a given directory. Feel free to download it at http://www.heidisql.com/files/explicit_sucks.exe and use it before committing *.dfm files.