API Reference

Detailed and full API reference helps you master Tekla development

This is the most recent version of Tekla Open API.
For older versions, please visit Tekla Warehouse.

Plugin Class

The Plugin class represents a drawing plug-in.
Inheritance Hierarchy

Namespace:  Tekla.Structures.Drawing
Assembly:  Tekla.Structures.Drawing (in Tekla.Structures.Drawing.dll) Version: 2022.0.13611
Syntax
[SerializableAttribute]
public sealed class Plugin : DrawingObject

The Plugin type exposes the following members.

Constructors
  NameDescription
Public methodPlugin
Creates a new plug-in instance.
Top
Properties
  NameDescription
Public propertyAttributes
Gets or sets the attributes of the current object. Only attributes of the same type as the object are allowed.
(Inherited from DrawingObject.)
Public propertyName
Gets the name of the plug-in.
Public propertyQueryReturnValue
Status information about the latest database operation (select, insert, modify, delete).
(Inherited from DatabaseObject.)
Top
Methods
  NameDescription
Public methodApplyStandardValues
Applies the values of the specified file as the default values for the dialog belonging to this plug-in. This will affect each Insert call of the plug-ins with the same name.
Public methodDelete
Deletes the plug-in from the current drawing database.
(Overrides DatabaseObjectDelete.)
Public methodGetDoubleAttribute
Gets the value of the specified double attribute of the plug-in.
Public methodGetDoubleUserProperties(DictionaryString, Double)
Retrieves all double user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetDoubleUserProperties(ListString, DictionaryString, Double)
Retrieves all double user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetDrawing
Gets the drawing where the drawing object is.
(Inherited from DrawingObject.)
Public methodGetIntAttribute
Gets the value of the specified int attribute of the plug-in.
Public methodGetIntegerUserProperties(DictionaryString, Int32)
Retrieves all integer user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetIntegerUserProperties(ListString, DictionaryString, Int32)
Retrieves all integer user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetRelatedObjects
Gets the related objects of the current object.
(Inherited from DrawingObject.)
Public methodGetRelatedObjects(Type)
Gets the related objects of the current object that are of certain types.
(Inherited from DrawingObject.)
Public methodGetStringAttribute
Gets the value of the specified string attribute of the plug-in.
Public methodGetStringUserProperties(DictionaryString, String)
Retrieves all string user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetStringUserProperties(ListString, DictionaryString, String)
Retrieves all string user properties for the object with the given list of names.
(Inherited from DatabaseObject.)
Public methodGetUserProperty(String, Double)
Gets a double property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodGetUserProperty(String, Int32)
Gets an integer property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodGetUserProperty(String, String)
Gets a string property from the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodGetView
Gets the view where the drawing object is.
(Inherited from DrawingObject.)
Public methodInsert
Inserts the plug-in into the current drawing database.
(Overrides DatabaseObjectInsert.)
Public methodIsEqual
Compares the current object with an object of the same type.
(Overrides DrawingObjectIsEqual(Object).)
Public methodIsSameDatabaseObject
Returns true if the current object and the given object are referencing the same database object.
(Inherited from DatabaseObject.)
Public methodLoadStandardValues
Sets the values from the specified file to this plug-in.
Public methodModify
Modifies the plug-in in the current drawing database.
(Overrides DatabaseObjectModify.)
Public methodSelect
Selects the plug-in from the current drawing database.
(Overrides DatabaseObjectSelect.)
Public methodSetAttribute(String, Double)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Public methodSetAttribute(String, Int32)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Public methodSetAttribute(String, String)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Public methodSetPickerInput
Defines the sequence of inputs to use in place of interactive picks when the plug-in is inserted to a drawing.
Public methodSetUserProperty(String, Double)
Sets a double property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodSetUserProperty(String, Int32)
Sets an integer property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodSetUserProperty(String, String)
Sets a string property for the drawing object. The object has to be in a drawing before the method can be used.
(Inherited from DatabaseObject.)
Public methodToString
Changes the string presentation of the drawing object.
(Inherited from DrawingObject.)
Public methodTryGetAttribute(String, Double)
Gets the value of the specified double attribute of the plug-in.
Public methodTryGetAttribute(String, Int32)
Gets the value of the specified int attribute of the plug-in.
Public methodTryGetAttribute(String, String)
Gets the value of the specified string attribute of the plug-in.
Public methodTrySetAttribute(String, Double)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Public methodTrySetAttribute(String, Int32)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Public methodTrySetAttribute(String, String)
Sets the specified attribute of the plug-in to the given value. NOTE! Only works on already inserted plug-ins.
Top
Examples
The following example demonstrates how to insert a plug-in into a view. The plug-in used in this example is the Center of gravity dimensions plug-in (COGDimensioning).
using Tekla.Structures.Drawing;
using Tekla.Structures.Geometry3d;

public class Example
{
    public void Example1()
    {
        DrawingHandler MyDrawingHandler = new DrawingHandler();
        DrawingObjectEnumerator allViews = MyDrawingHandler.GetActiveDrawing().GetSheet().GetAllViews();
        allViews.MoveNext();
        ViewBase curView = allViews.Current as ViewBase;

        Plugin myPlugin = new Plugin(curView, "COGDimensioning");

        PluginPickerInput newPluginInput = new PluginPickerInput();
        newPluginInput.Add(new PickerInputPoint(curView, new Point(100, 200)));
        newPluginInput.Add(new PickerInputPoint(curView, new Point(300, 400)));
        myPlugin.SetPickerInput(newPluginInput);

        myPlugin.Insert(); // Inserts the plug-in, the plug-in's DefineInput method's UI.Picker calls will use the given data above.
        // After the Insert returns the Plugin is inserted into the drawing view.
        // Alternatively, if there are some errors during the insertion of the plug-in,
        // exceptions may be thrown or the return value of Insert will be false.
    }
}
See Also