33300bd171
Silence crash happening in some very early calls to apphelpers.FindNode, also triggered by RestoreTabs. Probably helps here: https://www.heidisql.com/forum.php?t=35551
2020-02-04 08:03:34 +01:00
19391e0d3f
Tweak update check dialog, closes #784
...
* make dialog resizable
* restore previous dialog size
* use fixed pitch font in build notes
2020-01-30 16:15:42 +01:00
91f973caed
Issue #12 : On "Host" tab, prefer visible filename over visible file path
2019-12-25 12:58:36 +01:00
168e49af84
Use the newer KNOWNFOLDERID TGUID constants from Winapi.KnownFolders instead of CSLID integer constants. Probably fixes wrong FOLDERID_RoamingAppData folder for #815
2019-12-18 21:36:51 +01:00
805c0c35b2
Add checkbox option to remove line breaks from field contents in grid export dialog. Closes #474
2019-12-08 11:59:15 +01:00
6695a31eae
Issue #805 : fall back to translated button captions if GetLocaleString returned an empty string. Setting an empty button caption raises an exception in TTaskDialogButtonItem
2019-11-14 21:32:15 +01:00
be689edaec
SQL export: add drop down menu item for removing DEFINER clauses from triggers, procedures and functions
2019-11-13 14:29:26 +01:00
7b99bcc823
Issue #685 : Fix fatal performance bug, calling GetSQL on each examined character of a TSQLSentence. See report on https://www.heidisql.com/forum.php?t=34935
2019-11-13 08:16:24 +01:00
17e75e70da
Refactor: rename helper function sstr() to something more readable, and optimize it slightly
2019-11-04 20:15:41 +01:00
4b39eeb153
Don't fool detection of unsafe queries by comments. Closes #685
2019-10-29 21:46:32 +01:00
e0f8a36bfe
Restore previously used collation when creating new database. Closes #702
2019-10-27 11:59:23 +01:00
deab98736e
Issue #140 : Be sure to write tab backup files in UTF8 without BOM
2019-10-15 07:07:36 +02:00
10f61069c8
Issue #140 : Prefer TStreamWriter over TFileStream, in SaveUnicodeFile(). Also, use its own Write() method instead of StreamWrite(), which encodes UTF8 first, so the new approach is probably faster. Probably also helps with non-writable tab backups on some systems.
2019-10-13 16:38:51 +02:00
64c43aebbf
Issue #62 : distinct between TIMEZONE (without time zone) and TIMEZONETZ (with time zone). And modify GetDatatypeByName() so it deletes the longest detected datatype string PostgreSQLDatatypes.Names . This solves empty/undetected column comments in ParseTableStructure(). See https://www.heidisql.com/forum.php?t=23211#p34709
2019-10-05 08:04:31 +02:00
1f22580489
Issue #719 : For message dialog button captions, prefer localized strings from user32.dll over our translation from Transifex
2019-09-26 20:29:55 +02:00
d446db554a
Issue #144 : Move some code out of TExtForm.OnCreate into .DoShow, where it works for more instances of TEdit, e.g. the database and table filter. Also, let the object editors call this code, as they don't derive from TExtForm.
2019-09-25 20:14:52 +02:00
0da8cb79f8
Issue #515 : give ReadTextfileChunk a BufferPadding of 1 instead of 10M. With 10 attempts, we get a maximum of 10 Bytes which is more than enough to get a complete character in any multibyte encoding. See https://github.com/HeidiSQL/HeidiSQL/issues/515#issuecomment-527858110
2019-09-17 19:59:46 +02:00
a5c4498376
Issue #746 : Call SetString with UTF8String instead of String, as advised on https://stackoverflow.com/q/57951463/4110077 . Hopefully nails the decoding issue.
2019-09-16 19:41:47 +02:00
abc9ef16f9
Issue #746 : prefer AnsiString over Byte data type for buffering http request result.
2019-09-15 19:08:40 +02:00
7666496177
Prevent file read issues: THttpDownload.SendRequest() now stores the response in a string variable if the passed file name is empty.
2019-08-26 14:00:07 +02:00
676f4b1e74
Prefer inline code over outsourced one-time used function BestTableName
2019-07-23 17:38:26 +02:00
63fdc3e08c
Move workaround for broken split buttons after translation into TExtForm.Create, so we have it once and the caller does not need to care about it. See https://sourceforge.net/p/dxgettext/bugs/80/
2019-07-23 13:36:56 +02:00
db9e76bd78
Move code from TDBObjectEditor.GetDefiners to new TDBConnection.AllUserHostCombinations
2019-07-22 07:44:19 +02:00
71d9ef9011
Same as for TExtForm: translate in TDBObjectEditor.OnCreate, not in all derived editor classed
2019-07-22 07:28:07 +02:00
2ebbdc6ba3
Issue #718 : Fonts may still be too large because the monitor on which a form is created has DPI > 100%. Calculate DpiScaleFactor based on that first monitor. See https://www.heidisql.com/forum.php?t=34230
2019-07-18 19:08:32 +02:00
92c8f62b85
High DPI:
...
* remove ParentFont flag from forms again (introduced in 9cdcd631454f6f9e999893ea89fcf502d994474c for #213 ). This just inherits from default Windows settings.
* instead, scale font size in InheritFont(), and move that to the new TExtForm class
* mark app with PerMonitorV2 support
2019-07-17 21:59:18 +02:00
e4423c76a3
Issue #513 : add a theme preview dialog, which loads the selected theme png file from heidisql.com
2019-07-13 15:59:43 +02:00
aa2ee9fd8f
Restore tabs feature crashes often on old XP systems, so we activate it by default only on Vista and newer. See https://www.heidisql.com/forum.php?t=34044
2019-07-10 16:25:25 +02:00
fae11b70aa
Silence reoccurring error dialogues due to non-writable portable_settings.txt, by introducing a portable-read-only mode as soon as an update to that file fails
2019-07-10 11:05:12 +02:00
2a91a13b42
Issue #677 :
...
* drop workaround for application crash on WinXP, when loading newer libmariadb (see #79 )
* raise TDbLib's own exception instead of baking an own one with less details. Probably helps in debugging: https://www.heidisql.com/forum.php?t=34044
* rename EDatabaseError to EDbError, to overcome naming conflict in DB unit
* load libpq.dll always with path, which should anyway work better than without it. See http://www.heidisql.com/forum.php?t=22514
2019-07-08 20:23:05 +02:00
e804db8fcc
Issue #677 : provide a new library combobox in MySQL mode, for selecting any of the libmysql/mariadb.dll files from the application directory
2019-07-05 06:44:10 +02:00
f2ed7b01a1
Use UnescapeString() to remove more escape sequences than a duplicated single quote. Move ExtractLiteral() to TDBConnection, as UnescapeString() depends on the connection type. Closes #690 .
2019-06-26 19:52:22 +02:00
1d6a415f5f
Refactor: rename mysql_structures unit neutrally to dbstructures
2019-06-22 14:26:41 +02:00
fb2e3ef029
Cleartext syntax changes
2019-06-12 06:36:02 +02:00
0facfaa5cc
Add cleartext option to sessions
2019-06-12 06:36:02 +02:00
bda7b932d1
Define default values for port and username of all supported server types. Also, do not change them in the session manager, when user selects a different sub type of the same server.
2019-06-09 09:27:17 +02:00
99e095fc39
Fix wrong sorting in database tab and various other lists. Closes #570
2019-05-18 09:58:35 +02:00
97043d368b
Issue #74 : remove no longer used hackish helper function GetColumnDefaultType()
2019-05-06 06:36:12 +02:00
0c35a27fec
Issue #411 : append search engine's hostname to "Find help" link in error dialogs, now that it's customizable
2019-04-30 12:32:35 +02:00
155cedace9
Revert a part of 406ab56060f370c2414c5041d766203cd3b75c32: Prefer TEncoding.UTF8 again over the TUTF8NoBomEncoding with an overridden .GetPreamble(). The grid export crashed when used a second time, probably because the TStringStream overtakes ownership of the encoding. Also, I see no BOM in files encoded via TEncoding.UTF8, so this was probably a fix for nothing anyway.
2019-04-28 12:42:44 +02:00
9fc7150a9f
Issue #74 : attempt to support all kinds of expressions in column DEFAULT + ON UPDATE clauses
2019-04-21 15:40:18 +02:00
4608390b96
Add preference option for custom web search url, used in error dialogs. Closes #411
2019-04-17 21:29:34 +02:00
85a8355e1d
Add new log category lcScript, for queries from large scripts and import operations. By default disabled, which should speed up importing large files.
2019-04-16 07:19:47 +02:00
63212600ed
Issue #515 : Handle encoding errors in apphelpers.ReadTextfileChunk according to how Delphi 10.3 raises exceptions. And probably fix the issue by increasing the new chunk size by 1M instead of only 4B.
2019-04-14 19:44:59 +02:00
406ab56060
Attempt to fully support UTF8 encoding without BOM, as TEncoding.UTF8 has a non-empty preamble/bom. See https://forums.embarcadero.com/thread.jspa?threadID=112112 . Probably related to encoding issue #515
2019-04-13 10:52:41 +02:00
a2ef1aeccd
Issue #140 : Store application process id in each tabs.ini section, and don't restore tabs from other running processes. If the process no longer runs, restore such tab sections again, so nothing gets lost with multiple running application instances.
2019-04-13 10:43:52 +02:00
e9cc528632
Issue #140 :
...
* store tab setup when application exits, as the TimerStoreTabs interval may not yet be reached
* remember startup value of asRestoreTabs option, which may change while the application runs, which in turn may cause problems when RestoreTabs wasn't called
2019-04-13 09:32:58 +02:00
e40210b1b5
Issue #140 : Move code for all remaining common directory paths settings to TAppSettings (UserAppData, UserDocuments, Snippets)
2019-04-11 21:47:54 +02:00
32845094d9
Issue #140 : Use local tabs.ini and Backups directory in portable mode
2019-04-11 21:21:47 +02:00
430ea3bde6
Issue #140 : make auto-backup/restore feature stable against running multiple application instances:
...
* use unique date/time with milliseconds as ini sections
* open ini file for each read + write, separately, don't keep it open all the time
2019-04-10 12:19:40 +02:00