Commit Graph

1654 Commits

Author SHA1 Message Date
Ansgar Becker
99a4580be0 Work around a possible timing issue, when the db tree is painted with more nodes than the database has objects. Guess that occurs on a reconnection. Fixes issue #1621. 2010-01-26 20:00:13 +00:00
Ansgar Becker
b0ccbaadbd Minor code simplification 2010-01-24 15:15:46 +00:00
Ansgar Becker
798cc36b99 Remove TMySQLConnection.Capabilities , which should have brought some light into the feature set of the server. Still doing that per version comparison which is nice enough. 2010-01-24 15:07:03 +00:00
Ansgar Becker
5d7b25d7e9 Add preference option to restrict number of application instances to 1. If the executable is open and called a second time, it's brought to foreground. Plus, if a filename was passed, a new tab is opened. Should fix a part of what is described in issue #1332. 2010-01-24 00:14:23 +00:00
Ansgar Becker
f7ed772b29 Code cosmetic: Remove dead code, and bring some variables into the right order 2010-01-24 00:03:51 +00:00
Ansgar Becker
97ce23ee1f Add support for indexes using BTREE/RTREE/HASH algorithm. Make that visible in a new, 3rd column in the index tree. Fixes issue #1576. 2010-01-22 10:21:27 +00:00
Ansgar Becker
a5a1e138b8 Don't quote numeric values in grid export as SQL. See: http://www.heidisql.com/forum.php?t=4885 2010-01-22 08:54:25 +00:00
Ansgar Becker
24e59b329b SizeOf(AnsiStrings) returns 4, the size of a 32 bit pointer, not the number of bytes which one char takes. Fix that. Also, stabilize text copying to clipboard by just using Clipboard.AsText. Fixes issue #1614. 2010-01-19 23:51:00 +00:00
Ansgar Becker
1008dcf194 Convert MySQL date/time values more safely against 0-dates. Fixes issue #1613 2010-01-19 23:19:19 +00:00
Ansgar Becker
b43b44ee5a Columns of selected datagrid object can also come from a view, so ParseTableStructure is not sufficient in both data sorting and column selection forms. Instead, just use mainform's lists which are exactly what we need. Fixes issue #1611. 2010-01-19 22:49:18 +00:00
Ansgar Becker
9f3ad6640c Wording: Users know the differences between INSERT/REPLACE/DELETE+INSERT . Say it more clearly in the selection box what gets generated. 2010-01-19 00:58:07 +00:00
Ansgar Becker
4b91154d6e Do not generate "_binary 0x" for empty blobs. Fixes issue #1610. 2010-01-19 00:55:04 +00:00
Ansgar Becker
b1a7e7780f Add formatted HTML to clipboard for "Copy rows as HTML". Fixes issue #1249 2010-01-19 00:45:31 +00:00
Ansgar Becker
a0a1ed24c2 If the first column with the number of the column has too less width, sometimes it's not clear that the user can resize it to show its whole text. This change adds an auto-resize mechanism, which is fired after any node structure was changed. Fixes issue #1609. 2010-01-18 08:22:18 +00:00
Ansgar Becker
a9e1f12096 Save a loop for finding the right tree node in topic browser, when the user already clicked the relevant item. Fixes wrong item selection when item text exists twice or more often (e.g. "SHOW PLUGINS") Fixes issue #1575. 2010-01-17 16:52:43 +00:00
Ansgar Becker
1f39e59940 Disable non working column default values for given data type. Fixes issue #1519. 2010-01-17 16:12:35 +00:00
Ansgar Becker
c85ed71ba0 If user disables "Allow NULL" for some column which has NULL as default value, silently change that default value to "No default", instead of "Custom text". Additionally, this fixes the default text "NULL" as literal in such cases. 2010-01-17 15:23:11 +00:00
Ansgar Becker
5890aad90f Do not pass <Enter> key to parent grid, if radio button or checkbox on default editor is currently focused. Fixes issue #1605. 2010-01-17 13:31:49 +00:00
Ansgar Becker
0d8653db6a Override VirtualTree's incremental search event, make it case insensitive, and apply that event in FixVT to various lists and grids, which have IncrementalSearch enabled. Fixes issue #1605. 2010-01-17 10:50:47 +00:00
Ansgar Becker
8ba9fb7b77 Allow space bar to modify checkbox columns "Allow NULL" and "Unsigned". Fixes issue #1605 2010-01-17 10:20:08 +00:00
Ansgar Becker
5c29403c7b Auto-fix user selected, non working default value/type when data type has changed. Fixes issue #1411. 2010-01-17 07:43:14 +00:00
Ansgar Becker
ec1da49440 "Duplicate row" feature:
* Don't flag empty/non-NULL cells as modified.
* Ensure the right row data is referenced, some operations seems to work on a copy of records, some on the original one.
2010-01-16 21:30:30 +00:00
Ansgar Becker
c2857f438a "Duplicate row" feature:
* Copy NULL flag from source row, not just the text "(NULL)". Fixes issue #1607
* Do not overtake values from an auto increment column. Fixes issue #1608
2010-01-16 17:46:11 +00:00
Ansgar Becker
8b9c7da6fb Do not hide focus rectangle in trees and grids. Can be useful to see which control has focus. 2010-01-16 15:58:47 +00:00
Ansgar Becker
2e00bdf37d Add SOME keyword to keyword highlighter. Fixes issue #1606 2010-01-16 14:42:18 +00:00
Ansgar Becker
a3e5682316 Ignore stored ORDER columns for removed or renamed columns. Fixes issue #1594. 2010-01-16 08:26:42 +00:00
Ansgar Becker
4847e55bf0 Enhance query tabs:
* Code cosmetic: use generics to avoid type casting on QueryTabs items
* Warn when trying to save a query via "Save as" to a filename which is already open in another tab. Fixes issue #1591.
* If the above warning is ignored and file gets saved, flag all other tabs with same filename as modified and display the asterisk on the tab
* Also flag as modified in "Save" action, without the warning popup.
2010-01-16 07:46:22 +00:00
Ansgar Becker
43d98ec1be Ensure full width of key column values in base SQL of data grid. Also, do not blow SELECT query with LEFT() unless the column has a larger length than 256. Fixes issue #1602. 2010-01-15 21:20:42 +00:00
Ansgar Becker
9080ad7607 No need to use the Wide* version of string functions any longer. 2010-01-15 20:28:48 +00:00
Ansgar Becker
492f7d04eb Fix injection of database name for direct SQL export to database. Also, do not surround procedure+function creation with DELIMITERs when exporting to database or server. See http://www.heidisql.com/forum.php?t=4803 2010-01-15 19:44:44 +00:00
Ansgar Becker
d70ea85786 Ask user if in-memory modifications to table, view, trigger or routine should get saved, this time including a Cancel button, which cancels either
* focusing a different object in database tree and/or
* closing application
TODO: Internal switching to different connection probably needs that too?
2010-01-15 17:13:24 +00:00
Ansgar Becker
52ea8f410a Use Unicode enabled TStringList instead of TWideStringList in all places. Should have no visible effect, apart from a very minor performance optimization, as String reference pointers are handled by Delphi, WideString by Windows. 2010-01-14 19:41:58 +00:00
Ansgar Becker
1731e61570 Convert remaining WideString constant to String 2010-01-14 18:25:32 +00:00
Ansgar Becker
307bb8ca65 Fix sporadic AV which seems to follow after a reconnect with no db selected. 2010-01-14 18:23:17 +00:00
Ansgar Becker
fcb62acc07 Enhance too bright NULL colors for grids. Fixes issue #1584. 2010-01-13 22:44:00 +00:00
Ansgar Becker
24b675cb25 Tweak message in status bar "db: xyz object(s)", add count for all different object types. Fixes issue #1596. 2010-01-13 20:43:25 +00:00
Ansgar Becker
473716c8b9 Refill data grid when pressing "Clear filter". Seems reasonable not only to clear the filter editor. Fixes issue #1598. 2010-01-13 19:50:44 +00:00
Ansgar Becker
b09e8a6816 Extend list of known MySQL keywords with those in http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html, but not in our own list. Fixes issue #1600. 2010-01-13 19:45:53 +00:00
Ansgar Becker
81c13edbf0 Wording: use "object" instead of "table". Related to issue #1596. 2010-01-13 06:56:50 +00:00
Ansgar Becker
9b8fb4cc1f Fix critical character in SQL on old servers which can be converted using the local codepage. Fixes issue #1569. 2010-01-12 22:17:54 +00:00
Ansgar Becker
7aaa5af2c2 Avoid accessing non existent dropdown item. Fixes issue #1597. 2010-01-12 18:36:29 +00:00
Ansgar Becker
aad22b923c Fix incorrect base SQL for large SQL dumps which need more than 100MB loop. Reported via forum: http://www.heidisql.com/forum.php?t=4769 2010-01-12 06:33:02 +00:00
Ansgar Becker
df6397abc7 Fix detection of VARCHAR columns as BLOBs on 4.0 servers. Workaround for shared type FIELD_TYPE_* constants should only apply to (TINY|MEDIUM|LONG)TEXT columns. Fixes issue #1588. 2010-01-11 22:24:25 +00:00
Ansgar Becker
8abd2d0d76 Keep "Save" action enabled even if current query tab has no filename, so "Save" executes the "Save as" in such cases. Fixes issue #1590. 2010-01-11 21:58:19 +00:00
Ansgar Becker
ef3501e9c1 Exit to avoid AV when query tab was closed and contents were saved. Fixes issue #1593. 2010-01-11 06:48:56 +00:00
Ansgar Becker
4d47af1e9e Code cosmetic:
* Sanitize main unit from unused variables
* Move global variables to public scope
* Bring public vars into some reasonable order
* Move constants to const.inc, unless dependent from some used VCL unit
2010-01-10 17:11:42 +00:00
Ansgar Becker
1a4db545c5 Refactor layout and code of about dialog. 2010-01-10 16:22:53 +00:00
Ansgar Becker
43b010d227 Inject SVN revision into executable's version infos last segment (4.0.0.[r]). Don't modify main.pas any longer, just version.rc by a new console app. 2010-01-10 13:53:52 +00:00
Ansgar Becker
85bf9b1602 Remove non existent properties of SynMemoCompletionProposal. Fixes issue #1582 2010-01-08 13:48:27 +00:00
Ansgar Becker
25ac096554 Make more use of Generics, this time for columns, keys and foreigne keys lists, used by main unit and table editor. Frees code from annoying casting and makes it more type safe. 2010-01-08 00:30:51 +00:00