コード例 #1
0
        public AreaSelectorViewModel(IEventAggregator eventAggregator,
                                     IObservableDataFactory observableDataFactory,
                                     IDataDomainService dataDomainService,
                                     IObjectMapper objectMapper,
                                     IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _observableDataFactory = observableDataFactory;
            _dataDomainService     = dataDomainService;
            _objectMapper          = objectMapper;
            _moduleDataService     = moduleDataService;

            Areas = new ObservableCollectionEx <AreaDataObservable>();

            CreateAreaCommand         = new DelegateCommand(CreateArea);
            DeleteAreaCommand         = new DelegateCommand(DeleteArea);
            OpenAreaPropertiesCommand = new DelegateCommand(OpenAreaProperties);
            OpenAreaCommand           = new DelegateCommand(OpenArea);

            CreateAreaRequest         = new InteractionRequest <INotification>();
            OpenAreaPropertiesRequest = new InteractionRequest <INotification>();
            ConfirmDeleteRequest      = new InteractionRequest <IConfirmation>();


            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
            _eventAggregator.GetEvent <AreaCreatedEvent>().Subscribe(AreaCreated);
        }
コード例 #2
0
        public PlaceableEditorViewModel(
            IEventAggregator eventAggregator,
            IObservableDataFactory observableDataFactory,
            IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _observableDataFactory = observableDataFactory;
            _moduleDataService     = moduleDataService;

            NewCommand    = new DelegateCommand(New);
            DeleteCommand = new DelegateCommand(Delete);

            AddLocalStringCommand    = new DelegateCommand(AddLocalString);
            AddLocalDoubleCommand    = new DelegateCommand(AddLocalDouble);
            DeleteLocalStringCommand = new DelegateCommand <LocalStringDataObservable>(DeleteLocalString);
            DeleteLocalDoubleCommand = new DelegateCommand <LocalDoubleDataObservable>(DeleteLocalDouble);

            Placeables = new ObservableCollectionEx <PlaceableDataObservable>();
            Scripts    = new Dictionary <string, ScriptDataObservable>();

            ConfirmDeleteRequest = new InteractionRequest <IConfirmation>();

            Placeables.ItemPropertyChanged += PlaceablesOnItemPropertyChanged;

            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <DataEditorClosedEvent>().Subscribe(DataEditorClosed);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
        }
コード例 #3
0
ファイル: NewAreaViewModel.cs プロジェクト: zunath/Ceriyo
        public NewAreaViewModel(
            IEventAggregator eventAggregator,
            IObservableDataFactory observableDataFactory,
            IDataDomainService dataDomainService,
            IObjectMapper objectMapper,
            IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _observableDataFactory = observableDataFactory;
            _dataDomainService     = dataDomainService;
            _objectMapper          = objectMapper;
            _moduleDataService     = moduleDataService;

            Tilesets         = new ObservableCollectionEx <TilesetDataObservable>();
            OpenInAreaViewer = true;
            Width            = 8;
            Height           = 8;


            CreateAreaCommand = new DelegateCommand(CreateArea, CanCreateArea);
            CancelCommand     = new DelegateCommand(Cancel);

            PropertyChanged += OnPropertyChanged;

            _eventAggregator.GetEvent <DataEditorClosedEvent>().Subscribe(DataEditorClosed);
            _eventAggregator.GetEvent <ModuleOpenedEvent>().Subscribe(ModuleOpened);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
        }
コード例 #4
0
        public ScriptSelectorViewModel(
            IEventAggregator eventAggregator,
            IModuleDataService moduleDataService,
            IObservableDataFactory observableDataFactory,
            IDataDomainService dataDomainService,
            IObjectMapper objectMapper)
        {
            _eventAggregator       = eventAggregator;
            _moduleDataService     = moduleDataService;
            _observableDataFactory = observableDataFactory;
            _dataDomainService     = dataDomainService;
            _objectMapper          = objectMapper;

            CreateScriptCommand = new DelegateCommand(CreateScript);
            DeleteScriptCommand = new DelegateCommand(DeleteScript);
            EditScriptCommand   = new DelegateCommand(EditScript);

            CreateScriptRequest  = new InteractionRequest <INotification>();
            EditScriptRequest    = new InteractionRequest <INotification>();
            ConfirmDeleteRequest = new InteractionRequest <IConfirmation>();


            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
            _eventAggregator.GetEvent <ScriptCreatedEvent>().Subscribe(ScriptCreated);

            Scripts = new ObservableCollectionEx <ScriptDataObservable>();
        }
コード例 #5
0
        public TilesetEditorViewModel(
            IEventAggregator eventAggregator,
            IModuleResourceService resourceDomainService,
            IObservableDataFactory observableDataFactory,
            IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _resourceDomainService = resourceDomainService;
            _observableDataFactory = observableDataFactory;
            _moduleDataService     = moduleDataService;

            NewCommand    = new DelegateCommand(New);
            DeleteCommand = new DelegateCommand(Delete);

            Tilesets           = new ObservableCollectionEx <TilesetDataObservable>();
            TilesetImages      = new ObservableCollectionEx <string>();
            ActiveTilesetImage = new BitmapImage();

            ConfirmDeleteRequest          = new InteractionRequest <IConfirmation>();
            Tilesets.ItemPropertyChanged += TilesetsOnItemPropertyChanged;

            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <DataEditorClosedEvent>().Subscribe(DataEditorClosed);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
        }
コード例 #6
0
        public AreaPropertiesViewModel(
            IEventAggregator eventAggregator,
            IObservableDataFactory observableDataFactory,
            IDataDomainService dataDomainService,
            IObjectMapper objectMapper,
            IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _observableDataFactory = observableDataFactory;
            _dataDomainService     = dataDomainService;
            _objectMapper          = objectMapper;
            _moduleDataService     = moduleDataService;

            Tilesets       = new ObservableCollectionEx <TilesetDataObservable>();
            LocalVariables = new LocalVariableDataObservable();

            SaveCommand              = new DelegateCommand(Save);
            CancelCommand            = new DelegateCommand(Cancel);
            AddLocalDoubleCommand    = new DelegateCommand(AddLocalDouble);
            AddLocalStringCommand    = new DelegateCommand(AddLocalString);
            DeleteLocalDoubleCommand = new DelegateCommand <LocalDoubleDataObservable>(DeleteLocalDouble);
            DeleteLocalStringCommand = new DelegateCommand <LocalStringDataObservable>(DeleteLocalString);

            _eventAggregator.GetEvent <AreaPropertiesOpenedEvent>().Subscribe(AreaPropertiesOpened);
            _eventAggregator.GetEvent <ModuleOpenedEvent>().Subscribe(ModuleOpened);
            _eventAggregator.GetEvent <DataEditorClosedEvent>().Subscribe(DataEditorClosed);
        }
コード例 #7
0
ファイル: ClassEditorViewModel.cs プロジェクト: zunath/Ceriyo
        public ClassEditorViewModel(
            IEventAggregator eventAggregator,
            IObservableDataFactory observableDataFactory,
            IModuleDataService moduleDataService)
        {
            _eventAggregator       = eventAggregator;
            _observableDataFactory = observableDataFactory;
            _moduleDataService     = moduleDataService;

            NewCommand    = new DelegateCommand(New);
            DeleteCommand = new DelegateCommand(Delete);

            Classes = new ObservableCollectionEx <ClassDataObservable>();

            ConfirmDeleteRequest = new InteractionRequest <IConfirmation>();

            Classes.ItemPropertyChanged += ClassesOnItemPropertyChanged;

            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <DataEditorClosedEvent>().Subscribe(DataEditorClosed);
            _eventAggregator.GetEvent <ModuleClosedEvent>().Subscribe(ModuleClosed);
        }
コード例 #8
0
        public ModulePropertiesViewModel(
            IObjectMapper objectMapper,
            IEventAggregator eventAggregator,
            IModuleService domainService,
            IObservableDataFactory observableDataFactory)
        {
            _objectMapper          = objectMapper;
            _eventAggregator       = eventAggregator;
            _domainService         = domainService;
            _observableDataFactory = observableDataFactory;

            Scripts        = new ObservableCollectionEx <ScriptDataObservable>();
            LocalVariables = _observableDataFactory.Create <LocalVariableDataObservable>();
            LevelChart     = new ObservableCollectionEx <ClassLevelDataObservable>();


            LocalVariables.VariablesItemPropertyChanged += OnPropertyChanged;
            LocalVariables.VariablesPropertyChanged     += OnPropertyChanged;
            LocalVariables.VariablesCollectionChanged   += LocalVariablesCollectionChanged;
            LevelChart.PropertyChanged     += OnPropertyChanged;
            LevelChart.ItemPropertyChanged += OnPropertyChanged;

            MaximumPossibleLevel = 99;

            SaveCommand   = new DelegateCommand(Save, CanSave);
            CancelCommand = new DelegateCommand(Cancel);

            AddLocalStringCommand    = new DelegateCommand(AddLocalString);
            AddLocalDoubleCommand    = new DelegateCommand(AddLocalDouble);
            DeleteLocalStringCommand = new DelegateCommand <LocalStringDataObservable>(DeleteLocalString);
            DeleteLocalDoubleCommand = new DelegateCommand <LocalDoubleDataObservable>(DeleteLocalDouble);

            _eventAggregator.GetEvent <ModuleLoadedEvent>().Subscribe(ModuleLoaded);
            _eventAggregator.GetEvent <ModulePropertiesClosedEvent>().Subscribe(Cancel);

            PropertyChanged += OnPropertyChanged;
            LocalVariables.PropertyChanged += OnPropertyChanged;
        }