LockDiagram function (automation interface)
Syntax:
LockDiagram ("<id>", TRUE¦FALSE)
Where:
• <id> is a string that specifies the id of the diagram that is to be locked or unlocked.
• TRUE attempts to lock (make editable) a diagram.
• FALSE attempts to unlock (make read-only) a diagram.
For all diagram types except Text Diagrams:
• LockDiagram with TRUE takes an exclusive lock on a diagram so that you can change it (unless the diagram is locked to another user)
• LockDiagram with FALSE unlocks a diagram that is locked by you in the model so that other users can change it.
LockDiagram uses the Diagram Object's Id property. This function returns a Boolean value to indicate success or failure.
For Text Diagrams
• LockDiagram with TRUE makes the diagram editable without taking a lock. When a change is made to the diagram, the diagram attempts to take an exclusive lock for you.
• LockDiagram with FALSE:
◦ If the diagram has been modified, LockDiagram with FALSE will not do anything. The lock is released when the diagram changes are saved or canceled.
◦ If the diagram has not been changed, the diagram is made read-only.
Use the IsDiagramLocked function to determine whether a diagram is locked by you.
Examples
In this example, the script locks Class Diagram1 through its Id, that is, makes the diagram editable:
Set objDiagrams = ActiveProject.Item("Diagrams")
Set objDiagram = objDiagrams.Item("Class Diagram", "Class Diagram1")
strDiagram = objDiagram.Property("Id")
Call Studio.LockDiagram (strDiagram, TRUE)
In this example, the script unlocks Class Diagram1 through its Id, that is, makes the diagram read-only:
Set objDiagrams = ActiveProject.Item("Diagrams")
Set objDiagram = objDiagrams.Item("Class Diagram", "Class Diagram1")
strDiagram = objDiagram.Property("Id")
Call Studio.LockDiagram (strDiagram, FALSE)