80 Commits

Author SHA1 Message Date
f01893d08a Experimental: Reintroduce table tab, this time by placing the existing editors for tables, views and routines as TFrames onto that tab. Unfortunately a whole bunch of GUI changes involved here which makes the diff unreadable. Should solve issue #1149 . 2009-06-04 12:56:55 +00:00
40d0aee4bb Solve issue #1166: Export suggests database as filename name. As long as the filename was not manually changed, it is set to [last used directory]\[selected database].sql 2009-05-25 19:14:40 +00:00
d139ab355d * Replace all "Edit table|view|..." buttons and menuitems by one single "Edit" item.
* Move "Create table|view|..." items into a submenu and have one single "Create" item
* Remove all above mentioned buttons from the main toolbar, leaving them in the context menus where there function is more predictable
* Streamline context menu of db tree and database tab
Fixes issue #1139, issue #1124, issue #1108, issue #820, issue #738, issue #595
(The diff tends to be unreadable here, as there are many automatic GUI adjustments after having removed a toolbar)
2009-05-19 22:37:22 +00:00
7f32b33505 Issue #436: Implement a new table editor dialog. Nukes both create + alter table dialogs. 2009-05-12 22:24:09 +00:00
1d56021ee5 By default, set more reasonable SQL output file to <user name>\Application Data\<database>.sql, instead of <progam files>\HeidiSQL\export.sql . See also http://www.heidisql.com/forum/viewtopic.php?p=3156 2009-04-19 06:15:43 +00:00
2f604311bf Fix issue #838 (superflous "0x" prefix on empty blobs) 2009-04-06 20:06:34 +00:00
dbb84e6df9 Integrate stored procedures and functions into the GUI flow, so they are visible like tables and editable from everywhere.
- FetchDbTableList now makes use of various tables in INFORMATION_SCHEMA if available - the only way of listing stored routines.
- If a routine is selected, Table + Data tab hide their grids and display a corresponding message instead. Seemed the only way to keep the normal flow of clicks, not changing too much click logic.
2009-03-02 21:40:44 +00:00
049f709f36 Implement "Yes, overwrite all and don't ask me again about that" button in export to directory, see rfe #880 2009-02-14 13:48:53 +00:00
d6e40bef96 Use Main.SessionName as a replacement for FConn.Description. 2009-01-03 19:22:22 +00:00
909d31fd64 Simplify writing settings to registry:
* 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.
2009-01-03 17:16:11 +00:00
f1b3f5501f Remove last traces of MDI (issue #513). Merges code, controls and events from childwin into main. 2009-01-01 23:24:36 +00:00
6d641a1f29 Add date/time to SQL output, issue #483 2008-12-12 21:20:13 +00:00
9ba3b630f5 Fix bug #876 : Incorrect database name '' 2008-11-23 11:25:53 +00:00
2afcc9104b Fix bug #751 exporting a table: table is not marked in the export dialog 2008-10-20 23:38:31 +00:00
9b53c06018 Fix part 1 of bug #307 export to directory did not create files for each table if "Table structure" was unchecked. Instead the data was found in the header file afterwards. 2008-09-13 09:54:27 +00:00
5c9a096179 Use WideFormat() instead of Format(). 2008-09-02 15:07:25 +00:00
881da41fa0 * Export binary data to SQL without corruption.
* Add todo notes in GridTo[Xml,Csv,Html}.
* Whitespace adjustments.

Partly fixes issue #659.
2008-09-02 15:05:02 +00:00
807484ab6e Use Format() where appropriate. 2008-09-02 14:19:58 +00:00
5d877d7f18 Avoid overflowing the target compatibility box. 2008-09-02 07:21:23 +00:00
883cd1e7d8 Avoid mucking with other client applications character_set_connection: do not emit a SET CHARACTER SET into exported SQL files. Instead rely on the receiving application to correctly interpret files in Unicode format. 2008-09-02 07:14:33 +00:00
92f4ebc762 Bugfix: (regression) avoid using 4.x functions UUID() and IS_FREE_LOCK() during export. 2008-09-01 18:23:22 +00:00
020b620c47 Avoid destructive actions (DROP before CREATE) when user tried to do a 'recreate' action on two sessions connected to the same database. Fixes issue #703. 2008-09-01 17:51:25 +00:00
85075d5be7 * Fix inconsistent enable/disable of the other host database dropdown.
* Fix generating wrong SQL when non-enabled cbxDatabase was checked.
* Correct wording a few places.
2008-09-01 16:21:24 +00:00
9a52593dc2 Use Vista's Segeo font for all forms by using the SetVistaFonts() in mainform plus the new routine InheritFont() which simply overtakes fontname and size from the mainform to all other forms. 2008-08-29 18:20:14 +00:00
8367deb592 Fix bug #613 Target database not remembered in Export window 2008-08-26 19:38:49 +00:00
2cff5732fc Remove no longer needed routine for autocalculating row limit: GetCalculatedLimit. The Export SQL dialog now uses a constant number of 5000 rows fetched per step. Also removes the option in the preferences screen for limiting the data amount, which was misleading the user before and only used to limit the export stuff. 2008-08-26 09:09:41 +00:00
6daf4b3f76 Fix most remaining Unicode unsafe GUI controls. 2008-08-25 20:24:00 +00:00
87a804275a Fix bug #683, cli version exports escaped and quoted like ANSI exports. 2008-08-15 20:42:21 +00:00
a686c05cd8 Stop telling users ANSI SQL is some neutral target version which works for every dbms 2008-08-15 19:51:39 +00:00
aabd4bbf57 Add some more support for databases and tables with unicode characters. 2008-08-08 19:32:24 +00:00
70370dca8c Always export files in UTF-8. 2008-08-07 19:44:40 +00:00
614a6a813c "Fix" regression from one of the previous revisions. Rather a null reference than a random pointer. 2008-08-07 18:33:46 +00:00
e01567dcb6 Revert r1609. 2008-08-07 18:19:24 +00:00
1680561311 Fix Utf8 field contents displayed in datagrids and exported to SQL. 2008-08-04 20:48:44 +00:00
732fadd17a Try to fix bug #620 "Export utf-8 table content broken" by using WideStrings in all relevant places. Couldn't find a way to fix TZConnection.GetEscapeString, so this replaces that call by WideStringReplace which should do the job as well (although I remember that was a performance problem on large memos).
Todo: TField.AsWideString seems to be broken for ftMemo fields with utf8 collation.
2008-08-04 20:39:33 +00:00
04d314d5ea Autolimit optimizations:
- Do not uncheck the LIMIT checkbox if the value in EditLimitEnd is larger than the total row count. In such (very common) cases it doesn't matter if a LIMIT is applied or not, so we don't annoy the user now by not auto-unchecking it.
- EditLimitEnd's value was never increased, only decreased, as of r1521. This seems more annoying than it helps prioritizing what the user wants.
2008-07-16 23:07:09 +00:00
ffc58c022b Revert broken r1561. Worse than before - more AVs, even when pressing a speedbutton which has loaded its icon correctly. Weird. 2008-07-02 22:33:05 +00:00
94822c33fa Fix one critical AV, part of bug #580 . Loading a PNGImage from a TPNGImagelist onto a TSpeedbuttons seems buggy. Instead, assign icons at designtime. Ugly fix as we now have redundant icons, anyway, we should look after not using TPNGSpeedbutton in too many places. 2008-07-02 22:21:04 +00:00
5c7631796f Add specific modes supposed to include various brokenness in mysqldump. Hopefully we won't have to discuss whether to account for a specific brokenness in mysqldump ever again. I almost couldn't be happier if MySQL actually fixed their bugs ;-). Fixes issue #537. 2008-06-25 05:46:19 +00:00
5c1c61af8b Work around a bug in MySQL server; NO_BACKSLASH_ESCAPES is not included in ANSI mode, even though according to the manual:
"NO_BACKSLASH_ESCAPES enables an SQL standard compatibility mode, where backslash is 
not considered a special character."
2008-06-25 04:31:14 +00:00
41074d211e Convert database tree from TTreeView to TVirtualStringTree.
- Fixes bug #271 "F5 shortcut in database tree not working"
- Fullfills rfe #519 "Highlight selected item in tree view when focus is elsewhere"
- Fixes inconsistent expansion state of nodes after refreshing
- Fixes plus sign staying when a db node with 0 tables was selected
- Slightly enhances painting speed within the dbtree
- Removes temporary storage of a rightclicked node (DBRightClickSelectItem). VirtualTree handles its right clicked selection exactly like the left clicked one, which makes makes coding a bit cleaner as we can always use the selected item instead of hacking with the right and left clicked node. On the other side it removes a quite user friendly feature. Well, we can reimplement this feature later, though it's not user UNfriendly currently.
- Reasonably rename the StringList "OnlyDBs" to "DatabasesWanted" and "OnlyDBs2" to "Databases"
2008-06-13 23:05:51 +00:00
d0a0a22443 Display sizegrip in the lower right corners of all resizable forms which have no TStatusbar. (For copyright notices see code in helpers.pas) 2008-05-12 17:55:06 +00:00
c70bc467b1 Find a well working replacement for platform specific SelectDirectory function in StdActns unit. Fixes a corresponding compiler warning about using FileCtrl unit. 2008-03-29 17:09:51 +00:00
19f463b1d0 Code comments... 2008-03-29 16:13:31 +00:00
38caa4cd99 Make most "btnCancelClick" procedures superflous by assigning the correct ModalResult (mrCancel) to the relevant cancel buttons. 2008-03-09 20:27:12 +00:00
9618ac94b3 Fix directory selection in dialog "Export SQL": Root directory was set to previously selected directory which made it impossible to select parent directories of that one. 2008-03-09 20:04:13 +00:00
e53db0a9b7 PngIcons:
- Ban glyph data of all TSpeedButton's + TBitBtn's out of dfm files by converting them to TPngSpeedButtons and assign an image from PngImageListMain at runtime.
- Add "highlight" versions of "database" and "table" icons and use these on selected DBtree nodes.
- Remove no longer used BMP icons

Todo: Fill PngImageListMain at runtime.
Note 1: TBitBtn's are not Windows-theme-aware, even with a manifest in place, so we should avoid using them anywhere.
Note 2: T(Png)SpeedButton lacks a TabOrder property, so some of the other TabOrder's are automatically changed here.
2008-03-09 19:56:52 +00:00
815eea1481 Rename childwin's "Description" property to "SessionName" which says more exactly what it really is. 2008-03-05 12:21:25 +00:00
4e23728aa2 - Move all hardcoded preferences names (registry) plus their default values to const.inc to fix inconsistencies like the one described here: http://www.heidisql.com/forum/viewtopic.php?p=1739
- 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.
2008-02-06 00:00:52 +00:00
1671ea2c19 Move all code for adjusting CREATE TABLE statements to a specific version from exportsql.pas to fixSQL(). Using SynEdit's nice regular expression object. Fixes bug #1843890 "Exportfile: YPE=MyISAM; (missing T)" 2007-12-17 23:12:35 +00:00