private void UnregisterModelEventHandlers(IDynamoModel model)
 {
     model.WorkspaceCleared    -= OnWorkspaceCleared;
     model.ShutdownStarted     -= OnModelShutdownStarted;
     model.EvaluationCompleted -= OnEvaluationCompleted;
     model.PropertyChanged     -= OnModelPropertyChanged;
 }
 private void RegisterModelEventhandlers(IDynamoModel dynamoModel)
 {
     dynamoModel.WorkspaceCleared    += OnWorkspaceCleared;
     dynamoModel.ShutdownStarted     += OnModelShutdownStarted;
     dynamoModel.EvaluationCompleted += OnEvaluationCompleted;
     dynamoModel.PropertyChanged     += OnModelPropertyChanged;
 }
        private void UnregisterWorkspaceEventHandlers(IDynamoModel model)
        {
            model.WorkspaceAdded   -= OnWorkspaceAdded;
            model.WorkspaceRemoved -= OnWorkspaceRemoved;
            model.WorkspaceOpening -= OnWorkspaceOpening;

            foreach (var ws in model.Workspaces)
            {
                ws.Saving -= OnWorkspaceSaving;
            }
        }
        /// <summary>
        /// The DefaultWatch3DViewModel is used in contexts where a complete rendering environment
        /// cannot be established. Typically, this is machines that do not have GPUs, or do not
        /// support DirectX 10 feature levels. For most purposes, you will want to use a <see cref="HelixWatch3DViewModel"/>
        /// </summary>
        /// <param name="model">The NodeModel that this watch is displaying.</param>
        /// <param name="parameters">A Watch3DViewModelStartupParams object.</param>
        public DefaultWatch3DViewModel(NodeModel model, Watch3DViewModelStartupParams parameters)
        {
            watchModel    = model;
            dynamoModel   = parameters.Model;
            scheduler     = parameters.Scheduler;
            preferences   = parameters.Preferences;
            engineManager = parameters.EngineControllerManager;

            Name   = Resources.BackgroundPreviewDefaultName;
            active = parameters.Preferences.IsBackgroundPreviewActive;

            CanBeActivated = true;
        }
        protected Watch3DViewModelBase(Watch3DViewModelStartupParams parameters)
        {
            model                         = parameters.Model;
            scheduler                     = parameters.Scheduler;
            preferences                   = parameters.Preferences;
            logger                        = parameters.Logger;
            engineManager                 = parameters.EngineControllerManager;
            renderPackageFactory          = parameters.RenderPackageFactory;
            viewModel                     = parameters.ViewModel;
            renderPackageFactoryViewModel = parameters.RenderPackageFactoryViewModel;

            Active = parameters.IsActiveAtStart;
            Name   = parameters.Name;
            logger = parameters.Logger;

            RegisterEventHandlers();
        }
        private void RegisterWorkspaceEventHandlers(IDynamoModel model)
        {
            model.WorkspaceAdded   += OnWorkspaceAdded;
            model.WorkspaceRemoved += OnWorkspaceRemoved;
            model.WorkspaceOpening += OnWorkspaceOpening;

            foreach (var ws in model.Workspaces)
            {
                ws.Saving      += OnWorkspaceSaving;
                ws.NodeAdded   += OnNodeAddedToWorkspace;
                ws.NodeRemoved += OnNodeRemovedFromWorkspace;

                foreach (var node in ws.Nodes)
                {
                    node.PropertyChanged       += OnNodePropertyChanged;
                    node.RenderPackagesUpdated += OnRenderPackagesUpdated;
                }
            }
        }
        /// <summary>
        /// The DefaultWatch3DViewModel is used in contexts where a complete rendering environment
        /// cannot be established. Typically, this is machines that do not have GPUs, or do not
        /// support DirectX 10 feature levels. For most purposes, you will want to use a <see cref="HelixWatch3DViewModel"/>
        /// </summary>
        /// <param name="parameters">A Watch3DViewModelStartupParams object.</param>
        public DefaultWatch3DViewModel(Watch3DViewModelStartupParams parameters)
        {
            model         = parameters.Model;
            scheduler     = parameters.Scheduler;
            preferences   = parameters.Preferences;
            logger        = parameters.Logger;
            engineManager = parameters.EngineControllerManager;

            Name          = Resources.BackgroundPreviewDefaultName;
            isGridVisible = parameters.Preferences.IsBackgroundGridVisible;
            active        = parameters.Preferences.IsBackgroundPreviewActive;
            logger        = parameters.Logger;

            RegisterEventHandlers();

            TogglePanCommand   = new DelegateCommand(TogglePan, CanTogglePan);
            ToggleOrbitCommand = new DelegateCommand(ToggleOrbit, CanToggleOrbit);
            ToggleCanNavigateBackgroundCommand = new DelegateCommand(ToggleCanNavigateBackground, CanToggleCanNavigateBackground);
            ZoomToFitCommand = new DelegateCommand(ZoomToFit, CanZoomToFit);
            CanBeActivated   = true;
        }
Exemple #8
0
        protected Watch3DViewModelBase(Watch3DViewModelStartupParams parameters)
        {
            model                         = parameters.Model;
            scheduler                     = parameters.Scheduler;
            preferences                   = parameters.Preferences;
            logger                        = parameters.Logger;
            engineManager                 = parameters.EngineControllerManager;
            renderPackageFactory          = parameters.RenderPackageFactory;
            viewModel                     = parameters.ViewModel;
            renderPackageFactoryViewModel = parameters.RenderPackageFactoryViewModel;

            Active = parameters.Preferences.IsBackgroundPreviewActive;
            Name   = parameters.Name;
            logger = parameters.Logger;

            RegisterEventHandlers();

            TogglePanCommand   = new DelegateCommand(TogglePan, CanTogglePan);
            ToggleOrbitCommand = new DelegateCommand(ToggleOrbit, CanToggleOrbit);
            ToggleCanNavigateBackgroundCommand = new DelegateCommand(ToggleCanNavigateBackground, CanToggleCanNavigateBackground);
        }
        private void RegisterWorkspaceEventHandlers(IDynamoModel model)
        {
            model.WorkspaceAdded += OnWorkspaceAdded;
            model.WorkspaceRemoved += OnWorkspaceRemoved;
            model.WorkspaceOpening += OnWorkspaceOpening;

            foreach (var ws in model.Workspaces)
            {
                ws.Saving += OnWorkspaceSaving;
                ws.NodeAdded += OnNodeAddedToWorkspace;
                ws.NodeRemoved += OnNodeRemovedFromWorkspace;

                foreach (var node in ws.Nodes)
                {
                    node.PropertyChanged += OnNodePropertyChanged;
                    node.RenderPackagesUpdated += OnRenderPackagesUpdated;
                }
            }
        }
 private void UnregisterModelEventHandlers(IDynamoModel model)
 {
     model.WorkspaceCleared -= OnWorkspaceCleared;
     model.ShutdownStarted -= OnModelShutdownStarted;
 }
        private void UnregisterWorkspaceEventHandlers(IDynamoModel model)
        {
            model.WorkspaceAdded -= OnWorkspaceAdded;
            model.WorkspaceRemoved -= OnWorkspaceRemoved;
            model.WorkspaceOpening -= OnWorkspaceOpening;

            foreach (var ws in model.Workspaces)
            {
                ws.Saving -= OnWorkspaceSaving;
            }
        }
 private void OnModelShutdownStarted(IDynamoModel dynamoModel)
 {
     UnregisterEventHandlers();
     OnShutdown();
 }
 private void RegisterModelEventhandlers(IDynamoModel dynamoModel)
 {
     dynamoModel.WorkspaceCleared += OnWorkspaceCleared;
     dynamoModel.ShutdownStarted += OnModelShutdownStarted;
     dynamoModel.EvaluationCompleted += OnEvaluationCompleted;
     dynamoModel.PropertyChanged += OnModelPropertyChanged;
 }
        /// <summary>
        /// The DefaultWatch3DViewModel is used in contexts where a complete rendering environment
        /// cannot be established. Typically, this is machines that do not have GPUs, or do not
        /// support DirectX 10 feature levels. For most purposes, you will want to use a <see cref="HelixWatch3DViewModel"/>
        /// </summary>
        /// <param name="parameters">A Watch3DViewModelStartupParams object.</param>
        public DefaultWatch3DViewModel(Watch3DViewModelStartupParams parameters)
        {
            model = parameters.Model;
            scheduler = parameters.Scheduler;
            preferences = parameters.Preferences;
            logger = parameters.Logger;
            engineManager = parameters.EngineControllerManager;

            Name = Resources.BackgroundPreviewDefaultName;
            isGridVisible = parameters.Preferences.IsBackgroundGridVisible;
            logger = parameters.Logger;

            RegisterEventHandlers();

            TogglePanCommand = new DelegateCommand(TogglePan, CanTogglePan);
            ToggleOrbitCommand = new DelegateCommand(ToggleOrbit, CanToggleOrbit);
            ToggleCanNavigateBackgroundCommand = new DelegateCommand(ToggleCanNavigateBackground, CanToggleCanNavigateBackground);
            ZoomToFitCommand = new DelegateCommand(ZoomToFit, CanZoomToFit);
            CanBeActivated = true;
        }
        protected Watch3DViewModelBase(Watch3DViewModelStartupParams parameters)
        {
            model = parameters.Model;
            scheduler = parameters.Scheduler;
            preferences = parameters.Preferences;
            logger = parameters.Logger;
            engineManager = parameters.EngineControllerManager;
            renderPackageFactory = parameters.RenderPackageFactory;
            viewModel = parameters.ViewModel;
            renderPackageFactoryViewModel = parameters.RenderPackageFactoryViewModel;

            Active = parameters.Preferences.IsBackgroundPreviewActive;
            Name = parameters.Name;
            logger = parameters.Logger;

            RegisterEventHandlers();

            TogglePanCommand = new DelegateCommand(TogglePan, CanTogglePan);
            ToggleOrbitCommand = new DelegateCommand(ToggleOrbit, CanToggleOrbit);
            ToggleCanNavigateBackgroundCommand = new DelegateCommand(ToggleCanNavigateBackground, CanToggleCanNavigateBackground);
        }
        protected Watch3DViewModelBase(Watch3DViewModelStartupParams parameters)
        {
            model = parameters.Model;
            scheduler = parameters.Scheduler;
            preferences = parameters.Preferences;
            logger = parameters.Logger;
            engineManager = parameters.EngineControllerManager;
            renderPackageFactory = parameters.RenderPackageFactory;
            viewModel = parameters.ViewModel;
            renderPackageFactoryViewModel = parameters.RenderPackageFactoryViewModel;

            Active = parameters.IsActiveAtStart;
            Name = parameters.Name;
            logger = parameters.Logger;

            RegisterEventHandlers();
        }
 private void OnModelShutdownStarted(IDynamoModel dynamoModel)
 {
     UnregisterEventHandlers();
     OnShutdown();
 }
 private void UnregisterModelEventHandlers(IDynamoModel model)
 {
     model.WorkspaceCleared -= OnWorkspaceCleared;
     model.ShutdownStarted  -= OnModelShutdownStarted;
 }