Index: branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/Controls/ProgressView.cs
===================================================================
--- branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/Controls/ProgressView.cs	(revision 15319)
+++ branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/Controls/ProgressView.cs	(revision 15320)
@@ -146,6 +146,5 @@
         try {
           Invoke((Action)UpdateProgressValue);
-        }
-        catch (InvalidOperationException) {
+        } catch (InvalidOperationException) {
           // swallow ObjectDisposedException 
           // which might occur if the invoke call is executed after or while the control is disposing
@@ -154,5 +153,5 @@
         if (content != null) {
           double progressValue = content.ProgressValue;
-          if (progressValue <= 0.0 || progressValue > 1.0) {
+          if (progressValue < 0.0 || progressValue > 1.0) {
             progressBar.Style = ProgressBarStyle.Marquee;
           } else {
Index: branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/MainForms/MainForm.cs
===================================================================
--- branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/MainForms/MainForm.cs	(revision 15319)
+++ branches/SimplifierViewsProgress/HeuristicLab.MainForm.WindowsForms/3.3/MainForms/MainForm.cs	(revision 15320)
@@ -230,5 +230,5 @@
     }
 
-    public IContentView ShowContent<T>(T content, bool reuseExistingView, IEqualityComparer<T> comparer = null) where T : class,IContent {
+    public IContentView ShowContent<T>(T content, bool reuseExistingView, IEqualityComparer<T> comparer = null) where T : class, IContent {
       if (content == null) throw new ArgumentNullException("Content cannot be null.");
       if (!reuseExistingView) return ShowContent(content);
@@ -353,7 +353,7 @@
     /// Adds a <see cref="ProgressView"/> to the <see cref="ContentView"/>s showing the specified content.
     /// </summary>
-    public IProgress AddOperationProgressToContent(IContent content, string progressMessage, bool addToObjectGraphObjects = true) {
+    public IProgress AddOperationProgressToContent(IContent content, string progressMessage, double progressValue = -1, bool addToObjectGraphObjects = true) {
       if (InvokeRequired) {
-        IProgress result = (IProgress)Invoke((Func<IContent, string, bool, IProgress>)AddOperationProgressToContent, content, progressMessage, addToObjectGraphObjects);
+        IProgress result = (IProgress)Invoke((Func<IContent, string, double, bool, IProgress>)AddOperationProgressToContent, content, progressMessage, progressValue, addToObjectGraphObjects);
         return result;
       }
@@ -371,5 +371,5 @@
         contentViews = contentViews.Where(v => v.Content == content);
 
-      var progress = new Progress(progressMessage, ProgressState.Started);
+      var progress = new Progress(progressMessage, ProgressState.Started, progressValue);
       foreach (var contentView in contentViews) {
         progressViews.Add(new ProgressView(contentView, progress));
@@ -560,6 +560,5 @@
       try {
         ((IActionUserInterfaceItem)item.Tag).Execute();
-      }
-      catch (Exception ex) {
+      } catch (Exception ex) {
         ErrorHandling.ShowErrorDialog((Control)MainFormManager.MainForm, ex);
       }
Index: branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Interfaces/IProgress.cs
===================================================================
--- branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Interfaces/IProgress.cs	(revision 15319)
+++ branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Interfaces/IProgress.cs	(revision 15320)
@@ -63,7 +63,5 @@
     /// Starts or restarts a Progress. 
     /// </summary>
-    void Start();
-
-    void Start(string status);
+    void Start(string status = null, double progressValue = -1.0);
 
     /// <summary>
Index: branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Progress.cs
===================================================================
--- branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Progress.cs	(revision 15319)
+++ branches/SimplifierViewsProgress/HeuristicLab.MainForm/3.3/Progress.cs	(revision 15320)
@@ -68,16 +68,9 @@
     }
 
-    public Progress() {
-      progressState = ProgressState.Finished;
-      canBeCanceled = false;
-    }
-    public Progress(string status)
-      : this() {
-      this.status = status;
-    }
-    public Progress(string status, ProgressState state)
-      : this() {
+    public Progress(string status = null, ProgressState state = ProgressState.Finished, double progressValue = -1)
+      : base() {
       this.status = status;
       this.progressState = state;
+      this.progressValue = progressValue;
     }
 
@@ -92,12 +85,8 @@
     }
 
-    public void Start() {
-      ProgressValue = 0.0;
+    public void Start(string status = null, double progressValue = -1.0) {
       ProgressState = ProgressState.Started;
-    }
-
-    public void Start(string status) {
-      Start();
       Status = status;
+      ProgressValue = progressValue;
     }
 
