Some renames.

This commit is contained in:
soukoku
2014-05-19 21:26:44 -04:00
parent eb99616530
commit 9bf86464c8
9 changed files with 290 additions and 294 deletions

View File

@@ -32,16 +32,16 @@ namespace NTwain
/// <summary> /// <summary>
/// Opens the data source manager. This must be the first method used /// Opens the data source manager. This must be the first method used
/// before using other TWAIN functions. Calls to this must be followed by <see cref="CloseManager"/> when done with a TWAIN session. /// before using other TWAIN functions. Calls to this must be followed by <see cref="Close"/> when done with a TWAIN session.
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
ReturnCode OpenManager(); ReturnCode Open();
/// <summary> /// <summary>
/// Closes the data source manager. /// Closes the data source manager.
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
ReturnCode CloseManager(); ReturnCode Close();
/// <summary> /// <summary>
/// Forces the stepping down of an opened source when things gets out of control. /// Forces the stepping down of an opened source when things gets out of control.
@@ -54,7 +54,7 @@ namespace NTwain
/// Gets list of sources available in the system. /// Gets list of sources available in the system.
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
IList<TwainSource> GetSources(); IEnumerable<TwainSource> GetSources();
/// <summary> /// <summary>
/// Gets the manager status. Only call this at state 2 or higher. /// Gets the manager status. Only call this at state 2 or higher.

View File

@@ -70,7 +70,7 @@ namespace NTwain.Internals
if (xferGroup == DataGroups.None || if (xferGroup == DataGroups.None ||
(xferGroup & DataGroups.Image) == DataGroups.Image) (xferGroup & DataGroups.Image) == DataGroups.Image)
{ {
var mech = session.Source.GetCurrentCap(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>(); var mech = session.Source.CapGetCurrent(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>();
switch (mech) switch (mech)
{ {
case XferMech.Memory: case XferMech.Memory:
@@ -91,7 +91,7 @@ namespace NTwain.Internals
} }
if ((xferGroup & DataGroups.Audio) == DataGroups.Audio) if ((xferGroup & DataGroups.Audio) == DataGroups.Audio)
{ {
var mech = session.Source.GetCurrentCap(CapabilityId.ACapXferMech).ConvertToEnum<XferMech>(); var mech = session.Source.CapGetCurrent(CapabilityId.ACapXferMech).ConvertToEnum<XferMech>();
switch (mech) switch (mech)
{ {
case XferMech.File: case XferMech.File:

View File

@@ -145,44 +145,6 @@ namespace NTwain
} }
} }
/// <summary>
/// Gets list of sources available in the system.
/// Only call this at state 2 or higher.
/// </summary>
/// <param name="session">The session.</param>
/// <returns></returns>
public IList<TwainSource> GetSources()
{
List<TwainSource> list = new List<TwainSource>();
// now enumerate
TWIdentity srcId;
var rc = DGControl.Identity.GetFirst(out srcId);
if (rc == ReturnCode.Success) { list.Add(new TwainSource(this, srcId)); }
do
{
rc = DGControl.Identity.GetNext(out srcId);
if (rc == ReturnCode.Success)
{
list.Add(new TwainSource(this, srcId));
}
} while (rc == ReturnCode.Success);
return list;
}
/// <summary>
/// Gets the manager status. Only call this at state 2 or higher.
/// </summary>
/// <param name="session">The session.</param>
/// <returns></returns>
public TWStatus GetStatus()
{
TWStatus stat;
DGControl.Status.GetManager(out stat);
return stat;
}
#endregion #endregion
#region ITwainOperation Members #region ITwainOperation Members
@@ -238,6 +200,90 @@ namespace NTwain
return _dgCustom; return _dgCustom;
} }
} }
/// <summary>
/// Opens the data source manager. This must be the first method used
/// before using other TWAIN functions. Calls to this must be followed by <see cref="Close"/> when done with a TWAIN session.
/// </summary>
/// <returns></returns>
public ReturnCode Open()
{
var rc = ReturnCode.Failure;
MessageLoop.Instance.Invoke(() =>
{
Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: OpenManager.", Thread.CurrentThread.ManagedThreadId));
rc = DGControl.Parent.OpenDsm(MessageLoop.Instance.LoopHandle);
if (rc == ReturnCode.Success)
{
// if twain2 then get memory management functions
if ((_appId.DataFunctionalities & DataFunctionalities.Dsm2) == DataFunctionalities.Dsm2)
{
TWEntryPoint entry;
rc = DGControl.EntryPoint.Get(out entry);
if (rc == ReturnCode.Success)
{
Platform.MemoryManager = entry;
Debug.WriteLine("Using TWAIN2 memory functions.");
}
else
{
Close();
}
}
}
});
return rc;
}
/// <summary>
/// Closes the data source manager.
/// </summary>
/// <returns></returns>
public ReturnCode Close()
{
var rc = ReturnCode.Failure;
MessageLoop.Instance.Invoke(() =>
{
Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: CloseManager.", Thread.CurrentThread.ManagedThreadId));
rc = DGControl.Parent.CloseDsm(MessageLoop.Instance.LoopHandle);
if (rc == ReturnCode.Success)
{
Platform.MemoryManager = null;
}
});
return rc;
}
/// <summary>
/// Gets list of sources available in the system.
/// Only call this at state 2 or higher.
/// </summary>
/// <param name="session">The session.</param>
/// <returns></returns>
public IEnumerable<TwainSource> GetSources()
{
TWIdentity srcId;
var rc = DGControl.Identity.GetFirst(out srcId);
while (rc == ReturnCode.Success)
{
yield return new TwainSource(this, srcId);
rc = DGControl.Identity.GetNext(out srcId);
}
}
/// <summary>
/// Gets the manager status. Only call this at state 2 or higher.
/// </summary>
/// <param name="session">The session.</param>
/// <returns></returns>
public TWStatus GetStatus()
{
TWStatus stat;
DGControl.Status.GetManager(out stat);
return stat;
}
#endregion #endregion
@@ -282,61 +328,6 @@ namespace NTwain
#region privileged calls that causes state change in TWAIN #region privileged calls that causes state change in TWAIN
/// <summary>
/// Opens the data source manager. This must be the first method used
/// before using other TWAIN functions. Calls to this must be followed by <see cref="CloseManager"/> when done with a TWAIN session.
/// </summary>
/// <returns></returns>
public ReturnCode OpenManager()
{
var rc = ReturnCode.Failure;
MessageLoop.Instance.Invoke(() =>
{
Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: OpenManager.", Thread.CurrentThread.ManagedThreadId));
rc = DGControl.Parent.OpenDsm(MessageLoop.Instance.LoopHandle);
if (rc == ReturnCode.Success)
{
// if twain2 then get memory management functions
if ((_appId.DataFunctionalities & DataFunctionalities.Dsm2) == DataFunctionalities.Dsm2)
{
TWEntryPoint entry;
rc = DGControl.EntryPoint.Get(out entry);
if (rc == ReturnCode.Success)
{
Platform.MemoryManager = entry;
Debug.WriteLine("Using TWAIN2 memory functions.");
}
else
{
CloseManager();
}
}
}
});
return rc;
}
/// <summary>
/// Closes the data source manager.
/// </summary>
/// <returns></returns>
public ReturnCode CloseManager()
{
var rc = ReturnCode.Failure;
MessageLoop.Instance.Invoke(() =>
{
Debug.WriteLine(string.Format(CultureInfo.InvariantCulture, "Thread {0}: CloseManager.", Thread.CurrentThread.ManagedThreadId));
rc = DGControl.Parent.CloseDsm(MessageLoop.Instance.LoopHandle);
if (rc == ReturnCode.Success)
{
Platform.MemoryManager = null;
}
});
return rc;
}
/// <summary> /// <summary>
/// Enables the source to start transferring. /// Enables the source to start transferring.
@@ -459,13 +450,13 @@ namespace NTwain
{ {
((ITwainSessionInternal)this).DisableSource(); ((ITwainSessionInternal)this).DisableSource();
} }
if (targetState < 4) if (targetState < 4 && Source != null)
{ {
Source.Close(); Source.Close();
} }
if (targetState < 3) if (targetState < 3)
{ {
CloseManager(); Close();
} }
}); });
EnforceState = origFlag; EnforceState = origFlag;

View File

@@ -13,7 +13,7 @@ namespace NTwain
/// </summary> /// </summary>
/// <param name="capId">The cap identifier.</param> /// <param name="capId">The cap identifier.</param>
/// <returns></returns> /// <returns></returns>
public QuerySupport GetCapabilitySupport(CapabilityId capId) public QuerySupport CapQuerySupport(CapabilityId capId)
{ {
QuerySupport retVal = QuerySupport.None; QuerySupport retVal = QuerySupport.None;
using (TWCapability cap = new TWCapability(capId)) using (TWCapability cap = new TWCapability(capId))
@@ -37,7 +37,7 @@ namespace NTwain
/// </summary> /// </summary>
/// <param name="capId">The cap id.</param> /// <param name="capId">The cap id.</param>
/// <returns></returns> /// <returns></returns>
public object GetCurrentCap(CapabilityId capId) public object CapGetCurrent(CapabilityId capId)
{ {
using (TWCapability cap = new TWCapability(capId)) using (TWCapability cap = new TWCapability(capId))
{ {
@@ -77,7 +77,7 @@ namespace NTwain
/// </summary> /// </summary>
/// <param name="capabilityId">The capability unique identifier.</param> /// <param name="capabilityId">The capability unique identifier.</param>
/// <returns></returns> /// <returns></returns>
public IList<object> GetCapabilityValues(CapabilityId capabilityId) public IList<object> CapGetValues(CapabilityId capabilityId)
{ {
var list = new List<object>(); var list = new List<object>();
using (TWCapability cap = new TWCapability(capabilityId)) using (TWCapability cap = new TWCapability(capabilityId))
@@ -100,9 +100,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<XferMech> CapGetImageXferMech() public IList<XferMech> CapGetImageXferMech()
{ {
return CapGetValues(CapabilityId.ICapXferMech).CastToEnum<XferMech>(true);
return GetCapabilityValues(CapabilityId.ICapXferMech).CastToEnum<XferMech>(true);
} }
#endregion #endregion
@@ -116,7 +114,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<CompressionType> CapGetCompression() public IList<CompressionType> CapGetCompression()
{ {
return GetCapabilityValues(CapabilityId.ICapCompression).CastToEnum<CompressionType>(true); return CapGetValues(CapabilityId.ICapCompression).CastToEnum<CompressionType>(true);
} }
/// <summary> /// <summary>
@@ -143,7 +141,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<FileFormat> CapGetImageFileFormat() public IList<FileFormat> CapGetImageFileFormat()
{ {
return GetCapabilityValues(CapabilityId.ICapImageFileFormat).CastToEnum<FileFormat>(true); return CapGetValues(CapabilityId.ICapImageFileFormat).CastToEnum<FileFormat>(true);
} }
/// <summary> /// <summary>
@@ -170,7 +168,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<PixelType> CapGetPixelTypes() public IList<PixelType> CapGetPixelTypes()
{ {
return GetCapabilityValues(CapabilityId.ICapPixelType).CastToEnum<PixelType>(true); return CapGetValues(CapabilityId.ICapPixelType).CastToEnum<PixelType>(true);
} }
/// <summary> /// <summary>
@@ -200,7 +198,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<XferMech> CapGetImageXferMechs() public IList<XferMech> CapGetImageXferMechs()
{ {
return GetCapabilityValues(CapabilityId.ICapXferMech).CastToEnum<XferMech>(true); return CapGetValues(CapabilityId.ICapXferMech).CastToEnum<XferMech>(true);
} }
/// <summary> /// <summary>
@@ -210,7 +208,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<XferMech> CapGetAudioXferMechs() public IList<XferMech> CapGetAudioXferMechs()
{ {
return GetCapabilityValues(CapabilityId.ACapXferMech).CastToEnum<XferMech>(true); return CapGetValues(CapabilityId.ACapXferMech).CastToEnum<XferMech>(true);
} }
/// <summary> /// <summary>
@@ -256,7 +254,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<TWFix32> CapGetDPIs() public IList<TWFix32> CapGetDPIs()
{ {
var list = GetCapabilityValues(CapabilityId.ICapXResolution); var list = CapGetValues(CapabilityId.ICapXResolution);
return list.Select(o => o.ConvertToFix32()).ToList(); return list.Select(o => o.ConvertToFix32()).ToList();
} }
@@ -308,7 +306,7 @@ namespace NTwain
/// <returns></returns> /// <returns></returns>
public IList<SupportedSize> CapGetSupportedSizes() public IList<SupportedSize> CapGetSupportedSizes()
{ {
return GetCapabilityValues(CapabilityId.ICapSupportedSizes).CastToEnum<SupportedSize>(true); return CapGetValues(CapabilityId.ICapSupportedSizes).CastToEnum<SupportedSize>(true);
} }
/// <summary> /// <summary>

View File

@@ -11,6 +11,9 @@ using System.Threading;
namespace NTwain namespace NTwain
{ {
/// <summary>
/// Represents a TWAIN data source.
/// </summary>
public partial class TwainSource : INotifyPropertyChanged public partial class TwainSource : INotifyPropertyChanged
{ {
ITwainSessionInternal _session; ITwainSessionInternal _session;
@@ -82,6 +85,8 @@ namespace NTwain
return stat; return stat;
} }
#region properties
internal TWIdentity Identity { get; private set; } internal TWIdentity Identity { get; private set; }
/// <summary> /// <summary>
@@ -156,7 +161,7 @@ namespace NTwain
{ {
if (_supportedCaps == null && _session.State > 3) if (_supportedCaps == null && _session.State > 3)
{ {
_supportedCaps = GetCapabilityValues(CapabilityId.CapSupportedCaps).CastToEnum<CapabilityId>(false); _supportedCaps = CapGetValues(CapabilityId.CapSupportedCaps).CastToEnum<CapabilityId>(false);
} }
return _supportedCaps ?? _emptyCapList; return _supportedCaps ?? _emptyCapList;
} }
@@ -167,6 +172,8 @@ namespace NTwain
} }
} }
#endregion
#region INotifyPropertyChanged Members #region INotifyPropertyChanged Members
/// <summary> /// <summary>

View File

@@ -38,7 +38,7 @@ namespace Tester
Console.WriteLine("Getting ready to do twain stuff on thread {0}.", Thread.CurrentThread.ManagedThreadId); Console.WriteLine("Getting ready to do twain stuff on thread {0}.", Thread.CurrentThread.ManagedThreadId);
Thread.Sleep(1000); Thread.Sleep(1000);
var rc = twain.OpenManager(); var rc = twain.Open();
if (rc == ReturnCode.Success) if (rc == ReturnCode.Success)
{ {
@@ -46,7 +46,7 @@ namespace Tester
if (hit == null) if (hit == null)
{ {
Console.WriteLine("The sample source \"TWAIN2 FreeImage Software Scanner\" is not installed."); Console.WriteLine("The sample source \"TWAIN2 FreeImage Software Scanner\" is not installed.");
twain.CloseManager(); twain.Close();
} }
else else
{ {
@@ -59,7 +59,7 @@ namespace Tester
} }
else else
{ {
twain.CloseManager(); twain.Close();
} }
} }
} }
@@ -73,7 +73,7 @@ namespace Tester
{ {
Console.WriteLine("Source disabled on thread {0}.", Thread.CurrentThread.ManagedThreadId); Console.WriteLine("Source disabled on thread {0}.", Thread.CurrentThread.ManagedThreadId);
var rc = twain.Source.Close(); var rc = twain.Source.Close();
rc = twain.CloseManager(); rc = twain.Close();
} }
static void twain_TransferReady(object sender, TransferReadyEventArgs e) static void twain_TransferReady(object sender, TransferReadyEventArgs e)

View File

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

View File

@@ -68,7 +68,7 @@ namespace Tester.WPF
{ {
// set it up to use file xfer // set it up to use file xfer
if (this.Source.GetCurrentCap(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>() == XferMech.File) if (this.Source.CapGetCurrent(CapabilityId.ICapXferMech).ConvertToEnum<XferMech>() == XferMech.File)
{ {
var formats = this.Source.CapGetImageFileFormat(); var formats = this.Source.CapGetImageFileFormat();
var wantFormat = formats.Contains(FileFormat.Tiff) ? FileFormat.Tiff : FileFormat.Bmp; var wantFormat = formats.Contains(FileFormat.Tiff) ? FileFormat.Tiff : FileFormat.Bmp;

View File

@@ -111,7 +111,7 @@ namespace Tester.Winform
} }
if (_twain.State == 3) if (_twain.State == 3)
{ {
_twain.CloseManager(); _twain.Close();
} }
if (_twain.State > 2) if (_twain.State > 2)
@@ -239,7 +239,7 @@ namespace Tester.Winform
} }
if (_twain.State < 3) if (_twain.State < 3)
{ {
_twain.OpenManager(); _twain.Open();
} }
if (_twain.State >= 3) if (_twain.State >= 3)
@@ -294,7 +294,7 @@ namespace Tester.Winform
{ {
var list = _twain.Source.CapGetSupportedSizes(); var list = _twain.Source.CapGetSupportedSizes();
comboSize.DataSource = list; comboSize.DataSource = list;
var cur = _twain.Source.GetCurrentCap(CapabilityId.ICapSupportedSizes).ConvertToEnum<SupportedSize>(); var cur = _twain.Source.CapGetCurrent(CapabilityId.ICapSupportedSizes).ConvertToEnum<SupportedSize>();
if (list.Contains(cur)) if (list.Contains(cur))
{ {
comboSize.SelectedItem = cur; comboSize.SelectedItem = cur;
@@ -303,7 +303,7 @@ namespace Tester.Winform
private void LoadDuplex() private void LoadDuplex()
{ {
ckDuplex.Checked = _twain.Source.GetCurrentCap(CapabilityId.CapDuplexEnabled).ConvertToEnum<uint>() != 0; ckDuplex.Checked = _twain.Source.CapGetCurrent(CapabilityId.CapDuplexEnabled).ConvertToEnum<uint>() != 0;
} }
private void LoadDPI() private void LoadDPI()
@@ -311,7 +311,7 @@ namespace Tester.Winform
// only allow dpi of certain values for those source that lists everything // only allow dpi of certain values for those source that lists everything
var list = _twain.Source.CapGetDPIs().Where(dpi => (dpi % 50) == 0).ToList(); var list = _twain.Source.CapGetDPIs().Where(dpi => (dpi % 50) == 0).ToList();
comboDPI.DataSource = list; comboDPI.DataSource = list;
var cur = (TWFix32)_twain.Source.GetCurrentCap(CapabilityId.ICapXResolution); var cur = (TWFix32)_twain.Source.CapGetCurrent(CapabilityId.ICapXResolution);
if (list.Contains(cur)) if (list.Contains(cur))
{ {
comboDPI.SelectedItem = cur; comboDPI.SelectedItem = cur;
@@ -322,7 +322,7 @@ namespace Tester.Winform
{ {
var list = _twain.Source.CapGetPixelTypes(); var list = _twain.Source.CapGetPixelTypes();
comboDepth.DataSource = list; comboDepth.DataSource = list;
var cur = _twain.Source.GetCurrentCap(CapabilityId.ICapPixelType).ConvertToEnum<PixelType>(); var cur = _twain.Source.CapGetCurrent(CapabilityId.ICapPixelType).ConvertToEnum<PixelType>();
if (list.Contains(cur)) if (list.Contains(cur))
{ {
comboDepth.SelectedItem = cur; comboDepth.SelectedItem = cur;