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); }
public override void Initialize(ActionInitializeParams param) { base.Initialize(param); //_layoutController.CompareModeChanged += OnCompareModeChanged; //IsActive = _layoutController.GetActiveCompareMode() == CompareMode; _layoutController.CurrentModeChanged += OnCompareModeChanged; IsActive = _layoutController.CurrentMode == CompareMode; }
/// <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)); }
//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); }
/// <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); } }
/// <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; }