Multithreaded Progress Dialog (AtProgressDialog)

A downloadable multithreaded swing dialog for monitoring progress of user activities (such as data loading from a server, data processing) by dispalying a progress percentage with any amount of text messages. Because, it is already multithreaded it is absolutely easy to use this component and communicate with the progressing programs. It notifies the parent UI (listeners) about the status of the progress (completed 100%, or canceled by the user, etc.) so that you know when to dispose the monitor dialog and cleanup the resources. It allows to change the text of the UI controls to customize for your specific application.
View-1: This Progress window is a multithreaded one. User class can create an instance of it to just call its setMessage and setProgress methods. Programmers usually spent a huge amout of time to construct a multithreaded progress window. After spending so much of time, most often such progress monitoring fails to become a multithreaded one by keeping all the windows active. This multithreaded progress is completely thread safe and never blocks the swing thread that keeps the GUI windows active. It shows the progress in percentage of total completion and allows to show text messages as to understand what are the activities performing by the background operation. User can cancel this progress window at any point of time by pressing the "Cancel" button. Using the event notification the clients can then suspend the background operation in progress.
View-2: Progress window that shows the progress in percentage of total completion. the same progress window has a little check box at the bottom-right on the window for the user view or hide the detailed information about the progress set by the progress client operation.
View-3: Once the progress is completed (100%) the "Cancel" button is changed to become a "Close" button.
View-4: Optionally user can choose to close the progress window automatically once the progress is reached to 100%. The check box at the bottom-left if checked to true, this progress dialog will be automatically closed when the progress is completed successfully. Otherwise, it remains open so that the user can have a look at the messages posted by the backbround process or operation. Whether user has canceled or the operation completed successfully completed, a notification is sent to the clients interested to the progress.