public override IActionViewModel CreateChildOfType(ActionInitializeParams param)
        {
            var action = new NprActionViewModel(_rigidNPRService);

            action.Initialize(param);
            return(action);
        }
        /// <summary>
        /// Initializes Action with specific parameters defining  Name, tree structure etc.
        /// Subscribes to events
        /// </summary>
        /// <param name="param"></param>
        public override void Initialize(ActionInitializeParams param)
        {
            Debug.Assert(param is LayerActionInitializeParams, "In Overlays ActionInitializeParams should be of type LayerActionInitializeParams");
            Layer = ((LayerActionInitializeParams)param).Layer;

            base.Initialize(param);

            _uiModeService.CanShowHideLayerChanged += (_, ea) =>
            {
                if (ea.Layer == Layer)
                {
                    CanShowHideLayer = ea.CanShowHide;
                }
            };
            _uiModeService.LayerVisiblityChanged += (___, ea) =>
            {
                if (Layer != UiMode.None)
                {
                    IsActive = _uiModeService.IsLayerVisible(Layer);
                }
            };

            //Set initial state
            CanShowHideLayer = _uiModeService.CanShowHideLayer(Layer);
        }
        public override void Initialize(ActionInitializeParams param)
        {
            base.Initialize(param);

            _uiModeService.SelectedOverlaysChanged += (_, ea) =>
            {
                GetCanDelete();
            };
        }
        public override void Initialize(ActionInitializeParams param)
        {
            Debug.Assert(param is NprActionInitialiseParams, "In NPR ActionInitializeParams should be of type NprActionInitialiseParams");

            NPRRadius = ((NprActionInitialiseParams)param).NPRRadius;
            UiMode    = ((NprActionInitialiseParams)param).Layer;

            base.Initialize(param);
        }
Beispiel #5
0
        public override void Initialize(ActionInitializeParams param)
        {
            base.Initialize(param);

            //_layoutController.CompareModeChanged += OnCompareModeChanged;
            //IsActive = _layoutController.GetActiveCompareMode() == CompareMode;

            _layoutController.CurrentModeChanged += OnCompareModeChanged;
            IsActive = _layoutController.CurrentMode == CompareMode;
        }
Beispiel #6
0
        /// <summary>
        /// Initializes Action with specific parameters defining  Name, tree structure etc.
        /// </summary>
        /// <param name="param"></param>
        public virtual void Initialize(ActionInitializeParams param)
        {
            Parent   = param.Parent;
            Name     = param.Name;
            NodeType = param.NodeType;
            CreateChildActions(param);
            _isInitialized = true;

            RaisePropertyChanged(nameof(HasChildActions));
            RaisePropertyChanged(nameof(HasActiveChildActions));
        }
Beispiel #7
0
        //public CompareActionViewModel Build(CompareMode compareMode)
        //{
        //    Debug.Assert(compareMode > 0, "CompareMode can't be None");
        //    var vm = _factory();
        //    vm.CompareMode = compareMode;
        //    var param = new ActionInitializeParams();

        //    switch (compareMode)
        //    {
        //        case CompareMode.Flicker:
        //            param.Name = "Flickering";
        //            break;
        //        case CompareMode.Curtain:
        //            param.Name = "Curtain";
        //            break;
        //        case CompareMode.Fusion:
        //            param.Name = "Fusion";
        //            break;
        //        default:
        //            throw new NotSupportedException($"The {compareMode} should be active");
        //    }

        //    vm.Initialize(param);
        //    return vm;
        //}

        public CompareActionViewModel Build(IStripsViewerMode mode)
        {
            var vm = _factory();

            vm.CompareMode = mode;
            var param = new ActionInitializeParams
            {
                Name = mode.Description
            };

            vm.Initialize(param);
            return(vm);
        }
Beispiel #8
0
        /// <summary>
        /// Creates all child actions from params
        /// </summary>
        /// <param name="param"></param>
        protected virtual void CreateChildActions(ActionInitializeParams param)
        {
            if (param.ChildActions == null || !param.ChildActions.Any())
            {
                return;
            }

            foreach (var childParam in param.ChildActions)
            {
                childParam.Parent = this;
                IActionViewModel action = _factory(); //Creating type specific instance
                action.Initialize(childParam);
                ChildActions.Add(action);
            }
        }
Beispiel #9
0
        /// <summary>
        /// Initializes Action with specific parameters defining  Name, tree structure etc.
        /// Subscribes to events
        /// </summary>
        /// <param name="param"></param>
        public override void Initialize(ActionInitializeParams param)
        {
            Debug.Assert(param is LayerActionInitializeParams, "In Measure Menu ActionInitializeParams should be of type LayerActionInitializeParams");
            UiMode    = ((LayerActionInitializeParams)param).Layer;
            SubUiMode = ((LayerActionInitializeParams)param).SubUiMode;

            base.Initialize(param);

            _uiModeService.CanEnterModeChanged += (_, ea) =>
            {
                if (ea.Mode == UiMode)
                {
                    //regular notification
                    if (string.IsNullOrWhiteSpace(ea.SubUiMode))
                    {
                        CanEnterMode = ea.CanEnter;
                    }
                    //specific notification for SubUiMode
                    if (!string.IsNullOrWhiteSpace(ea.SubUiMode) &&
                        !string.IsNullOrWhiteSpace(SubUiMode) &&
                        ea.SubUiMode.ToUpper() == SubUiMode.ToUpper())
                    {
                        CanEnterSubUiMode = ea.CanEnter;
                    }
                }
            };
            _uiModeService.ModeChanged += (___, ea) =>
            {
                if (NodeType != NodeType.ContainerParentType)//doesn't have its indication status
                {
                    IsActive = ea.NewMode == UiMode;
                }
            };

            //Set initial state
            CanEnterMode = _uiModeService.CanEnterMode(UiMode, "");
            if (!string.IsNullOrWhiteSpace(SubUiMode))
            {
                CanEnterSubUiMode = _uiModeService.CanEnterMode(UiMode, SubUiMode);
            }
        }
 /// <summary>
 /// Initializes Action with specific parameters defining  Name, tree structure etc.
 /// </summary>
 /// <param name="param"></param>
 public override void Initialize(ActionInitializeParams param)
 {
     Debug.Assert(param is LayoutActionInitializeParams, "In Layouts ActionInitializeParams should be of type LayoutActionInitializeParams");
     base.Initialize(param);
     Layout = ((LayoutActionInitializeParams)param).Layout;
 }