* Remove workaround for Unicode text to and from clipboard
* Fix writing/reading wrong encoded text into/from registry - no need to use Utf8Encode() any longer
* Implement TMySQLQuery.ColAsAnsi() for cases in which we read binary data.
* Removes TNT Unicode controls, which are no longer required. All VCL controls now have native Unicode support.
* Remove Delphi 11 packages, otherwise we would either need to keep TNT or break Unicode
* PngComponents update from Uwe Raabe on http://cc.embarcadero.com/Item/26127
* Adjust auto build process
* Since Delphi 2009, Strings are now UnicodeStrings, not AnsiStrings any longer. Fix a bunch of compiler errors which came along with this change.
TODO: Project should compile but give tons of compiler warnings.
* removing the ON DUPLICATE KEY clauses
* turning the INSERT into INSERT IGNORE
* and doing an UPDATE afterwards if RowsAffected is 0
Fixes issue #1229
Forms are not closeable with Close() inside FormShow, you must either return -1 in response to a WM_CREATE message, post a WM_CLOSE (seen that fail too though), or just do the check before showing the form.
* Keep only one TRegistry object in memory instead of creating a new one in each routine.
* Move out relevant functions and TRegistry object from main to helpers to make them usable globally.
Note on verbiage: I chose "Everybody" rather than "Everyone" or "Fallback" as the pretty name for this account.
"Fallback" just seemed like it was misplaced in the user dropdown list.
"Everyone" seems to mean individuals in a group, while "everybody" seems to mean the group as a whole. Thus "everyone" is a bit more personal.
This could convey the notion that you need to have a personal account before these privileges will apply to you, which is not the case. Anyone that logs in with a non-existent user name will get these privileges.
Therefore, "Everybody". It hopefully denotes that the privileges are given to everyone with a personal account, PLUS people authenticating with a rubbish user name (and the password, if any).
This last category of logins are commonly called "anonymous users" in the MySQL documentation. "Anonymous" does not quite fit this account however, because the privileges given also apply to everyone else.
* Bugfix: Copy + paste same text in the username field caused a warning.
- Accounts and existing privileges are presented in a pulldown which makes it as easy to use as a toy
- Adding privileges calls the new SelectDBO dialog which is basically a tree like childwins dbtree
- Updating accounts canonicalizes various odd/legacy mechanisms in the MySQL user system
- Fullfills feature request #1547437 (btw)
- Wants to be tested heavily on different servers
A result of a team work. 1000 thanks to rosenfield for the admin friendly logic implementation, tons of fixes and usability ideas.
- Consequently use Mainform.GetRegValue() to read these values, an overloaded method with either Boolean, String or Integer result. These methods keep a global TRegistry object (regMain) open while the application runs, rather than creating a new one for each caller.
- Remove Mainform.SaveRegValue() which was used in one or two callers. Rather use a TRegistry object and do that by hand. There's no significant advantage in using a SaveRegValue method currently.