GH_ActiveObject
Basic implementation of IGH_ActiveObject interface. Derive from this class rather than implementing IGH_ActiveObject to make your life easier.
Inheritance Hierarchy
System.Object
Grasshopper.Kernel.GH_InstanceDescription
Grasshopper.Kernel.GH_DocumentObject
Grasshopper.Kernel.GH_ActiveObject
Grasshopper.Kernel.GH_Component
Grasshopper.Kernel.GH_Param.T.
Namespace: Grasshopper.Kernel
Assembly: Grasshopper (in Grasshopper.dll)
Syntax
public abstract class GH_ActiveObject : GH_DocumentObject, IGH_ActiveObject
The GH_ActiveObject type exposes the following members.
Constructors
Name
Description
Protected method
GH_ActiveObject(IGH_InstanceDescription)
Initializes a new instance of the GH_ActiveObject class
Protected method
GH_ActiveObject(String, String, String, String, String)
Initializes a new instance of the GH_ActiveObject class
Properties
Name
Description
Public Property
Attributes
Gets or sets the attributes that are associated with this object. Only set custom attributes if you know what you are doing.
(Inherited from GH_DocumentObject.)
Public Property
Category
Gets or sets the Category in which this object belongs. If HasCategory() returns false, this field has no meaning.
(Inherited from GH_InstanceDescription.)
Public Property
ComponentGuid
Returns a consistent ID for this object type. Every object must supply a unique and unchanging ID that is used to identify objects of the same type.
(Inherited from GH_DocumentObject.)
Public Property
Description
Gets or sets the description of the object. This field typically remains fixed during the lifetime of an object.
(Inherited from GH_InstanceDescription.)
Public Property
Exposure
Gets the exposure of this object in the Graphical User Interface. The default is to expose everywhere.
(Inherited from GH_DocumentObject.)
Public Property
HasCategory
Gets whether or not the Category field has been set.
(Inherited from GH_InstanceDescription.)
Public Property
HasSubCategory
Gets whether or not the SubCategory field has been set.
(Inherited from GH_InstanceDescription.)
Protected property
Icon
Override this function to supply a custom icon (24x24 pixels). The result of this property is cached, so don’t worry if icon retrieval is not very fast.
(Inherited from GH_DocumentObject.)
Public Property
Icon_24x24
The icon associated with this object.
(Inherited from GH_DocumentObject.)
Public Property
Icon_24x24_Locked
The greyscale icon of this object.
(Inherited from GH_DocumentObject.)
Public Property
IconCapableUI
By default the NickName menu item supports the Icon Mode override toggle. If your UI is not capable of displaying icons, then override this property and return False.
Public Property
IconDisplayMode
Gets the current display mode of the object.
(Inherited from GH_DocumentObject.)
Public Property
InstanceDescription
Gets a description of the current state of the object. This field is usually the same as the Description() field, but it might be variable when overridden.
(Inherited from GH_InstanceDescription.)
Public Property
InstanceGuid
Gets the ID of this runtime instance.
(Inherited from GH_InstanceDescription.)
Public Property
IsDataProvider
Returns a boolean indicating whether or not the current object can seed data.
Public Property
Keywords
Gets a list of additional keywords that describe the object. Typically this list is empty but you can override this property to aid in object searches.
(Inherited from GH_InstanceDescription.)
Public Property
Locked
Gets or sets the enabled flag of this object. Disabled objects are ignored during solutions.
Public Property
MutableNickName
Gets or sets a value that enables Nick name changes through the menu. The default is TRUE.
Public Property
Name
Gets or sets the name of the object. This field typically remains fixed during the lifetime of an object.
(Inherited from GH_InstanceDescription.)
Public Property
NickName
Gets or sets the nickname of the object. This field can be changed by the user.
(Inherited from GH_InstanceDescription.)
Public Property
Obsolete
Gets whether this object is obsolete. Default implementation returns true if the class name contains the string “OBSOLETE” or if this class has been decorated with the ObsoleteAttribute. You are free to override this if you want, but I suggest adding the ObsoleteAttribute instead.
(Inherited from GH_DocumentObject.)
Public Property
Phase
Gets or sets the solution phase this object is currenly in.
Public Property
ProcessorTime
Gets the most recent processor time profiler value.
Public Property
RuntimeMessageLevel
Returns the worst case flag for the current object
If the object contains at least 1 error, the result is Error.
If the object contains at least 1 warning, the result is Warning.
If the object contains at least 1 message, the result is Remark.
If the object contains no errors, no warnings and no messages, the result is Blank.
Public Property
SubCategory
Gets or sets the SubCategory in which this object belongs. If HasSubCategory() returns false, this field has no meaning.
(Inherited from GH_InstanceDescription.)
Methods
Name
Description
Public Method
AddedToDocument
This method will be called when an object is added to a document. Override this method if you want to handle such events.
(Inherited from GH_DocumentObject.)
Public Method
AddRuntimeMessage
Add a new message to this object. Valid message type flags are Warning and Error. If the Message string is empty or zero-length no message is added.
Public Method
AppendAdditionalMenuItems
Override this function if you want to add additional items to the object context menu. Default items already included in the menu toolstrip are:
1. Name
2. Preview
3. Warnings
4. Errors
5. [additional items will be inserted here]
6. Help
Public Method
AppendMenuItems
This function is called when a context menu is about to be displayed. Override it to set custom items. GH_ActiveObject will already populate the menu with default items, if you merely wish to insert object-specific menu item, consider overriding AppendAdditionalMenuItems instead.
(Overrides
GH_DocumentObject.AppendMenuItems(ToolStripDropDown)
.)Public Method
ClearData
This function is called whenever the object needs to clear all solution data. Override this function if you need to perform custom clensing.
Public Method
ClearRuntimeMessages
Destroy all warning and error lists
Public Method
CollectData
This function is called whenever the object is required to collect all data. Either from Persistent records, from source params or whatever.
Public Method
ComputeData
This function is called whenever the object is required to generate new data.
Public Method
CopyFrom
Copy all fields (except the instance ID) from another instance description.
(Inherited from GH_InstanceDescription.)
Public Method
CreateAttributes
This function creates the stand-alone attributes for this object. If you wish to supply your own Attributes, you must override this function.
(Inherited from GH_DocumentObject.)
Public Method
DependsOn
Returns a boolean indicating whether or not the current object somehow inherits from the PotenialSource object
Protected method
DestroyIconCache
Call this method to erase the existing icon cache. You must call this if you want to change the display icon of an object.
(Inherited from GH_DocumentObject.)
Public Method
DocumentContextChanged
This method will be called when the document that owns this object moves into a different context.
(Inherited from GH_DocumentObject.)
Protected method
ExpireDownStreamObjects
This function is called whenever the solution for this object expires. Override this function if objects depend on you.
Public Method
ExpirePreview
Call this function when you suspect that the preview has expired for this object. This will cause the display cache to be eradicated.
(Inherited from GH_DocumentObject.)
Public Method
ExpireSolution
Informs the document that owns this object that the solution has expired. The current object will be set to BLANK as a result. This method is recursive, it will also expire any and all objects which depend on this object. If you want a less destructive expiration, consider using ClearData(). If this object is already Blank, you should consider not expiring it.
(Overrides
GH_DocumentObject.ExpireSolution(Boolean)
.)Protected method
GetValue(String, Boolean)
Get a boolean value from the component value table.
(Inherited from GH_DocumentObject.)
Protected method
GetValue(String, Double)
Get a double value from the component value table.
(Inherited from GH_DocumentObject.)
Protected method
GetValue(String, Color)
Get a color value from the component value table.
(Inherited from GH_DocumentObject.)
Protected method
GetValue(String, Int32)
Get an integer value from the component value table.
(Inherited from GH_DocumentObject.)
Protected method
GetValue(String, String)
Get a string value from the component value table.
(Inherited from GH_DocumentObject.)
Protected method
HtmlHelp_SourceReturn a String which contains HTML formatted source for the help topic. If you want to pass a URL that points to a remote page, then prefix the URL with a GOTO: tag, like so: GOTO:http://www.YourWebAddressHere.com
(Inherited from GH_DocumentObject.)
Public Method
IsolateObject
Destroy all connections to other objects.
(Inherited from GH_DocumentObject.)
Protected method
Menu_AppendBakeItem
Append the default Bake menu item.
Protected method
Menu_AppendEnableItem
Append the default Enable/Disable menu item.
Protected method
Menu_AppendObjectHelp
Appends the default object Help menu item.
(Inherited from GH_DocumentObject.)
Protected method
Menu_AppendObjectName
Appends the old-fashioned object name menu item. If you also want the Display mode toggle then use Menu_AppendObjectNameEx()
(Inherited from GH_DocumentObject.)
Protected method
Menu_AppendObjectNameEx
Appends the default object name + display mode menu item.
(Inherited from GH_DocumentObject.)
Protected method
Menu_AppendPreviewItem
Append the default Show/Hide preview menu item.
Protected method
Menu_AppendPublish
Appends the default item for publishing to RCP. This menu will only appear if the current class implement IRcpAwareObject
(Inherited from GH_DocumentObject.)
Protected method
Menu_AppendRuntimeMessages
Append the default warnings and errors menu items.
Public Method
MovedBetweenDocuments
This method will be called when an object is moved from one document to another. Override this method if you want to handle such events.
(Inherited from GH_DocumentObject.)
Public Method
NewInstanceGuid.
Generate a new random instance GUID
(Inherited from GH_InstanceDescription.)
Public Method
NewInstanceGuid(Guid)
Set the instance ID to be a specific GUID. This is very dangerous, only use this function if you’re 6”4’ and your first name is David.
(Inherited from GH_InstanceDescription.)
Public Method
OnAttributesChanged
Raises the AttributesChanged event on the toplevel object.
(Inherited from GH_DocumentObject.)
Public Method
OnDisplayExpired
Raises the DisplayExpired event on the toplevel object.
(Inherited from GH_DocumentObject.)
Public Method
OnObjectChanged(GH_ObjectChangedEventArgs)
(Inherited from GH_DocumentObject.)
Public Method
OnObjectChanged(GH_ObjectEventType)
(Inherited from GH_DocumentObject.)
Public Method
OnObjectChanged(String)
(Inherited from GH_DocumentObject.)
Public Method
OnObjectChanged(GH_ObjectEventType, Object)
(Inherited from GH_DocumentObject.)
Public Method
OnObjectChanged(String, Object)
(Inherited from GH_DocumentObject.)
Public Method
OnPingDocument
Raise the PingDocument Event on the toplevel object and try to find the document which owns this object.
(Inherited from GH_DocumentObject.)
Public Method
OnPreviewExpired
Raises the PreviewExpired event on the toplevel object.
(Inherited from GH_DocumentObject.)
Public Method
OnSolutionExpired
Raises the SolutionExpired event on the toplevel object. You probably want to call ExpireSolution() instead of this method directly.
(Inherited from GH_DocumentObject.)
Public Method
Read
(Overrides
GH_DocumentObject.Read(GH_IReader)
.)Public Method
ReadFull
GH_InstanceDescription does not by default serialize all fields. Use this function to read all fields from the archive. This method is compatible with the default Write()/Read() operations.
(Inherited from GH_InstanceDescription.)
Public Method
RecordUndoEvent(GH_UndoRecord)
Record an entire undo record.
(Inherited from GH_DocumentObject.)
Public Method
RecordUndoEvent(String)
Record a generic object change undo event.
(Inherited from GH_DocumentObject.)
Public Method
RecordUndoEvent(String, IGH_UndoAction)
Record a specific object change undo event.
(Inherited from GH_DocumentObject.)
Public Method
RegisterRemoteIDs
Override this function if you want object changes in the Rhino document to trigger a new solution.
Public Method
RemovedFromDocument
This method will be called when an object is removed from a document. Override this method if you want to handle such events.
(Inherited from GH_DocumentObject.)
Public Method
RuntimeMessages
Gets the list of cached runtime messages that were recorded during solver-time processes.
Public Method
SDKCompliancy
Test whether this object is compliant with a given Rhino version.
Public Method
SetIconOverride
Set a new custom icon override for this object.
(Inherited from GH_DocumentObject.)
Protected method
SetValue(String, Boolean)
Set a named value. This value will be serialized with the component.
(Inherited from GH_DocumentObject.)
Protected method
SetValue(String, Double)
Set a named value. This value will be serialized with the component.
(Inherited from GH_DocumentObject.)
Protected method
SetValue(String, Color)
Set a named value. This value will be serialized with the component.
(Inherited from GH_DocumentObject.)
Protected method
SetValue(String, Int32)
Set a named value. This value will be serialized with the component.
(Inherited from GH_DocumentObject.)
Protected method
SetValue(String, String)
Set a named value. This value will be serialized with the component.
(Inherited from GH_DocumentObject.)
Public Method
TriggerAutoSave.
Triggers the AutoSave function on the owner document with the object_changed flag.
(Inherited from GH_DocumentObject.)
Public Method
TriggerAutoSave(GH_AutoSaveTrigger)
Triggers the AutoSave function on the owner document with a custom flag.
(Inherited from GH_DocumentObject.)
Public Method
TriggerAutoSave(Guid)
Triggers the AutoSave function on the owner document with the object_changed flag.
(Inherited from GH_DocumentObject.)
Public Method
TriggerAutoSave(GH_AutoSaveTrigger, Guid)
Triggers the AutoSave function on the owner document with a custom flag.
(Inherited from GH_DocumentObject.)
Protected method
ValuesChanged
Override this method if you want to respond to changes to the value table. The base implementation is empty, so you don’t have to call it.
(Inherited from GH_DocumentObject.)
Public Method
Write
(Overrides
GH_DocumentObject.Write(GH_IWriter)
.)Public Method
WriteFull
GH_InstanceDescription does not by default serialize all fields. Use this function to write all fields to the archive. This method is compatible with the default Write()/Read() operations.
(Inherited from GH_InstanceDescription.)
Events
Name
Description
Public Event
AttributesChanged
Raised whenever the number or kind of attributes changes. This event is handled by GH_Documents who subsequently wipe their attribute caches.
(Inherited from GH_DocumentObject.)
Public Event
DisplayExpired
Raised whenever the display (on the Canvas) of a certain object becomes invalid.
(Inherited from GH_DocumentObject.)
Public Event
ObjectChanged
(Inherited from GH_DocumentObject.)
Public Event
PingDocument
Raised whenever an object needs to know which GH_Document it belongs to.
(Inherited from GH_DocumentObject.)
Public Event
PreviewExpired
Raised whenever the display (in the Rhino viewports) of a certain object becomes invalid.
(Inherited from GH_DocumentObject.)
Public Event
SolutionExpired
Raised whenever the solution of a certain object becomes invalid.
(Inherited from GH_DocumentObject.)
Fields
Name
Description
Protected field
m_attributes(Inherited from GH_DocumentObject.)