1997 Commits

Author SHA1 Message Date
c0da6e5a21 Refactor "Copy table" dialog:
* Replace checkboxes, radio buttons and checklistbox by a VirtualTree using checkbox support
* Support selecting/deselecting single indexes
* Support foreign keys
* Place a SynMemo at the bottom in which the user can type an optional WHERE clause to filter incoming data. Fixes issue #2000.
* Move code for SQL generation into TTableColumn etc.
2010-06-14 00:21:33 +00:00
15d73678c6 Focus previous privilege tree node after deletion. Fixes issue #853. 2010-06-13 14:39:56 +00:00
08e40a62d6 Tweak auto setting column widths in datagrid: do not recalculate them on "Quick filter" clicks. Fixes issue #2005. 2010-06-13 10:21:31 +00:00
74f28c4cff Find a way to fix issue #1970 again, this time without breaking remembered data grid node/col as in r3385. Fixes issue #2007. 2010-06-12 00:38:47 +00:00
5bc81b96d2 Make grid scrolling incredibly much faster, by exiting early in SetRecNo if current row is already the right one. See http://www.heidisql.com/forum.php?t=5890 2010-06-11 21:04:52 +00:00
24295f111e Immediately prepare editing when data grid fetches rows, as that implicitly fixes BLOBs detection and enables "Image preview" action. Fixes issue #1948. 2010-06-11 19:52:42 +00:00
d3b6dd6399 Do not create drop down menu on foreign key'd cells in data grid if the foreign table contains more rows than we display in the drop down. That way, the user is able to enter other foreign values than those provided by the dropdown list. See http://www.heidisql.com/forum.php?t=5736#p5930 2010-06-11 19:38:57 +00:00
3c4beba2dd Set and fetch default height of PageControl via constant rather than from the control itself, as that may not be created that early. A minimal chance that this fixes issue #1995. 2010-06-11 16:56:12 +00:00
1bef78634b Avoid endless loop in SQL help topics tree on broken help tables, by displaying a category node as topic item if has the same name as its parent category. Fixes issue #1988. 2010-06-10 22:19:38 +00:00
ada591c368 Repeat automatic calculating optimal column widths in data grid on refresh, as long as user did not resize some column. Fixes issue #2005. 2010-06-10 19:05:14 +00:00
4a78cad0a9 Keep scroll offset when refreshing data grid. Fixes issue #2003. 2010-06-10 18:48:25 +00:00
3476fbed01 Reset stored db and table names when dbtree focus changed, so the grid also refreshes when you add or remove column(s) in the table editor, switch to another table and then back. Fixes issue #1970. 2010-06-10 17:40:09 +00:00
7d29518d7f Fix sporadic AV reported in forum: http://www.heidisql.com/forum.php?t=5911#p5925 2010-06-10 08:37:44 +00:00
51158e7700 Fix detected end offset of DELIMITER query. 2010-06-09 22:48:12 +00:00
d7784a3a25 Don't know what I meant to fix by this split-and-combine-again code, as it only has the effect that lines get trimmed. Remove that code. Fixes issue #2002. 2010-06-09 22:42:54 +00:00
6b9dbf18ee Avoid an AV in cases when main tab is "Data" on startup. 2010-06-09 22:24:43 +00:00
743f9aff2a Cancel grid editors early enough on main tab changes. Fixes issue #1996. 2010-06-09 22:22:47 +00:00
d81cc6cd7b Treat BLOBs like required in grid INSERTs and UPDATEs. Bug report: http://www.heidisql.com/forum.php?t=5883 2010-06-04 18:19:30 +00:00
95f1f59cde Node can be non-assigned in Grid.OnFocusChanged - avoid AVs in such cases. Fixes issue #1990. 2010-06-04 18:05:54 +00:00
0767d5387a Replace "Image view" action code which opened BLOBs in external app by a home brown preview area for images in BLOBs, using GraphicEx library for detecting image types. Also, add a "Save to file" action for any grid cell content. Fixes issue #1960. Fixes issue #492. Fixes issue #955. 2010-06-03 23:19:27 +00:00
203c6f214d SQL splitter: At char #1 there may start a comment. Fixes issue #1980. 2010-06-01 17:33:52 +00:00
d447a9a1a7 AnyGridEnsureFullRow already does a safety check for the right grid and returns True on all other grids. 2010-05-31 22:29:55 +00:00
125995f37f Fix "LEFT(blobcol)" from being used as column name in quick filter menu. 2010-05-31 22:28:05 +00:00
f01823fb56 Fix AV when checking if "Image view" shall be enabled or disabled. Fixes issue #1974. 2010-05-31 22:18:05 +00:00
789567f58c Do not call UnformatNumber() on non-formatted numeric values in grid exports. Instead, format them when option "keep locale numbers" is activated. Broken since r3363. Fixed issue #1976. 2010-05-31 18:15:04 +00:00
84c638f0de Prefer VCL function StripHotkey() over StringReplace 2010-05-30 23:19:23 +00:00
00cf4d95cc Straighten popup menus for data grid and query grids - use one for both, and disable those few irrelevant items when on a query grid. Reveals some missing items for query grids, such as "Set NULL". Also, turn "Set NULL" into a TAction including an icon. 2010-05-30 23:09:06 +00:00
3fe935b5be Disable ImageView action early so the user does not run into error message only because some non-BLOB is focused. 2010-05-29 16:19:03 +00:00
5a2d632890 Use TMySQLQuery.Col(x) instead of Grid.Text[Node, x] in grid exports. Dramatically improves performance as Grid.Text calls Grid.OnGetText which has quite some overhead. 2010-05-29 00:39:45 +00:00
9b1ba49939 Silence two compiler notices. 2010-05-29 00:23:24 +00:00
7c83d1a01e mysql_data_seek() is required for cumulated results (datagrid) on the very first row of an added result, to avoid AVs when that result has its cursor at the end or somewhere in the middle. Fixes an AV when exporting grid data. 2010-05-29 00:21:38 +00:00
d71f9c7295 Be sure to free the allocated TFileStream also in error cases, to avoid successive AVs when trying to write the same file. 2010-05-28 23:23:44 +00:00
2e301d1095 Code cosmetic: Do not pass default parameter in one zillion callers of ShowStatusMsg() 2010-05-28 23:09:38 +00:00
ac50ae75ce Display status message on long running sort operations in query grids. 2010-05-28 23:00:57 +00:00
32c905524e Set result grid's parent control *before* hiding it. Fixes issue #1973. 2010-05-28 22:48:20 +00:00
5351f8df23 New feature: When mouse hovers over status bar panel holding the server version, display various connection related details in a hint. 2010-05-28 19:41:17 +00:00
3feebd877f Apply a better fitting icon to "Image view" action 2010-05-28 15:34:56 +00:00
389d9a5a9c Invert background colors of selected/unselected result tabs, to enhance readability. 2010-05-28 14:04:02 +00:00
d1db340f7b Wording: Display "Idle" instead of "Ready" in status bar 2010-05-28 13:45:54 +00:00
8f1e3107fa Code cosmetic: Move default status message to the right procedure. 2010-05-28 13:44:58 +00:00
18ec767e7a Closing string encloser must be same as opening one. Fixes issue reported in forum: http://www.heidisql.com/forum.php?t=5856 2010-05-27 20:34:47 +00:00
56ce17181f Move detection of best table name to helpers unit, away from several methods where we make use of it. Fixes issue #1967. 2010-05-27 18:11:51 +00:00
823269e2ca Fix cosmetic bug in r3347: If very right status bar panel has empty text the hourglass icon was displayed. Instead, force its text in these situation to "Ready". 2010-05-27 07:36:37 +00:00
d14efcc922 Indicate SQL errors in progress bar, if Aero is activated. 2010-05-27 00:09:21 +00:00
e9063271f1 Draw various icons in status bar. 2010-05-26 23:58:30 +00:00
f3a9265775 String enclosing char must not be counted when previous char was a backslash. Fixes issue #1964. 2010-05-26 23:19:54 +00:00
9984bf0236 Issue #1135: Implement tabs for multiple batch results in a query tab. Does not yet show multi results of stored procedures. Maximum number of tabs is customizable in Preferences > Data. 2010-05-26 23:11:08 +00:00
53f3010689 Make QuotedDbAndTableName more universal, and let DatabaseName return current db on old servers early. 2010-05-22 07:03:03 +00:00
6694a3247f Allow digits and dot in word characters so ReformatSQL does not split known keywords from database, table or column names. Fixes issue #1944. 2010-05-22 07:01:11 +00:00
d846ff4326 Remove dead code, previously used by rewritten parseSQL(). 2010-05-22 06:47:40 +00:00