←Select platform

Unlock Method

Summary
Unlocks the object(s) currently being edited (selected).
Syntax
C#
Objective-C
C++/CLI
Java
public virtual void Unlock() 
- (void)unlock; 
public void unlock() 
public:  
   virtual void Unlock() 
Remarks

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

For more information, refer to Implementing Annotation Security.

Example
C#
using Leadtools.Annotations.Automation; 
 
using Leadtools.Annotations.Engine; 
using Leadtools.Codecs; 
using Leadtools.Controls; 
using Leadtools.Annotations.Rendering; 
using Leadtools.Annotations.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"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.1.24
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Annotations.Automation Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.