Ansgar Becker
be645ac79b
Unify code for refreshing Virtual Trees in a new helper method InvalidateVT. Fixes issue #1789 and issue #1790 .
...
* Don't try to access a passed tree if it has been destroyed by some earlier event.
* Don't try to access registry in DoDisconnect after key has been closed.
* Now that DoDisconnect lives in FormDestroy it is save to call it slightly earlier, before registry has been closed. There should be no later paint events which will trigger random database queries.
2010-03-21 10:43:16 +00:00
Ansgar Becker
3168a3e277
Fix flicker and crappy text display in status bar after explicit repaint.
2010-03-21 07:40:27 +00:00
Ansgar Becker
067036c7ef
Make regular expression safe against huge length/set attributes of column types. Fixes issue #1786 .
2010-03-20 22:32:57 +00:00
Ansgar Becker
3ef86ccdb3
Remove nonsense from old MDI days, where OnActivate needed to update its child windows.
2010-03-20 21:54:28 +00:00
Ansgar Becker
d62e3a138b
Related to issue #1780 : Move code from Main.OnClose to Main.OnDestroy, where visible controls do not process painting any longer, which makes it more safe against AVs after destroying critical objects. Now, saveWindowConfig is not able to set WindowState to wsNormal in OnDestroy, which was required in order to store correct registry settings. Solution: Only save dimensions if WindowState was wsNormal. This change finally removes an annoying animation effect when closing the main window.
2010-03-20 21:38:41 +00:00
Ansgar Becker
63557fe852
Disconnect from server must be the last thing to do in FormClose, as other (repaint) actions can implicitly trigger some database query. Fixes issue #1780 .
2010-03-20 21:08:32 +00:00
Ansgar Becker
b57153c956
For DROP TRIGGER there is no IF EXISTS clause, so we just ignore errors. Important if trigger was dropped before, tried to recreate for the second or later time. Fixes issue #1788 .
2010-03-20 16:05:58 +00:00
Ansgar Becker
03cc9d632a
Attempt to fix issue #1780 - AV on closing main window. Free the cached list of db object lists, instead of making it empty, so a call to Assigned() returns false.
2010-03-20 00:18:17 +00:00
Ansgar Becker
939425dc19
Do cell text formatting for decimal and binary columns, also in DataGridEnsureFullRow(). Fixes issue #1784 .
2010-03-20 00:03:34 +00:00
Ansgar Becker
63bb7ae022
Fix wrong column name in SELECT when one or more columns are deselected.
2010-03-19 18:25:18 +00:00
Ansgar Becker
13302d5b2f
Remove empty and useless procedure
2010-03-19 07:09:30 +00:00
Ansgar Becker
d7d65e1015
Add submenu in "Quick filter" menu: "More values", with subitems displaying first 30 distinct values and their frequency in the focused column. Fixes issue #1098 .
2010-03-19 00:02:44 +00:00
Ansgar Becker
a96ccdfdb2
Fix wrong enabled/disabled status of "Clear filter" menu item.
2010-03-18 22:28:45 +00:00
Ansgar Becker
78f0838c6d
Do not steel focus or change cursor position on filter editor while pressing F9 or "Apply filter".
2010-03-18 22:19:19 +00:00
Ansgar Becker
89774dbe44
Fix minor memory leak
2010-03-18 22:11:42 +00:00
Ansgar Becker
f86a0ee692
Clear table structure cache after modifying columns. Fixes issue #1774 .
2010-03-18 07:00:23 +00:00
Ansgar Becker
862fbf9b5f
Optimize setting column widths in data grid.
2010-03-18 06:59:26 +00:00
Ansgar Becker
37a05196ae
Add useful hint for new password generator button in user manager dialog
2010-03-17 20:11:43 +00:00
Ansgar Becker
52328ada0c
Pass double clicks on dbtree and queryhelpers over to ActiveQueryMemo.DragDrop, which does the same. So all actions behave consistently wrt to shift pressed. Fixes issue #1661 .
2010-03-17 13:55:16 +00:00
Ansgar Becker
bf2d8591f4
Missing file for r3176
2010-03-17 09:09:12 +00:00
Ansgar Becker
0ffef111af
Allow to drop column names vertically when holding the Shift key while mouse drops cols. Fixes issue #1331 .
2010-03-17 00:19:10 +00:00
Ansgar Becker
256a921563
Do not mandate the user to save a entered or modified password with a popup dialog. Fixes issue #1371 .
2010-03-17 00:10:16 +00:00
Ansgar Becker
860390e986
User manager: Add button to generate a random password. Fixes issue #1460 .
2010-03-16 23:50:40 +00:00
Ansgar Becker
9d18bd433e
Don't touch X() SQL function from being uppercased and detected as keyword in pretty formatter, so that hex values like "0x0101" don't break. Fixes issue #1736 .
2010-03-16 23:04:01 +00:00
Ansgar Becker
f411f36f32
Force repainting columns list after modifying some index. Ensures key icons on column nodes are displayed immediately.
2010-03-16 18:20:38 +00:00
Ansgar Becker
3ed8c5bd91
Make session log directory configurable. Fixes issue #494 .
2010-03-16 00:18:44 +00:00
Ansgar Becker
71c687986f
When dragging a table into a query editor while Shift is pressed, include its database name. Fixes issue #1749 . Fixes issue #1661 .
2010-03-15 23:40:26 +00:00
Ansgar Becker
6c4be937ab
PreviousFocusedNode must be manually unassigned, to avoid accessing invalid memory locations. Fixes issue #1762 . Probably also issue #1771 .
2010-03-15 23:20:34 +00:00
Ansgar Becker
558bafc0d7
Enable incremental search on keyboard presses in various lists and trees. Fixes issue #1769 .
2010-03-15 17:52:09 +00:00
Ansgar Becker
20297a6955
Switch to query tab early enough to avoid AVs when accessing ActiveQueryTab. Fixes issue #1770 .
2010-03-15 17:47:27 +00:00
Ansgar Becker
1b3b16b291
Open object editor on selected list node on pressing <return>. Fixes issue #1768 .
2010-03-14 17:19:57 +00:00
Ansgar Becker
fc31018600
Display key icons in data grid column headers
2010-03-14 12:22:05 +00:00
Ansgar Becker
c82fa61eb1
Fix staying invisible columns in data grid after deselecting one or more and reselecting them.
2010-03-14 12:02:11 +00:00
Ansgar Becker
17e4a63f81
Allow data grid editing and deleting rows for tables without primary or unique key. Just ensure that all full column values are taken into WHERE clauses for UPDATE and DELETE actions. Additionally, append a "LIMIT [SelectionCount]" so we don't update or delete unwanted rows. Fixes issue #1392 .
2010-03-14 11:57:53 +00:00
Ansgar Becker
bbab8c5d12
Same as previous commit: Revert r3056. Fixes issue #1749 .
2010-03-14 10:22:23 +00:00
Ansgar Becker
630244aa16
Revert r3053 - do not include database name when dropping table nodes in query editor. Seems more users including me are against that. Fixes issue #1749 and invalidates issue #1661 .
2010-03-14 10:17:33 +00:00
Ansgar Becker
f8d8ae9bf0
Totally forgot that we have GetWhereClause(), which makes some code superfluous in DataGridEnsureFullRow().
2010-03-13 16:19:18 +00:00
Ansgar Becker
8a02113489
Log some message when going to load a file into any query tab. Should help fixing issue #1764 .
2010-03-13 16:02:36 +00:00
Ansgar Becker
bd762fe439
Do not open a new tab for a dropped file, at least if it's the only one or first one of multiple files. Fixes issue #1764 .
2010-03-13 14:03:13 +00:00
Ansgar Becker
532713e51a
No need to check if a trigger exists if we're already in edit-mode. MySQL 5.0 seems to not support the IF EXISTS clause anyway. Fixes issue #1763 .
2010-03-13 13:59:03 +00:00
Ansgar Becker
7b237496d8
When user clicks "Show next 1000 rows", auto select first one of these.
2010-03-13 08:03:02 +00:00
Ansgar Becker
885ea4ecc4
Load all rows when user clicks the "Go to last row" button, so it is really the last row, not the 1000th one. Fixes issue #1750 .
2010-03-13 07:57:36 +00:00
Ansgar Becker
4147bbcfbc
r3150 didn't fix all exceptions thrown by ListTables.OnGetText when nodes are bound to already freed TDBObjects. Do it right now - introduce a new event TMySQLConnection.OnAfterClearDBObjects for this purpose. Todo: Fix related issue #1723 .
2010-03-12 22:23:09 +00:00
Ansgar Becker
059b7ebe56
Left instead of right alignment for "Rows" and "Size" columns in "Database" tab, now that these columns display colored bars, that looks nicer.
2010-03-12 21:39:39 +00:00
Ansgar Becker
1540c74d31
Missing change for r3124 - wrong column type detection
2010-03-12 21:29:42 +00:00
Ansgar Becker
e417eef591
Datagrid: To reduce network traffic and loading time, reintroduce the old LEFT() strategy for potentially large columns.
2010-03-12 21:27:19 +00:00
Ansgar Becker
1e7b3e235c
Decide for a slightly darker gray value for non-focused cells of selected nodes. Fixes issue #1757 .
2010-03-11 21:59:43 +00:00
Ansgar Becker
1e13ecae2a
ListTables.OnBeforePaint is a fine place to check if db objects in active db are already cached. Also, there is no need to clear the whole cache after renaming a table. Fixes issue #1755 . Fixes issue #1758 .
2010-03-11 21:55:50 +00:00
Ansgar Becker
680389a7a6
Slightly enhance colors of selected grid cells:
...
* Use system default colors for highlighted cell
* Do not colorize a focused cell in a non-selected node, so it does not look as if it's selected
2010-03-10 20:45:32 +00:00
Ansgar Becker
20048c230a
Fix empty table name in SELECT and following AV when hiding tabs auto selects the data tab for a millisecond. Reproducible when you have the table editor open and click a different database in the tree.
2010-03-09 23:45:42 +00:00