Commit Graph

3046 Commits

Author SHA1 Message Date
Ansgar Becker
ff7ead47bc Issue #3334:
* Decrease connect timeout for donation state check from 30s down to 3s, so especially on application start noone has to wait too long only because heidisql.com is down again.
* Return TThreeStateBoolean in HasDonated(), so we can display an appropriate warning when the HTTP check was unsuccessful
2013-09-17 18:11:15 +00:00
Ansgar Becker
c1b1a5f52e Unescape default text value for a column when inserting a new grid row, so \r and \n and whatever does not get into a cell as a literal. Fixes issue #3283. 2013-09-14 15:27:44 +00:00
Ansgar Becker
7ddd451347 Issue #3334: Revert previous commit. Assume false (not unset) if no donator email given. This way, we can gracefully disable donate buttons if webpage check was unsuccessful. 2013-09-14 05:31:06 +00:00
Ansgar Becker
3bee836933 Issue #3334: FHasDonatedDatabaseCheck flag must be true, otherwise all empty email addresses would return true. 2013-09-14 05:16:07 +00:00
Ansgar Becker
3a6531c965 Issue #3334: Check heidisql.com for the given donator email address, provided in the about dialog. 2013-09-14 04:57:33 +00:00
Ansgar Becker
d7cdd3cd91 Provide a way to enter the donators email address in the about dialog, and hide all donate buttons if a check on heidisql.com succeeded. Fixes issue #3334. 2013-09-13 04:32:28 +00:00
Ansgar Becker
37487e821a Remove unused uses clause. 2013-09-11 20:14:09 +00:00
Ansgar Becker
74ca351be6 Add donate button to 3 places:
* main toolbar
* about dialog
* updatecheck dialog
2013-09-11 20:11:25 +00:00
Ansgar Becker
fc68ab5cae Revert r4357 (add database name in GetCreateViewCode), to fix issue #3329 (view export includes superfluous database name). Issue #3098 is still fixed, by the later r4479 (get view columns from IS.COLUMNS). 2013-09-11 04:26:35 +00:00
Ansgar Becker
82979ae28b New attempt to fix the file reader for cases where the chunk size end is within a multibyte character. Increase chunk size per loop and retry reading the chunk. See http://www.heidisql.com/forum.php?t=13044 2013-09-10 04:43:56 +00:00
Ansgar Becker
78a47a9327 Be more verbose in RunQueryFile(), on the progress dialog. 2013-09-08 05:40:14 +00:00
Ansgar Becker
1a5d91e236 Revert r4503, except for the removed helpers.ScanNulChars() and helpers.RemoveNulChars(). Seem Delphi's encoding detection is totally broken. Also, TStreamReader has bugs and hangs on the second call to ReadTextfileChunk(). Most files should be read fine again, including those mentioned in issue #3331. Also fixes issue #3328.
TODO: fix reading specific UTF8 files, mentioned on http://www.heidisql.com/forum.php?t=13044
2013-09-08 05:34:11 +00:00
Ansgar Becker
7e9c433bf0 Prefer Windows.GetCommandLine over ParamStr() when parsing command line parameters. ParamStr() removes double quotes. 2013-09-07 11:46:58 +00:00
Ansgar Becker
1006dbda2c TJumpList.Apply seems to trigger "Access denied" exceptions in some cases. Log these in the log panel, but do nothing when that happens. See http://www.heidisql.com/forum.php?t=13339 2013-09-06 06:53:21 +00:00
Ansgar Becker
d9634ca762 Commit new file, forgotten in previous commit. 2013-09-05 08:38:01 +00:00
Ansgar Becker
4593fd1a4c Introduce Win7+ jump items on task button. See http://www.heidisql.com/forum.php?t=12385.
Using JumpList unit from Serhiy Perevoznyk, http://delphi32.blogspot.de/2011/05/adding-windows-7-jump-list-to-delphi.html
2013-09-05 08:33:38 +00:00
Ansgar Becker
facfcc88eb Code cosmetic: Move public AppVer* variables to private scope and introduce public properties for the both which are read publicly. 2013-09-05 08:29:15 +00:00
Ansgar Becker
9fd63ce0c1 Edit raw numbers, not their formatted version which is used for displaying. See issue #653. 2013-09-04 15:38:38 +00:00
Ansgar Becker
a38c70b99e * Try a new approach in helpers.OpenTextFile(), helpers.ReadTextfile() and helpers.ReadTextfileChunk(): Based on TStreamReader instead of TFileStream now, so we can finally rely on Delphi internals for detecting a file's encoding. Also, this should fix read errors in some UTF-8 files, e.g. mentioned on http://www.heidisql.com/forum.php?t=13044
* Remove helpers.DetectEncoding(). Use a separate TStreamReader in the only caller to detect the encoding of a selected file
* Remove helpers.ScanNulChar()
* Remove helpers.RemoveNulChars()
2013-09-04 07:53:44 +00:00
Ansgar Becker
22cd9dd920 Issue #3324:
* Merge "Highlighter" tab into "SQL" tab again, to keep a low number of tabs
* Divide "Data" options tab into "Data appearance" and "Data editing" tabs, to make room for the new checkbox option "Local number format"
* Introduce the new data option "Local number format"
2013-09-03 17:54:03 +00:00
Ansgar Becker
ad93dcebb2 Issue #3324: When copying from a numeric grid cell, use raw numbers, not the formatted version. 2013-09-02 18:20:19 +00:00
Ansgar Becker
38216627fd Use internal flag to remember whether new grid text was pasted from clipboard. This way we can again use "Grid.Text[] := xyz", which triggers AnyGridNewText(), which again is able to pass the right "Null" parameter to TDBQuery.SetCol(). This fixes issue #3325 (invalidated controls, especially "cancel changes" action after pasting). Also, this fixes pasted formatted numbers not being unformatted internally. Finally, we have 5 lines of code less than before :) 2013-08-31 05:47:03 +00:00
Ansgar Becker
92a460030d Show thousand separator in data grids. Fixes issue #3324. 2013-08-31 05:07:20 +00:00
Ansgar Becker
25c71448b2 Introduce TMainForm.FGridCopying flag, and use that to temporarily disable integer to datetime conversion in AnyGridGetText(). Fixes issue #3322. 2013-08-29 04:54:47 +00:00
Ansgar Becker
0759ea2f8c Code cosmetic for getting server version:
* Remove properties ServerVersionInt and ServerVersionStr from TDBConnection
* Instead, move private GetServerVersionInt() and GetServerVersionStr() to public scope, named like the previously used properties now
* Remove overridden methods in descendants of TDBConnection, do it with a version conditional in the upper class
* Finally, remove ConvertServerVersion() and merge code into ServerVersionStr()
* We have 7 declarations and 3 implementations less than before
2013-08-28 04:41:58 +00:00
Ansgar Becker
fddad4669f TOP(x) clause for UPDATES + DELETES introduced in MSSQL 2005. Do not use that on older servers. See http://www.heidisql.com/forum.php?t=13289 2013-08-28 03:52:34 +00:00
Ansgar Becker
110d9c585c Fix reading chunks from SQL file with a multiplier of the encoding's maximum character length. Broken in r4470. 2013-08-27 05:10:34 +00:00
Ansgar Becker
1347a3a368 Fix usage of wrong TDBObject caused by using wrong offset from TDBObjectList. 2013-08-24 18:11:43 +00:00
Ansgar Becker
5e83eaab1b * Move code from FillPopupQueryLoad into automatically triggered FillPopupQuery.OnPopup event.
* Make getting system imagelist and imageindex shared code in Helpers.GetSystemImageList and Helpers.GetSystemImageIndex
* Remove call to TranslateComponent, accidentally committed in r4490
* Draw system icons with transparency
2013-08-24 05:28:39 +00:00
Ansgar Becker
90c708fc74 Fix crash caused by freeing main image list, see previous commit. Fixes issue #3316. 2013-08-22 15:55:53 +00:00
Ansgar Becker
b7a1daa88a Display system known icons in recent SQL files list. 2013-08-22 05:17:30 +00:00
Ansgar Becker
c7373e92db Don't know when exactly but in some cases VirtualTree.FocusedColumn seems to have the InvalidColumn (-2) index. Do not pass such negative indexes to a TStringList in TDBQuery.ColAttributes. See http://www.heidisql.com/forum.php?t=13245 2013-08-22 04:34:30 +00:00
Ansgar Becker
e8adf2095f Turn column selection form into a tool window, so I can apply a size-grip at the lower right edge of the form. Remember form dimensions. Fixes issue #3299. 2013-08-21 05:01:28 +00:00
Ansgar Becker
3d2f56fe1a Add CHECK option "FOR UPGRADE" to maintenance dialog. Fixes issue #3279. 2013-08-21 04:22:20 +00:00
Ansgar Becker
44cf6618aa * Remove "Run file" dialog, and use a standard Windows IProgressDialog instead when executing a SQL file. Learned from http://users.skynet.be/oleole/ProgressDialog.htm
* Enhance error handling when "Stop on errors" is activated, by showing an error summary at the end of script execution.
2013-08-21 04:14:37 +00:00
Ansgar Becker
a4b6855420 Fix regex in TDBConnection.ParseViewStructure which matches on IS.COLUMNS.COLUMN_TYPE but just finds empty matches, because all expression groups are optionally. Also, ZEROFILL attribute for numeric columns never gets detected. Fixes issue #3311. 2013-08-17 05:25:51 +00:00
Ansgar Becker
721df2da37 Make regex in ParseViewStructure even more loose, this time due to dots in the view's name. See http://www.heidisql.com/forum.php?t=13191 2013-08-16 04:37:00 +00:00
Ansgar Becker
5520e84fc2 Issue #3304: Escape column names for PHP 2013-08-07 04:39:42 +00:00
Ansgar Becker
4628fac73d Fetch column names from IS.COLUMNS only, without joining IS.VIEWS from which we anyway don't read something. Fixes issue #3305. 2013-08-06 18:15:58 +00:00
Ansgar Becker
34fa56ab51 Escape exported PHP strings using some extra logic, instead of using incompatible TDBConnection.EscapeString. Fixes issue #3304. 2013-08-06 03:58:56 +00:00
Ansgar Becker
58b2a66800 Get column names from VIEW per IS.COLUMNS, not per SHOW COLUMNS, to support MSSQL here. Fixes empty grid results for MSSQL VIEWs. See comment #46 of issue #3212. 2013-08-05 04:15:01 +00:00
Ansgar Becker
572d336d8b Translate new menu item "Generate SELECT", missing in r4477. 2013-08-03 05:25:09 +00:00
Ansgar Becker
d00adaf484 Add "Generate SELECT..." menu item to query helpers context menu. See http://www.heidisql.com/forum.php?t=13108 2013-08-01 13:04:06 +00:00
Ansgar Becker
d0afa94cfb Move file related actions to "File" menu, as suggested here: http://www.heidisql.com/forum.php?t=13097 2013-08-01 04:20:56 +00:00
Ansgar Becker
7b50c2b68b Handle ERegistryException's in TMainForm.FinishedQueryExecution by writing them to the SQL log. These seem to happen sporadically in a broken registry, or due to going from a query thread to the main thread again. Guess there is no real fix to that issue. See http://www.heidisql.com/forum.php?t=13088 2013-07-30 16:23:59 +00:00
Ansgar Becker
7de712b741 Fix unused FCSVNull value in efExcel grid export. 2013-07-30 05:30:23 +00:00
Ansgar Becker
8d191ef773 Provide edit box for custom NULL value, in grid export dialog. See http://www.heidisql.com/forum.php?t=13075 2013-07-30 05:21:36 +00:00
Ansgar Becker
de2cb3bcea Increase size of chunk to read from SQL dump from 5M to 20M, so we catch at least the file problems mentioned on http://www.heidisql.com/forum.php?t=13044 . 2013-07-28 05:45:02 +00:00
Ansgar Becker
c47796e4e1 Process messages in loop of query batch on run sql file dialog. Helps making this dialog responsive. 2013-07-28 05:15:08 +00:00
Ansgar Becker
70e79f51dc * Ensure ReadTextfileChunk reads a multiplier of the encoding's maximum byte count per char. See http://www.heidisql.com/forum.php?t=13044
* Log error message when TEncoding.Convert returns an empty TByte array.
* Documentation
2013-07-27 08:06:40 +00:00