(Leadtools.Annotations.Automation)

Lock Method

Show in webframe
Example 




Locks the object(s) currently being edited (selected).
Syntax
public virtual void Lock()
public virtual void Lock()
-(void) lock;
public void lock()
 function Leadtools.Annotations.Automation.AnnAutomation.Lock()
Remarks

Use the CanLock property to determine whether you can currently call this method.

For more information, refer to Implementing Annotation Security.

Example
Copy Code  
using Leadtools.Annotations.Automation;
using Leadtools.Annotations.Core;
using Leadtools.Codecs;
using Leadtools.WinForms;

public void AnnAutomation_Lock()
{
   // first add a new object to the automation
   AnnRectangleObject rectObj = new AnnRectangleObject();
   rectObj.Rect = LeadRectD.Create(100, 100, 800, 800);
   rectObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthD.Create(1));
   rectObj.Fill = AnnSolidColorBrush.Create("Yellow");
   _automation.Container.Children.Add(rectObj);
   _automation.Invalidate(LeadRectD.Empty);

   // make sure no objects are selected in the automation
   _automation.SelectObject(null);

   // Hook to the lock and unlock events
   _automation.LockObject += _automation_LockObject;
   _automation.UnlockObject += _automation_UnlockObject;

   // see if we can lock or unlock the object (this should show a message informing you that no objects are currently selected (bring edited)
   LockUnlock(_automation);

   // select (edit) the object we have just added
   _automation.SelectObject(rectObj);

   // see if we can lock or unlock the object (should show the password dialog to lock the object)
   LockUnlock(_automation);

   _automation.LockObject -= _automation_LockObject;
   _automation.UnlockObject -= _automation_UnlockObject;
}

private void LockUnlock(AnnAutomation automation)
{
   // first, check if we can lock the object
   if (automation.CanLock)
   {
      // lock this object
      automation.Lock();
   }
   else if (automation.CanUnlock)
   {
      // unlock this object
      automation.Unlock();
   }
   else
   {
      Debug.WriteLine("Cannot lock or unlock because no object is currently being edited (selected)");
   }
}

void _automation_LockObject(object sender, AnnLockObjectEventArgs e)
{
   Debug.WriteLine(string.Format("Lock it, sending password = {0}", "secret"));
   e.Password = "secret";
}

void _automation_UnlockObject(object sender, AnnLockObjectEventArgs e)
{
   Debug.WriteLine(string.Format("Unlock it, sending password = {0}", "secret"));
   e.Password = "secret";
}
using Leadtools.Annotations.Automation;
using Leadtools.Controls;
using Leadtools.Converters;
using Leadtools.Annotations.Core;
using Leadtools.Codecs;

[TestMethod]
public void AnnAutomation_Lock()
{
   // first add a new object to the automation
   AnnRectangleObject rectObj = new AnnRectangleObject();
   rectObj.Rect = LeadRectDHelper.Create(100, 100, 800, 800);
   rectObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthDHelper.Create(1));
   rectObj.Fill = AnnSolidColorBrush.Create("Yellow");
   _automation.Container.Children.Add(rectObj);
   _automation.Invalidate(LeadRectDHelper.Empty);

   // make sure no objects are selected in the automation
   _automation.SelectObject(null);

   // Hook to the lock and unlock events
   _automation.LockObject += _automation_LockObject;
   _automation.UnlockObject += _automation_UnlockObject;

   // see if we can lock or unlock the object (this should show a message informing you that no objects are currently selected (bring edited)
   LockUnlock(_automation);

   // select (edit) the object we have just added
   _automation.SelectObject(rectObj);

   // see if we can lock or unlock the object (should show the password dialog to lock the object)
   LockUnlock(_automation);

   _automation.LockObject -= _automation_LockObject;
   _automation.UnlockObject -= _automation_UnlockObject;
}

private void LockUnlock(AnnAutomation automation)
{
   // first, check if we can lock the object
   if (automation.CanLock)
   {
      // lock this object
      automation.Lock();
   }
   else if (automation.CanUnlock)
   {
      // unlock this object
      automation.Unlock();
   }
   else
   {
      Debug.WriteLine("Cannot lock or unlock because no object is currently being edited (selected)");
   }
}

void _automation_LockObject(object sender, AnnLockObjectEventArgs e)
{
   Debug.WriteLine(string.Format("Lock it, sending password = {0}", "secret"));
   e.Password = "secret";
}

void _automation_UnlockObject(object sender, AnnLockObjectEventArgs e)
{
   Debug.WriteLine(string.Format("Unlock it, sending password = {0}", "secret"));
   e.Password = "secret";
}
Requirements

Target Platforms

See Also

Reference

AnnAutomation Class
AnnAutomation Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.