PortableApps.com Platform and Suite 1.6 have been released.
Interface Freeze during operationsSubmitted by CmptrExpr on September 12, 2008 - 12:06pm
I've noticed that during file operations (scan, copy, move, etc.) the interface freezes. This is not a good thing. A few coding changes will make the interface much more responsive to the user. When I looked through the source code, I found the code which causes the interface to freeze. This bit of code is found after starting the thread (multiple instances) in script.cpp:
thread->Wait();
delete thread;
When the progress window processes the completion event, it can change the buttons accordingly. Additional items to think about: The user should not be able to close the progress window until the thread completes. The user should not be able to start a new thread until the old one completes. This may mean that you need to store the started thread's object in the progress object and check it for running/completion/exit status when the user clicks on anything in the progress window. You could additionally make the progress window non-modal and store thread state in the mainframe object. This will allow configuration changes, navigation, etc. while the thread is running. The only thing not allowed is starting a new thread. Doing all of the above will make the application much more responsive to the user and will hog fewer desktop resources. ( categories: )
|


Thankyou
for looking into this, I shall aim to write some more detailed feedback later, but the propsals you have make look very good, I shall aim to implement them as soon as possible,
'...and do the other things, not because they are easy, but because they are hard...' JFK