Commit Graph

114 Commits

Author SHA1 Message Date
cc38035087 Happy new year 2014! 2014-01-01 17:05:52 +01:00
0b1644e287 Make sure the user has "admin" privileges before checking for updates, because it's kind of pointless to download the update if you won't be able install it anyway. This is especially important for Windows XP, where we don't have UAC. Note that UAC implies "admin" privileges, because the installer process will be elevated as needed - even if the current user is *not* an administrator. 2013-12-16 18:07:45 +01:00
b05a7ac3ef Moved all sound effects into Qt-style resources. Sound files can be played back directly from program memory by passing a pointer to the WAVE data into PlaySound as the first argument (and using the SND_MEMORY flag), it's just not documented very well. 2013-12-03 22:19:11 +01:00
4635d9bf76 Make sure splash screen gets focus. Also better key press/release handling in working banner. 2013-11-30 13:10:34 +01:00
1d8709689b Improved initialization of the TEMP directory. 2013-11-29 01:21:52 +01:00
ff30f71c13 Refactored finalization code, so each "Global..." file can have its own finalization function. 2013-11-26 23:00:33 +01:00
9b5334ba27 Improved processing dialog + setup a proper "big" window icon for application windows (improves the look on the taskbar in Windows 7+) 2013-11-25 18:34:59 +01:00
f3ae451b32 Make sure the TEMP path is *not* replaced when running the web-update tool, as this will prevent the updater from working correctly. 2013-11-25 02:20:44 +01:00
3d5b9541ed More improvements to Splash Screen and the working banner. 2013-11-24 17:55:35 +01:00
b8b11e59aa Improved splash screen. 2013-11-23 20:57:38 +01:00
a5602cf04d Reorganized global functions: The file "Global.h" was split into multiple file in order to reduce the dependencies and to make things a bit more logic. 2013-11-03 23:43:21 +01:00
6a862013eb Added lamexp_init_process() function, which can be used to setup a QProcess object. 2013-10-29 02:05:43 +01:00
7b016d5fec Updated license info. 2013-10-23 22:25:04 +02:00
b54886f242 Introduce QUTF8 macro and replace ".toUtf8().constData()" everywhere. 2013-10-21 15:00:55 +02:00
3d7fbf70f5 Improved compatibility mode detection, taking into account Windows 8.1. 2013-10-20 23:34:04 +02:00
be9cf25645 Improved Windows version detection code. 2013-10-20 19:12:00 +02:00
26d186cdf8 Fix detection of Windows 8.1: Starting with Windows 8.1, the GetVersion(Ex) API has been broken and will now pretend to be Windows 8.0. Since GetVersion(Ex) can no longer be relied on, we will use VerifyVersionInfo() from now on, in the hope that they won't break this one too. 2013-10-19 16:02:22 +02:00
8a64624ba4 Use the THROW macro instead of plain "throw" in the complete project. 2013-10-18 21:37:40 +02:00
414b261c0d Improved tool extraction code in InitializationThread. Also implemented better exception handling. 2013-10-18 20:49:22 +02:00
c8242b494c Improved lamexp_rand_str() function. Also this function now returns shorter strings (by default), which still should be enough to avoid name clashes. 2013-10-09 16:09:20 +02:00
24217c3b71 More code refactoring: Moved most of the Win32 API dependencies into wrapper functions in Global.cpp, which greatly reduces platform-specific includes. 2013-10-07 00:01:15 +02:00
7602317652 Some code-clean up. Removed "Windows.h" include from "Global.h", because most source files won't need the Win32 API stuff. Also got rid of some Windows 2000 compatibility cruft. 2013-10-06 19:28:12 +02:00
8f77ee3b5f Ignore case when sorting file names. 2013-08-23 19:16:40 +02:00
409117ec39 Implemented "natural ordering" for sorting the input files. Code is based on the strnatcmp() by Martin Pool, released under the "zlib" license. 2013-08-23 00:19:00 +02:00
c2db2acd20 Now using a separate version/build number for the configuration, so INI settings don't get invalidated with each build. 2013-05-02 23:00:26 +02:00
62d8bd9376 Updated web-site links. 2013-03-17 21:50:29 +01:00
d7cb3001aa Now each tool can also have a "tag" in addition to the version number. 2013-02-12 00:08:21 +01:00
bd0a370aee Welcome to year 2013 ;-) 2013-02-08 23:57:50 +01:00
f68523efd6 Properly handle plurals in translation files. 2013-01-23 23:25:31 +01:00
cb042bbf3c Added new function to detect the current date. Slightly more robust against manipulations. 2013-01-12 01:53:43 +01:00
30507937de Added global lamexp_fatal_exit() function. 2012-12-11 23:22:20 +01:00
1e09d998a2 Updated Visual Studio 2012 to "Update 1" (final release). 2012-11-28 01:16:37 +01:00
d11f698d80 Added Visual Studio 2012 project files. 2012-11-12 22:47:13 +01:00
a2fd0f2460 Added an "About..." entry to the system menu. 2012-10-17 23:34:42 +02:00
50e9d01cfb Now using rand_s() to generate random numbers, which doesn't need a seed. Falling back to qsrand() + qrand() on platforms that don't support rand_s(). 2012-10-13 12:36:41 +02:00
0fac4fbb8f Slightly improved seeding of the PRNG (again). 2012-10-09 17:43:17 +02:00
7f3bcbedb7 Improved lamexp_get_os_version() function. 2012-09-09 23:05:00 +02:00
9a7f0d5176 Small optimization of known_folder() function. Will now return a const reference. 2012-08-18 22:37:10 +02:00
f282cff154 Updated Visual Studio 2008 project file. 2012-08-18 20:55:59 +02:00
c095bbee95 Some refactoring of the macros. Use the "do {...} while(0)" template where it makes sense. 2012-07-29 19:13:58 +02:00
17794881a4 Extinguished some remaining uses of argv[] or QApplication::arguments(). 2012-06-23 18:18:57 +02:00
30bc239cd8 Now using our own command-line parser, based on GetCommandLineW() + CommandLineToArgvW , instead of using QApplication::arguments(). This is less portable, but Qt's internal command-line parser has some rather strange behavior with processing certain characters. As a result, with Qt's command-line parser, some path names passed to LameXP got screwed up! Specifically "C:\Some Path\''Foo''.mp3" got mangled to "C:\Some Path''Foo''.mp3", i.e. the Backslash disappeared! Should be fixed now. 2012-06-22 15:49:56 +02:00
40c8874313 Updated Chinese/Taiwanese translation. Thanks to 456Vv <123@456vv.com>. 2012-04-18 22:53:07 +02:00
c41c904ffa Detect Windows 8 and detect if Windows 8 is running in "compatibility mode" for Windows 7. 2012-04-13 16:37:47 +02:00
027471b385 Updated MediaInfo binary to v0.7.55 (2012-04-05), compiled with ICL 12.1.7 and MSVC 10.0. 2012-04-10 01:25:34 +02:00
7016383fbb Added support for the Visual Leak Detector. This effects "Debug" builds only. 2012-04-06 22:24:05 +02:00
cdf300cd22 Some more Wine workarounds: Disable x64 binaries, as it seems they fail to load under Wine (tested with Wine 1.4 under Ubuntu 12.04 x64). 2012-04-05 13:40:52 +02:00
17278fb7a6 Use the 'FindExInfoBasic' information level on supported OS (Windows 7 and later). Should further speed-up things. 2012-03-31 16:27:37 +02:00
9b687fff9a Happy New Year 2012! 2012-01-02 00:52:27 +01:00
1f001a65e2 Better handling of system shutdown. Now using the Qt event system to broadcast a special event when the system is going to shutdown (i.e. WM_QUERYENDSESSION or WM_ENDSESSION). This gives each top-level widget the chance to react to the system shutdown *before* we return from the message handler. Doing any clean-up after returning from the message handler is impossible, because Windows will kill the process immediately after WM_ENDSESSION has been processed. Note that Windows XP (and earlier) will NOT send WM_QUERYENDSESSION or WM_ENDSESSION to processes that have a console attached! Therefore, if we have a debug console attached, we cannot do anything on these systems. Our process will be killed without any notification...
Also improved LameXP's IPC mechanism: There now are several slots for IPC-commands in the shared memory area ("queue support"). This way, the sender can post several commands in sequence without getting blocked. The receiver can process those at a later time.
2011-12-29 14:42:20 +01:00