* Replace checklist box by a virtual tree with checkboxes
* Make "Maintenance" a single tab on a TPageControl, so there may follow other tools (e.g. issue #529)
* Replace button layout by a combobox
* Add "CHECKSUM" operation and various options
* Replace the pulldown by a list to get a better overview
* Display last connected and created date in details
* Prompt user on form closing if modifications should be saved
* Remove moreorless useless image
* Remove options "timeout" and "sort database"
TODO: Display some help text on the right side when no session at all is existant to help new users.
* Move "Create table|view|..." items into a submenu and have one single "Create" item
* Remove all above mentioned buttons from the main toolbar, leaving them in the context menus where there function is more predictable
* Streamline context menu of db tree and database tab
Fixes issue #1139, issue #1124, issue #1108, issue #820, issue #738, issue #595
(The diff tends to be unreadable here, as there are many automatic GUI adjustments after having removed a toolbar)
* Use AttrCount and Attribute[x] in SynEditHighlighters to iterate through available attributes, instead of doing less with more code.
* Use integer registry values for highlighter colors (were strings) and also integers for bold, italic, underline, strikeout (was one boolean per attribute).
a) optimizes registry access b) normalizes registry names and c) simplifies code. Unfortunately this breaks everyone's customized highlighter style - hopefully ok to do this is in an interim build.
Rewrite the old code a bit to make the automatic PChar->WideString conversion explicit, also add a block of code that tries to guess if the server is sending UTF-8 and react properly to that.
A step on the way to fixing issue #994.
Plus: OnHeaderImageClick was called when you click exactly on the column header glyph. But if no procedure was assigned here, even OnHeaderClick was not fired which is silly from a users point of view.
- FetchDbTableList now makes use of various tables in INFORMATION_SCHEMA if available - the only way of listing stored routines.
- If a routine is selected, Table + Data tab hide their grids and display a corresponding message instead. Seemed the only way to keep the normal flow of clicks, not changing too much click logic.
* Leads to unpredictable errors in special cases
* Advantage over SHOW TABLE STATUS is hardly measurable
* Makes integrating stored routines into the database tab complex and unstable for the benefit of nothing