Commit Graph

105 Commits

Author SHA1 Message Date
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
9a9d2e6819 Explicitly handle WM_QUERYENDSESSION and WM_ENDSESSION messages to make sure LameXP won't block Windows from shutting down. 2011-12-27 05:04:53 +01:00
a96237e6b2 Some refactoring of the icon initialization code. 2011-12-26 21:02:55 +01:00
dce362c997 Make the CPU usage indicator work on Windows 2000. 2011-12-24 04:20:23 +01:00
3141ebf2ee Improved detection of default language: Each language file can now have a country id in addition to the language id. This is required, because some languages (e.g. Chinese) have country-specific variants. 2011-12-19 17:26:20 +01:00
612f744afe Added 'Traditional Chinese' (Taiwanese) translation by 456Vv <123@456vv.com>. 2011-12-19 15:48:50 +01:00
621ddc8179 Added a new global function to get a list of all available Text Codecs. 2011-12-10 23:12:47 +01:00
431bf4b9ff Much simplify cores2instances() function by using a LUT. 2011-11-26 17:25:33 +01:00
20f425c284 More reliable method to detect QAAC and make sure the required CoreAudioToolbox library is available. 2011-11-21 14:40:32 +01:00
da5dfdc85e Added optional support for the QAAC encoder. Requires QuickTime v7.7.1 (or later) and the QAAC front-end. 2011-11-21 01:22:41 +01:00