Add Progress bar for File/Save Project functionality , replacing busy cursor #735
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview:
This pull request introduces significant improvements to the File/Save Project functionality by replacing the busy cursor with a dynamic progress bar dialog. The progress bar dialog provides users with informative feedback on the status of the save operation, enhancing the overall user experience.
Solving part of this issue #707
Changes Made:
Added
ProgressBarHandler
Class:ProgressBarHandler
, which inherits fromwx.ProgressDialog
.Implemented Functions:
wasCancelled
: Checks whether the progress dialog was cancelled by the user.update
: Updates the progress dialog with the current progress value.close
: Closes the progress dialog.pulse
: Provides visual feedback to indicate ongoing activity.Utilized Pubsub for Communication:
SaveProject
function and theProgressBarHandler
class.ProgressBarHandler
class to handle updates and closing of the progress bar dialog.SaveProject
function to update the progress bar dialog with relevant information.Future Use:
ProgressBarHandler
class serves as a foundational component for managing progress bar functionality in future enhancements.video while testing
Screenshots: