Example #1
0
        /// <summary>
        /// Returns an instance of <see cref="RequirementsBrowserViewModel"/>
        /// </summary>
        /// <param name="iteration">The associated <see cref="Iteration"/></param>
        /// <param name="session">The <see cref="ISession"/></param>
        /// <param name="thingDialogNavigationService">The <see cref="IThingDialogNavigationService"/></param>
        /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        /// <returns>An instance of <see cref="RequirementsBrowserViewModel"/></returns>
        public static RequirementsBrowserViewModel InstantiatePanelViewModel(Iteration iteration, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
        {
            var stopWatch = Stopwatch.StartNew();

            var model = iteration.Container as EngineeringModel;

            if (model == null)
            {
                throw new InvalidOperationException("The container of an Iteration cannot be anything else than an Engineering Model.");
            }

            var viewModel = new RequirementsBrowserViewModel(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService);

            stopWatch.Stop();
            Logger.Info("The Requirements Browser opened in {0}", stopWatch.Elapsed.ToString("hh':'mm':'ss'.'fff"));
            return(viewModel);
        }
Example #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BasicRdlRibbonPart"/> class.
 /// </summary>
 /// <param name="order">
 /// The order in which the ribbon part is to be presented on the Office Ribbon
 /// </param>
 /// <param name="panelNavigationService">
 /// The instance of <see cref="IPanelNavigationService"/> that orchestrates navigation of <see cref="IPanelView"/>
 /// </param>
 /// <param name="thingDialogNavigationService">The instance of <see cref="IThingDialogNavigationService"/> that orchestrates navigation of <see cref="IThingDialogView"/></param>
 /// <param name="dialogNavigationService">The instance of <see cref="IDialogNavigationService"/> that orchestrates navigation to dialogs</param>
 /// <param name="pluginSettingsService">The instance of <see cref="IPluginSettingsService"/> that reads and writes </param>
 /// <param name="favoritesService">The instance of <see cref="IDialogNavigationService"/> that</param>
 public BasicRdlRibbonPart(int order, IPanelNavigationService panelNavigationService, IThingDialogNavigationService thingDialogNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService, IFavoritesService favoritesService)
     : base(order, panelNavigationService, thingDialogNavigationService, dialogNavigationService, pluginSettingsService)
 {
     CDPMessageBus.Current.Listen <SessionEvent>().Subscribe(this.SessionChangeEventHandler);
     this.FavoritesService = favoritesService;
 }
Example #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DashboardBrowserViewModel"/> class
        /// </summary>
        /// <param name="iteration">
        /// The <see cref="Iteration"/>
        /// </param>
        /// <param name="session">
        /// The <see cref="ISession"/> containing the given <see cref="EngineeringModel"/>
        /// </param>
        /// <param name="thingDialogNavigationService">
        /// The <see cref="IThingDialogNavigationService"/> that allows to navigate to <see cref="Thing"/> dialog view models
        /// </param>
        /// <param name="panelNavigationService">
        /// The <see cref="IPanelNavigationService"/>
        /// The <see cref="IPanelNavigationService"/> that allows to navigate to Panels
        /// </param>
        /// <param name="dialogNavigationService">
        /// The <see cref="IDialogNavigationService"/>
        /// </param>
        /// <param name="pluginSettingsService">
        /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
        /// </param>
        public DashboardBrowserViewModel(Iteration iteration, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            this.Caption = $"{PanelCaption}";
            this.ToolTip = $"{((EngineeringModel) this.Thing.Container).EngineeringModelSetup.Name}\n{this.Thing.IDalUri}\n{this.Session.ActivePerson.Name}";

            this.CurrentModel     = this.CurrentEngineeringModelSetup.Name;
            this.CurrentIteration = this.Thing.IterationSetup.IterationNumber;

            var currentDomainOfExpertise = this.QueryCurrentDomainOfExpertise();

            this.DomainOfExpertise = currentDomainOfExpertise == null ? "None" : $"{currentDomainOfExpertise.Name} [{currentDomainOfExpertise.ShortName}]";
            this.Widgets           = new ReactiveList <UserControl>();

            this.WhenAnyValue(x => x.ActualHeight, x => x.ActualWidth).Subscribe(_ => this.ResizeControls());
            this.WhenAnyValue(x => x.MainOrientation).Subscribe(this.OnOrientationChange);

            this.ResizeControls();
        }
Example #4
0
        private static IPanelViewModel MockInstantiate(Iteration it, ISession ses, IThingDialogNavigationService thingDialogService, IPanelNavigationService panelService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
        {
            var model = it.Container as EngineeringModel;

            return(new PanelViewModel(it, model.GetActiveParticipant(ses.ActivePerson), ses, thingDialogService, panelService, dialogNavigationService, pluginSettingsService));
        }
Example #5
0
 public PanelViewModel(Iteration iteration, Participant participant, ISession session, IThingDialogNavigationService dialogNav, IPanelNavigationService panelNav, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
     : base(iteration, session, dialogNav, panelNav, dialogNavigationService, pluginSettingsService)
 {
 }
Example #6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="NaturalLanguageBrowserViewModel"/> class
        /// </summary>
        /// <param name="session">The <see cref="ISession"/> containing the given <see cref="SiteDirectory"/></param>
        /// <param name="siteDir">The <see cref="SiteDirectory"/> containing the data of this browser</param>
        /// <param name="thingDialogNavigationService">
        /// The <see cref="IThingDialogNavigationService"/> that allows to navigate to <see cref="Thing"/> dialog view models
        /// </param>
        /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/>
        /// The <see cref="IPanelNavigationService"/> that allows to navigate to Panels
        /// </param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        /// <param name="pluginSettingsService">
        /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
        /// </param>
        public NaturalLanguageBrowserViewModel(ISession session, SiteDirectory siteDir, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(siteDir, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            this.Caption = PanelCaption + ", " + this.Thing.Name;
            this.ToolTip = string.Format("{0}\n{1}\n{2}", this.Thing.Name, this.Thing.IDalUri, this.Session.ActivePerson.Name);

            this.NaturalLanguageRowViewModels = new DisposableReactiveList <NaturalLanguageRowViewModel>();

            this.ComputeNaturalLanguageRows();
        }
        /// <summary>
        /// returns a new instance of the <see cref="PersonBrowserViewModel"/> class
        /// </summary>
        /// <param name="session">The <see cref="ISession"/></param>
        /// <param name="thingDialogNavigationService">The <see cref="IThingDialogNavigationService"/></param>
        /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        /// <returns>An instance of the <see cref="PersonBrowserViewModel"/> class</returns>
        /// <param name="pluginSettingsService">
        /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
        /// </param>
        public static IPanelViewModel InstantiatePanelViewModel(ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
        {
            var stopWatch = Stopwatch.StartNew();
            var viewModel = new PersonBrowserViewModel(session, session.RetrieveSiteDirectory(), thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService);

            stopWatch.Stop();
            Logger.Info("The Person Browser opened in {0}", stopWatch.Elapsed.ToString("hh':'mm':'ss'.'fff"));

            return(viewModel);
        }
Example #8
0
 public BuiltInRulesRibbonPage(IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IRuleVerificationService ruleVerificationService)
 {
     this.InitializeComponent();
     this.DataContext = new BuiltInRulesRibbonPageViewModel(panelNavigationService, dialogNavigationService, ruleVerificationService);
 }
Example #9
0
 public BasicRdlModule(IRegionManager regionManager, IFluentRibbonManager ribbonManager, IPanelNavigationService panelNavigationService, IThingDialogNavigationService thingDialogNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
 {
     this.RegionManager                = regionManager;
     this.RibbonManager                = ribbonManager;
     this.PanelNavigationService       = panelNavigationService;
     this.ThingDialogNavigationService = thingDialogNavigationService;
     this.DialogNavigationService      = dialogNavigationService;
     this.PluginSettingsService        = pluginSettingsService;
 }
Example #10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ErrorBrowserViewModel"/> class.
 /// </summary>
 /// <param name="session">the associated <see cref="ISession"/></param>
 /// <param name="siteDir">The unique <see cref="SiteDirectory"/></param>
 /// <param name="thingDialogNavigationService">The <see cref="IThingDialogNavigationService"/></param>
 /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
 /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
 public ErrorBrowserViewModel(ISession session, SiteDirectory siteDir, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
     : base(siteDir, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
 {
     this.Caption = $"{PanelCaption}, {this.Thing.Name}";
     this.ToolTip = $"{this.Thing.Name}\n{this.Thing.IDalUri}\n{this.Session.ActivePerson.Name}";
     this.Errors  = new List <ErrorRowViewModel>();
     this.PopulateErrors();
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="BudgetViewerViewModel"/> class
        /// </summary>
        /// <param name="iteration">The associated <see cref="Iteration"/></param>
        /// <param name="session">The session</param>
        /// <param name="thingDialogNavigationService">The thing Dialog Navigation Service</param>
        /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        /// <param name="pluginSettingsService">
        /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
        /// </param>
        public BudgetViewerViewModel(Iteration iteration, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            this.openSaveFileDialogService = ServiceLocator.Current.GetInstance <IOpenSaveFileDialogService>();

            this.Caption = "Budget Viewer";
            this.ToolTip = string.Format("{0}\n{1}\n{2}", ((EngineeringModel)this.Thing.Container).EngineeringModelSetup.Name, this.Thing.IDalUri, this.Session.ActivePerson.Name);

            this.CurrentModel     = this.CurrentEngineeringModelSetup.Name;
            this.CurrentIteration = this.Thing.IterationSetup.IterationNumber;

            var currentDomainOfExpertise = this.Session.QuerySelectedDomainOfExpertise(this.Thing);

            this.DomainOfExpertise = currentDomainOfExpertise == null ? "None" : $"{currentDomainOfExpertise.Name} [{currentDomainOfExpertise.ShortName}]";

            this.OptionOverviewViewModel = new OptionOverviewViewModel();
            this.BudgetViewModels        = new ReactiveList <OptionBudgetViewModel>();

            this.OpenConfigCommand = ReactiveCommand.Create();
            this.OpenConfigCommand.Subscribe(_ => this.ExecuteOpenConfigCommand());

            var confObs = this.WhenAnyValue(x => x.BudgetConfig).Select(x => x != null);

            this.RefreshBudgetCommand = ReactiveCommand.Create(confObs);
            this.RefreshBudgetCommand.CanExecuteObservable.Subscribe(_ => this.ComputeBudgets());

            this.SaveConfigCommand = ReactiveCommand.Create(confObs);
            this.SaveConfigCommand.Subscribe(_ => this.ExecuteSaveConfigCommand());

            this.LoadConfigCommand = ReactiveCommand.Create();
            this.LoadConfigCommand.Subscribe(_ => this.ExecuteLoadConfigCommand());
            this.ComputeBudgets();
        }
Example #12
0
 /// <summary>
 /// Returns an instance of the <see cref="FiniteStateBrowserRibbonViewModel"/> class
 /// </summary>
 /// <param name="iteration">The <see cref="Iteration"/> containing the information</param>
 /// <param name="session">The <see cref="ISession"/></param>
 /// <param name="thingDialogNavigationService">The <see cref="IThingDialogNavigationService"/></param>
 /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
 /// <param name="pluginSettingsService">
 /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
 /// </param>
 /// <returns>An instance of <see cref="OptionBrowserViewModel"/></returns>
 public static FiniteStateBrowserViewModel InstantiatePanelViewModel(Iteration iteration, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
 {
     return(new FiniteStateBrowserViewModel(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService));
 }
Example #13
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RequirementsSpecificationEditorViewModel"/> class
        /// </summary>
        /// <param name="thing">The <see cref="RequirementsSpecification"/> that is represented by the current view-model</param>
        /// <param name="session">The session</param>
        /// <param name="thingDialogNavigationService">the <see cref="IThingDialogNavigationService"/></param>
        /// <param name="panelNavigationService">the <see cref="IPanelNavigationService"/></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        public RequirementsSpecificationEditorViewModel(RequirementsSpecification thing, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(thing, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            this.Caption = string.Format("{0}: {1}", PanelCaption, this.Thing.ShortName);
            this.ToolTip = string.Format("{0}\n{1}\n{2}", this.Thing.Name, this.Thing.IDalUri, this.Session.ActivePerson.Name);

            var model = (EngineeringModel)this.Thing.TopContainer;

            this.modelSetup = model.EngineeringModelSetup;

            var iteration = (Iteration)thing.Container;

            this.iterationSetup = iteration.IterationSetup;

            this.ContainedRows = new ReactiveList <IRowViewModelBase <Thing> >();

            this.AddRequirementsSpecificationRow(thing);
            this.UpdateRequirementGroupRows();
            this.UpdateRequirementRows();

            this.AddSubscriptions();
            this.UpdateProperties();
        }
Example #14
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RuleVerificationListBrowserViewModel"/> class.
        /// </summary>
        /// <param name="iteration">
        /// The <see cref="Iteration"/> that is being represented by the view-model
        /// </param>
        /// <param name="participant">
        /// The active <see cref="Participant"/>.
        /// </param>
        /// <param name="session">
        /// The session.
        /// </param>
        /// <param name="thingDialogNavigationService">
        /// The thing dialog navigation service.
        /// </param>
        /// <param name="panelNavigationService">
        /// The panel navigation service.
        /// </param>
        /// <param name="dialogNavigationService">
        /// The dialog navigation service.
        /// </param>
        public RuleVerificationListBrowserViewModel(Iteration iteration, Participant participant, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            if (participant == null)
            {
                throw new ArgumentNullException("participant", "The participant must not be null");
            }

            this.Caption = $"{PanelCaption}, iteration_{this.Thing.IterationSetup.IterationNumber}";
            this.ToolTip = $"{((EngineeringModel) this.Thing.Container).EngineeringModelSetup.Name}\n{this.Thing.IDalUri}\n{this.Session.ActivePerson.Name}";

            this.ActiveParticipant = participant;
            this.UpdateRuleVericationLists();

            this.AddSubscriptions();
            this.UpdateProperties();
        }
Example #15
0
 /// <summary>
 /// returns a new instance of the <see cref="ModelBrowserViewModel"/> class
 /// </summary>
 /// <param name="session">The <see cref="ISession"/></param>
 /// <param name="thingDialogNavigationService">The <see cref="IThingDialogNavigationService"/></param>
 /// <param name="panelNavigationService">The <see cref="IPanelNavigationService"/></param>
 /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
 /// <param name="pluginSettingsService">
 /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
 /// </param>
 /// <returns>An instance of the <see cref="ModelBrowserViewModel"/> class</returns>
 public static IPanelViewModel InstantiatePanelViewModel(ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
 {
     return(new ModelBrowserViewModel(session, session.RetrieveSiteDirectory(), thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService));
 }
Example #16
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RelationshipMatrixViewModel" /> class
        /// </summary>
        /// <param name="iteration">The associated <see cref="Iteration" /></param>
        /// <param name="session">The session</param>
        /// <param name="thingDialogNavigationService">The thing Dialog Navigation Service</param>
        /// <param name="panelNavigationService">The <see cref="IPanelNavigationService" /></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService" /></param>
        /// <param name="pluginService">The <see cref="IPluginSettingsService" /></param>
        public RelationshipMatrixViewModel(Iteration iteration, ISession session,
                                           IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService,
                                           IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginService)
            : base(iteration, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService,
                   pluginService)
        {
            this.Caption            = "Relationship Matrix";
            this.ShowDirectionality = true;
            this.ShowRelatedOnly    = false;
            this.IsBusy             = false;

            this.ToolTip =
                $"{((EngineeringModel) this.Thing.Container).EngineeringModelSetup.Name}\n{this.Thing.IDalUri}\n{this.Session.ActivePerson.Name}";

            this.settings = this.PluginSettingsService.Read <RelationshipMatrixPluginSettings>();

            this.SavedConfigurations = new ReactiveList <SavedConfiguration> {
                ChangeTrackingEnabled = true
            };

            this.ReloadSavedConfigurations();

            this.SourceYConfiguration =
                new SourceConfigurationViewModel(session, iteration, this.UpdateRelationshipConfiguration,
                                                 this.BuildRelationshipMatrix, this.settings);

            this.SourceXConfiguration =
                new SourceConfigurationViewModel(session, iteration, this.UpdateRelationshipConfiguration,
                                                 this.BuildRelationshipMatrix, this.settings);

            this.RelationshipConfiguration =
                new RelationshipConfigurationViewModel(session, thingDialogNavigationService, iteration,
                                                       this.BuildRelationshipMatrix, this.settings);

            this.Matrix = new MatrixViewModel(this.Session, this.Thing, this.settings);

            this.Disposables.Add(this.SourceYConfiguration);
            this.Disposables.Add(this.SourceXConfiguration);
            this.Disposables.Add(this.RelationshipConfiguration);
            this.Disposables.Add(this.Matrix);

            var model = (EngineeringModel)this.Thing.TopContainer;

            this.modelSetup        = model.EngineeringModelSetup;
            this.iterationSetup    = this.Thing.IterationSetup;
            this.CurrentIteration  = this.iterationSetup.IterationNumber;
            this.ActiveParticipant = this.modelSetup.Participant.Single(x => x.Person == this.Session.ActivePerson);

            this.AddSubscriptions();
            this.UpdateProperties();
        }
Example #17
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ProductTreeViewModel"/> class
        /// </summary>
        /// <param name="option">The <see cref="Option"/> of which this browser is of</param>
        /// <param name="session">The session</param>
        /// <param name="thingDialogNavigationService">the <see cref="IThingDialogNavigationService"/></param>
        /// <param name="panelNavigationService">the <see cref="IPanelNavigationService"/></param>
        /// <param name="dialogNavigationService">The <see cref="IDialogNavigationService"/></param>
        /// <param name="pluginSettingsService">
        /// The <see cref="IPluginSettingsService"/> used to read and write plugin setting files.
        /// </param>
        public ProductTreeViewModel(Option option, ISession session, IThingDialogNavigationService thingDialogNavigationService, IPanelNavigationService panelNavigationService, IDialogNavigationService dialogNavigationService, IPluginSettingsService pluginSettingsService)
            : base(option, session, thingDialogNavigationService, panelNavigationService, dialogNavigationService, pluginSettingsService)
        {
            this.Caption = string.Format("{0}, {1}", PanelCaption, this.Thing.Name);
            this.ToolTip = string.Format("{0}\n{1}\n{2}", this.Thing.Name, this.Thing.IDalUri, this.Session.ActivePerson.Name);

            this.TopElement = new ReactiveList <ElementDefinitionRowViewModel>();
            var model = (EngineeringModel)this.Thing.TopContainer;

            this.modelSetup = model.EngineeringModelSetup;

            var iteration = (Iteration)this.Thing.Container;

            this.iterationSetup = iteration.IterationSetup;

            this.ActiveParticipant = this.modelSetup.Participant.Single(x => x.Person == this.Session.ActivePerson);

            var iterationSubscription = CDPMessageBus.Current.Listen <ObjectChangedEvent>(iteration)
                                        .Where(
                objectChange =>
                objectChange.EventKind == EventKind.Updated &&
                objectChange.ChangedThing.RevisionNumber > this.RevisionNumber)
                                        .Select(x => x.ChangedThing as Iteration)
                                        .ObserveOn(RxApp.MainThreadScheduler)
                                        .Subscribe(this.SetTopElement);

            this.Disposables.Add(iterationSubscription);

            this.AddSubscriptions();

            this.SetTopElement(iteration);

            this.UpdateProperties();
        }
Example #18
0
 public CDP4ScriptingModule(IRegionManager regionManager, IPanelNavigationService panelNavigationService)
 {
     this.RegionManager          = regionManager;
     this.PanelNavigationService = panelNavigationService;
 }