コード例 #1
0
        private static PlanningGameManager BuildPlanningGameManager(MainWindow mainWindow)
        {
            var commandQueue        = new OperationsQueue(mainWindow.Dispatcher);
            var networkManager      = new NetworkManager();
            var stubDataLoader      = new XmlDataPersister(XmlSerializerFactoy.Create());
            var viewModelParser     = new ViewModelParser(mainWindow);
            var planningGameManager = new PlanningGameManager(mainWindow, commandQueue, networkManager, stubDataLoader,
                                                              viewModelParser);

            return(planningGameManager);
        }
コード例 #2
0
        public static MainWindow Build(IDataRepository dataRepository, Dispatcher dispatcher)
        {
            var operationsQueue = new OperationsQueue(dispatcher);

            MainWindowViewModel mainWindowViewModel = new MainWindowViewModel();

            mainWindowViewModel.People.SlaveTo(dataRepository.AllPeople, new PeopleViewModelFactory());
            mainWindowViewModel.Projects.SlaveTo(dataRepository.AllProjects, new ProjectViewModelFactory());
            mainWindowViewModel.AllSchedules.SlaveTo(dataRepository.AllWeeklySchedules, new WeeklyScheduleViewModelFactory());

            dataRepository.AllResourceBlocks.DataChanged += OnResourceBlockChange(mainWindowViewModel);

            var userOperationsFactory = new UserOperationsBuilder(operationsQueue, null);

            return(new MainWindow(mainWindowViewModel, userOperationsFactory));
        }
コード例 #3
0
        public PlanningGameManager(IMainWindow mainWindow,
                                   OperationsQueue operationQueue,
                                   NetworkManager networkManager,
                                   IDataPersister dataPersister,
                                   ViewModelParser viewModelParser)
        {
            _mainWindow      = mainWindow;
            _operationQueue  = operationQueue;
            _networkManager  = networkManager;
            _dataPersister   = dataPersister;
            _viewModelParser = viewModelParser;

            mainWindow.WindowClosed += SaveData;

            mainWindow.NetworkConnect     += WindowOnNetworkConnect;
            mainWindow.HostNetworkSession += WindowOnHostNetworkSession;

            mainWindow.OpenProject += Window_OnOpenProject;
            mainWindow.SaveProject += Window_OnSaveProject;

            _operationQueue.OperationStatus += Operation_OnStatusMessage;
        }
コード例 #4
0
 internal QueueOperation(OperationsQueue queue, bool runInParallel) : base(runInParallel)
 {
     _queue = queue;
 }