Code:
[]spawn{
while{true}do{
waitUntil{!isNull(finddisplay 129)};
_Dialog=[
[2200,"",[1,"",[0.29375 * safezoneW + safezoneX,0.225 * safezoneH + safezoneY,0.413531 * safezoneW,0.3872 * safezoneH],[-1,-1,-1,-1],[0.749,0.749,0.749,1],[0,0,0,0],"","-1"],[]],
[1100,"",[1,"",[0.29375 * safezoneW + safezoneX,0.225 * safezoneH + safezoneY,0.4125 * safezoneW,0.0022 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1101,"",[1,"",[0.29375 * safezoneW + safezoneX,0.61 * safezoneH + safezoneY,0.413531 * safezoneW,0.0022 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1102,"",[1,"",[0.70625 * safezoneW + safezoneX,0.225 * safezoneH + safezoneY,0.00103125 * safezoneW,0.385 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1103,"",[1,"",[0.29375 * safezoneW + safezoneX,0.225 * safezoneH + safezoneY,0.00103125 * safezoneW,0.385 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1104,"",[1,"",[0.29375 * safezoneW + safezoneX,0.258 * safezoneH + safezoneY,0.4125 * safezoneW,0.0022 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1105,"",[1,"<t align='center'size='1.5'>Variable Scanner<t/>",[0.29375 * safezoneW + safezoneX,0.225 * safezoneH + safezoneY,0.4125 * safezoneW,0.033 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[2100,"",[1,"",[0.355625 * safezoneW + safezoneX,0.313 * safezoneH + safezoneY,0.345469 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0.7],[0,0,0,0],"","-1"],[]],
[1106,"",[1,"Type:",[0.298906 * safezoneW + safezoneX,0.313 * safezoneH + safezoneY,0.0515625 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[1108,"",[1,"Search:",[0.298906 * safezoneW + safezoneX,0.346 * safezoneH + safezoneY,0.0515625 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[1400,"",[1,"",[0.355625 * safezoneW + safezoneX,0.346 * safezoneH + safezoneY,0.345469 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[1107,"",[1,"",[0.29375 * safezoneW + safezoneX,0.412 * safezoneH + safezoneY,0.4125 * safezoneW,0.0022 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1600,"",[1,"Start Search",[0.443281 * safezoneW + safezoneX,0.379 * safezoneH + safezoneY,0.108281 * safezoneW,0.022 * safezoneH],[1,1,1,1],[0.6,0,0,1],[0,0,0,0],"[]spawn(player getVariable['Startsearch',{}])","-1"],[]],
[1500,"",[1,"",[0.29375 * safezoneW + safezoneX,0.412 * safezoneH + safezoneY,0.4125 * safezoneW,0.1562 * safezoneH],[0.6,0,0,1],[0,0,0,0.7],[0,0,0,0],"","-1"],[]],
[1109,"",[1,"",[0.29375 * safezoneW + safezoneX,0.566 * safezoneH + safezoneY,0.4125 * safezoneW,0.0022 * safezoneH],[-1,-1,-1,-1],[0.6,0,0,1],[0,0,0,0],"","-1"],[]],
[1401,"",[1,"",[0.355625 * safezoneW + safezoneX,0.577 * safezoneH + safezoneY,0.232031 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[1110,"",[1,"New Value:",[0.298906 * safezoneW + safezoneX,0.577 * safezoneH + safezoneY,0.0567187 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[1601,"",[1,"Change Value",[0.592812 * safezoneW + safezoneX,0.577 * safezoneH + safezoneY,0.108281 * safezoneW,0.022 * safezoneH],[1,1,1,1],[0.6,0,0,1],[0,0,0,0],"[]spawn(player getVariable['ChangeValue',{}])","-1"],[]],
[1111,"",[1,"Namespace:",[0.298906 * safezoneW + safezoneX,0.28 * safezoneH + safezoneY,0.0567187 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0],[0,0,0,0],"","-1"],[]],
[2101,"",[1,"",[0.355625 * safezoneW + safezoneX,0.28 * safezoneH + safezoneY,0.345469 * safezoneW,0.022 * safezoneH],[0.6,0,0,1],[0,0,0,0.7],[0,0,0,0],"","-1"],[]],
[1602,"",[1,"Close",[0.29375 * safezoneW + safezoneX,0.61 * safezoneH + safezoneY,0.0464063 * safezoneW,0.022 * safezoneH],[1,1,1,1],[0.6,0,0,1],[0,0,0,0],"(finddisplay 129)closeDisplay 0","-1"],[]]
];
{
disableSerialization;
private["_ctrl","_buttonaction","_text","_secondarray","_activecolor","_textcolor","_backcolor","_pos","_idc","_classname","_ctrltype"];
_idc = _x select 0;
_classname = _x select 1;
_secondarray = (_x select 2);
_text = _secondarray select 1;
_pos = _secondarray select 2;
_textcolor = _secondarray select 3;
_backcolor = _secondarray select 4;
_activecolor = _secondarray select 5;
_buttonaction = _secondarray select 6;
_ctrltype = (format["%1",_idc] select [0,2]);
_ctrltype = call compile _ctrltype;
_ctrltype = switch(_ctrltype) do {
case 11: {"RscStructuredText"};
case 12: {"RscPicture"};
case 14: {"RscEdit"};
case 15: {"RscListBox"};
case 16: {"RscButtonMenu"};
case 21: {"RscCombo"};
case 22: {"RscBackground"};
};
_ctrl = (finddisplay 129) ctrlCreate [_ctrltype, _idc];
_ctrl ctrlSetPosition _pos;
_ctrl ctrlSetTextColor _textcolor;
_ctrl ctrlSetBackgroundColor _backcolor;
_ctrl ctrlSetActiveColor _activecolor;
if(_ctrltype=="RscStructuredText")then{_ctrl ctrlSetStructuredText parseText _text}else{_ctrl ctrlSetText _text};
if!(_buttonaction == "") then { _ctrl buttonsetAction _buttonaction;
};
_ctrl ctrlCommit 0;
}
forEach _Dialog;
_namespacecombo=((finddisplay 129)displayCtrl 2101);
_searchtypecombo=((finddisplay 129)displayCtrl 2100);
{_namespacecombo lbAdd _x}forEach["missionNamespace","uiNamespace","profileNamespace"];
{_searchtypecombo lbAdd _x}forEach["Exact Value","Value contains"];
_namespacecombo lbSetCurSel 0;
_searchtypecombo lbSetCurSel 0;
waitUntil{isNull(finddisplay 129)};
};
};
player setVariable["StartSearch",{
private["_nms","_typ","_val","_vars"];
_nms=(((finddisplay 129)displayCtrl 2101)lbText lbCurSel((finddisplay 129)displayCtrl 2101));
_typ=lbCurSel((finddisplay 129)displayCtrl 2100);
_val=ctrlText((finddisplay 129)displayCtrl 1400);
player setVariable["nms",_nms];
_vars=[];
switch(_typ)do{
case 0:{
[_nms,_typ,_val]call compile format['
private["_all","_nms","_typ","_val"];
_nms=_this select 0;
_typ=_this select 1;
_val=_this select 2;
if(_val=="")then{_all=true}else{_all=false};
{if(format["%2",(%1 getVariable _x)]==_val||_all)then{_vars pushBack[_x,%1 getVariable _x]}}forEach allVariables %1;
if(count _vars<1)exitWith{hint "[FAILED] No Variables with this value...";lbClear ((finddisplay 129) displayCtrl 1500)};
lbClear ((finddisplay 129) displayCtrl 1500);
{
((finddisplay 129) displayCtrl 1500) lbAdd format["%2 | %3 | %4",_x select 0,typeName(%1 getVariable(_x select 0)),format["%2",_x select 1]];
((finddisplay 129) displayCtrl 1500) lbSetData [(lbSize((finddisplay 129) displayCtrl 1500))-1,_x select 0];
}
forEach _vars;
hint format["[SUCCESS] Variables found (%2)",count _vars]',_nms,"%1","%2","%3"];
};
case 1:{
[_nms,_typ,_val]call compile format['
private["_all","_nms","_typ","_val"];
_nms=_this select 0;
_typ=_this select 1;
_val=_this select 2;
if(_val=="")then{_all=true}else{_all=false};
{if(((format["%2",(%1 getVariable _x)])find _val)>-1||_all)then{_vars pushBack[_x,%1 getVariable _x]}}forEach allVariables %1;
if(count _vars<1)exitWith{hint "[FAILED] No Variables with this value...";lbClear ((finddisplay 129) displayCtrl 1500)};
lbClear ((finddisplay 129) displayCtrl 1500);
{
((finddisplay 129) displayCtrl 1500) lbAdd format["%2 | %3 | %4",_x select 0,typeName(%1 getVariable(_x select 0)),format["%2",_x select 1]];
((finddisplay 129) displayCtrl 1500) lbSetData [(lbSize((finddisplay 129) displayCtrl 1500))-1,_x select 0];
}
forEach _vars;
hint format["[SUCCESS] Variables found (%2)",count _vars]',_nms,"%1","%2","%3"];
};
};
}];
player setVariable["ChangeValue",{
_var=(((finddisplay 129)displayCtrl 1500)lbData lbCurSel((finddisplay 129)displayCtrl 1500));
_val=ctrlText((finddisplay 129)displayCtrl 1401);
[_var,_val]call compile format[
'
_var=_this select 0;
_val=_this select 1;
_typ=typeName(%1 getVariable _var);
_val=switch(_typ)do{
case"STRING":{_val};
case"SCALAR":{call compile _val};
case"CODE":{compile _val};
};
%1 setVariable[_var,_val];
',
(player getVariable["nms","missionNamespace"])
];
}];
Here you can see the new layout: