Lock Method (original) (raw)
Summary
Locks this AnnObject with the specified password.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public virtual void Lock(
string _password_
)
- (void)lock:(nullable NSString *)password NS_SWIFT_NAME(lock(password:));
public:
virtual void Lock(
String^ _password_
)
Parameters
password
String containing the password used to lock the annotation object.
Example
using Leadtools.Annotations.Automation;
using Leadtools.Annotations.Engine;
using Leadtools.WinForms;
using Leadtools.Annotations.WinForms;
public void AnnObject_Lock()
{
double inch = 720.0;
// Get the container
AnnContainer container = _automation.Container;
// Add the lock picture to the container resources
// Create a new instance of AnnResources if the container does not already have one
AnnResources resources = _automation.Manager.Resources;
if (resources == null)
{
resources = new AnnResources();
}
// Get the images collection
IList<AnnPicture> imagesResources = resources.Images;
// Add our picture to it
imagesResources.Add(new AnnPicture(@"ms-appx:///Assets/Lock.png"));
int pictureIndex = imagesResources.Count - 1;
// Add a blue on yellow rectangle from 3in 3in to 4in 4in
AnnRectangleObject rectObj = new AnnRectangleObject();
rectObj.Rect = LeadRectD.Create(3 * inch, 3 * inch, 1 * inch, 1 * inch);
rectObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthD.Create(1));
rectObj.Fill = AnnSolidColorBrush.Create("Yellow");
// Set its lock picture
rectObj.LockPicture = pictureIndex;
// Add it to the container
container.Children.Add(rectObj);
// Show the object lock state (default)
Debug.WriteLine("1. Default lock state");
ShowLockedState(rectObj);
// Lock it with a password
Debug.WriteLine("2. Locking now with a password");
rectObj.Lock("secret");
// Show the object lock state, it should say locked and the object should be painted with the lock picture
ShowLockedState(rectObj);
// Now try to unlock it with a wrong password
Debug.WriteLine("3. Unlocking with a wrong password");
rectObj.Unlock("wrong password");
// Check, it should be locked
ShowLockedState(rectObj);
// Unlock it with the correct password
Debug.WriteLine("4. Unlocking with a correct password");
rectObj.Unlock("secret");
// Check lock status
ShowLockedState(rectObj);
//Lock using a new password
Debug.WriteLine("5. Locking with a new password");
rectObj.Lock("NewPassword");
ShowLockedState(rectObj);
//Change the password used in the last lock operation
Debug.WriteLine("6. After being locked, change to new password");
rectObj.Password = "secret-again";
ShowLockedState(rectObj);
}
private void ShowLockedState(AnnObject annObj)
{
_automation.Invalidate(LeadRectD.Empty);
// Show the object lock state (default)
Debug.WriteLine($"\tLocked: {annObj.IsLocked} | Password: {annObj.Password}");
}