private void StartCamera()
 {
     CameraVMInitializing = true;
     DoEvents();
     _navigator.NavigateForward <CameraViewModel>(this, SelectedPattern);
     CameraVMInitializing = false;
 }
Exemplo n.º 2
0
 public MainViewModel(IViewModelNavigator navigator, IMessenger messenger)
 {
     messenger.Register <ContentChangedMessage>(this, OnContentChanged);
     _messenger = messenger;
     _navigator = navigator;
     _navigator.NavigateForward <WelcomViewModel>(null);
 }
Exemplo n.º 3
0
 public MainViewModel(IViewModelNavigator navigator, IMessenger messenger)
 {
     messenger.Register<ContentChangedMessage>(this, OnContentChanged);
     _messenger = messenger;
     _navigator = navigator;
     _navigator.NavigateForward<WelcomViewModel>(null);
 }
Exemplo n.º 4
0
        public MainViewModel(
            IViewModelNavigator navigator,
            IMessenger messenger,
            SessionService sessionService,
            CommunicationManager communicationManager,
            SettingsProvider settingsProvider)
        {
            _sessionService       = sessionService;
            _communicationManager = communicationManager;
            _settingsProvider     = settingsProvider;
            messenger.Register <ShowChildWindowMessage>(this, RaiseShowWindow);

            messenger.Register <WindowStateMessage>(this, state => RaiseStateChanged(state.State));

            messenger.Register <ContentChangedMessage>(this, OnContentChanged);
            //navigator.NavigateForward<WelcomeViewModel>(null); //temporary
            navigator.NavigateForward <PasswordPromptViewModel>(null);


            messenger.Register <CommandMessage>(this, OnOpenCommand);
            messenger.Register <CloseCommandMessage>(this, OnCloseCommand);
            UpdateSessionStart();
            communicationManager.Connect();
            _timer           = new DispatcherTimer();
            _timer.Interval  = new TimeSpan(0, 0, 15);
            _timer.IsEnabled = true;
            _timer.Tick     += SendPing;
            _timer.Start();
        }
Exemplo n.º 5
0
        public MainViewModel(
            IViewModelNavigator navigator,
            IMessenger messenger,
            SessionService sessionService,
            CommunicationManager communicationManager,
            SettingsProvider settingsProvider)
        {
            _sessionService = sessionService;
            _communicationManager = communicationManager;
            _settingsProvider = settingsProvider;
            messenger.Register<ShowChildWindowMessage>(this, RaiseShowWindow);

            messenger.Register<WindowStateMessage>(this, state => RaiseStateChanged(state.State));

            messenger.Register<ContentChangedMessage>(this, OnContentChanged);
            //navigator.NavigateForward<WelcomeViewModel>(null); //temporary
            navigator.NavigateForward<PasswordPromptViewModel>(null);

            messenger.Register<CommandMessage>(this, OnOpenCommand);
            messenger.Register<CloseCommandMessage>(this, OnCloseCommand);
            UpdateSessionStart();
            communicationManager.Connect();
            _timer = new DispatcherTimer();
            _timer.Interval = new TimeSpan(0, 0, 15);
            _timer.IsEnabled = true;
            _timer.Tick += SendPing;
            _timer.Start();
        }
Exemplo n.º 6
0
        private void GetLastFile(object s, EventArgs e)
        {
            _timerAwaitRecord.Stop();
            var info      = _imageProcessor.GetVideoDirectory();
            var lastVideo = info.EnumerateFiles("MVI*.mov").OrderByDescending(p => p.CreationTimeUtc).FirstOrDefault();

            _navigator.NavigateForward <TakeVideoResultViewModel>(this, lastVideo.FullName);
            IsRecordingVideo = false;
        }
Exemplo n.º 7
0
        private void Submit()
        {
            var result = _settingsProvider.ValidatePassword(Password);

            if (!result)
            {
                _dialogService.ShowInfo(@"Неверный пароль");
                Password = string.Empty;
                return;
            }

            _navigator.NavigateForward <WelcomeViewModel>(null);
        }
Exemplo n.º 8
0
        private async Task <CompositionProcessingResult> TakePicture(CancellationToken token)
        {
            try
            {
                _logger.Trace("Начало фотографирования");
                TakingPicture = true;
                UpdateCommands();

                token.ThrowIfCancellationRequested();

                //_imageProcessor.ImageChanged -= ImageProcessorOnStreamChanged;

                Size liveViewImageStreamSize;
                await WaitLiveView(token);

                _logger.Trace("Начало фотографирования:Синхронизация закончена");
                token.ThrowIfCancellationRequested();
                using (var liveViewStream = new MemoryStream(LiveViewImageStream))
                {
                    var img = Image.FromStream(liveViewStream);
                    liveViewImageStreamSize = img.Size;
                }

                _logger.Trace("Размеры картинки получены");

                var stream = await _imageProcessor.TakePictureAsync(liveViewImageStreamSize,
                                                                    _settings, token);

                token.ThrowIfCancellationRequested();
                _logger.Trace("Конец фотографирования");
                //TakingPicture = false;
                UpdateCommands();

                SetWindowStatus(true);

                _navigator.NavigateForward <CameraResultViewModel>(this, stream);
                return(stream);
            }
            catch (OperationCanceledException e)
            {
                _logger.Trace(e, "Произошла отмена операции.");
                return(new CompositionProcessingResult(null, LiveViewImageStream));
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "Ошибка фотографирования");
            }
            _dialogService.ShowInfo("Камера не была готова, попробуйте ещё раз. =)");
            GoBack();
            return(new CompositionProcessingResult(null, LiveViewImageStream));
        }
Exemplo n.º 9
0
        private async Task <byte[]> TakePicture(CancellationToken token)
        {
            return(await Task.Run(() =>
            {
                TakingPicture = true;

                token.ThrowIfCancellationRequested();
                _cameraStreamSynchronize.WaitOne();
                token.ThrowIfCancellationRequested();
                TakingPicture = false;
                var result = LiveViewImageStream.ToArray();
                _navigator.NavigateForward <TakePhotoResultViewModel>(this, result);
                return result;
            }, token));
        }
Exemplo n.º 10
0
        private async void Print()
        {
            var result = await _patternVmProvider.GetPatternsAsync();

            TemplateViewModel instaTemplate = result.SingleOrDefault(x => x.IsInstaPrinterTemplate);
            Action <byte[]>   print         = null;

            if (!string.IsNullOrEmpty(_printerName))
            {
                print = (data) => _printer.Print(data, _printerName);
            }
            else
            {
                print = (data) => _printer.Print(data);
            }

            byte[] imageData = new byte[] { };
            Size   imageStreamSize;

            using (var stream = new MemoryStream(_checkedImage.Data))
            {
                var img = Image.FromStream(stream);
                imageStreamSize = img.Size;
            }

            if (instaTemplate != null)
            {
                imageData = _imageUtils.ProcessImages(new List <byte[]> {
                    _checkedImage.Data
                }, imageStreamSize,
                                                      _mappingEngine.Map <EntityTemplate>(instaTemplate));
            }

            else
            {
                //если раземер имени превышает допустимое значение то мы обрезаем его
                var imageName = _checkedImage.FullName.Length < 23 ? _checkedImage.FullName : (_checkedImage.UserName.Length < 23 ? _checkedImage.UserName : (_checkedImage.UserName.Substring(0, 20) + "..."));
                imageData = _imageUtils.GetCaptureForInstagramControl(_checkedImage.Data, imageName, DateTime.Now, _checkedImage.ProfilePictureData);
            }
            print(imageData);

            _navigator.NavigateForward <SelectActivityViewModel>(this, null);
        }
Exemplo n.º 11
0
        public MainViewModel(
            IViewModelNavigator navigator,
            IMessenger messenger,
            CommunicationManager communicationManager
            )
        {
            _communicationManager = communicationManager;
            messenger.Register <ShowChildWindowMessage>(this, RaiseShowWindow);

            messenger.Register <WindowStateMessage>(this, state => RaiseStateChanged(state.State));

            messenger.Register <ContentChangedMessage>(this, OnContentChanged);
            navigator.NavigateForward <SelectActivityViewModel>(null);

            messenger.Register <CommandMessage>(this, OnOpenCommand);
            messenger.Register <CloseCommandMessage>(this, OnCloseCommand);
            communicationManager.Connect();
            _timer           = new DispatcherTimer();
            _timer.Interval  = new TimeSpan(0, 0, 15);
            _timer.IsEnabled = true;
            _timer.Tick     += SendPing;
            _timer.Start();
        }
Exemplo n.º 12
0
 private void Complete()
 {
     _navigator.NavigateForward <SelectActivityViewModel>(this, null);
 }
Exemplo n.º 13
0
 private void CheckPrintingStatus()
 {
     _navigator.NavigateForward <PrinterActivityViewerViewModel>(this, null);
 }
Exemplo n.º 14
0
 private void CurrentSession()
 {
     _navigator.NavigateForward <CurrentSessionViewModel>(this, null);
 }
 private void UpdateTemplate()
 {
     _updatedTemplate = SelectedTemplate;
     _navigator.NavigateForward <TemplateEditorViewModel>(this, _updatedTemplate);
 }
 private void UpdateCompositions()
 {
     _updatedComposition = SelectedComposition;
     _navigator.NavigateForward <CompositionsEditorViewModel>(this, _updatedComposition);
 }
Exemplo n.º 17
0
 private void OnStart()
 {
     _navigator.NavigateForward <TakePhotoViewModel>(this, null);
 }
Exemplo n.º 18
0
 private void ModuleManaged()
 {
     _navigator.NavigateForward <ModuleManagedViewModel>(this, null);
 }