コード例 #1
0
 public ChangeJobCheckAndProceedCommandBuilder(
     IInteractiveProfileChecker interactiveProfileChecker,
     IInteractiveFileExistsChecker interactiveFileExistsChecker)
 {
     _interactiveProfileChecker    = interactiveProfileChecker;
     _interactiveFileExistsChecker = interactiveFileExistsChecker;
 }
コード例 #2
0
        public void Setup()
        {
            _settings           = new PdfCreatorSettings(null);
            _jobInfoQueue       = Substitute.For <IJobInfoQueue>();
            _interactionRequest = new UnitTestInteractionRequest();
            _file                      = Substitute.For <IFile>();
            _directoryHelper           = Substitute.For <IDirectoryHelper>();
            _interactiveProfileChecker = Substitute.For <IInteractiveProfileChecker>();

            _pdfProfile = new ConversionProfile
            {
                Name             = "PDF Profile",
                OutputFormat     = OutputFormat.Pdf,
                FileNameTemplate = "X:\\test.pdf",
                TargetDirectory  = "c:\\Test\\"
            };

            _pngProfile = new ConversionProfile
            {
                Name             = "PDF Profile",
                OutputFormat     = OutputFormat.Png,
                FileNameTemplate = "X:\\test.png",
                TargetDirectory  = "c:\\Test\\"
            };

            _settings.ConversionProfiles.Add(_pdfProfile);
            _settings.ConversionProfiles.Add(_pngProfile);
        }
コード例 #3
0
        public ProceedWithChangedJobCommand(
            IInteractiveProfileChecker interactiveProfileChecker,
            IInteractiveFileExistsChecker interactiveFileExistsChecker,
            Func <Job> getJob,
            Action callFinishInteraction,
            Func <string> getLatestConfirmedPath,
            Action <string> setLatestConfirmedPath,
            Action <Job> changeJobAction,
            IMacroCommand preProcessingCommand = null)
        {
            _interactiveProfileChecker    = interactiveProfileChecker;
            _interactiveFileExistsChecker = interactiveFileExistsChecker;
            _getJob                = getJob;
            _changeJobAction       = changeJobAction;
            _callFinishInteraction = callFinishInteraction;

            _getLatestConfirmedPath = getLatestConfirmedPath;
            _setLatestConfirmedPath = setLatestConfirmedPath;
            _preProcessingCommand   = preProcessingCommand;
        }
コード例 #4
0
        public InteractiveWorkflow(IShellManager shellManager, ITargetFilePathComposer targetFilePathComposer, IJobDataUpdater jobDataUpdater,
                                   IErrorNotifier errorNotifier, ISettingsProvider settingsProvider,
                                   ICommandLocator commandLocator, ILastSaveDirectoryHelper lastSaveDirectoryHelper,
                                   IDirectoryHelper directoryHelper, IInteractiveProfileChecker interactiveProfileChecker,
                                   IJobEventsManager jobEventsManager
                                   )
        {
            _shellManager              = shellManager;
            _errorNotifier             = errorNotifier;
            _settingsProvider          = settingsProvider;
            _commandLocator            = commandLocator;
            _lastSaveDirectoryHelper   = lastSaveDirectoryHelper;
            _directoryHelper           = directoryHelper;
            _interactiveProfileChecker = interactiveProfileChecker;
            _targetFilePathComposer    = targetFilePathComposer;

            JobDataUpdater          = jobDataUpdater;
            JobEventsManager        = jobEventsManager;
            _targetFilePathComposer = targetFilePathComposer;
        }
コード例 #5
0
ファイル: PrintJobViewModel.cs プロジェクト: sm2x/PDFCreator
        public PrintJobViewModel(
            ISettingsProvider settingsProvider,
            ITranslationUpdater translationUpdater,
            IJobInfoQueue jobInfoQueue,
            IFileNameQuery saveFileQuery,
            IInteractionRequest interactionRequest,
            ICommandLocator commandsLocator,
            IEventAggregator eventAggregator,
            ISelectedProfileProvider selectedProfileProvider,
            ITempFolderProvider tempFolderProvider,
            IPathUtil pathUtil,
            IFile file,
            IGpoSettings gpoSettings,
            IDispatcher dispatcher,
            IDirectoryHelper directoryHelper,
            IInteractiveProfileChecker interactiveProfileChecker)
            : base(translationUpdater)
        {
            GpoSettings              = gpoSettings;
            _settingsProvider        = settingsProvider;
            _saveFileQuery           = saveFileQuery;
            _interactionRequest      = interactionRequest;
            _selectedProfileProvider = selectedProfileProvider;
            _file = file;
            _tempFolderProvider        = tempFolderProvider;
            _pathUtil                  = pathUtil;
            _dispatcher                = dispatcher;
            _directoryHelper           = directoryHelper;
            _interactiveProfileChecker = interactiveProfileChecker;

            SaveCommand            = new DelegateCommand(SaveExecute, CanExecute);
            SendByEmailCommand     = new DelegateCommand(EmailExecute);
            MergeCommand           = new DelegateCommand(MergeExecute);
            CancelCommand          = new DelegateCommand(CancelExecute);
            SetOutputFormatCommand = new DelegateCommand <OutputFormat>(SetOutputFormatExecute);
            BrowseFileCommand      = new DelegateCommand(BrowseFileExecute);

            _outputFormatHelper = new OutputFormatHelper();

            SetupEditProfileCommand(commandsLocator, eventAggregator);

            var settings = settingsProvider.Settings?.CopyAndPreserveApplicationSettings();

            Profiles = settings?.ConversionProfiles;

            jobInfoQueue.OnNewJobInfo += (sender, args) => UpdateNumberOfPrintJobsHint(jobInfoQueue.Count);
            UpdateNumberOfPrintJobsHint(jobInfoQueue.Count);

            var profileListView = CollectionViewSource.GetDefaultView(Profiles);

            if (profileListView != null)
            {
                profileListView.CurrentChanged += (sender, args) =>
                {
                    if (Job != null)
                    {
                        OutputFormat = ((ConversionProfile)profileListView.CurrentItem).OutputFormat;
                    }
                };
            }
        }