displayAddEventHandler: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Remove wrong example. This is about DSetEH. Missing findDiplay ID.)
mNo edit summary
Line 71: Line 71:
<dl class='command_description'>
<dl class='command_description'>
<!-- Note Section BEGIN -->
<!-- Note Section BEGIN -->
<!-- Note Section END -->
<!-- Note Section END -->
</dl>
</dl>

Revision as of 18:01, 25 November 2009

Hover & click on the images for description

Description

Description:
Add an event handler to the given display. Returns id of the handler or -1 when failed. The provided function should return true/false indicating that the event has handled this event fully or not and whether the engine should execute it's default code or not afterwards. See User Interface Event Handlers for the full list of handler names. If applicable, see DIK_KeyCodes for a list of key code constants, which are relevant to key related user interface events like: KeyDown & KeyUp.
Groups:
Uncategorised

Syntax

Syntax:
display displayAddEventHandler [handlerName, function]
Parameters:
display: Display
[handlerName, function]: Array
handlerName: String
function: String
Return Value:
Number

Examples

Example 1:
#include "\ca\editor\Data\Scripts\dikCodes.h"

moduleName_keyDown = 
{
	private["_handled", "_ctrl", "_dikCode", "_shift", "_ctrl", "_alt"];
	_ctrl = _this select 0;
	_dikCode = _this select 1;
	_shift = _this select 2;
	_ctrl = _this select 3;
	_alt = _this select 4;

	_handled = false;

	if (!_shift && !_ctrl && !_alt) then
	{
		if (_dikCode in ([DIK_F]+(actionKeys "NetworkStats"))) then
		{
			nul = [_ctrl] execVM "path\script.sqf";
			_handled = true;
		};
	};

	_handled;  
};

moduleName_keyDownEHId = (findDisplay 46) displayAddEventHandler ["KeyDown", "_this call moduleName_keyDown"];

//(findDisplay 46) displayRemoveEventHandler ["KeyDown", moduleName_keyDownEHId];

Additional Information

See also:
disableSerializationdisplayRemoveAllEventHandlersdisplayRemoveEventHandlerdisplaySetEventHandlerUI Event HandlersfindDisplayDIK KeyCodeskeyName

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Bottom Section