Пример #1
0
        protected override void OnModelPropertyChanged(string propertyName)
        {
            RaisePropertyChanged(propertyName);

            if (propertyName == "Presentation")
            {
                RemoveNodeCommand.RaiseCanExecuteChanged();
                RemoveAllButCommand.RaiseCanExecuteChanged();
                ShowCyclesCommand.RaiseCanExecuteChanged();
                RemoveNodesWithoutSourcesCommand.RaiseCanExecuteChanged();
                RemoveNodesWithoutTargetsCommand.RaiseCanExecuteChanged();
                RemoveNodesWithoutSiblingsCommand.RaiseCanExecuteChanged();
                ShowNodesOutsideClustersCommand.RaiseCanExecuteChanged();
                FoldUnfoldAllClustersCommand.RaiseCanExecuteChanged();
                AddVisibleNodesOutsideClustersToClusterCommand.RaiseCanExecuteChanged();
                ClearSelectionCommand.RaiseCanExecuteChanged();
                InvertSelectionCommand.RaiseCanExecuteChanged();
                HomeCommand.RaiseCanExecuteChanged();
                InvalidateLayoutCommand.RaiseCanExecuteChanged();
                PrintGraphCommand.RaiseCanExecuteChanged();

                BuildClustersMenu();
                BuildSelectedNodesMenu();

                if (myTransformationsModuleObserver != null)
                {
                    mySelectionObserver.ModuleChanged -= OnSelectionChanged;
                    mySelectionObserver.Dispose();
                    mySelectionObserver = null;

                    myTransformationsModuleObserver.ModuleChanged -= OnTransformationsModuleChanged;
                    myTransformationsModuleObserver.Dispose();
                    myTransformationsModuleObserver = null;
                }

                if (Presentation != null)
                {
                    var transformations = Presentation.GetModule <ITransformationModule>();
                    myTransformationsModuleObserver = transformations.CreateObserver();
                    myTransformationsModuleObserver.ModuleChanged += OnTransformationsModuleChanged;

                    mySelectionObserver = Presentation.GetPropertySetFor <Selection>().CreateObserver();
                    mySelectionObserver.ModuleChanged += OnSelectionChanged;
                }
            }
        }
Пример #2
0
        public GamesViewModel(IMediator mediator,
                              GameInfoOverlayViewModel giovm, IGameContext gameContext,
                              UserSettings settings, Lazy <LaunchManager> launchManager)
        {
            _gameContext     = gameContext;
            ModuleName       = ControllerModules.GameBrowser;
            DisplayName      = "Games";
            UserSettings     = settings;
            _gameInfoOverlay = giovm;
            _mediator        = mediator;
            _launchManager   = launchManager;
            ContextMenu      = new GameContextMenu(this);
            BarMenu          = new GameBarMenu(this);
            this.SetCommand(x => x.DoubleClickedCommand);

            this.WhenAnyValue(x => x.SelectedItemsInternal)
            .Select(x => x == null ? null : x.CreateDerivedCollection(i => (GameDataModel)i))
            .BindTo(this, x => x.SelectedItems);

            ClearSelectionCommand = ReactiveUI.ReactiveCommand.Create();
            ClearSelectionCommand.Subscribe(x => ClearSelection());
        }
Пример #3
0
 protected LibraryBase()
 {
     ClearSelectionCommand = ReactiveCommand.Create();
     ClearSelectionCommand.Subscribe(x => ClearSelection());
 }