3a582a028c
Moved JobObject as well as the remaining GUI functions into the MUtilities library.
2014-12-08 22:06:01 +01:00
035699c84e
Moved various functions into MUtils library and removed obsolete code from LameXP.
2014-11-25 02:14:42 +01:00
5d8816961f
Added MUtils library to the solution + some adjustments of the project file.
2014-11-24 18:28:53 +01:00
cc38035087
Happy new year 2014!
2014-01-01 17:05:52 +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
ed34cf1fc8
Improved initialization of the working banner. Also banner can now be minimized using the "M" key.
2013-11-29 01:20:59 +01:00
dd39addb39
More improvements to the working banner. Now using QWindowsVistaSytle when "sheet of glass" effect is enabled, for more consistent look. Also fixes some drawing glitches.
2013-11-26 23:01:37 +01:00
f641ddd9f0
Some improvements to Working Banner: Now use a pointer member variable for the UI. Also update Taskbar progress indicator.
2013-11-25 13:58:21 +01:00
3d5b9541ed
More improvements to Splash Screen and the working banner.
2013-11-24 17:55:35 +01:00
2ea758c079
Improved dropbox widget, including proper multi-monitor (virtual desktop) support.
2013-11-01 00:08:40 +01:00
18b645f349
Improved file analyzer to retain the original ordering of files imported from a playlist.
2013-10-25 00:48:18 +02:00
7b016d5fec
Updated license info.
2013-10-23 22:25:04 +02:00
bd0a370aee
Welcome to year 2013 ;-)
2013-02-08 23:57:50 +01:00
c18785ce1e
Changed the method to synchronize the analyzer threads: We now use QSet to maintain a list of the thread id's of all threads that are still running - instead of only recording the highest thread id that has finished. This way a thread can now actually check if there still is any running thread with a lower thread id. Before thread n could only check if thread n-1 has finished yet or not. As a result we can relax the waiting now. Only threads that want to emit a file will wait for the "previous" threads to finish.
2012-05-14 00:50:16 +02:00
193488e26f
Fix: In order to ensure the "correct" ordering, *all* threads need to wait for the previous threads to finish - not only the threads that will emit a file. If both, thread n and n+1, want to emit a file and thus n+1 has to wait for n, we additionally must allow thread n+2 to terminate before n and n+1, even if n+2 does *not* emit a file. That's because as soon as n+2 finishes, it unblocks all threads x with x < n+2, which includes n and n+1. If that happens and n+1 is still waiting for n, we effectively allow n+1 to emit its file *before* n. By blocking all threads x with x > n+1 until n+1 has finished (regardless of whether they want to emit a file or not) this problem is resolved. As long as we assume that most threads actually *do* emit a file, this commit shouldn't hurt the performance.
2012-05-12 02:51:24 +02:00
814b725fe3
Slightly improved progress indicator for file analyzer: Additional files from playlists are now taken into account earlier.
2012-05-08 01:12:26 +02:00
72e8558b5f
Added progress indicator to CueSheet import thread.
2012-05-06 23:58:18 +02:00
e13b93f51b
Implemented progress indicator for the working banner.
2012-05-06 04:57:00 +02:00
a7a776ed82
Implemented a method to disables update signals from the FileList model. This will significantly speed-up adding a lot files, but comes with the drawback that updates won't be visible immediately.
2012-05-05 21:56:14 +02:00
160b997c76
Now using a QWaitCondition to synchronize the FileAnalyzer threads.
2012-05-05 03:55:27 +02:00
5d69b91c5b
Fixed a potential stack overflow due to a QApplication::processEvents() that was called from within a slot which may itself be called again while event processing (leading to a recursion that can eventually overflow the stack!)
2012-05-04 16:38:05 +02:00
48a23c27d7
Added a new configuration for initial Qt 5.0 support. Needed a few code-changes and workarounds. Highly experimental!
2012-04-11 00:44:40 +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
db587fe228
Prevent some more dialogs from blocking a quick system shutdown.
2011-12-27 13:51:01 +01:00
5a32fc3b82
Implemented a more correct way to initialize the ITaskbarList3 interface. We now actually wait for the "TaskbarButtonCreated" message.
2011-11-07 17:13:41 +01:00
5cccd4de81
Implemented a better method to abort FileAnalyzer thread.
2011-05-16 21:02:24 +02:00
489829fb37
Refactored Cue Sheet splitter thread: Now we simply pass a pointer to the Cue Sheet model into the Cue Sheet splitter thread instead of having to copying all the information in the Cue Sheet import dialog. Also the Cue Sheet import process can now be aborted by the user.
2011-05-16 18:05:50 +02:00
8977e0073f
Clean up #include directives: Don't include 'Windows.h' directly, as it's included from 'Global.h' header file.
2011-04-11 21:55:34 +02:00
96db5e86c2
Happy new year!
2011-01-01 17:04:25 +01:00
640fa19f09
Implemented function to download and install the WMA File Decoder. Support for WMA files has not been implemented yet though.
2010-12-12 01:49:07 +01:00
c2f132007f
Added support for Windows 7 taskbar features (progress and overlay icons).
2010-12-05 23:11:03 +01:00
b996bfdece
Refactor the MP3 encoder into a separate class.
2010-11-17 00:49:38 +01:00
36ae27f5f3
first commit
2010-11-06 23:04:47 +01:00