private bool CanDuplexing(string printerName, Duplexing duplexing) { if (!Printers.Contains(printerName)) { return(false); } var queue = _LocalPrintServer.GetPrintQueue(printerName); var capabilities = queue.GetPrintCapabilities(); return(capabilities.DuplexingCapability.Contains(duplexing)); }
public void Add(BasePrinter basePrinter) { if (ReferenceEquals(basePrinter, null)) { throw new ArgumentNullException(nameof(basePrinter)); } Console.WriteLine("Enter printer name and model"); basePrinter.Name = Console.ReadLine(); basePrinter.Model = Console.ReadLine(); if (!Printers.Contains(basePrinter)) { Printers.Add(basePrinter); Console.WriteLine("Printer added"); } }
/// <summary> /// Sets default printer. /// </summary> private void SetDefaultPrinter() { LogHelper.LogDebug(); // check if it's Demo mode if (IsTestMode) { Printer pr = demoPrinters.DefaultPrinter; if (!demoPrinters.Contains(pr)) { SelectedPrinterIndex = 0; } else { SelectedPrinterIndex = demoPrinters.IndexOf(pr); } ChosenPrinter = demoPrinters.ByColor(PrintWithColor)[SelectedPrinterIndex]; } else { if (MainController.Singleton.HasAvailablePrinters) { Printer pr = MainController.Singleton.AvailablePrinters.DefaultPrinter; if (pr != null) { if (!Printers.Contains(pr)) { SelectedPrinterIndex = 0; } else { SelectedPrinterIndex = Printers.IndexOf(pr); } ChosenPrinter = MainController.Singleton.AvailablePrinters.ByColor(PrintWithColor)[SelectedPrinterIndex]; } else { ChosenPrinter = MainController.Singleton.AvailablePrinters[0]; } } } }
public void Start() { var config = _configService.GetConfiguration(); IsActive = config.IsPrinterActivated; Printers.Clear(); foreach (var printer in PrinterSettings.InstalledPrinters) { Printers.Add(printer.ToString()); } IsActive = Printers.Contains(config.Printer); if (IsActive) { DefaultPrinter = config.Printer; } }