61 Commits

Author SHA1 Message Date
0d9de512cd Remove unit scopes from project settings, prefer fully qualified unit names in uses clauses. Enhance readability and compiler performance. 2022-12-26 17:59:19 +01:00
6219e928ea Issue #418: restart via task scheduler after build update, decreasing privileges to the normal user instead of administrator 2022-12-25 13:18:37 +01:00
09e6d1709c Issue #1616: force update check to overwrite old HeidiSQL_update.exe in temp directory, once through different file size, and by logic when old one is older than 30 days. Fixes still used old updater with bugs. 2022-11-24 07:54:40 +01:00
d46716ff2e Issue #1503: reactivate DPI awareness, and try to read/write component dimensions DPI independently 2021-12-26 13:06:24 +01:00
ed28bcbf6f SQL export: Add popup menu action for copying mysqldump command line 2021-06-25 08:56:18 +02:00
cb1024b048 Fix more potential theme related EAccessViolation's, due to Action:=caFree in OnClose event of modal forms. Their caller now frees these modal forms. In non-modal forms, keep caFree in OnClose but remove existing OnDestroy events, moving code to OnClose instead.
https://www.heidisql.com/forum.php?t=38043
https://stackoverflow.com/questions/2075405/how-to-close-non-modal-form-in-delphi
2021-06-22 20:37:34 +02:00
7b0705df28 Disable build update button for 32bit version, so I only have to provide 64bit builds (while still supporting releases in 32 bit) 2021-06-06 17:24:36 +02:00
6f1726ebf8 Add context menu for copying download link 2021-05-09 12:22:36 +02:00
976dd6b742 Turn release-download button into a link label, displaying a second link to a message dialog with instructions for a portable update. See https://www.heidisql.com/forum.php?t=37843 2021-05-08 17:21:02 +02:00
c5d95c1ce2 Modify release-download-button, so it points to the portable download link if the running version is a portable 2021-05-08 09:27:15 +02: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
fcdf323086 Let TExtForm translate all strings on a form, to reduce the code in any FormCreate event 2019-07-21 20:12:13 +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
3759611c34 Issue #8: convert system colors applied by code into their theme color 2018-10-27 17:47:16 +02:00
9cdcd63145 Issue #213: Assign system or custom font once, to the application, and let all forms inherit that font, so there is no need to call InheritFont() for each form. 2018-10-25 19:24:45 +02:00
f63fab4aa6 Wording fix: "Microsoft Store", not "Windows Store" 2018-02-06 19:32:52 +01:00
b92addf089 Issue #60: Check if HeidiSQL runs as a Windows Store App, and disable all update check mechanisms, due to Store policies 10.2.5 https://docs.microsoft.com/legal/windows/agreements/store-policies#102-security .
Detection code taken/modified from
* https://github.com/appconsult/DesktopBridgeHelpers/blob/master/DesktopBridge.Helpers/Helpers.cs
* https://stackoverflow.com/questions/48549899/how-to-detect-universal-windows-platform-uwp-in-delphi
2018-02-01 20:30:50 +01:00
5a8a4af29a Rename helpers unit to apphelpers, to overcome a naming conflict with the FireMonkey unit FMX.Canvas.GPU.Helpers. Closes #102. 2018-01-22 19:48:17 +01:00
36c5d90d39 Use unsecured heidisql.com url in donor check if secure one did not work. Closes #65 2018-01-02 18:55:06 +01:00
31dc8f3f97 Use unsecure project web url for donor checks, as the ssl certificate seems not accepted on some Wine systems. 2017-03-05 17:40:11 +00:00
80b0d8935a Add "view changelog" button to updatecheck dialog. 2014-11-08 15:07:51 +00:00
68dc0bce05 Also display download page when clicking the "download release" button in update dialog. 2014-11-08 14:57:41 +00:00
4adacaac28 Verify size of downloaded build update to see if it was somehow corrupted during the download. Fixes issue #3386. 2013-11-16 06:44:08 +00:00
59dbff06a2 Introduce 64bit builds and 32/64 bit mixed installer 2013-11-13 05:38:44 +00:00
61202be058 Convert main menu and toolbars from TControlBar to TCoolBar, to be able to place an "Update available" link right aligned on the menu.
* Also, convert the donate button to a second label on the menu, so it's less intrusive than before. See http://www.heidisql.com/forum.php?t=13446
* With the "Update available" label visible all the time, we check for updates also for builds, but only show the update check dialog if the user has activated "Check for builds also" option.
2013-11-09 06:34:09 +00:00
ff09cd4be6 Remove donate button from updatecheck dialog 2013-11-05 04:58:11 +00:00
54a297f39b Fix back door introduced in r4523 2013-10-03 04:01:26 +00:00
dd20574b3c Handle click events on donate button in a single procedure 2013-09-28 05:51:29 +00:00
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
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
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
37487e821a Remove unused uses clause. 2013-09-11 20:14:09 +00:00
74ca351be6 Add donate button to 3 places:
* main toolbar
* about dialog
* updatecheck dialog
2013-09-11 20:11:25 +00:00
f96288fce9 Translate string variables and literals in .pas files. TODO: translate constants. 2012-11-26 05:44:01 +00:00
ca1d94c87b Issue #557: Include gnugettext.pas from https://dxgettext.svn.sourceforge.net/svnroot/dxgettext/trunk/dxgettext/sample/ . And add basic code to all FormCreate events to translate their components in the future. 2012-11-10 14:28:44 +00:00
90ab0b6cf1 Refactor logic for reading and writing application and session settings:
* Introduce TAppSettings, created in dpr file
* Implement read and write methods, and replace callers of GetRegValue and MainReg.WriteInt/... with these
* Optimize read and write methods for avoiding redundant accesses to registry
* Auto-remove stored default settings from registry to avoid registry spam
* Replace synced MainForm.pref* variables with TAppSettings.Read* calls
* Move SetLocales call to dpr file
* Move MainForm.FDirname* variables to appropriate methods in helpers.pas
* Implement TQueryHistory.Create(SessionPath), reading its items within constructor
2012-08-19 10:55:08 +00:00
3e2d4371a3 Implement home brown "THttpDownload" class, making use of the Internet_* methods from WinINet unit. Replaces "TDownloadUrl2" class. Fixes single char in user agent. 2012-04-29 06:37:24 +00:00
e58d033342 Handle build download errors in update checker. Fixes issue #2512. 2011-08-13 05:38:20 +00:00
b3b1710c35 Introduce EDatabaseError exception class, so we're able to handle only those and let others raise the exception up to MadExcept. Helps finding non-database related AVs as users are able to get the callstack now. Similar to r3292 but more consistent all over the code now. 2010-04-24 13:56:57 +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
06333f36bf Only replace updater tool in temp directory if it has become outdated. Avoids annoyance for users which have whitelisted this .exe in their antivirus or whatever software. 2010-02-23 23:32:49 +00:00
a43edc883f Implement a new external updater tool, stick that updater.exe as resource to the main executable, release and run it when the user clicks "Download build xyz". The updater itself posts WM_CLOSE messages to all Heidi instances, waits until all instances are gone, and then replaces the .exe with the downloaded one, after having copied a backup file to your temp directory. 2010-02-16 23:58:48 +00:00
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
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
e356cb7ed7 Sanitize all "uses" clauses from unneeded unit references. 2009-12-22 23:19:56 +00:00
8d5111cf8a Fix flicker in update checker dialog while downloading a build file. 2009-12-10 18:55:01 +00:00
8aafc3980f Keep memo with revision logs enabled, even if local executable is up-to-date. Can be useful for reading the changelog at any point. Fixes issue #1452 2009-11-10 22:37:03 +00:00
caec005625 Don't disable the build download button if using a developer build, or if we at some point, accidentally have an "M" in the current revision. 2009-11-05 00:22:47 +00:00
f6a4748081 WinExec() is deprecated in Vista and Windows 7, even in WinXP it was only kept for compatibility to 16 bit applications. Replace these 3 calls with ShellExecute(). Fixes issue #1406. 2009-11-05 00:20:27 +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