public override bool CommitChanges(StepLocations step, Assistant assistant)
        {
            BackgroundJob job = new BackgroundJob(step);

            job.Action += () =>
            {
                PresentationDomain.Invoke(() =>
                {
                    if (step.Notebook != null)
                    {
                        step.Notebook.Sensitive = false;
                    }
                    else
                    {
                        tbl.Sensitive = false;
                    }
                });
                // Substitute the default location
                if (locations.Count > 0)
                {
                    locations [0].Id = Location.DefaultId;
                }

                foreach (Location location in locations)
                {
                    location.CommitChanges();
                }
            };
            assistant.EnqueueBackgroundJob(job);

            return(true);
        }
 public abstract bool CommitChanges(StepLocations step, Assistant assistant);