Road to v1 begins!

This commit is contained in:
soukoku
2014-04-20 16:57:38 -04:00
parent 06d1358fd1
commit 1743b8379b
92 changed files with 863 additions and 898 deletions

View File

@@ -0,0 +1,42 @@
namespace NTwain.Internals
{
class TentativeStateCommitable : ICommittable
{
bool _commit;
ITwainStateInternal _session;
int _origState;
int _newState;
public TentativeStateCommitable(ITwainStateInternal session, int newState)
{
_session = session;
_origState = session.State;
_newState = newState;
_session.ChangeState(newState, false);
}
#region ICommitable Members
public void Commit()
{
if (_session.State == _newState)
{
_session.ChangeState(_newState, true);
}
_commit = true;
}
#endregion
#region IDisposable Members
public void Dispose()
{
if (!_commit && _session.State == _newState)
{
_session.ChangeState(_origState, false);
}
}
#endregion
}
}