Opened 7 years ago
Closed 5 years ago
#2845 closed enhancement (done)
Enhance Progress(View)
Reported by: | pfleck | Owned by: | mkommend |
---|---|---|---|
Priority: | medium | Milestone: | HeuristicLab 3.3.16 |
Component: | MainForm | Version: | trunk |
Keywords: | merged | Cc: |
Description (last modified by pfleck)
The progress should explicitly differ between "progress" and "endless/marquee" instead of depending on the ProgressValue. Currently, ProgressValue <= 0 or > 1 is is interpreted as "endless" and shown as marquee. Instead we should explicitly differ between those two options and invalid operations should throw an exception (e.g. setting progress value of an "endless" progress). (Currently it is not possible to set an empty progress bar with ProgressValue 0)
Furthermore, the IProgress suggest a Cancel option; however, this does not work currently.
This ticket will be released together with #2839.
Attachments (1)
Change History (39)
comment:1 Changed 7 years ago by pfleck
- Description modified (diff)
- Summary changed from Progress(View) should explicitly differ between "progress" and "endless" to Enhance Progress(View)
comment:2 Changed 7 years ago by pfleck
- Owner set to pfleck
- Status changed from new to accepted
- Version set to branch
comment:3 Changed 7 years ago by pfleck
- Fixed/Added Progress Cancellation/Stopping
- Added Visible property to progress and ProgressBarMode.
comment:4 Changed 7 years ago by pfleck
r15417 Removed Visible property and hide on "Finished".
comment:5 Changed 7 years ago by pfleck
r15444 Cancel the artificial delay if progress is stopped.
comment:6 Changed 7 years ago by pfleck
r15445: Removed progressbar state (green/orange/red).
comment:7 Changed 7 years ago by pfleck
- Start progres with initial progress value in several cases to use the progress value update.
- Removed object disposal guard in ProgressView because it can block part of the initialization.
comment:8 Changed 7 years ago by pfleck
- Added an explicit method for StartMarquee.
- Renamed Add/RemoveOperationProgress methods.
- Moved progress helpers from MainForm into static Progress methods named Show and Hide.
comment:9 Changed 7 years ago by pfleck
r15852 renamed branch folder
comment:10 Changed 6 years ago by pfleck
r16307 Merged trunk changes before source move into branch
comment:11 Changed 6 years ago by pfleck
comment:12 Changed 6 years ago by pfleck
r16311 Merged trunk changes into branch (15406-15681, 15683-16308)
comment:13 Changed 6 years ago by pfleck
r16312 Adapted new Hive-Project-Management and RegressionSolutionVariableImpactsView to Progress updates.
comment:14 Changed 6 years ago by pfleck
r16314 Moved the entire progress API to the Progress class and made the progress API within the MainForm internal.
comment:15 Changed 6 years ago by pfleck
r16317 Combined separate Show methods into single one with enum parameter specifying the ProgressMode. Renamed Continuous and Marquee to Determinate and Indeterminate.
comment:16 Changed 6 years ago by pfleck
r16318 Add optional stop and cancel handler to the Show helpers. Replaced the AddProgressTo... and RemoveProgressFrom... methods with the existing Show and Hide methods.
comment:17 Changed 6 years ago by pfleck
r16319 merged latest trunk changes
comment:18 Changed 6 years ago by pfleck
- Owner changed from pfleck to mkommend
- Status changed from accepted to reviewing
I tried to merge back into trunk but it didn't go as expected.
r15406:15851 (before the branch-rename)
r15853:16318 (after the branch-rename)
Merging those two ranges does not work properly since the "big merge" from the trunk into the branch (which contained the trunk/sources rename) happened in the second revision-range (r16307). Thus, merging the first revision range into the trunk would require redoing that merge again.
Alternatively, I tried to merge all recent trunk changes into the branch and then make a "fast-forward" by merging from two different tree using the trunk as "from" and branch as "to" (as described in [0] at "Merging Two Different Trees"). In this scenario, the merge went fine (no conflicts), however, it seems that all the merge info got moved from the individual plugin folders into the trunk folder.
[0] https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html
comment:19 Changed 6 years ago by pfleck
r16428: Merged recent trunk changes into branch
comment:20 Changed 6 years ago by pfleck
r16430 merged branch into trunk
Reviewed by mkommenda
This commit also contains a lot of merge info moves from the individual folder onto the trunk.
comment:21 Changed 6 years ago by pfleck
- Version changed from branch to trunk
comment:22 Changed 6 years ago by jkarder
r16447: adapted BioBoost addon
comment:23 Changed 6 years ago by pfleck
r16511 Temporarily removed null check to avoid the permanently disabled project selector in Hive.
The issue of this is caused because a Progress should be shown on a Dialog. Since a Dialog has no Parent Control, the re-enabling after removing the ProgressView does not work. Furthermore, the ProgressView is actually never shown since there is no Parent Control where the ProgressView can be attached to.
comment:24 Changed 6 years ago by pfleck
- Re-enabled null-check and added exception when showing Progress on control with no parent (Forms and Dialogs).
- Adapted Progress in HiveResourceSelectorDialog to show the dialog on the selector-View and not on the dialog itself.
related to comment:115:ticket:2839
comment:25 Changed 6 years ago by pfleck
- Description modified (diff)
comment:26 Changed 6 years ago by mkommend
- Status changed from reviewing to readytorelease
comment:27 Changed 6 years ago by mkommend
- Keywords mergewith-2839 added
comment:28 Changed 6 years ago by pfleck
- Owner changed from mkommend to pfleck
- Status changed from readytorelease to reviewing
r16923 removed branch
comment:29 Changed 6 years ago by pfleck
- Owner changed from pfleck to jkarder
- Status changed from reviewing to readytorelease
comment:30 Changed 6 years ago by pfleck
- Owner changed from jkarder to pfleck
- Status changed from readytorelease to assigned
There is still a bug if an exception occurs while a progressbar is shown.
Changed 5 years ago by pfleck
comment:31 follow-up: ↓ 34 Changed 5 years ago by pfleck
I wasn't able to reproduce any bug in relation with exceptions occurring while an active progress. It might be the case that a progress wasn't removed in case of an exception.
I attached a patch that surrounds some cases with a try-finally-block to ensure the progress is removed in any circumstance. However, I am not sure if we should really apply the patch since I could not reproduce any errors.
comment:32 Changed 5 years ago by mkommend
- Owner changed from pfleck to abeham
- Status changed from assigned to reviewing
comment:33 Changed 5 years ago by mkommend
- Owner changed from abeham to mkommend
comment:34 in reply to: ↑ 31 Changed 5 years ago by mkommend
Replying to pfleck:
I wasn't able to reproduce any bug in relation with exceptions occurring while an active progress. It might be the case that a progress wasn't removed in case of an exception.
I attached a patch that surrounds some cases with a try-finally-block to ensure the progress is removed in any circumstance. However, I am not sure if we should really apply the patch since I could not reproduce any errors.
After a short discussion it has been decided that this patch will no be applied.
comment:35 Changed 5 years ago by mkommend
- Status changed from reviewing to readytorelease
comment:36 Changed 5 years ago by mkommend
r17062: Merged 16430 into stable.
16447, 16511, 16512 remaining.
comment:37 Changed 5 years ago by mkommend
- Keywords merged added; mergewith-2839 removed
comment:38 Changed 5 years ago by abeham
- Resolution set to done
- Status changed from readytorelease to closed
r15405: Branched trunk