Eden Editor Event Handlers – Arma 3
mNo edit summary |
Lou Montana (talk | contribs) (Page lifting) |
||
Line 1: | Line 1: | ||
__NOEDITSECTION__ | __NOEDITSECTION__ | ||
{{SideTOC}} | |||
== Editor Event Handlers == | |||
[[Eden Editor]] Event Handlers are added to the editor instance and will remain active for the duration of a session. | |||
Launching a preview will keep the event handlers, but closing the editor will erase all of them and you will have to add them again on the next Eden instance. | |||
== | === Related commands === | ||
* [[add3DENEventHandler]] | * [[add3DENEventHandler]] | ||
* [[remove3DENEventHandler]] | * [[remove3DENEventHandler]] | ||
=== Config === | === Config === | ||
Alternatively, you can define event handlers directly in the config. Use your custom section (<span style="color: | Alternatively, you can define event handlers directly in the config. | ||
Handlers defined here will be added | Use your custom section (<span style="font-color: #00F; font-weight: bold;">mySection</span> in the example) to prevent overriding handlers from other sources. | ||
Handlers defined here will automatically be added when Eden Editor is opened. | |||
<syntaxhighlight lang="cpp"> | |||
class Cfg3DEN | |||
{ | |||
class EventHandlers | |||
{ | |||
class mySection | |||
{ | |||
onUndo = "hint 'Undo';"; | |||
// <handlerName> = <handlerExpression> | |||
}; | |||
}; | |||
}; | |||
</syntaxhighlight> | |||
=== | === Events === | ||
Most handlers don't receive any arguments. That is intended, because in most cases, required data can be obtained either using [[get3DENActionState]], or by specialized 'get' commands. | {{note|Most handlers don't receive any arguments. | ||
{| | That is intended, because in most cases, required data can be obtained either using [[get3DENActionState]], or by specialized 'get' commands.}} | ||
{{Cfg ref|start}} | |||
{{Cfg ref|abc}} | |||
| | |||
==== OnConnectingStart ==== | ==== OnConnectingStart ==== | ||
When [[Eden_Editor:_Connecting|Connecting]] operation is initiated. | When [[Eden_Editor:_Connecting|Connecting]] operation is initiated. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnConnectingStart", { | |||
params ["_class", "_from"]; | |||
}]; | |||
</syntaxhighlight> | |||
* class: [[Config]] - connection config class | * class: [[Config]] - connection config class | ||
* from: [[Array of Eden Entities]] | * from: [[Array of Eden Entities]] | ||
==== OnConnectingEnd ==== | ==== OnConnectingEnd ==== | ||
When [[Eden_Editor:_Connecting|Connecting]] operation is terminated, no matter if it was confirmed or canceled. | When [[Eden_Editor:_Connecting|Connecting]] operation is terminated, no matter if it was confirmed or canceled. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnConnectingEnd", { | |||
params ["_class", "_from", "_to"]; | |||
}]; | |||
</syntaxhighlight> | |||
* class: Config - connection config class | * class: Config - connection config class | ||
* from: Array of 3DEN entities | * from: Array of 3DEN entities | ||
* to: [[Eden Entity]] (when connecting was successful) or nil (when connecting was terminated) | * to: [[Eden Entity]] (when connecting was successful) or nil (when connecting was terminated) | ||
==== OnCopy ==== | ==== OnCopy ==== | ||
When entities are copied.<br /> | |||
When entities are copied. | ''No arguments'' | ||
'' | |||
==== OnCut ==== | ==== OnCut ==== | ||
When entities are cut.<br /> | |||
When entities are cut. | ''No arguments'' | ||
'' | |||
==== OnDeleteUnits ==== | ==== OnDeleteUnits ==== | ||
When entities are deleted.<br /> | |||
When entities are deleted. | ''No arguments'' | ||
'' | |||
==== OnEntityMenu ==== | ==== OnEntityMenu ==== | ||
When [[Eden_Editor:_Entity_Context_Menu|Entity Context Menu]] is opened. | When [[Eden_Editor:_Entity_Context_Menu|Entity Context Menu]] is opened. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnEntityMenu", { | |||
params ["_position", "_entity", "_listPath"]; | |||
}]; | |||
</syntaxhighlight> | |||
* position: [[Array]] - [[Position]] where user clicked to open the menu. | * position: [[Array]] - [[Position]] where user clicked to open the menu. | ||
** Entity position when clicked on an entity. | ** Entity position when clicked on an entity. | ||
** Empty array when clicked on something that doesn't have position (i.e. | ** Empty array when clicked on something that doesn't have position (i.e. abstract folder in Edit list like BLUFOR, Trigger, etc.) | ||
* entity: [[Eden Entity]] | * entity: [[Eden Entity]] | ||
** Nil when clicked on empty space | ** Nil when clicked on empty space | ||
* listPath: [[Array]] - UI tree path when clicked on entity in the [[Eden Editor: Entity List|Entity List]]. | * listPath: [[Array]] - UI tree path when clicked on entity in the [[Eden Editor: Entity List|Entity List]]. | ||
** Nil when clicked in the scene (we cannot use empty array, because that's a path to root item) | ** Nil when clicked in the scene (we cannot use empty array, because that's a path to root item) | ||
==== OnGridChange ==== | ==== OnGridChange ==== | ||
When grid changes, either using [[Eden Editor: Toolbar|Toolbar]] option, ot by scripting command [[set3DENGrid]]. | When grid changes, either using [[Eden Editor: Toolbar|Toolbar]] option, ot by scripting command [[set3DENGrid]]. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnGridChange", { | |||
params ["_gridType", "_gridValue"]; | |||
}]; | |||
</syntaxhighlight> | |||
* gridType: [[String]] - can be "translation", "rotation" or "scaling" | * gridType: [[String]] - can be "translation", "rotation" or "scaling" | ||
* gridValue: [[Number]] | * gridValue: [[Number]] | ||
==== OnHistoryChange ==== | ==== OnHistoryChange ==== | ||
When history changes.<br /> | |||
When history changes. | ''No arguments'' | ||
'' | |||
==== OnMapClosed ==== | ==== OnMapClosed ==== | ||
When map is closed.<br /> | |||
When map is closed. | ''No arguments'' | ||
'' | |||
==== OnMapOpened ==== | ==== OnMapOpened ==== | ||
When map is opened.<br /> | |||
When map is opened. | ''No arguments'' | ||
'' | |||
==== OnMessage ==== | ==== OnMessage ==== | ||
Handler used for showing on-screen notifications, triggered by various range of events. | Handler used for showing on-screen notifications, triggered by various range of events. | ||
Message IDs: | Message IDs: | ||
*0 - Mission saved | * 0 - Mission saved | ||
*1 - Mission autosaved | * 1 - Mission autosaved | ||
*2 - Trying to move a character into full vehicle | * 2 - Trying to move a character into full vehicle | ||
*3 - Moved character into enemy vehicle | * 3 - Moved character into enemy vehicle | ||
*4 - Trying to run mission without any player | * 4 - Trying to run mission without any player | ||
*5 - Mission exported to SP | * 5 - Mission exported to SP | ||
*6 - Mission exported to MP | * 6 - Mission exported to MP | ||
*7 - Attempting to delete a default layer | * 7 - Attempting to delete a default layer | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnMessage", { | |||
params ["_messageID"]; | |||
}]; | |||
</syntaxhighlight> | |||
* messageID: [[Number]] | * messageID: [[Number]] | ||
==== OnMissionAutosave ==== | ==== OnMissionAutosave ==== | ||
When scenario is autosaved.<br /> | |||
When scenario is autosaved. | ''No arguments'' | ||
'' | |||
==== OnMissionLoad ==== | ==== OnMissionLoad ==== | ||
When scenario is loaded.<br /> | |||
When scenario is loaded. | ''No arguments'' | ||
'' | |||
==== OnMissionNew ==== | ==== OnMissionNew ==== | ||
When new scenario is started. Executed also when Eden is opened with an empty scenario.<br /> | |||
When new scenario is started. Executed also when Eden is opened with an empty scenario. | ''No arguments'' | ||
'' | |||
==== OnMissionPreview ==== | ==== OnMissionPreview ==== | ||
When scenario preview is started. Executed when the scenario is already loaded, so entities in it can be accessed. | When scenario preview is started. Executed when the scenario is already loaded, so entities in it can be accessed. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["OnMissionPreview", { | |||
params ["_objects", "_groups", "_waypoints", "_markers"]; | |||
}]; | |||
</syntaxhighlight> | |||
* objects: Array | * objects: Array | ||
* groups: Array | * groups: Array | ||
Line 173: | Line 168: | ||
* entity: [[Object]], [[Group]], [[Array]] or [[String]] | * entity: [[Object]], [[Group]], [[Array]] or [[String]] | ||
* ID: [[Number]] | * ID: [[Number]] | ||
==== OnMissionListChange ==== | ==== OnMissionListChange ==== | ||
When the current list of missions in the open/save mission dialog changes, i.e when first opened or a different folder is selected.<br /> | |||
When the current list of missions in the open/save mission dialog changes, i.e when first opened or a different folder is selected. | ''No arguments'' | ||
'' | |||
==== OnMissionPreviewEnd ==== | ==== OnMissionPreviewEnd ==== | ||
When preview ends and user returns back to Eden Editor.<br /> | |||
When preview ends and user returns back to Eden Editor. | ''No arguments'' | ||
'' | |||
==== OnMissionSave ==== | ==== OnMissionSave ==== | ||
When scenario is saved.<br /> | |||
When scenario is saved. | ''No arguments'' | ||
'' | |||
==== OnMissionSaveAs ==== | ==== OnMissionSaveAs ==== | ||
When ''Save As'' action is triggered (i.e. Save window is opened, but the mission is not necessarily saved yet).<br /> | |||
When ''Save As'' action is triggered (i.e. | ''No arguments'' | ||
'' | |||
==== OnModeChange ==== | ==== OnModeChange ==== | ||
When editing mode is changed (i.e. from Objects to Triggers).<br /> | |||
When editing mode is changed (i.e. | ''No arguments'' | ||
'' | |||
==== OnMoveGridToggle ==== | ==== OnMoveGridToggle ==== | ||
When '''translation''' grid is toggled on or off.<br /> | |||
When '''translation''' grid is toggled on or off. | ''No arguments'' | ||
'' | |||
==== OnPaste ==== | ==== OnPaste ==== | ||
When entities are pasted.<br /> | |||
When entities are pasted. | ''No arguments'' | ||
'' | |||
==== OnPasteUnitOrig ==== | ==== OnPasteUnitOrig ==== | ||
When entities are pasted on their original positions.<br /> | |||
When entities are pasted on their original positions. | ''No arguments'' | ||
'' | |||
==== OnRedo ==== | ==== OnRedo ==== | ||
When undo operation is redone.<br /> | |||
When undo operation is redone. | ''No arguments'' | ||
'' | |||
==== OnRotateGridToggle ==== | ==== OnRotateGridToggle ==== | ||
When '''rotation''' grid is toggled on or off.<br /> | |||
When '''rotation''' grid is toggled on or off. | ''No arguments'' | ||
'' | |||
==== OnSelectionChange ==== | ==== OnSelectionChange ==== | ||
When entity selection changes. Use [[get3DENSelected]] to return currently selected entities.<br /> | |||
When entity selection changes. Use [[get3DENSelected]] to return currently selected entities. | ''No arguments'' | ||
'' | |||
==== OnScaleGridToggle ==== | ==== OnScaleGridToggle ==== | ||
When '''area scaling''' grid is toggled on or off.<br /> | |||
When '''area scaling''' grid is toggled on or off. | ''No arguments'' | ||
'' | |||
==== OnSearchCreate ==== | ==== OnSearchCreate ==== | ||
When "SearchCreate" action is triggered (e.g. when pressing Ctrl+Shift+F).<br /> | |||
When "SearchCreate" action is triggered (e.g. | ''No arguments'' | ||
'' | |||
==== OnSearchEdit ==== | ==== OnSearchEdit ==== | ||
When "SearchEdit" action is triggered (e.g. when pressing Ctrl+F).<br /> | |||
When "SearchEdit" action is triggered (e.g. | ''No arguments'' | ||
'' | |||
==== OnServerToggle ==== | ==== OnServerToggle ==== | ||
When server is created or destroyed from the preview.<br /> | |||
When server is created or destroyed from the preview. | ''No arguments'' | ||
'' | |||
==== OnSubmodeChange ==== | ==== OnSubmodeChange ==== | ||
When submode (e.g. BLUFOR or OFPOR for Objects, or Modules for Systems) changes.<br /> | |||
When submode (e.g. | ''No arguments'' | ||
'' | |||
==== OnSurfaceSnapToggle ==== | ==== OnSurfaceSnapToggle ==== | ||
When surface snap settings are changed.<br /> | |||
When surface snap settings are changed. | ''No arguments'' | ||
'' | |||
==== OnTerrainNew ==== | ==== OnTerrainNew ==== | ||
When new terrain is loaded. Executed also when Eden is opened.<br /> | |||
When new terrain is loaded. Executed also when Eden is opened. | ''No arguments'' | ||
'' | |||
==== OnToggleMapTextures ==== | ==== OnToggleMapTextures ==== | ||
When map textures are toggled on or off.<br /> | |||
When map textures are toggled on or off. | ''No arguments'' | ||
'' | |||
==== OnTogglePlaceEmptyVehicle ==== | ==== OnTogglePlaceEmptyVehicle ==== | ||
When the ''Place vehicles with crew'' is toggled on/off in Objects mode.<br /> | |||
When the ''Place vehicles with crew'' is toggled on/off in Objects mode. | ''No arguments'' | ||
'' | |||
==== OnUndo ==== | ==== OnUndo ==== | ||
When an operation is undone.<br /> | |||
When an operation is undone. | ''No arguments'' | ||
'' | |||
==== OnVerticalToggle ==== | ==== OnVerticalToggle ==== | ||
When vertical mode settings are changed.<br /> | |||
When vertical mode settings are changed. | ''No arguments'' | ||
'' | |||
==== OnWidgetArea ==== | ==== OnWidgetArea ==== | ||
When [[Eden_Editor:_Transformation_Widget|area widget]] is selected.<br /> | |||
When [[Eden_Editor:_Transformation_Widget|area widget]] is selected. | ''No arguments'' | ||
'' | |||
==== OnWidgetNone ==== | ==== OnWidgetNone ==== | ||
When no [[Eden_Editor:_Transformation_Widget|widget]] is selected.<br /> | |||
When no [[Eden_Editor:_Transformation_Widget|widget]] is selected. | ''No arguments'' | ||
'' | |||
==== OnWidgetRotation ==== | ==== OnWidgetRotation ==== | ||
When [[Eden_Editor:_Transformation_Widget|rotation widget]] is selected.<br /> | |||
When [[Eden_Editor:_Transformation_Widget|rotation widget]] is selected. | ''No arguments'' | ||
'' | |||
==== OnWidgetScale ==== | ==== OnWidgetScale ==== | ||
When [[Eden_Editor:_Transformation_Widget|scaling widget]] is selected.<br /> | |||
When [[Eden_Editor:_Transformation_Widget|scaling widget]] is selected. | ''No arguments'' | ||
'' | |||
==== OnWidgetToggle ==== | ==== OnWidgetToggle ==== | ||
When [[Eden_Editor:_Transformation_Widget|widget]] is toggled (i.e. browsing through all widget types)<br /> | |||
When [[Eden_Editor:_Transformation_Widget|widget]] is toggled (i.e. | ''No arguments'' | ||
'' | |||
==== OnWidgetTranslation ==== | ==== OnWidgetTranslation ==== | ||
When [[Eden_Editor:_Transformation_Widget|translation widget]] is selected.<br /> | |||
When [[Eden_Editor:_Transformation_Widget|translation widget]] is selected. | ''No arguments'' | ||
'' | |||
==== OnWorkspacePartSwitch ==== | ==== OnWorkspacePartSwitch ==== | ||
When [[Eden_Editor:_Scenario_Phases|scenario phase]] is selected.<br /> | |||
When [[Eden_Editor:_Scenario_Phases|scenario phase]] is selected. | ''No arguments'' | ||
{{Cfg ref|end}} | |||
'' | |||
|} | |||
== Object Event Handlers == | == Object Event Handlers == | ||
Editor specific event handlers can be also added directly to [[Eden Editor: Object|objects]], using [[addEventHandler]] command. | Editor specific event handlers can be also added directly to [[Eden Editor: Object|objects]], using [[addEventHandler]] command.<br /> | ||
{{Important|These handlers exist only for the duration of active workspace. | |||
Running a preview or loading the same scenario again will erase all object event handlers, because objects themselves are despawned from the world and then created again.}} | |||
=== | === Related commands === | ||
Most handlers don't receive any arguments. That is intended, because in most cases, required data can be obtained either using [[get3DENActionState]], or by specialized 'get' commands. | |||
{| | * [[addEventHandler]] | ||
* [[removeEventHandler]] | |||
=== Events === | |||
{{note|Most handlers don't receive any arguments. | |||
| | That is intended, because in most cases, required data can be obtained either using [[get3DENActionState]], or by specialized 'get' commands.}} | ||
{{Cfg ref|start}} | |||
{{Cfg ref|abc}} | |||
==== AttributesChanged3DEN ==== | ==== AttributesChanged3DEN ==== | ||
When object's attributes are changed. Can happen when moving or rotating the object, when changing its attributes in attributes window, or when some scripts change attributes using [[set3DENAttributes]] command. | When object's attributes are changed. Can happen when moving or rotating the object, when changing its attributes in attributes window, or when some scripts change attributes using [[set3DENAttributes]] command. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["AttributesChanged3DEN", { | |||
params ["_object"]; | |||
}]; | |||
</syntaxhighlight> | |||
* object: [[Object]] - affected object | * object: [[Object]] - affected object | ||
==== ConnectionChanged3DEN ==== | ==== ConnectionChanged3DEN ==== | ||
When a [[Eden Editor: Connecting|connection]] is added or removed from an object. | When a [[Eden Editor: Connecting|connection]] is added or removed from an object. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["ConnectionChanged3DEN", { | |||
params ["_object"]; | |||
}]; | |||
</syntaxhighlight> | |||
* object: [[Object]] - affected object | * object: [[Object]] - affected object | ||
==== RegisteredToWorld3DEN ==== | ==== RegisteredToWorld3DEN ==== | ||
When object is re-added to the scenario after undoing a delete operation. | When object is re-added to the scenario after undoing a delete operation. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["RegisteredToWorld3DEN", { | |||
params ["_object"]; | |||
}]; | |||
</syntaxhighlight> | |||
* object: [[Object]] - affected object | * object: [[Object]] - affected object | ||
==== UnregisteredFromWorld3DEN ==== | ==== UnregisteredFromWorld3DEN ==== | ||
When object is removed from the scenario. That happens when you delete it, but also when you undo [[Eden Editor: Entity Placing|placement]] operation. | When object is removed from the scenario. That happens when you delete it, but also when you undo [[Eden Editor: Entity Placing|placement]] operation. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["UnregisteredFromWorld3DEN", { | |||
params ["_object"]; | |||
}]; | |||
</syntaxhighlight> | |||
* object: [[Object]] - affected object | * object: [[Object]] - affected object | ||
==== Dragged3DEN ==== | ==== Dragged3DEN ==== | ||
When object is dragged. | When object is dragged. | ||
<syntaxhighlight lang="cpp"> | |||
add3DENEventHandler ["Dragged3DEN", { | |||
params ["_object"]; | |||
}]; | |||
</syntaxhighlight> | |||
* object: [[Object]] - affected object | * object: [[Object]] - affected object | ||
|} | {{Cfg ref|end}} | ||
Revision as of 20:47, 19 May 2018
Editor Event Handlers
Eden Editor Event Handlers are added to the editor instance and will remain active for the duration of a session. Launching a preview will keep the event handlers, but closing the editor will erase all of them and you will have to add them again on the next Eden instance.
Related commands
Config
Alternatively, you can define event handlers directly in the config. Use your custom section (mySection in the example) to prevent overriding handlers from other sources. Handlers defined here will automatically be added when Eden Editor is opened.
class Cfg3DEN
{
class EventHandlers
{
class mySection
{
onUndo = "hint 'Undo';";
// <handlerName> = <handlerExpression>
};
};
};
Events
Template:note Template:Cfg ref Template:Cfg ref
OnConnectingStart
When Connecting operation is initiated.
add3DENEventHandler ["OnConnectingStart", {
params ["_class", "_from"];
}];
- class: Config - connection config class
- from: Array of Eden Entities
OnConnectingEnd
When Connecting operation is terminated, no matter if it was confirmed or canceled.
add3DENEventHandler ["OnConnectingEnd", {
params ["_class", "_from", "_to"];
}];
- class: Config - connection config class
- from: Array of 3DEN entities
- to: Eden Entity (when connecting was successful) or nil (when connecting was terminated)
OnCopy
When entities are copied.
No arguments
OnCut
When entities are cut.
No arguments
OnDeleteUnits
When entities are deleted.
No arguments
OnEntityMenu
When Entity Context Menu is opened.
add3DENEventHandler ["OnEntityMenu", {
params ["_position", "_entity", "_listPath"];
}];
- position: Array - Position where user clicked to open the menu.
- Entity position when clicked on an entity.
- Empty array when clicked on something that doesn't have position (i.e. abstract folder in Edit list like BLUFOR, Trigger, etc.)
- entity: Eden Entity
- Nil when clicked on empty space
- listPath: Array - UI tree path when clicked on entity in the Entity List.
- Nil when clicked in the scene (we cannot use empty array, because that's a path to root item)
OnGridChange
When grid changes, either using Toolbar option, ot by scripting command set3DENGrid.
add3DENEventHandler ["OnGridChange", {
params ["_gridType", "_gridValue"];
}];
OnHistoryChange
When history changes.
No arguments
OnMapClosed
When map is closed.
No arguments
OnMapOpened
When map is opened.
No arguments
OnMessage
Handler used for showing on-screen notifications, triggered by various range of events. Message IDs:
- 0 - Mission saved
- 1 - Mission autosaved
- 2 - Trying to move a character into full vehicle
- 3 - Moved character into enemy vehicle
- 4 - Trying to run mission without any player
- 5 - Mission exported to SP
- 6 - Mission exported to MP
- 7 - Attempting to delete a default layer
add3DENEventHandler ["OnMessage", {
params ["_messageID"];
}];
- messageID: Number
OnMissionAutosave
When scenario is autosaved.
No arguments
OnMissionLoad
When scenario is loaded.
No arguments
OnMissionNew
When new scenario is started. Executed also when Eden is opened with an empty scenario.
No arguments
OnMissionPreview
When scenario preview is started. Executed when the scenario is already loaded, so entities in it can be accessed.
add3DENEventHandler ["OnMissionPreview", {
params ["_objects", "_groups", "_waypoints", "_markers"];
}];
- objects: Array
- groups: Array
- waypoints: Array
- markers: Array
Each array is in format:
[entity1, id1, entity2, id2, ..., entityN, idN]
OnMissionListChange
When the current list of missions in the open/save mission dialog changes, i.e when first opened or a different folder is selected.
No arguments
OnMissionPreviewEnd
When preview ends and user returns back to Eden Editor.
No arguments
OnMissionSave
When scenario is saved.
No arguments
OnMissionSaveAs
When Save As action is triggered (i.e. Save window is opened, but the mission is not necessarily saved yet).
No arguments
OnModeChange
When editing mode is changed (i.e. from Objects to Triggers).
No arguments
OnMoveGridToggle
When translation grid is toggled on or off.
No arguments
OnPaste
When entities are pasted.
No arguments
OnPasteUnitOrig
When entities are pasted on their original positions.
No arguments
OnRedo
When undo operation is redone.
No arguments
OnRotateGridToggle
When rotation grid is toggled on or off.
No arguments
OnSelectionChange
When entity selection changes. Use get3DENSelected to return currently selected entities.
No arguments
OnScaleGridToggle
When area scaling grid is toggled on or off.
No arguments
OnSearchCreate
When "SearchCreate" action is triggered (e.g. when pressing Ctrl+Shift+F).
No arguments
OnSearchEdit
When "SearchEdit" action is triggered (e.g. when pressing Ctrl+F).
No arguments
OnServerToggle
When server is created or destroyed from the preview.
No arguments
OnSubmodeChange
When submode (e.g. BLUFOR or OFPOR for Objects, or Modules for Systems) changes.
No arguments
OnSurfaceSnapToggle
When surface snap settings are changed.
No arguments
OnTerrainNew
When new terrain is loaded. Executed also when Eden is opened.
No arguments
OnToggleMapTextures
When map textures are toggled on or off.
No arguments
OnTogglePlaceEmptyVehicle
When the Place vehicles with crew is toggled on/off in Objects mode.
No arguments
OnUndo
When an operation is undone.
No arguments
OnVerticalToggle
When vertical mode settings are changed.
No arguments
OnWidgetArea
When area widget is selected.
No arguments
OnWidgetNone
When no widget is selected.
No arguments
OnWidgetRotation
When rotation widget is selected.
No arguments
OnWidgetScale
When scaling widget is selected.
No arguments
OnWidgetToggle
When widget is toggled (i.e. browsing through all widget types)
No arguments
OnWidgetTranslation
When translation widget is selected.
No arguments
OnWorkspacePartSwitch
When scenario phase is selected.
No arguments
Template:Cfg ref
Object Event Handlers
Editor specific event handlers can be also added directly to objects, using addEventHandler command.
Related commands
Events
Template:note Template:Cfg ref Template:Cfg ref
AttributesChanged3DEN
When object's attributes are changed. Can happen when moving or rotating the object, when changing its attributes in attributes window, or when some scripts change attributes using set3DENAttributes command.
add3DENEventHandler ["AttributesChanged3DEN", {
params ["_object"];
}];
- object: Object - affected object
ConnectionChanged3DEN
When a connection is added or removed from an object.
add3DENEventHandler ["ConnectionChanged3DEN", {
params ["_object"];
}];
- object: Object - affected object
RegisteredToWorld3DEN
When object is re-added to the scenario after undoing a delete operation.
add3DENEventHandler ["RegisteredToWorld3DEN", {
params ["_object"];
}];
- object: Object - affected object
UnregisteredFromWorld3DEN
When object is removed from the scenario. That happens when you delete it, but also when you undo placement operation.
add3DENEventHandler ["UnregisteredFromWorld3DEN", {
params ["_object"];
}];
- object: Object - affected object
Dragged3DEN
When object is dragged.
add3DENEventHandler ["Dragged3DEN", {
params ["_object"];
}];
- object: Object - affected object