1861 Commits

Author SHA1 Message Date
ddf3b16fd9 Move code which lists session names in pulldown from FormCreate to FormShow, so the current session is excluded, not the previous one. Fixes issue #1841. 2010-04-08 23:48:01 +00:00
5f8300e994 Fix usage of wrong regular expression match number. Fixes issue #1834. 2010-04-08 23:39:26 +00:00
5131f2a4de Fix "List index out of bounds" in HandlePortableSettings() when Explode adds an empty item onto the end, since r3231. Fixes issue #1838. 2010-04-08 23:30:00 +00:00
2c319fb80a Fix non restoring of used database from last session 2010-04-08 23:21:48 +00:00
5f9129bef2 Implement event editor for MySQL 5.1+ servers. Also, simplify some code around database objects and their editors. Fixes issue #1527 2010-04-08 23:16:40 +00:00
ea8574bc1a Fix some AVs around ListTables by reintroducing recently deleted connection event OnDBObjectsCleared. Required in cases where cache is cleared or refreshed (!) elsewhere and ListTables get repainted later. 2010-04-04 23:30:37 +00:00
45ba97b13f Add button and global action for executing selected functions and/or procedures by click. Fixes issue #1818. This requires some parsing code to be moved to helpers unit so it's also available in ListTables' context menu. Also, to avoid new AVs, any db object editor now focuses the edited object in the tree, which is important for creating new ones which were neither existant nor focused. 2010-04-04 22:33:12 +00:00
c0533a2f78 Assign icons to several buttons in "About" dialog. 2010-04-03 21:49:45 +00:00
f014190c9c Do not clear cache with db objects in a reconnect situation. Heals several AVs where we rely on some valid TDBObject, also when server stays unreachable. Fixes issue #1819. Also, this makes it superfluous to have an event fired after clearing the cache. 2010-04-03 21:30:11 +00:00
2d9a4bc70e Refresh and repaint ListTables immediately after reconnect, to avoid AVs on double click. 2010-04-03 17:10:59 +00:00
a3dd2e86df Enhance window positioning on startup: If window was maximized on second screen, old Left+Top values were restored next time. Fixes issue #1826. 2010-04-02 13:14:25 +00:00
6b7a76c7e9 Update old session parameters after saving, so later modifications are detected correctly. 2010-04-02 10:38:24 +00:00
b96349f929 Remove Esc shortcut from "Discard" buttons, to avoid accidentally undoing complex changes to routines or views. Fixes issue #1824. 2010-04-02 10:27:04 +00:00
3c9dcfaaa0 Last tweaks for SSH tunnel, issue #401:
* Only pass SSH port if not empty
* Put right default file extension for selecting a PuTTY private key file (*.ppk)
* Add text hints on more input fields
* Indicate modified session also if SSH host, port or key file was changed.
2010-04-02 07:33:36 +00:00
adf68ecc65 Issue #401: Extend SSH tunnel options: Allow user to set SHH host/ip and port, and a private key file used for authentication. If SSH host is not set, use what the user specified as MySQL server host. 2010-04-01 23:34:07 +00:00
7e80d8dd34 Forgot to set hottracking option on ListDatabases 2010-03-31 20:17:52 +00:00
c196a4af69 Extend columns in database tab to display separate number of tables, views, procedures, functions and triggers per database. 2010-03-31 20:13:54 +00:00
899040655c Add sub tab "Databases" with a more detailed list than the tree has. Also, paint bars for size and number of items in it. Implement TMySQLConnection.GetDBSize() which caches the size of dbs, synchronized with DBobjectlists. 2010-03-31 19:13:22 +00:00
79fc6c74d4 Modify logic in Explode(), so it returns an empty last segment when returning list has one or more items already. Fixes issue #1821. 2010-03-31 11:08:51 +00:00
0ec02d6fa3 Issue #401: Hide console window by passing CREATE_NO_WINDOW to CreateProcess(). 2010-03-31 10:36:46 +00:00
0970f5c2bd Implement SSH tunnel with plink.exe on session manager. Fixes issue #401 Plus:
* Simplify code for getting connection parameters from registry by implementing helpers:LoadConnectionParams()
* Use combobox for network type instead of radio buttons, now that 3 options would need more horizontal space than we have
* Hide tabs on session manager which are irrelevant for the selected network type (e.g. no SSL options for named pipe)
* Some minor code simplifications
2010-03-30 23:22:08 +00:00
5309366fa4 Code cosmetic: Integrate code fro ShowHost() back into DBtreeFocusChanged(). Also, give page control a change hit, so the filter editors are updated correctly per tab. 2010-03-28 12:17:54 +00:00
3ddf1cbd15 tabEditor gets hidden if user selects server root node but active tab was not changed to "Host" in that case. Instead, for a millisecond tabData is visible which calls DataGrid.OnPaint and causes AVs as no table is selected any more. Fixes issue #1809. 2010-03-27 14:03:28 +00:00
638ac7689d Reset old name of column when user clicks "Save". Also, update ALTER and CREATE code at that time. Fixes issue #1810. 2010-03-27 13:54:34 +00:00
b47ddd730d Min() and Max() break 64 bit Integers to 32 bit. Avoid using these functions in relevant context. Fixes issue #1803. 2010-03-27 08:04:27 +00:00
6bc47ac3df Use default registry key for storing main window dimensions, remove separation of different screen resolutions. Leaves accessing registry to GetRegValue which cannot handle sub keys. Fixes issue #1807. 2010-03-27 07:21:32 +00:00
42fae0ebd6 In portable mode, auto delete left behind registry keys from earlier instances which didn't do that themselves, because they were closed unclean or terminated by user. 2010-03-26 21:08:48 +00:00
11523c3bc2 SQL exporter: Don't trust a cached TDBObject if a table says it has 0 rows. There may be rows inserted from outside since the database cache was filled. See http://www.heidisql.com/forum.php?t=5367 2010-03-26 20:15:10 +00:00
d0d015339b Add dummy GET parameter holding current time, to force loading that file, even after the VCL internals have that file cached somewhere. Fixes issue #1806. 2010-03-26 18:53:35 +00:00
61ad785e6b Enable "Export" button after selecting "Clipboard" target. Fixes issue #1804. 2010-03-26 14:50:02 +00:00
1b869e43ac Slightly decrease maximum width of colored bars in lists, so their right edge doesn't display as if cut off. Fixes issue #1803. 2010-03-26 14:41:41 +00:00
254c156964 Use id of current process in registry key, not the thread id. 2010-03-25 22:26:19 +00:00
954b32b0df Display "HeidiSQL Portable" in window title 2010-03-25 22:13:18 +00:00
9acec6dfe1 Code cosmetic: Remove last XYZWindow() function 2010-03-25 21:42:18 +00:00
aa9525e527 Unify default sorting of database objects in tree and lists. Fixes issue #1799. 2010-03-25 21:03:37 +00:00
e47a7c6158 Fix unsaved output setting when "Database" was selected. Also, fix disabled pulldown holding databases in such cases. 2010-03-25 06:48:03 +00:00
c0d33af4fd Move menu item "Find text on server" from "Tools" main menu to "Search", and find a better icon for it. 2010-03-24 23:23:38 +00:00
61e4ff0603 Add option to export SQL to clipboard. Fixes issue #1798 and issue #506. 2010-03-24 22:22:21 +00:00
1ef9ebf07b Fix wrong ALTER code when changing a column name more than one time. Fixes issue #1792. 2010-03-24 17:18:48 +00:00
1ffea39756 Validate user + host name input in OnExit, not OnChange, which is too early when one of them gets reset. Fixes issue #1794. 2010-03-24 17:05:21 +00:00
92fdcbb481 Set focus on query editor after double click on db tree or query helpers box. Fixes issue #1796. 2010-03-24 16:36:13 +00:00
d67f746de8 Fix AV on application exit while datagrid has pending changes. Fixes issue #1780. 2010-03-24 13:45:48 +00:00
ed5ec1e122 Rethink portable releases:
* Remove complicated and unreadable NSIS stuff. No need to have a installer for a developer application. ZIP file is fine.
* On startup, if a portable_settings.txt exists in the application folder, heidisql.exe will read its contents into a unique registry key.
* In MainForm.OnDestroy, settings are written to that file again, and the reg key gets deleted.
* Avoid using Microsoft's .reg file syntax, as you need admin privileges to store and restore such files, even when using the appropriate Windows API functions.
2010-03-22 21:10:38 +00:00
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
3168a3e277 Fix flicker and crappy text display in status bar after explicit repaint. 2010-03-21 07:40:27 +00:00
067036c7ef Make regular expression safe against huge length/set attributes of column types. Fixes issue #1786. 2010-03-20 22:32:57 +00:00
3ef86ccdb3 Remove nonsense from old MDI days, where OnActivate needed to update its child windows. 2010-03-20 21:54:28 +00:00
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
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
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