inheritsFrom: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
m (Text replacement - "<code>([^<]*)\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^<]*) *<\/code>" to "<code>$1$2$3</code>")
Line 36: Line 36:
private _parents = [];
private _parents = [];
[[while]] {![[isNull]] _this} [[do]]
while {![[isNull]] _this} [[do]]
{
{
_parents [[pushBack]] [[configName]] _this;
_parents [[pushBack]] [[configName]] _this;

Revision as of 13:05, 12 May 2022

Hover & click on the images for description

Description

Description:
Returns base entry of config entry.
Groups:
Config

Syntax

Syntax:
inheritsFrom config
Parameters:
config: Config
Return Value:
Config

Examples

Example 1:
_base = inheritsFrom (configFile >> "CfgVehicles" >> "Car"); Result is Config entry for class "LandVehicle"
Example 2:
Print parent tree of given config class: fnc_printParents = { disableSerialization; if (!isClass _this) exitWith {hint "Argument is not a config Class"}; private _parents = []; while {!isNull _this} do { _parents pushBack configName _this; _this = inheritsFrom _this; }; reverse _parents; private _tv = findDisplay 46 createDisplay "RscDisplayEmpty" ctrlCreate ["RscTree", -1]; _tv ctrlSetPosition [0,0,1,1]; _tv ctrlSetBackgroundColor [0,0,0,0.5]; _tv ctrlCommit 0; private _path = []; { _tv tvAdd [_path, _x]; _path pushBack 0; } forEach _parents; tvExpandAll _tv; }; // Example: (configFile >> "CfgVehicles" >> typeOf player) call fnc_printParents;
inheritsFrom.jpg

Additional Information

See also:
configFile config / name configName count getArray getText getNumber isArray isClass isNumber isText select configHierarchy isKindOf

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
Posted on Apr 2, 2014 - 17:11
ffur2007slx2_5
(A3 1.14)Use BIS_fnc_returnParents if a parents' collection of the given entry is needed. [(configFile >> "CfgVehicles" >> "Land_Atm_02_F"),true ] call BIS_fnc_returnParents; //return: ["Land_Atm_02_F","House_Small_F","House_F","House","HouseBase","NonStrategic","Building","Static","All"] Not all entries have parent, and please differ parents from path. inheritsFrom (configFile >> "CfgUIColors" >> "IGUI" >> "Presets" >> "PresetA1" >> "Variables"); //return: Nothing