Test idea of wrapping source identity into .net class.

This commit is contained in:
soukoku
2014-05-19 20:48:21 -04:00
parent f17692184f
commit e879c00102
50 changed files with 511 additions and 693 deletions

View File

@@ -42,7 +42,7 @@ namespace Tester
if (rc == ReturnCode.Success)
{
var hit = twain.GetSources().Where(s => string.Equals(s.ProductName, "TWAIN2 FreeImage Software Scanner")).FirstOrDefault();
var hit = twain.GetSources().Where(s => string.Equals(s.Name, "TWAIN2 FreeImage Software Scanner")).FirstOrDefault();
if (hit == null)
{
Console.WriteLine("The sample source \"TWAIN2 FreeImage Software Scanner\" is not installed.");
@@ -50,12 +50,12 @@ namespace Tester
}
else
{
rc = twain.OpenSource(hit.ProductName);
rc = hit.Open();
if (rc == ReturnCode.Success)
{
Console.WriteLine("Start capture from the sample source.");
rc = twain.EnableSource(SourceEnableMode.NoUI, false, IntPtr.Zero);
rc = hit.StartTransfer(SourceEnableMode.NoUI, false, IntPtr.Zero);
}
else
{
@@ -72,7 +72,7 @@ namespace Tester
static void twain_SourceDisabled(object sender, EventArgs e)
{
Console.WriteLine("Source disabled on thread {0}.", Thread.CurrentThread.ManagedThreadId);
var rc = twain.CloseSource();
var rc = twain.Source.Close();
rc = twain.CloseManager();
}

View File

@@ -56,7 +56,7 @@ namespace Tester.WPF
{
if (_twainVM.State == 4)
{
_twainVM.CloseSource();
_twainVM.Source.Close();
}
base.OnClosed(e);
}
@@ -80,20 +80,20 @@ namespace Tester.WPF
{
if (_twainVM.State == 4)
{
_twainVM.CloseSource();
_twainVM.Source.Close();
}
var dsId = SrcList.SelectedItem as DSVM;
if (dsId != null)
{
var rc = _twainVM.OpenSource(dsId.Name);
var rc = dsId.DS.Open();
//rc = DGControl.Status.Get(dsId, ref stat);
if (rc == ReturnCode.Success)
{
var caps = _twainVM.SupportedCaps.Select(o => new CapVM
var caps = dsId.DS.SupportedCaps.Select(o => new CapVM
{
Cap = o,
Supports = _twainVM.GetCapabilitySupport(o)
Supports = dsId.DS.GetCapabilitySupport(o)
}).OrderBy(o => o.Name).ToList();
CapList.ItemsSource = caps;
}
@@ -114,505 +114,505 @@ namespace Tester.WPF
switch (cap)
{
case CapabilityId.ACapXferMech:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<XferMech>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<XferMech>();
break;
case CapabilityId.CapAlarms:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<AlarmType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<AlarmType>();
break;
case CapabilityId.CapAlarmVolume:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapAuthor:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapAutoFeed:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapAutomaticCapture:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapAutomaticSenseMedium:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapAutoScan:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapBatteryMinutes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapBatteryPercentage:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCameraEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCameraOrder:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCameraPreviewUI:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCameraSide:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<CameraSide>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<CameraSide>();
break;
case CapabilityId.CapCaption:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapClearBuffers:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<ClearBuffer>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<ClearBuffer>();
break;
case CapabilityId.CapClearPage:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCustomDSData:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapCustomInterfaceGuid:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapDeviceEvent:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<DeviceEvent>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<DeviceEvent>();
break;
case CapabilityId.CapDeviceOnline:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapDeviceTimeDate:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapDoubleFeedDetection:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetection>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetection>();
break;
case CapabilityId.CapDoubleFeedDetectionLength:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapDoubleFeedDetectionResponse:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetectionResponse>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetectionResponse>();
break;
case CapabilityId.CapDoubleFeedDetectionSensitivity:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetectionSensitivity>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<DoubleFeedDetectionSensitivity>();
break;
case CapabilityId.CapDuplex:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Duplex>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Duplex>();
break;
case CapabilityId.CapDuplexEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapEnableDSUIOnly:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapEndorser:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapExtendedCaps:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapFeederAlignment:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FeederAlignment>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FeederAlignment>();
break;
case CapabilityId.CapFeederEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapFeederLoaded:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapFeederOrder:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FeederOrder>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FeederOrder>();
break;
case CapabilityId.CapFeederPocket:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FeederPocket>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FeederPocket>();
break;
case CapabilityId.CapFeederPrep:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapFeedPage:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapIndicators:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapIndicatorsMode:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<IndicatorsMode>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<IndicatorsMode>();
break;
case CapabilityId.CapJobControl:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<JobControl>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<JobControl>();
break;
case CapabilityId.CapLanguage:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Language>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Language>();
break;
case CapabilityId.CapMaxBatchBuffers:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapMicrEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPaperDetectable:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPaperHandling:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PaperHandling>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PaperHandling>();
break;
case CapabilityId.CapPowerSaveTime:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPowerSupply:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PowerSupply>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PowerSupply>();
break;
case CapabilityId.CapPrinter:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Printer>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Printer>();
break;
case CapabilityId.CapPrinterCharRotation:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterFontStyle:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PrinterFontStyle>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PrinterFontStyle>();
break;
case CapabilityId.CapPrinterIndex:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterIndexLeadChar:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterIndexMaxValue:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterIndexNumDigits:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterIndexStep:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterIndexTrigger:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PrinterIndexTrigger>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PrinterIndexTrigger>();
break;
case CapabilityId.CapPrinterMode:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PrinterMode>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PrinterMode>();
break;
case CapabilityId.CapPrinterString:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterStringPreview:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterSuffix:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapPrinterVerticalOffset:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapReacquireAllowed:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapRewindPage:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapSegmented:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Segmented>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Segmented>();
break;
case CapabilityId.CapSerialNumber:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapSupportedCaps:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<CapabilityId>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<CapabilityId>();
break;
case CapabilityId.CapSupportedCapsSegmentUnique:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapSupportedDATs:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapThumbnailsEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapTimeBeforeFirstCapture:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapTimeBetweenCaptures:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapTimeDate:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapUIControllable:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CapXferCount:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.CustomBase:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutoBright:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutoDiscardBlankPages:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticBorderDetection:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticColorEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticColorNonColorPixelType:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PixelType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PixelType>();
break;
case CapabilityId.ICapAutomaticCropUsesFrame:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticDeskew:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticLengthDetection:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutomaticRotate:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapAutoSize:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeDetectionEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeMaxRetries:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeMaxSearchPriorities:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeSearchMode:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeSearchPriorities:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBarcodeTimeout:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBitDepth:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBitDepthReduction:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<BitDepthReduction>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<BitDepthReduction>();
break;
case CapabilityId.ICapBitOrder:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<BitOrder>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<BitOrder>();
break;
case CapabilityId.ICapBitOrderCodes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapBrightness:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapCCITTKFactor:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapColorManagementEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapCompression:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<CompressionType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<CompressionType>();
break;
case CapabilityId.ICapContrast:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapCustHalftone:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapExposureTime:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapExtImageInfo:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapFeederType:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FeederType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FeederType>();
break;
case CapabilityId.ICapFilmType:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FilmType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FilmType>();
break;
case CapabilityId.ICapFilter:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FilterType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FilterType>();
break;
case CapabilityId.ICapFlashUsed:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapFlashUsed2:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapFlipRotation:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FlipRotation>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FlipRotation>();
break;
case CapabilityId.ICapFrames:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapGamma:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapHalftones:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapHighlight:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapICCProfile:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<IccProfile>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<IccProfile>();
break;
case CapabilityId.ICapImageDataSet:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapImageFileFormat:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<FileFormat>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<FileFormat>();
break;
case CapabilityId.ICapImageFilter:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<ImageFilter>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<ImageFilter>();
break;
case CapabilityId.ICapImageMerge:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<ImageMerge>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<ImageMerge>();
break;
case CapabilityId.ICapImageMergeHeightThreshold:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapJpegPixelType:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PixelType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PixelType>();
break;
case CapabilityId.ICapJpegQuality:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<JpegQuality>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<JpegQuality>();
break;
case CapabilityId.ICapJpegSubsampling:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<JpegSubsampling>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<JpegSubsampling>();
break;
case CapabilityId.ICapLampState:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapLightPath:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<LightPath>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<LightPath>();
break;
case CapabilityId.ICapLightSource:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<LightSource>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<LightSource>();
break;
case CapabilityId.ICapMaxFrames:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapMinimumHeight:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapMinimumWidth:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapMirror:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Mirror>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Mirror>();
break;
case CapabilityId.ICapNoiseFilter:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<NoiseFilter>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<NoiseFilter>();
break;
case CapabilityId.ICapOrientation:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<OrientationType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<OrientationType>();
break;
case CapabilityId.ICapOverScan:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<OverScan>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<OverScan>();
break;
case CapabilityId.ICapPatchCodeDetectionEnabled:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPatchCodeMaxRetries:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPatchCodeMaxSearchPriorities:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PatchCode>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PatchCode>();
break;
case CapabilityId.ICapPatchCodeSearchMode:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPatchCodeSearchPriorities:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPatchCodeTimeout:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
// TODO phys size are twfix32
case CapabilityId.ICapPhysicalHeight:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPhysicalWidth:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPixelFlavor:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PixelFlavor>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PixelFlavor>();
break;
case CapabilityId.ICapPixelFlavorCodes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapPixelType:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PixelType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PixelType>();
break;
case CapabilityId.ICapPlanarChunky:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PlanarChunky>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PlanarChunky>();
break;
case CapabilityId.ICapRotation:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Rotation>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Rotation>();
break;
case CapabilityId.ICapShadow:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapSupportedBarcodeTypes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<BarcodeType>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<BarcodeType>();
break;
case CapabilityId.ICapSupportedExtImageInfo:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<ExtendedImageInfo>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<ExtendedImageInfo>();
break;
case CapabilityId.ICapSupportedPatchCodeTypes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<PatchCode>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<PatchCode>();
break;
case CapabilityId.ICapSupportedSizes:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<SupportedSize>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<SupportedSize>();
break;
case CapabilityId.ICapThreshold:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapTiles:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapTimeFill:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapUndefinedImageSize:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapUnits:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<Unit>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<Unit>();
break;
case CapabilityId.ICapXferMech:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap).CastToEnum<XferMech>();
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap).CastToEnum<XferMech>();
break;
case CapabilityId.ICapXNativeResolution:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapXResolution:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapXScaling:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapYNativeResolution:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapYResolution:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapYScaling:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
case CapabilityId.ICapZoomFactor:
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
break;
default:
if (cap > CapabilityId.CustomBase)
{
CapDetailList.ItemsSource = _twainVM.GetCapabilityValues(cap);
CapDetailList.ItemsSource = _twainVM.Source.GetCapabilityValues(cap);
}
else
{

View File

@@ -1,4 +1,5 @@
using NTwain.Data;
using NTwain;
using NTwain.Data;
namespace Tester.WPF
{
@@ -7,9 +8,9 @@ namespace Tester.WPF
/// </summary>
class DSVM
{
public TWIdentity DS { get; set; }
public TwainSource DS { get; set; }
public string Name { get { return DS.ProductName; } }
public string Name { get { return DS.Name; } }
public string Version { get { return DS.Version.Info; } }
public string Protocol { get { return string.Format("{0}.{1}", DS.ProtocolMajor, DS.ProtocolMinor); } }
}

View File

@@ -68,9 +68,9 @@ namespace Tester.WPF
{
// set it up to use file xfer
if (this.GetCurrentCap(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>() == XferMech.File)
if (this.Source.GetCurrentCap(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>() == XferMech.File)
{
var formats = this.CapGetImageFileFormat();
var formats = this.Source.CapGetImageFileFormat();
var wantFormat = formats.Contains(FileFormat.Tiff) ? FileFormat.Tiff : FileFormat.Bmp;
var fileSetup = new TWSetupFileXfer
@@ -110,17 +110,17 @@ namespace Tester.WPF
{
if (State == 4)
{
if (this.CapGetPixelTypes().Contains(PixelType.BlackWhite))
if (this.Source.CapGetPixelTypes().Contains(PixelType.BlackWhite))
{
this.CapSetPixelType(PixelType.BlackWhite);
this.Source.CapSetPixelType(PixelType.BlackWhite);
}
if (this.CapGetImageXferMechs().Contains(XferMech.File))
if (this.Source.CapGetImageXferMechs().Contains(XferMech.File))
{
this.CapSetImageXferMech(XferMech.File);
this.Source.CapSetImageXferMech(XferMech.File);
}
var rc = EnableSource(SourceEnableMode.NoUI, false, hwnd);
var rc = this.Source.StartTransfer(SourceEnableMode.NoUI, false, hwnd);
}
}
}

View File

@@ -107,7 +107,7 @@ namespace Tester.Winform
{
if (_twain.State == 4)
{
_twain.CloseSource();
_twain.Source.Close();
}
if (_twain.State == 3)
{
@@ -143,7 +143,7 @@ namespace Tester.Winform
// do nothing if source is enabled
if (_twain.State > 4) { return; }
if (_twain.State == 4) { _twain.CloseSource(); }
if (_twain.State == 4) { _twain.Source.Close(); }
foreach (var btn in btnSources.DropDownItems)
{
@@ -152,8 +152,8 @@ namespace Tester.Winform
}
var curBtn = (sender as ToolStripMenuItem);
var src = curBtn.Tag as TWIdentity;
if (_twain.OpenSource(src.ProductName) == ReturnCode.Success)
var src = curBtn.Tag as TwainSource;
if (src.Open() == ReturnCode.Success)
{
curBtn.Checked = true;
btnStartCapture.Enabled = true;
@@ -167,10 +167,10 @@ namespace Tester.Winform
{
_stopScan = false;
if (_twain.SupportedCaps.Contains(CapabilityId.CapUIControllable))
if (_twain.Source.SupportedCaps.Contains(CapabilityId.CapUIControllable))
{
// hide scanner ui if possible
if (_twain.EnableSource(SourceEnableMode.NoUI, false, this.Handle) == ReturnCode.Success)
if (_twain.Source.StartTransfer(SourceEnableMode.NoUI, false, this.Handle) == ReturnCode.Success)
{
btnStopScan.Enabled = true;
btnStartCapture.Enabled = false;
@@ -179,7 +179,7 @@ namespace Tester.Winform
}
else
{
if (_twain.EnableSource(SourceEnableMode.ShowUI, true, this.Handle) == ReturnCode.Success)
if (_twain.Source.StartTransfer(SourceEnableMode.ShowUI, true, this.Handle) == ReturnCode.Success)
{
btnStopScan.Enabled = true;
btnStartCapture.Enabled = false;
@@ -252,10 +252,10 @@ namespace Tester.Winform
}
foreach (var src in _twain.GetSources())
{
var srcBtn = new ToolStripMenuItem(src.ProductName);
var srcBtn = new ToolStripMenuItem(src.Name);
srcBtn.Tag = src;
srcBtn.Click += SourceMenuItem_Click;
srcBtn.Checked = _twain.SourceId != null && _twain.SourceId.Id == src.Id;
srcBtn.Checked = _twain.Source != null && _twain.Source.Name == src.Name;
btnSources.DropDownItems.Insert(0, srcBtn);
}
}
@@ -267,7 +267,7 @@ namespace Tester.Winform
private void LoadSourceCaps()
{
var caps = _twain.SupportedCaps;
var caps = _twain.Source.SupportedCaps;
_loadingCaps = true;
if (groupDepth.Enabled = caps.Contains(CapabilityId.ICapPixelType))
{
@@ -292,9 +292,9 @@ namespace Tester.Winform
private void LoadPaperSize()
{
var list = _twain.CapGetSupportedSizes();
var list = _twain.Source.CapGetSupportedSizes();
comboSize.DataSource = list;
var cur = _twain.GetCurrentCap(CapabilityId.ICapSupportedSizes).ConvertToEnum<SupportedSize>();
var cur = _twain.Source.GetCurrentCap(CapabilityId.ICapSupportedSizes).ConvertToEnum<SupportedSize>();
if (list.Contains(cur))
{
comboSize.SelectedItem = cur;
@@ -303,15 +303,15 @@ namespace Tester.Winform
private void LoadDuplex()
{
ckDuplex.Checked = _twain.GetCurrentCap(CapabilityId.CapDuplexEnabled).ConvertToEnum<uint>() != 0;
ckDuplex.Checked = _twain.Source.GetCurrentCap(CapabilityId.CapDuplexEnabled).ConvertToEnum<uint>() != 0;
}
private void LoadDPI()
{
// only allow dpi of certain values for those source that lists everything
var list = _twain.CapGetDPIs().Where(dpi => (dpi % 50) == 0).ToList();
var list = _twain.Source.CapGetDPIs().Where(dpi => (dpi % 50) == 0).ToList();
comboDPI.DataSource = list;
var cur = (TWFix32)_twain.GetCurrentCap(CapabilityId.ICapXResolution);
var cur = (TWFix32)_twain.Source.GetCurrentCap(CapabilityId.ICapXResolution);
if (list.Contains(cur))
{
comboDPI.SelectedItem = cur;
@@ -320,9 +320,9 @@ namespace Tester.Winform
private void LoadDepth()
{
var list = _twain.CapGetPixelTypes();
var list = _twain.Source.CapGetPixelTypes();
comboDepth.DataSource = list;
var cur = _twain.GetCurrentCap(CapabilityId.ICapPixelType).ConvertToEnum<PixelType>();
var cur = _twain.Source.GetCurrentCap(CapabilityId.ICapPixelType).ConvertToEnum<PixelType>();
if (list.Contains(cur))
{
comboDepth.SelectedItem = cur;
@@ -334,7 +334,7 @@ namespace Tester.Winform
if (!_loadingCaps && _twain.State == 4)
{
var sel = (SupportedSize)comboSize.SelectedItem;
_twain.CapSetSupportedSize(sel);
_twain.Source.CapSetSupportedSize(sel);
}
}
@@ -343,7 +343,7 @@ namespace Tester.Winform
if (!_loadingCaps && _twain.State == 4)
{
var sel = (PixelType)comboDepth.SelectedItem;
_twain.CapSetPixelType(sel);
_twain.Source.CapSetPixelType(sel);
}
}
@@ -352,7 +352,7 @@ namespace Tester.Winform
if (!_loadingCaps && _twain.State == 4)
{
var sel = (TWFix32)comboDPI.SelectedItem;
_twain.CapSetDPI(sel);
_twain.Source.CapSetDPI(sel);
}
}
@@ -360,13 +360,13 @@ namespace Tester.Winform
{
if (!_loadingCaps && _twain.State == 4)
{
_twain.CapSetDuplex(ckDuplex.Checked);
_twain.Source.CapSetDuplex(ckDuplex.Checked);
}
}
private void btnAllSettings_Click(object sender, EventArgs e)
{
_twain.EnableSource(SourceEnableMode.ShowUIOnly, true, this.Handle);
_twain.Source.StartTransfer(SourceEnableMode.ShowUIOnly, true, this.Handle);
}
#endregion