Essentially the same as INIT_CONTROL
#define INIT_CONTROL(NAME,PATH) \ scriptName = ##NAME##;\ scriptPath = ##PATH##;\ onLoad = ["onLoad",_this,#NAME,'##PATH##',false] call INIT_DISPLAY_FUNCTION; \ onUnload = ["onUnload",_this,#NAME,'##PATH##',false] call INIT_DISPLAY_FUNCTION;
but with attributeLoad and attributeSave added.
#define INIT_ATTRIBUTE(NAME,PATH) \ scriptName = ##NAME##;\ scriptPath = ##PATH##;\ onLoad = ["onLoad",_this,#NAME,'##PATH##',false] call INIT_DISPLAY_FUNCTION; \ attributeLoad = ["attributeLoad",_this,#NAME,'##PATH##',false] call INIT_DISPLAY_FUNCTION; \ attributeSave = ["attributeSave",_this,#NAME,'##PATH##',false] call INIT_DISPLAY_FUNCTION;
onUnload does not appear to be used.