예제 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class.
 /// </summary>
 /// <param name="modalDialogProvider">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public SaleGroupViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
     ClientsAndBuildingsTabItemViewModel = new ClientsAndBuildingsTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
       OrdersTabItemViewModel = new OrdersTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
       DeliveryNotesTabItemViewModel = new DeliveryNotesTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class.
 /// </summary>
 /// <param name="modalDialogProvider">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public AdministrationGroupViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
     DriversAndCarsTabItemViewModel = new DriversAndCarsTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
       MaterialsAndContractorsTabItemViewModel = new MaterialsAndContractorsTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
       RecipesTabItemViewModel = new RecipesTabItemViewModel(mainViewModel, ModalDialogProvider, ServiceFactory);
 }
예제 #3
0
 public AlphaNumericInput(IMainViewModel viewModel)
     : base(viewModel)
 {
     InitializeComponent();
     this.GenericAlphaNumericKeyboard.initKeyboardProperties();
     removeAddEvents();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class.
 /// </summary>
 /// <param name="modalDialogProvider">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public ReportsGroupViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
     PeriodType = PeriodTypeValues.Daily;
       ReportType = ReportTypeValues.Production;
       StartDateTime = DateTime.Now;
       ProductionReport = new ProductionReport(MainViewModel, ModalDialogProvider, ServiceFactory);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ProducersAndMaterialsTabItemViewModel"/> class.
 /// </summary>
 /// <param name="modalDialogProvider">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public RecipesTabItemViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
     RecipeDetailsViewModel = new RecipeDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
       RecipeListViewModel = new RecipeListViewModel(MainViewModel, RecipeDetailsViewModel, ModalDialogProvider, ServiceFactory);
       RecipeComponentDetailsViewModel = new RecipeComponentDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
       RecipeComponentListViewModel = new RecipeComponentListViewModel(MainViewModel, RecipeComponentDetailsViewModel, ModalDialogProvider, ServiceFactory);
 }
예제 #6
0
 public ApplicationCaptionMediator(IMainViewModel mainViewModel, IActiveTaskController activeTaskController, ITasksModel tasksModel)
 {
     this.mainViewModel = mainViewModel;
     this.activeTaskController = activeTaskController;
     this.tasksModel = tasksModel;
     this.activeTaskController.ActiveTaskIdChanged += HandleActiveTaskIdChanged;
     CreateDefaultTitle();
 }
예제 #7
0
        /// <summary>
        /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class.
        /// </summary>
        /// <param name="modalDialogProvider">The modal dialog service.</param>
        /// <param name="serviceFactory">The service factory.</param>
        public UsersViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
            : base(mainViewModel, modalDialogProvider, serviceFactory)
        {
            UserDetailsViewModel = new UserDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              UserListViewModel = new UserListViewModel(MainViewModel, UserDetailsViewModel, ModalDialogProvider, ServiceFactory);

              RoleDetailsViewModel = new RoleDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              RoleListViewModel = new RoleListViewModel(MainViewModel, RoleDetailsViewModel, ModalDialogProvider, ServiceFactory);
        }
 public ControlViewModelBase(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
 {
     ModalDialogProvider = modalDialogProvider;
       ServiceFactory = serviceFactory;
       MainViewModel = mainViewModel;
       EditingMode = EditingMode.Display;
       ViewModelProvider = new ViewModelProvider(this);
       ViewModelProvider.ChildrenViewModelIsReadOnlyChanged += new EventHandler<ViewModelProviderActionEventArgs>(ViewModelProvider_ChildrenViewModelIsReadOnlyChanged);
 }
예제 #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ShellViewModel"/> class.
 /// </summary>
 /// <param name="errorService">
 /// The error Service.
 /// </param>
 /// <param name="mainViewModel">
 /// The main View Model.
 /// </param>
 /// <param name="optionsViewModel">
 /// The options View Model.
 /// </param>
 public ShellViewModel(IErrorService errorService, IMainViewModel mainViewModel, IOptionsViewModel optionsViewModel)
 {
     this.errorService = errorService;
     this.showMainWindow = true;
     this.showOptions = false;
     this.IsMainPanelEnabled = true;
     this.MainViewModel = mainViewModel;
     this.OptionsViewModel = optionsViewModel;
 }
예제 #10
0
        public View()
        {
            InitializeComponent();

            viewModel = new ViewModel(this, this);

            InitailizeAnimationBrushes();
            RegisterHotkeys();
            WireHandlers();
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="OrdersTabItemViewModel"/> class.
        /// </summary>
        /// <param name="modalDialogProvider">The modal dialog service.</param>
        /// <param name="serviceFactory">The service factory.</param>
        public OrdersTabItemViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
            : base(mainViewModel, modalDialogProvider, serviceFactory)
        {
            OrderDetailsViewModel = new OrderDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              OrderListViewModel = new OrderListViewModel(MainViewModel, OrderDetailsViewModel, ModalDialogProvider, ServiceFactory);

              OrderDetailsViewModel.DeliveryNoteDetailsViewModel.ItemSaved += new System.EventHandler(DeliveryNoteDetailsViewModel_ItemSaved);
              OrderDetailsViewModel.DeliveryNoteDetailsViewModel.IsReadOnlyChanged += new System.EventHandler(DeliveryNoteDetailsViewModel_IsReadOnlyChanged);
              OrderDetailsViewModel.DeliveryNoteListViewModel.ItemDeactivatedFlagChanged += new System.EventHandler(DeliveryNoteListViewModel_ItemDeactivatedFlagChanged);
        }
예제 #12
0
 public AppViewModel(IEventAggregator events, IBusyViewModel busyIndicator, IMainViewModel mainView)
 {
     if (events == null) throw new ArgumentNullException(nameof(events));
     if (busyIndicator == null) throw new ArgumentNullException(nameof(busyIndicator));
     if (mainView == null) throw new ArgumentNullException(nameof(mainView));
     events.Subscribe(this);
     BusyIndicator = busyIndicator;
     MainView = mainView;
     // ReSharper disable once DoNotCallOverridableMethodsInConstructor
     DisplayName = "hello.busyindicator";
 }
        public void Startup()
        {
            var container = new UnityContainer().LoadConfiguration();
            container.RegisterInstance(container);

            _mainViewModel = container.Resolve<IMainViewModel>();
            container.RegisterInstance(_mainViewModel);

            _mainWindow = new MainWindow(_mainViewModel);
            _mainWindow.Show();
        }
예제 #14
0
 public ConnectControlViewModel(IMainViewModel mainViewModel, Action<IEnvironmentModel> callbackHandler,
                                string labelText,
                                bool bindToActiveEnvironment)
     : this(mainViewModel,
       EnvironmentRepository.Instance,
       callbackHandler,
       ConnectControlSingleton.Instance,
       labelText,
       bindToActiveEnvironment)
 {
 }
예제 #15
0
        public StatementHandler(IDBContext context, IDialogCoordinator dialogService, IDataSourcer dataSourcer, ITradesRepository repository, IMainViewModel mainVm)
        {
            _dialogService = dialogService;

            AssembleComponents();

            DownloaderNames = StatementDownloaders.Select(x => x.Metadata.Name).ToList();
            ParserNames = StatementParsers.Select(x => x.Metadata.Name).ToList();

            _tradeRepository = repository;
            _mainVm = mainVm;
        }
예제 #16
0
 /// <summary>
 /// Window constructor.
 /// </summary>
 public Settings(IMainViewModel host, double currentOpacity, Brush currentTextColor)
 {
     InitializeComponent();
     this.DataContext = this;
     _host = host;
     _useWhiteText = true;
     _clockOpacity = currentOpacity;
     _saveSettings = new SaveSettings(this);
     _useWhiteText = (currentTextColor == Brushes.White);
     _userFontSize = host.UserFontSize;
     MouseLeftButtonDown += Settings_MouseLeftButtonDown;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="ProducersAndMaterialsTabItemViewModel"/> class.
        /// </summary>
        /// <param name="modalDialogProvider">The modal dialog service.</param>
        /// <param name="serviceFactory">The service factory.</param>
        public ClientsAndBuildingsTabItemViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
            : base(mainViewModel, modalDialogProvider, serviceFactory)
        {
            BuildingDetailsViewModel = new BuildingDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              BuildingListViewModel = new BuildingListViewModel(MainViewModel, BuildingDetailsViewModel, ModalDialogProvider, ServiceFactory);

              ClientDetailsViewModel = new ClientDetailsViewModel(MainViewModel, BuildingListViewModel, ModalDialogProvider, ServiceFactory);
              ClientListViewModel = new ClientListViewModel(MainViewModel, ClientDetailsViewModel, ModalDialogProvider, ServiceFactory);

              ViewModelProvider.RegisterChildViewModel(ClientDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged);
              ViewModelProvider.RegisterChildViewModel(BuildingDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged);
        }
 public AppExceptionHandler(IApp current, IMainViewModel mainViewModel)
 {
     if(current == null)
     {
         throw new ArgumentNullException("current");
     }
     if(mainViewModel == null)
     {
         throw new ArgumentNullException("mainViewModel");
     }
     _current = current;
     _mainViewModel = mainViewModel;
 }
예제 #19
0
        public FXTransactionsPageViewModel(IDBContext context, IDataSourcer datasourcer, IDialogCoordinator dialogService, IMainViewModel mainVm)
            : base(dialogService)
        {
            Context = context;
            _mainVm = mainVm;
            TradesRepository = mainVm.TradesRepository;

            FXTransactions = new CollectionViewSource();
            FXTransactions.Source = Context.FXTransactions.Local;
            FXTransactions.View.SortDescriptions.Add(new SortDescription("DateTime", ListSortDirection.Descending));

            CreateCommands();
        }
        public void Initialize()
        {
            // arrange
            this.serviceMock = new WeatherServiceMock();
            this.target = new OldMainViewModel(serviceMock);

            this.dummyCurrentWeather = CreateDummyCurrentWeather();
            this.dummyWeatherInfo = CreateWeatherInfo();

            this.serviceMock
                .AddHandlers()
                    .GetCurrentWeatherAsync(() => Task.FromResult(dummyCurrentWeather))
                    .GetWeatherAsync(() => Task.FromResult(dummyWeatherInfo));
        }
예제 #21
0
        public BenchmarksPageViewModel(IDBContext context, IDialogCoordinator dialogService, IDataSourcer datasourcer, IMainViewModel mainVm)
            : base(dialogService)
        {
            Context = context;
            Datasourcer = datasourcer;
            _mainVm = mainVm;

            ExternalInstruments = new ObservableCollection<KeyValuePair<string, int?>>();

            BenchmarksSource = new CollectionViewSource();
            BenchmarksSource.Source = Context.Benchmarks.Local;
            Context.Tags.Load();

            CreateCommands();
        }
예제 #22
0
파일: HomeViewModel.cs 프로젝트: kekse/Look
        /// <summary>
        ///     Initializes a new instance of the <see cref="HomeViewModel" /> class.
        /// </summary>
        /// <param name="screen">
        ///     The screen context
        /// </param>
        public HomeViewModel(IMainViewModel screen)
        {
            Application.Current.Exit += this.Current_Exit;

            this.HostScreen = screen;

            // TODO: add DI
            this.WindowService = new WindowService();

            this.WhenNavigatedTo(this.InitViewModel);

            RemoteContext.Instance.HostConnected += Instance_HostConnected;
            RemoteContext.Instance.WindowsShared += Instance_WindowsShared;
            RemoteContext.Instance.WindowsRequested += Instance_WindowsRequested;
            RemoteContext.Instance.HostDisconnected += Instance_HostDisconnected;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="ProducersAndMaterialsTabItemViewModel"/> class.
        /// </summary>
        /// <param name="modalDialogProvider">The modal dialog service.</param>
        /// <param name="serviceFactory">The service factory.</param>
        public MaterialsAndContractorsTabItemViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
            : base(mainViewModel, modalDialogProvider, serviceFactory)
        {
            MaterialDetailsViewModel = new MaterialDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              MaterialListViewModel = new MaterialListViewModel(MainViewModel, MaterialDetailsViewModel, ModalDialogProvider, ServiceFactory);
              ContractorDetailsViewModel = new ContractorDetailsViewModel(MainViewModel, ModalDialogProvider, ServiceFactory);
              ContractorListViewModel = new ContractorListViewModel(MainViewModel, ContractorDetailsViewModel, ModalDialogProvider, ServiceFactory);

              ViewModelProvider.RegisterChildViewModel(MaterialDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged);
              ViewModelProvider.RegisterChildViewModel(ContractorDetailsViewModel, ViewModelProviderAction.IsReadOnlyChanged | ViewModelProviderAction.SaveInvoked);

              ViewModelProvider.RegisterChildViewModel(ContractorListViewModel, ViewModelProviderAction.DeleteInvoked);

              ViewModelProvider.ChildrenViewModelDeleteInvoked += new System.EventHandler<ViewModelProviderActionEventArgs>(ViewModelProvider_ChildrenViewModelDeleteInvoked);
              ViewModelProvider.ChildrenViewModelSaveInvoked += new System.EventHandler<ViewModelProviderActionEventArgs>(ViewModelProvider_ChildrenViewModelSaveInvoked);
        }
예제 #24
0
        public OrdersPageViewModel(IDBContext context, IDialogCoordinator dialogService, IDataSourcer datasourcer, IMainViewModel parent)
            : base(dialogService)
        {
            Context = context;
            Parent = parent;
            Datasourcer = datasourcer;

            TradesRepository = parent.TradesRepository;

            OrdersSource = new CollectionViewSource();
            OrdersSource.Source = Context.Orders.Local;
            OrdersSource.SortDescriptions.Add(new SortDescription("TradeDate", ListSortDirection.Descending));

            ExecutionStatsGenerator = new ExecutionStatsGenerator(datasourcer);

            CreateCommands();
        }
예제 #25
0
        /// <summary>
        /// Window constructor.
        /// </summary>
        public  Settings(IMainViewModel host, double currentOpacity, Brush currentTextColor, int workTime, int breakTime, int breakLongTime, bool soundEfects, double shadowOpacity, bool countBackwards)
        {
            InitializeComponent();
            this.DataContext = this;
            _host = host;
            _useWhiteText = true;
            _soundEfects = soundEfects;
            _clockOpacity = currentOpacity;
            _saveSettings = new SaveSettings(this);
            _useWhiteText = (currentTextColor.ToString() == Brushes.White.ToString());
            _breakTime = breakTime;
            _breakLongTime = breakLongTime;
            _workTime = workTime;
            _shadowOpacity = shadowOpacity;
            _countBackwards = countBackwards;
            MouseLeftButtonDown += Settings_MouseLeftButtonDown;
            _itemRepository = new ItemRepository();

            Loaded += Settings_Loaded;
        }
예제 #26
0
        internal ConnectControlViewModel(IMainViewModel mainViewModel,
                                        IEnvironmentRepository environmentRepository,
                                        Action<IEnvironmentModel> callbackHandler,
                                        IConnectControlSingleton connectControlSingleton,
                                        string labelText,
                                        bool bindToActiveEnvironment, Action<IEnvironmentModel, ResourceType, string, string, string, string, string> openWizard = null)
        {
            VerifyArgument.IsNotNull("callbackHandler", callbackHandler);
            VerifyArgument.IsNotNull("connectControlSingleton", connectControlSingleton);
            VerifyArgument.IsNotNull("labelText", labelText);
            VerifyArgument.IsNotNull("environmentRepository", environmentRepository);

            if(Application.Current != null)
            {
                _dispatcher = Application.Current.Dispatcher;
            }

            IsEnabled = true;
            IsDropDownEnabled = true;
            LabelText = labelText;
            _mainViewModel = mainViewModel;
            _environmentRepository = environmentRepository;
            _callbackHandler = callbackHandler;
            _connectControlSingleton = connectControlSingleton;
            _bindToActiveEnvironment = bindToActiveEnvironment;
            _connectControlSingleton.ConnectedStatusChanged += ConnectedStatusChanged;
            _connectControlSingleton.ConnectedServerChanged += ConnectedServerChanged;

            if(openWizard == null)
            {
                _openWizard = (environmentModel, resourceType, resourcePath, category, resourceId, sourceId, resourceName) => RootWebSite.ShowDialog(environmentModel, resourceType, resourcePath, category, resourceId, sourceId, resourceName);
            }
            else
            {
                _openWizard = openWizard;
            }

            SetSelectedEnvironment();
        }
예제 #27
0
        public StatementHandler(IDBContext context, IDialogCoordinator dialogService, IDataSourcer dataSourcer, ITradesRepository repository, IMainViewModel mainVm)
        {
            _dialogService = dialogService;

            AssembleComponents();

            DownloaderNames = StatementDownloaders.Select(x => x.Metadata.Name).ToList();
            ParserNames     = StatementParsers.Select(x => x.Metadata.Name).ToList();

            _tradeRepository = repository;
            _mainVm          = mainVm;
        }
예제 #28
0
        public OrdersPageViewModel(IDBContext context, IDialogCoordinator dialogService, IDataSourcer datasourcer, IMainViewModel parent)
            : base(dialogService)
        {
            Context     = context;
            Parent      = parent;
            Datasourcer = datasourcer;

            TradesRepository = parent.TradesRepository;

            OrdersSource        = new CollectionViewSource();
            OrdersSource.Source = Context.Orders.Local;
            OrdersSource.SortDescriptions.Add(new SortDescription("TradeDate", ListSortDirection.Descending));

            ExecutionStatsGenerator = new ExecutionStatsGenerator(datasourcer);

            CreateCommands();
        }
예제 #29
0
        /// <summary>
        /// Defines the method to be called when the command is invoked.
        /// </summary>
        /// <param name="parameter">Data used by the command.  If the command does not require data to be passed, this object can be set to null.</param>
        public void Execute(object parameter)
        {
            if (gesture != null)
            {
                IMainViewModel mainViewModel = IoC.Get <IMainViewModel>();

                // Start Encode (Ctrl+E)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.E)
                {
                    mainViewModel.StartEncode();
                }

                if (gesture.Modifiers == ModifierKeys.Alt && gesture.Key == Key.P)
                {
                    mainViewModel.PauseEncode();
                }

                // Stop Encode (Ctrl+K)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.K)
                {
                    mainViewModel.StopEncode();
                }

                // Open Log Window (Ctrl+L)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.L)
                {
                    mainViewModel.OpenLogWindow();
                }

                // Open Queue Window (Ctrl+Q)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.Q)
                {
                    mainViewModel.OpenQueueWindow();
                }

                // Add to Queue (Alt+A)
                if (gesture.Modifiers == ModifierKeys.Alt && gesture.Key == Key.A)
                {
                    mainViewModel.AddToQueueWithErrorHandling();
                }

                // Add all to Queue (Alt+A)
                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Alt) && gesture.Key == Key.A)
                {
                    mainViewModel.AddAllToQueue();
                }

                // Add selection to Queue (Control+Shift+A)
                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && gesture.Key == Key.A)
                {
                    mainViewModel.AddSelectionToQueue();
                }

                // Scan a File (Alt+O)
                if (gesture.Modifiers == ModifierKeys.Alt && gesture.Key == Key.O)
                {
                    mainViewModel.SelectSourceWindow();
                }

                // Scan a File (Ctrl+O)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.O)
                {
                    mainViewModel.FileScan();
                }

                // Scan a Folder (Ctrl+Shift+O)
                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && gesture.Key == Key.O)
                {
                    mainViewModel.FolderScan();
                }

                // Launch Help (F1)
                if (gesture.Key == Key.F1)
                {
                    mainViewModel.LaunchHelp();
                }

                // Browse Destination (Ctrl+S)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.S)
                {
                    mainViewModel.BrowseDestination();
                }

                // Tabs
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D1)
                {
                    mainViewModel.SwitchTab(0);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D2)
                {
                    mainViewModel.SwitchTab(1);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D3)
                {
                    mainViewModel.SwitchTab(2);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D4)
                {
                    mainViewModel.SwitchTab(3);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D5)
                {
                    mainViewModel.SwitchTab(4);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D6)
                {
                    mainViewModel.SwitchTab(5);
                }

                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.D7)
                {
                    mainViewModel.SwitchTab(6);
                }

                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && gesture.Key == Key.G)
                {
                    GC.Collect();
                    MessageBox.Show("DEBUG: Garbage Collection Completed");
                }

                if (gesture.Modifiers == ModifierKeys.Control && (gesture.Key == Key.OemPlus || gesture.Key == Key.Add))
                {
                    mainViewModel.NextTitle();
                }

                if (gesture.Modifiers == ModifierKeys.Control && (gesture.Key == Key.OemMinus || gesture.Key == Key.Subtract))
                {
                    mainViewModel.PreviousTitle();
                }
            }
        }
예제 #30
0
 public Startup(IMainViewModel mainViewModel)
 {
     _mainViewModel = mainViewModel;
 }
예제 #31
0
 public MainView(IMainViewModel viewModel)
 {
     InitializeComponent();
     InitializeMenu();
     DataContext = viewModel;
 }
예제 #32
0
 public MainWindow(IMainViewModel viewModel)
 {
     InitializeComponent();
     DataContext = viewModel;
 }
예제 #33
0
        /// <summary>
        /// Defines the method to be called when the command is invoked.
        /// </summary>
        /// <param name="parameter">Data used by the command.  If the command does not require data to be passed, this object can be set to null.</param>
        public void Execute(object parameter)
        {
            if (gesture != null)
            {
                IMainViewModel mainViewModel = IoC.Get <IMainViewModel>();

                // Start Encode (Ctrl+S)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.S)
                {
                    mainViewModel.StartEncode();
                }

                // Stop Encode (Ctrl+K)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.K)
                {
                    mainViewModel.StopEncode();
                }

                // Open Log Window (Ctrl+L)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.L)
                {
                    mainViewModel.OpenLogWindow();
                }

                // Open Queue Window (Ctrl+Q)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.Q)
                {
                    mainViewModel.OpenQueueWindow();
                }

                // Add to Queue (Ctrl+A)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.A)
                {
                    mainViewModel.AddToQueue();
                }

                // Scan a File (Alt+O)
                if (gesture.Modifiers == ModifierKeys.Alt && gesture.Key == Key.O)
                {
                    mainViewModel.SelectSourceWindow();
                }

                // Scan a File (Ctrl+O)
                if (gesture.Modifiers == ModifierKeys.Control && gesture.Key == Key.O)
                {
                    mainViewModel.FileScan();
                }

                // Scan a Folder (Ctrl+Shift+O)
                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && gesture.Key == Key.O)
                {
                    mainViewModel.FolderScan();
                }

                // Launch Help (F1)
                if (gesture.Key == Key.F1)
                {
                    mainViewModel.LaunchHelp();
                }

                if (gesture.Modifiers == (ModifierKeys.Control | ModifierKeys.Shift) && gesture.Key == Key.G)
                {
                    GC.Collect();
                    MessageBox.Show("DEBUG: Garbage Collection Completed");
                }
            }
        }
 private void PopupView_Loaded(object sender, RoutedEventArgs e)
 {
     this.DataContext           = this.viewModel = (IMainViewModel)Application.Current.MainWindow.DataContext;
     viewModel.PropertyChanged += viewModel_PropertyChanged;
     //EmailAd.ClearValue(TextBox.TextProperty);
 }
예제 #35
0
 public Main(IMainViewModel vm)
 {
     InitializeComponent();
     ViewModel = vm;
 }
예제 #36
0
 public MainView(IMainViewModel viewModel)
 {
     InitializeComponent();
     ViewModel = viewModel ?? throw new ArgumentNullException(nameof(viewModel));
 }
예제 #37
0
        /// <summary>
        /// Override the startup behavior to handle files dropped on the app icon.
        /// </summary>
        /// <param name="e">
        /// The StartupEventArgs.
        /// </param>
        protected override void OnStartup(StartupEventArgs e)
        {
            // We don't support Windows XP / 2003 / 2003 R2 / Vista / 2008
            OperatingSystem os = Environment.OSVersion;

            if (((os.Platform == PlatformID.Win32NT) && (os.Version.Major == 5)) || ((os.Platform == PlatformID.Win32NT) && (os.Version.Major == 6 && os.Version.Minor < 1)))
            {
                MessageBox.Show(HandBrakeWPF.Properties.Resources.OsVersionWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
                Application.Current.Shutdown();
                return;
            }

            if (!Environment.Is64BitOperatingSystem)
            {
                MessageBox.Show(HandBrakeWPF.Properties.Resources.OsBitnessWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
                Application.Current.Shutdown();
                return;
            }

            if (e.Args.Any(f => f.Equals("--reset")))
            {
                HandBrakeApp.ResetToDefaults();
                Application.Current.Shutdown();
                return;
            }

            if (e.Args.Any(f => f.StartsWith("--recover-queue-ids")))
            {
                string command = e.Args.FirstOrDefault(f => f.StartsWith("--recover-queue-ids"));
                if (!string.IsNullOrEmpty(command))
                {
                    command = command.Replace("--recover-queue-ids=", string.Empty);
                    List <string> processIds = command.Split(',').ToList();
                    StartupOptions.QueueRecoveryIds = processIds;
                }
            }

            if (e.Args.Any(f => f.Equals("--auto-start-queue")))
            {
                StartupOptions.AutoRestartQueue = true;
            }

            // Portable Mode
            if (Portable.IsPortable())
            {
                if (!Portable.Initialise())
                {
                    Application.Current.Shutdown();
                    return;
                }
            }

            // Setup the UI Language

            IUserSettingService userSettingService = IoC.Get <IUserSettingService>();
            string culture = userSettingService.GetUserSetting <string>(UserSettingConstants.UiLanguage);

            if (!string.IsNullOrEmpty(culture))
            {
                InterfaceLanguage language = InterfaceLanguageUtilities.FindInterfaceLanguage(culture);
                if (language != null)
                {
                    CultureInfo ci = new CultureInfo(language.Culture);
                    Thread.CurrentThread.CurrentCulture   = ci;
                    Thread.CurrentThread.CurrentUICulture = ci;
                }
            }

            base.OnStartup(e);

            // If we have a file dropped on the icon, try scanning it.
            string[] args = e.Args;
            if (args.Any() && (File.Exists(args[0]) || Directory.Exists(args[0])))
            {
                IMainViewModel mvm = IoC.Get <IMainViewModel>();
                mvm.StartScan(args[0], 0);
            }
        }
예제 #38
0
 public FavouriteViewModel(IDbCrud tm, IMainViewModel pm, int userId)
 {
     this.tm = tm;
     this.pm = pm;
     Events  = new ObservableCollection <EventModel>(tm.GetUserSessions(userId).Where(i => i.CurrentSession.IsDone == false).OrderBy(i => i.CurrentSession.Date).ToList());
 }
예제 #39
0
 public MainWindow(IMainViewModel mainViewModel)
 {
     InitializeComponent();
     this.mainViewModel = mainViewModel;
     this.DataContext   = mainViewModel;
 }
예제 #40
0
 public WiringListViewModel(IMainViewModel mainViewModel)
 {
     MainViewModel = mainViewModel;
 }
 public MainWindow(IMainViewModel viewModel, IViewFactory viewFactory)
 {
     this.viewFactory = viewFactory;
 }
예제 #42
0
 public MainWindow(IMainViewModel viewModel) : this()
 {
     m_viewModel = viewModel;
     m_viewModel.Start();
 }
예제 #43
0
        public FXTransactionsPageViewModel(IDBContext context, IDataSourcer datasourcer, IDialogCoordinator dialogService, IMainViewModel mainVm)
            : base(dialogService)
        {
            Context          = context;
            _mainVm          = mainVm;
            TradesRepository = mainVm.TradesRepository;

            FXTransactions        = new CollectionViewSource();
            FXTransactions.Source = Context.FXTransactions.Local;
            FXTransactions.View.SortDescriptions.Add(new SortDescription("DateTime", ListSortDirection.Descending));

            CreateCommands();
        }
예제 #44
0
 public ProductionReport(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base("XPSTemplates\\ProductionReportTemplate.xaml", mainViewModel, modalDialogProvider, serviceFactory)
 {
 }
예제 #45
0
 public App(IHotfixService hotfixService, IViewFactory viewFactory, IMainViewModel mainViewModel)
 {
     _hotfixService = hotfixService;
     _viewFactory   = viewFactory;
     _mainViewModel = mainViewModel;
 }
예제 #46
0
        /// <summary>
        /// Override the startup behavior to handle files dropped on the app icon.
        /// </summary>
        /// <param name="e">
        /// The StartupEventArgs.
        /// </param>
        protected override void OnStartup(StartupEventArgs e)
        {
            // We don't support Windows earlier than 10.
            if (!SystemInfo.IsWindows10OrLater())
            {
                MessageBox.Show(HandBrakeWPF.Properties.Resources.OsVersionWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
                Application.Current.Shutdown();
                return;
            }

            if (!Environment.Is64BitOperatingSystem)
            {
                MessageBox.Show(HandBrakeWPF.Properties.Resources.OsBitnessWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
                Application.Current.Shutdown();
                return;
            }

            if (e.Args.Any(f => f.Equals("--reset")))
            {
                HandBrakeApp.ResetToDefaults();
                Application.Current.Shutdown();
                return;
            }

            if (e.Args.Any(f => f.StartsWith("--recover-queue-ids")))
            {
                string command = e.Args.FirstOrDefault(f => f.StartsWith("--recover-queue-ids"));
                if (!string.IsNullOrEmpty(command))
                {
                    command = command.Replace("--recover-queue-ids=", string.Empty);
                    List <string> processIds = command.Split(',').ToList();
                    StartupOptions.QueueRecoveryIds = processIds;
                }
            }

            if (e.Args.Any(f => f.Equals("--auto-start-queue")))
            {
                StartupOptions.AutoRestartQueue = true;
            }

            // Portable Mode
            if (Portable.IsPortable())
            {
                int portableInit = Portable.Initialise();
                if (portableInit != 0)
                {
                    switch (portableInit)
                    {
                    case -1:
                        MessageBox.Show(
                            HandBrakeWPF.Properties.Resources.Portable_IniFileError,
                            HandBrakeWPF.Properties.Resources.Error,
                            MessageBoxButton.OK,
                            MessageBoxImage.Error);
                        break;

                    case -2:
                        MessageBox.Show(
                            HandBrakeWPF.Properties.Resources.Portable_TmpNotWritable,
                            HandBrakeWPF.Properties.Resources.Error,
                            MessageBoxButton.OK,
                            MessageBoxImage.Error);
                        break;

                    case -3:
                        MessageBox.Show(
                            HandBrakeWPF.Properties.Resources.Portable_StorageNotWritable,
                            HandBrakeWPF.Properties.Resources.Error,
                            MessageBoxButton.OK,
                            MessageBoxImage.Error);
                        break;
                    }

                    Application.Current.Shutdown();
                    return;
                }
            }

            // Setup the UI Language
            IUserSettingService userSettingService = IoC.Get <IUserSettingService>();
            string culture = userSettingService.GetUserSetting <string>(UserSettingConstants.UiLanguage);

            if (!string.IsNullOrEmpty(culture))
            {
                InterfaceLanguage language = InterfaceLanguageUtilities.FindInterfaceLanguage(culture);
                if (language != null)
                {
                    CultureInfo ci = new CultureInfo(language.Culture);
                    Thread.CurrentThread.CurrentUICulture = ci;
                }
            }

            int runCounter = userSettingService.GetUserSetting <int>(UserSettingConstants.RunCounter);

            // Software Rendering
            if (e.Args.Any(f => f.Equals("--force-software-rendering")) || Portable.IsForcingSoftwareRendering() || userSettingService.GetUserSetting <bool>(UserSettingConstants.ForceSoftwareRendering))
            {
                RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;
            }

            // Check if the user would like to check for updates AFTER the first run, but only once.
            if (runCounter == 1)
            {
                CheckForUpdateCheckPermission(userSettingService);
            }

            // Increment the counter so we can change startup behavior for the above warning and update check question.
            userSettingService.SetUserSetting(UserSettingConstants.RunCounter, runCounter + 1); // Only display once.

            // App Theme
            DarkThemeMode      useDarkTheme = (DarkThemeMode)userSettingService.GetUserSetting <int>(UserSettingConstants.DarkThemeMode);
            ResourceDictionary dark         = new ResourceDictionary {
                Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Themes/Dark.Blue.xaml")
            };
            ResourceDictionary light = new ResourceDictionary {
                Source = new Uri("pack://application:,,,/MahApps.Metro;component/Styles/Themes/Light.Blue.xaml")
            };

            Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                Source = new Uri("Themes/Generic.xaml", UriKind.Relative)
            });
            bool themed = false;

            if (SystemParameters.HighContrast)
            {
                Application.Current.Resources["Ui.Light"]         = new SolidColorBrush(SystemColors.HighlightTextColor);
                Application.Current.Resources["Ui.ContrastLight"] = new SolidColorBrush(SystemColors.ActiveBorderBrush.Color);
                useDarkTheme = DarkThemeMode.None;
            }

            switch (useDarkTheme)
            {
            case DarkThemeMode.System:
                if (SystemInfo.IsAppsUsingDarkTheme())
                {
                    Application.Current.Resources.MergedDictionaries.Add(dark);
                    Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                        Source = new Uri("Themes/Dark.xaml", UriKind.Relative)
                    });
                }
                else
                {
                    Application.Current.Resources.MergedDictionaries.Add(light);
                    Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                        Source = new Uri("Themes/Light.xaml", UriKind.Relative)
                    });
                }

                themed = true;
                break;

            case DarkThemeMode.Dark:
                Application.Current.Resources.MergedDictionaries.Add(dark);
                Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                    Source = new Uri("Themes/Dark.xaml", UriKind.Relative)
                });
                themed = true;
                break;

            case DarkThemeMode.Light:
                Application.Current.Resources.MergedDictionaries.Add(light);
                Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                    Source = new Uri("Themes/Light.xaml", UriKind.Relative)
                });
                themed = true;
                break;

            case DarkThemeMode.None:
                Application.Current.Resources["Ui.Light"]         = new SolidColorBrush(SystemColors.HighlightTextColor);
                Application.Current.Resources["Ui.ContrastLight"] = new SolidColorBrush(SystemColors.ActiveBorderBrush.Color);
                themed = false;
                break;
            }

            Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                Source = new Uri("Views/Styles/Styles.xaml", UriKind.Relative)
            });

            if (themed)
            {
                Application.Current.Resources.MergedDictionaries.Add(new ResourceDictionary {
                    Source = new Uri("Views/Styles/ThemedStyles.xaml", UriKind.Relative)
                });
            }

            // NO-Hardware Mode
            bool noHardware = e.Args.Any(f => f.Equals("--no-hardware")) || (Portable.IsPortable() && !Portable.IsHardwareEnabled());

            // Initialise the Engine
            Services.Logging.GlobalLoggingManager.Init();
            HandBrakeInstanceManager.Init(noHardware, userSettingService);

            // Initialise the GUI
            base.OnStartup(e);

            // If we have a file dropped on the icon, try scanning it.
            string[] args = e.Args;
            if (args.Any() && (File.Exists(args[0]) || Directory.Exists(args[0])))
            {
                IMainViewModel mvm = IoC.Get <IMainViewModel>();
                mvm.StartScan(args[0], 0);
            }
        }
예제 #47
0
        public StatementHandler(IDialogCoordinator dialogService, IContextFactory contextFactory, IAppSettings settings, IMainViewModel mainVm)
        {
            _dialogService  = dialogService;
            _contextFactory = contextFactory;
            _settings       = settings;
            _mainVm         = mainVm;

            using (var dbContext = _contextFactory.Get())
            {
                _currencies = dbContext.Currencies.ToList();
            }

            AssembleComponents();

            DownloaderNames = StatementDownloaders.Select(x => x.Metadata.Name).ToList();
            ParserNames     = StatementParsers.Select(x => x.Metadata.Name).ToList();
        }
 public MainCenter(IMainViewModel viewModel) : base(viewModel)
 {
     this.viewModel = viewModel;
 }
예제 #49
0
 public MainView(IMainViewModel mainViewModel)
     : base(mainViewModel)
 {
     InitializeComponent();
 }
예제 #50
0
 public MainView(IMainViewModel mainViewModel)
 {
     InitializeComponent();
     DataContext = mainViewModel;
 }
예제 #51
0
 public MainView(IMainViewModel mainViewModel)
     : base(mainViewModel)
 {
     InitializeComponent();
 }
 public MainWindow(IMainViewModel mainViewModel)     // for DI
 {
     InitializeComponent();
     ViewModel = mainViewModel;
 }
예제 #53
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TabControlViewModelBase"/> class.
 /// </summary>
 /// <param name="modalDialogProvider">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public TabItemViewModelBase(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
 }
 public MainWindow()     // for design
 {
     InitializeComponent();
     ViewModel = new MainViewModel();
 }
예제 #55
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class.
 /// </summary>
 /// <param name="modalDialogService">The modal dialog service.</param>
 /// <param name="serviceFactory">The service factory.</param>
 public GeneralViewModel(IMainViewModel mainViewModel, IModalDialogProvider modalDialogProvider, IServiceFactory serviceFactory)
     : base(mainViewModel, modalDialogProvider, serviceFactory)
 {
 }
예제 #56
0
 private void UserControl_Loaded(object sender, RoutedEventArgs e)
 {
     viewModel = this.DataContext as IMainViewModel;
     viewModel.PropertyChanged += viewModel_PropertyChanged;
 }
        /// <summary>Defines the method to be called when the command is invoked.</summary>
        /// <param name="parameter">Data used by the command.  If the command does not require data to be passed, this object can be set to null.</param>
        public void Execute(object parameter)
        {
            IMainViewModel mvm = IoC.Get <IMainViewModel>();

            mvm.PresetSelect(this.preset);
        }
예제 #58
0
        public OrdersPageViewModel(IContextFactory contextFactory, IDialogCoordinator dialogService, IDataSourcer datasourcer, IAppSettings settings, DataContainer data, IScriptRunner scriptRunner, IMainViewModel parent)
            : base(dialogService)
        {
            Parent           = parent;
            _contextFactory  = contextFactory;
            Datasourcer      = datasourcer;
            _data            = data;
            _scriptRunner    = scriptRunner;
            TradesRepository = new TradesRepository(contextFactory, datasourcer, settings);

            OrdersSource        = new CollectionViewSource();
            OrdersSource.Source = data.Orders;
            OrdersSource.SortDescriptions.Add(new SortDescription("TradeDate", ListSortDirection.Descending));

            ExecutionStatsGenerator = new ExecutionStatsGenerator(datasourcer);

            CreateCommands();
        }
        /// <summary>
        /// Initializes a new instance of the LoadProcessViewModel class.
        /// </summary>
        /// <param name="mainVM">A reference to the main view model that owns this class.</param>
        /// <param name="processor">Processor class for this process.</param>
        public LoadProcessViewModel(IMainViewModel mainVM, IProcessor processor)
            : base(mainVM, processor)
        {
            this.getFileName = new Interaction <Unit, string>();

            // this.CanExecute = this.WhenAny(x => x.FileName, x => (x.Value != string.Empty) &&
            // (x.Value != null));

            // The Command must be recreated with the new CanExecute observable for it to be used.
            // this.Command = ReactiveCommand.CreateFromTask(_ => this.ProcessAsync(), this.CanExecute);

            // To force immediate disposal of large or Iconic objects, uncomment the Do clause
            // line, otherwise the GarbageCollection will do it after enough memory is used.
            this.Command
            // .Do(_ => this.ProcessingResults?.Dispose())
            .ToProperty(this, x => x.ProcessingResults, out this.processingResults);

            // add this and the property and field if it is needed.
            this.Command.IsExecuting
            .ToProperty(this, x => x.IsLoading, out this.isLoading);

            //// set the file name in processor and then execute command.
            //this.DisposeCollection.Add(this.WhenAnyValue(x => x.FileName)
            //    .Where(x => x != "No File Loaded")
            //    .SubscribeOn(RxApp.TaskpoolScheduler)
            //    .Select(_ => Unit.Default) // because Command is of type <Unit, ProcessingResult>. Needs input Unit!
            //    .InvokeCommand(this.Command));
            //    //.Subscribe(async x =>
            //    //    {
            //    //         await this.Command.Execute();   //this.Command.ExecuteAsync();
            //    //    }));

            this.DisposeCollection.Add(
                this.WhenAnyValue(x => x.Processor.DebugDisplay)
                .Where(x => x.DisplayList.Count > 0)
                .SubscribeOn(RxApp.TaskpoolScheduler)
                .Subscribe(x =>
            {
                this.DebugDisplay.Dispose();
                this.DebugDisplay = x;
            }));

            this.DisposeCollection.Add(this.WhenAny(x => x.Processor.Image, x => x.Value)
                                       .Where(x => x != null)
                                       .Where(x => x.IsInitialized())
                                       .SubscribeOn(RxApp.TaskpoolScheduler)
                                       .Subscribe(x =>
            {
                this.Image.Dispose();
                this.Image = x.CopyObj(1, -1);
                this.SetDisplay();
                this.MainViewModelRef.AppState = 0;
            }));

            this.DisposeCollection.Add(this.WhenAnyValue(x => x.Processor.ImageHeight)
                                       .StartWith(0)
                                       .ToProperty(this, x => x.ImageHeight, out this.imageHeight));

            this.DisposeCollection.Add(this.WhenAnyValue(x => x.Processor.ImageWidth)
                                       .StartWith(0)
                                       .ToProperty(this, x => x.ImageWidth, out this.imageWidth));
        }
        //private readonly PlayerViewModel _playerViewModel;

        public ViewModelFactory(IMainViewModel mainViewModel)//, PlayerViewModel playerViewModel)
        {
            _mainViewModel = mainViewModel;
            //_playerViewModel = playerViewModel;
        }