示例#1
0
 public PrinterActionsAssistant(IInteractionInvoker invoker, IPrinterHelper printerHelper, IUacAssistant uacAssistant, PrinterActionsAssistantTranslation translation)
 {
     _invoker       = invoker;
     _printerHelper = printerHelper;
     _uacAssistant  = uacAssistant;
     _translation   = translation;
 }
示例#2
0
 public PrinterActionsAssistant(ITranslator translator, IInteractionInvoker invoker, IPrinterHelper printerHelper, IUacAssistant uacAssistant)
 {
     _translator    = translator;
     _invoker       = invoker;
     _printerHelper = printerHelper;
     _uacAssistant  = uacAssistant;
 }
示例#3
0
 public SettingsLoader(ITranslationHelper translationHelper, ISettingsMover settingsMover, IInstallationPathProvider installationPathProvider, IPrinterHelper printerHelper)
 {
     _settingsMover            = settingsMover;
     _installationPathProvider = installationPathProvider;
     _printerHelper            = printerHelper;
     _translationHelper        = translationHelper;
 }
 public PrinterActionsAssistant(IPrinterHelper printerHelper, IUacAssistant uacAssistant, ITranslationUpdater translationUpdater, IInteractionRequest interactionRequest)
     : base(translationUpdater)
 {
     _printerHelper = printerHelper;
     _uacAssistant = uacAssistant;
     _interactionRequest = interactionRequest;
 }
示例#5
0
 public SettingsLoader(ILanguageProvider languageProvider, ISettingsMover settingsMover, IInstallationPathProvider installationPathProvider, IPrinterHelper printerHelper)
 {
     _languageProvider         = languageProvider;
     _settingsMover            = settingsMover;
     _installationPathProvider = installationPathProvider;
     _printerHelper            = printerHelper;
 }
示例#6
0
        public PrinterViewModel(
            IPrinterProvider printerProvider,
            ISettingsProvider settingsProvider,
            ICurrentSettings <ObservableCollection <PrinterMapping> > printerMappingProvider,
            ICurrentSettings <ObservableCollection <ConversionProfile> > profilesProvider,
            IPrinterActionsAssistant printerActionsAssistant,
            IOsHelper osHelper,
            ITranslationUpdater translationUpdater,
            IPrinterHelper printerHelper,
            IGpoSettings gpoSettings)
            : base(translationUpdater)
        {
            _osHelper                = osHelper;
            _printerHelper           = printerHelper;
            _gpoSettings             = gpoSettings;
            _printerActionsAssistant = printerActionsAssistant;
            _printerProvider         = printerProvider;
            _settingsProvider        = settingsProvider;
            _printerMappingProvider  = printerMappingProvider;
            ProfilesProvider         = profilesProvider;

            AddPrinterCommand        = new DelegateCommand(AddPrintercommandExecute);
            RenamePrinterCommand     = new DelegateCommand(RenamePrinterCommandExecute, ModifyPrinterCommandCanExecute);
            DeletePrinterCommand     = new DelegateCommand(DeletePrinterCommandExecute, ModifyPrinterCommandCanExecute);
            SetPrimaryPrinterCommand = new DelegateCommand(SetPrimaryPrinter);
        }
示例#7
0
 public PrintFileHelperComFactory(IPrinterHelper printerHelper, ISettingsProvider settingsProvider,
                                  IFileAssoc fileAssoc)
 {
     _printerHelper    = printerHelper;
     _settingsProvider = settingsProvider;
     _fileAssoc        = fileAssoc;
 }
 public IPrinterHelper getInstance()
 {
     if (helper == null)
     {
         helper = new PrinterHelper();
     }
     return(helper);
 }
示例#9
0
        public PdfCreatorObj()
        {
            var builder      = new ComDependencyBuilder();
            var dependencies = builder.ComDependencies;

            _pdfCreatorAdapter = dependencies.PdfCreatorAdapter;
            _printerHelper     = _pdfCreatorAdapter.PrinterHelper;
        }
示例#10
0
 protected PrintFileHelperBase(IPrinterHelper printerHelper, ISettingsProvider settingsProvider, IFileAssoc fileAssoc, IDirectory directory, IFile file)
 {
     _printerHelper    = printerHelper;
     _settingsProvider = settingsProvider;
     _fileAssoc        = fileAssoc;
     _directory        = directory;
     _file             = file;
 }
 public RepairPrinterAssistant(IInteractionInvoker interactionInvoker, IPrinterHelper printerHelper, ITranslator translator, IShellExecuteHelper shellExecuteHelper, IFile file, IAssemblyHelper assemblyHelper)
 {
     _interactionInvoker = interactionInvoker;
     _printerHelper      = printerHelper;
     _translator         = translator;
     _shellExecuteHelper = shellExecuteHelper;
     _file           = file;
     _assemblyHelper = assemblyHelper;
 }
示例#12
0
 public PrintFileHelperComFactory(IPrinterHelper printerHelper, ISettingsProvider settingsProvider,
                                  IFileAssoc fileAssoc, IDirectory directory, IFile file)
 {
     _printerHelper    = printerHelper;
     _settingsProvider = settingsProvider;
     _fileAssoc        = fileAssoc;
     _directory        = directory;
     _file             = file;
 }
示例#13
0
 public TestPageSettingsViewModel(ITestPageHelper testPageHelper, IPrinterHelper printerHelper, ISettingsManager settingsManager, ITranslationUpdater translationUpdater, IInteractionInvoker invoker, ICurrentSettingsProvider settingsProvider, IGpoSettings gpoSettings) :
     base(settingsManager, translationUpdater, settingsProvider, gpoSettings)
 {
     PrintPdfCreatorTestpageCommand = new DelegateCommand(PdfCreatorTestpageExecute);
     PrintWindowsTestpageCommand    = new DelegateCommand(WindowsTestpageExecute);
     _printerHelper  = printerHelper;
     _testPageHelper = testPageHelper;
     _invoker        = invoker;
 }
示例#14
0
        public void Setup()
        {
            _printerHelper      = Substitute.For <IPrinterHelper>();
            _uacAssistant       = Substitute.For <IUacAssistant>();
            _interactionRequest = Substitute.For <IInteractionRequest>();

            PrinterActionsAssistant = new PrinterActionsAssistant(_printerHelper, _uacAssistant, new DesignTimeTranslationUpdater(), _interactionRequest);
            ;
        }
示例#15
0
 public SettingsLoader(ILanguageProvider languageProvider, ISettingsMover settingsMover, IInstallationPathProvider installationPathProvider, ILanguageDetector languageDetector, IPrinterHelper printerHelper, ITranslator translator)
 {
     _languageProvider         = languageProvider;
     _settingsMover            = settingsMover;
     _installationPathProvider = installationPathProvider;
     _languageDetector         = languageDetector;
     _printerHelper            = printerHelper;
     _translator = translator;
 }
示例#16
0
 public HomeViewModel(IInteractionInvoker interactionInvoker, IFileConversionHandler fileConversionHandler, ITranslationUpdater translationUpdater, IPrinterHelper printerHelper, ISettingsProvider settingsProvider)
     : base(translationUpdater)
 {
     _interactionInvoker    = interactionInvoker;
     _fileConversionHandler = fileConversionHandler;
     _printerHelper         = printerHelper;
     _settingsProvider      = settingsProvider;
     ConvertFileCommand     = new DelegateCommand(ConvertFileExecute);
 }
示例#17
0
 public RepairPrinterAssistant(IInteractionInvoker interactionInvoker, IPrinterHelper printerHelper, IShellExecuteHelper shellExecuteHelper, IFile file, IAssemblyHelper assemblyHelper, IPDFCreatorNameProvider nameProvider, ITranslationFactory iTranslationFactory)
 {
     _interactionInvoker = interactionInvoker;
     _printerHelper      = printerHelper;
     _translation        = iTranslationFactory.CreateTranslation <ApplicationTranslation>();;
     _shellExecuteHelper = shellExecuteHelper;
     _file           = file;
     _assemblyHelper = assemblyHelper;
     _nameProvider   = nameProvider;
 }
示例#18
0
 public SettingsLoaderBase(ITranslationHelper translationHelper, ISettingsMover settingsMover, IInstallationPathProvider installationPathProvider, IPrinterHelper printerHelper, EditionHelper editionHelper, IDefaultSettingsBuilder defaultSettingsBuilder, IMigrationStorageFactory migrationStorageFactory)
 {
     _settingsMover           = settingsMover;
     InstallationPathProvider = installationPathProvider;
     _printerHelper           = printerHelper;
     _editionHelper           = editionHelper;
     DefaultSettingsBuilder   = defaultSettingsBuilder;
     _migrationStorageFactory = migrationStorageFactory;
     _translationHelper       = translationHelper;
 }
示例#19
0
 public SettingsLoader(
     ITranslationHelper translationHelper,
     ISettingsMover settingsMover,
     IInstallationPathProvider installationPathProvider,
     IPrinterHelper printerHelper,
     EditionHelper editionHelper,
     IDefaultSettingsBuilder defaultSettingsBuilder,
     IMigrationStorageFactory migrationStorageFactory) :
     base(translationHelper, settingsMover, installationPathProvider, printerHelper, editionHelper, defaultSettingsBuilder, migrationStorageFactory)
 {
 }
示例#20
0
        /// <summary>
        ///     Create a new PrintCommand for the given file
        /// </summary>
        /// <param name="filename">The full path to the file that shall be printed</param>
        /// <param name="printer">The printer the command will print to</param>
        /// <param name="fileAssoc">The IFileAssoc implementation used to detect if the is printable</param>
        /// <param name="printerHelper">PrinterHelper to determine the DefaultPrinter</param>
        /// <param name="timeout">Timeout in seconds after which a print stops</param>
        public PrintCommand(string filename, string printer, IFileAssoc fileAssoc, IPrinterHelper printerHelper, IFile file, int timeout)
        {
            _specialFileTypes = new List <SpecialShellCommand>
            {
                new SpecialShellCommand("jpegfile", "printto", "rundll32.exe", _pictureFallbackCommandParams),
                new SpecialShellCommand("pngfile", "printto", "rundll32.exe", _pictureFallbackCommandParams),
                new SpecialShellCommand("TIFImage.Document", "printto", "rundll32.exe", _pictureFallbackCommandParams)
            };

            if (filename == null)
            {
                throw new ArgumentNullException(nameof(filename));
            }

            Filename       = filename;
            Printer        = printer;
            _fileAssoc     = fileAssoc;
            _printerHelper = printerHelper;
            _file          = file;
            _timeout       = timeout;

            RegisterSpecialFileTypesToFileAssoc();

            Logger.Trace($"Checking PrintCommand for '{filename}'");

            if (!_file.Exists(filename))
            {
                Logger.Trace($"The file '{filename}' does not exist!");
                CommandType = PrintType.Unprintable;
                return;
            }

            var extension = Path.GetExtension(filename);

            if (string.IsNullOrEmpty(extension))
            {
                Logger.Trace("Unprintable: The file as no extension!");
                CommandType = PrintType.Unprintable;
                return;
            }

            if (!SupportsPrint() && !SupportsPrintTo())
            {
                Logger.Trace("Unprintable: The file does not support print or printto!");
                CommandType = PrintType.Unprintable;
            }
            else
            {
                CommandType = SupportsPrintTo() ? PrintType.PrintTo : PrintType.Print;
                Logger.Trace($"The file is printable: {CommandType}");
            }
        }
示例#21
0
 public PdfCreatorAdapter(IFile file, IPathSafe pathSafe, PrintFileHelperComFactory printFileHelperComFactory, IJobInfoQueue jobInfoQueue, ISpoolerProvider spoolerProvider, ISpoolFolderAccess spoolFolderAccess, IJobInfoManager jobInfoManager, IDirectConversionProvider directConversionProvider, IPrinterHelper printerHelper, IPipeServerManager pipeServerManager)
 {
     PrinterHelper = printerHelper;
     _file         = file;
     _pathSafe     = pathSafe;
     _printFileHelperComFactory = printFileHelperComFactory;
     _jobInfoQueue             = jobInfoQueue;
     _spoolerProvider          = spoolerProvider;
     _spoolFolderAccess        = spoolFolderAccess;
     _jobInfoManager           = jobInfoManager;
     _directConversionProvider = directConversionProvider;
     _pipeServerManager        = pipeServerManager;
 }
示例#22
0
        public PrinterTabViewModel(IPrinterProvider printerProvider, IPrinterActionsAssistant printerActionsAssistant, IOsHelper osHelper, TranslationHelper translationHelper, IPrinterHelper printerHelper, PrinterTabTranslation translation)
        {
            Translation              = translation;
            _osHelper                = osHelper;
            _translationHelper       = translationHelper;
            _printerHelper           = printerHelper;
            _printerActionsAssistant = printerActionsAssistant;
            _printerProvider         = printerProvider;

            AddPrinterCommand    = new DelegateCommand(AddPrintercommandExecute);
            RenamePrinterCommand = new DelegateCommand(RenamePrinterCommandExecute, ModifyPrinterCommandCanExecute);
            DeletePrinterCommand = new DelegateCommand(DeletePrinterCommandExecute, ModifyPrinterCommandCanExecute);
        }
示例#23
0
        public void Setup()
        {
            _assemblyFolder    = @"X:\Programs\My Folder";
            _pdfcreatorPath    = Path.Combine(_assemblyFolder, "PDFCreator.exe");
            _printerHelperPath = Path.Combine(_assemblyFolder, "PrinterHelper.exe");

            _assemblyHelper = Substitute.For <IAssemblyHelper>();
            _assemblyHelper.GetPdfforgeAssemblyDirectory().Returns(_assemblyFolder);

            _interactionInvoker = Substitute.For <IInteractionInvoker>();
            _printerHelper      = Substitute.For <IPrinterHelper>();
            _shellExecuteHelper = Substitute.For <IShellExecuteHelper>();
            _file = Substitute.For <IFile>();
        }
 public SettingsLoaderWithSharedSettings(
     ITranslationHelper translationHelper,
     ISettingsMover settingsMover,
     IInstallationPathProvider installationPathProvider,
     IPrinterHelper printerHelper,
     EditionHelper editionHelper,
     IDefaultSettingsBuilder defaultSettingsBuilder,
     IMigrationStorageFactory migrationStorageFactory,
     ISharedSettingsLoader sharedSettingsLoader,
     IActionOrderChecker actionOrderHelper,
     ISettingsBackup settingsBackup
     ) :
     base(translationHelper, settingsMover, installationPathProvider, printerHelper, editionHelper, defaultSettingsBuilder, migrationStorageFactory, actionOrderHelper, settingsBackup)
 {
     _sharedSettingsLoader = sharedSettingsLoader;
 }
示例#25
0
        public PrinterViewModel(IPrinterProvider printerProvider, IPrinterActionsAssistant printerActionsAssistant, IOsHelper osHelper, TranslationHelper translationHelper, ITranslationUpdater translationUpdater, IPrinterHelper printerHelper, ISettingsProvider settingsProvider, IGpoSettings gpoSettings)
            : base(translationUpdater)
        {
            _osHelper                = osHelper;
            _printerHelper           = printerHelper;
            _gpoSettings             = gpoSettings;
            _printerActionsAssistant = printerActionsAssistant;
            _printerProvider         = printerProvider;

            AddPrinterCommand        = new DelegateCommand(AddPrintercommandExecute);
            RenamePrinterCommand     = new DelegateCommand(RenamePrinterCommandExecute, ModifyPrinterCommandCanExecute);
            DeletePrinterCommand     = new DelegateCommand(DeletePrinterCommandExecute, ModifyPrinterCommandCanExecute);
            SetPrimaryPrinterCommand = new DelegateCommand(SetPrimaryPrinter);

            SetSettingsAndRaiseNotifications(settingsProvider.Settings, gpoSettings);
        }
示例#26
0
 public TestPageSettingsViewModel(
     ITestPageHelper testPageHelper,
     ICurrentSettings <CreatorAppSettings> settingsProvider,
     ICurrentSettings <ApplicationSettings> applicationSettingsProvider,
     IPrinterHelper printerHelper,
     ITranslationUpdater translationUpdater,
     IGpoSettings gpoSettings) :
     base(translationUpdater, gpoSettings)
 {
     PrintPdfCreatorTestPageCommand = new AsyncCommand(PdfCreatorTestPageExecute);
     PrintWindowsTestPageCommand    = new AsyncCommand(WindowsTestPageExecute);
     _printerHelper               = printerHelper;
     _testPageHelper              = testPageHelper;
     _settingsProvider            = settingsProvider;
     _applicationSettingsProvider = applicationSettingsProvider;
 }
示例#27
0
        public HomeViewModel(IInteractionInvoker interactionInvoker, IFileConversionAssistant fileConversionAssistant, ITranslationUpdater translationUpdater,
                             IPrinterHelper printerHelper, ISettingsProvider settingsProvider, IJobHistoryActiveRecord jobHistoryActiveRecord, IDispatcher dispatcher,
                             ICommandLocator commandLocator, IGpoSettings gpoSettings)
            : base(translationUpdater)
        {
            _interactionInvoker      = interactionInvoker;
            _fileConversionAssistant = fileConversionAssistant;
            _printerHelper           = printerHelper;
            _settingsProvider        = settingsProvider;
            _jobHistoryActiveRecord  = jobHistoryActiveRecord;
            _dispatcher     = dispatcher;
            _commandLocator = commandLocator;
            _gpoSettings    = gpoSettings;

            _jobHistoryList = new ObservableCollection <HistoricJob>();

            var viewSource = new CollectionViewSource();

            viewSource.SortDescriptions.Add(new SortDescription(nameof(HistoricJob.CreationTime), ListSortDirection.Descending));
            viewSource.Source = _jobHistoryList;

            JobHistory = viewSource.View;
            JobHistory.MoveCurrentTo(null); //unselect first item

            ConvertFileCommand = new DelegateCommand(o => ConvertFileExecute());

            ClearHistoryCommand         = new DelegateCommand(o => jobHistoryActiveRecord.Delete());
            RefreshHistoryCommand       = new DelegateCommand(o => RefreshHistory());
            ToggleHistoryEnabledCommand = new DelegateCommand <HistoricJob>(hj => HistoryEnabled = !HistoryEnabled);

            RemoveHistoricJobCommand = new DelegateCommand <HistoricJob>(jobHistoryActiveRecord.Remove);

            DeleteHistoricFilesCommand = commandLocator.CreateMacroCommand()
                                         .AddCommand <DeleteHistoricFilesCommand>()
                                         .AddCommand(new AsyncCommand(o => _jobHistoryActiveRecord.Refresh()))
                                         .Build();

            QuickActionOpenList = new List <DropDownButtonItem>
            {
                GetQuickActionItem <QuickActionOpenWithPdfArchitectCommand>(() => Translation.OpenPDFArchitect),
                GetQuickActionItem <QuickActionOpenWithDefaultCommand>(() => Translation.OpenDefaultProgram),
                GetQuickActionItem <QuickActionOpenExplorerLocationCommand>(() => Translation.OpenExplorer),
                GetQuickActionItem <QuickActionPrintWithPdfArchitectCommand>(() => Translation.PrintWithPDFArchitect),
                GetQuickActionItem <QuickActionOpenMailClientCommand>(() => Translation.OpenMailClient)
            };
        }
示例#28
0
        public HomeViewModel(IInteractionInvoker interactionInvoker, IFileConversionAssistant fileConversionAssistant, ITranslationUpdater translationUpdater,
                             IPrinterHelper printerHelper, ISettingsProvider settingsProvider, IJobHistoryManager jobHistoryManager, IDispatcher dispatcher,
                             ICommandLocator commandLocator)
            : base(translationUpdater)
        {
            _interactionInvoker      = interactionInvoker;
            _fileConversionAssistant = fileConversionAssistant;
            _printerHelper           = printerHelper;
            _settingsProvider        = settingsProvider;
            _commandLocator          = commandLocator;

            JobHistory = CollectionViewSource.GetDefaultView(jobHistoryManager.History);
            jobHistoryManager.HistoryChanged += (sender, args) =>
            {
                dispatcher.BeginInvoke(JobHistory.Refresh);
                RaisePropertyChanged(nameof(NumberOfHistoricJobs));
            };
            JobHistory.MoveCurrentTo(null); //unselect first item

            ConvertFileCommand = new DelegateCommand(o => ConvertFileExecute());

            ClearHistoryCommand         = new DelegateCommand(o => jobHistoryManager.Clear());
            RefreshHistoryCommand       = new DelegateCommand(o => jobHistoryManager.Refresh());
            RemoveHistoricJobCommand    = new DelegateCommand <HistoricJob>(jobHistoryManager.Remove);
            ToggleHistoryEnabledCommand = new DelegateCommand <HistoricJob>(hj => HistoryEnabled = !HistoryEnabled);

            DeleteHistoricFilesCommand = commandLocator.CreateMacroCommand()
                                         .AddCommand <DeleteHistoricFilesCommand>()
                                         .AddCommand(RefreshHistoryCommand)
                                         .Build();

            StartQuickActionCommand = new DelegateCommand(StartQuickActionCommandExecute);

            QuickActionOpenList = new List <QuickActionListItemVo>
            {
                GetQuickActionItem <QuickActionOpenWithPdfArchitectCommand>(Translation.OpenPDFArchitect),
                GetQuickActionItem <QuickActionOpenWithDefaultCommand>(Translation.OpenDefaultProgram),
                GetQuickActionItem <QuickActionOpenExplorerLocationCommand>(Translation.OpenExplorer),
                GetQuickActionItem <QuickActionPrintWithPdfArchitectCommand>(Translation.PrintWithPDFArchitect),
                GetQuickActionItem <QuickActionOpenMailClientCommand>(Translation.OpenMailClient)
            };
        }
        public DebugTabViewModel(ITranslator translator, ISettingsManager settingsManager, ITestPageHelper testPageHelper, IFile fileWrap, IProcessStarter processStarter, IInteractionInvoker invoker, IPrinterHelper printerHelper, IIniSettingsAssistant iniSettingsAssistant)
        {
            _fileWrap             = fileWrap;
            _processStarter       = processStarter;
            _invoker              = invoker;
            _printerHelper        = printerHelper;
            _iniSettingsAssistant = iniSettingsAssistant;
            Translator            = translator;
            _settingsManager      = settingsManager;
            _settingsProvider     = settingsManager.GetSettingsProvider();
            _testPageHelper       = testPageHelper;

            ShowLogFileCommand             = new DelegateCommand(ExecuteShowLogFile);
            ClearLogFileCommand            = new DelegateCommand(ExecuteClearLogFile);
            PrintPdfCreatorTestpageCommand = new DelegateCommand(ExecutePdfCreatorTestpage);
            PrintWindowsTestpageCommand    = new DelegateCommand(ExecuteWindowsTestpage);
            LoadIniSettingsCommand         = new DelegateCommand(ExecuteLoadIniSettings);
            SaveIniSettingsCommand         = new DelegateCommand(ExecuteSaveIniSettings);
            RestoreDefaultSettingsCommand  = new DelegateCommand(ExecuteRestoreDefaultSettings);
        }
        public void Setup()
        {
            var exeName = "PDFCreator.exe";

            _assemblyFolder    = @"X:\Programs\My Folder";
            _pdfcreatorPath    = Path.Combine(_assemblyFolder, exeName);
            _printerHelperPath = Path.Combine(_assemblyFolder, "PrinterHelper.exe");

            _assemblyHelper = Substitute.For <IAssemblyHelper>();
            _assemblyHelper.GetPdfforgeAssemblyDirectory().Returns(_assemblyFolder);

            _interactionInvoker = Substitute.For <IInteractionInvoker>();
            _printerHelper      = Substitute.For <IPrinterHelper>();
            _shellExecuteHelper = Substitute.For <IShellExecuteHelper>();
            _file         = Substitute.For <IFile>();
            _nameProvider = Substitute.For <IPDFCreatorNameProvider>();
            _nameProvider.GetExeName().Returns(exeName);
            _nameProvider.GetExePath().Returns(_pdfcreatorPath);
            _nameProvider.GetPortApplicationPath().Returns(_pdfcreatorPath);
        }
示例#31
0
 public NullCommand(IPrinterHelper printerHelper)
 {
     _printerHelper = printerHelper;
 }
 public MessagePrinterService(IDateTimeHelper dateTimeHelper, IPrinterHelper printerHelper)
 {
     _dateTimeHelper = dateTimeHelper;
     _printerHelper = printerHelper;
 }