Redo button layout, Add rename button, Add messages

This commit is contained in:
Josuan Albin
2017-10-24 12:31:41 +02:00
parent ea7e321a2c
commit c153a438ed
9 changed files with 89 additions and 41 deletions

View File

@ -7,6 +7,7 @@ PREP(buttonHide);
PREP(buttonImport);
PREP(buttonLoadoutsDelete);
PREP(buttonLoadoutsLoad);
PREP(buttonLoadoutsRename);
PREP(buttonLoadoutsSave);
PREP(buttonLoadoutsShare);
PREP(clearSearchbar);

View File

@ -103,6 +103,7 @@
#define IDC_buttonLoad 305
#define IDC_buttonShare 306
#define IDC_buttonDelete 307
#define IDC_buttonRename 308
#define IDC_buttonMyLoadouts 401
#define IDC_buttonDefaultLoadouts 402
#define IDC_buttonSharedLoadouts 403

View File

@ -13,4 +13,6 @@ private _loadoutName = _contentPanelCtrl lnbText [_contentPanelCursSel, 1];
_data deleteAt (_data find ((_data select {_x select 0 == _loadoutName}) select 0));
_contentPanelCtrl lnbDeleteRow _contentPanelCursSel;
_contentPanelCtrl lnbDeleteRow _contentPanelCursSel;
[(findDisplay IDD_ace_arsenal), format ["Loadout '%1' was deleted", _loadoutName]] call FUNC(message); // TBL

View File

@ -53,6 +53,8 @@ switch (GVAR(currentLoadoutsTab)) do {
};
};
};
[(findDisplay IDD_ace_arsenal), format ["Loadout '%1' was loaded", _loadoutName]] call FUNC(message); // TBL
};
case IDC_buttonDefaultLoadouts: {

View File

@ -0,0 +1,29 @@
#include "script_component.hpp"
#include "..\defines.hpp"
params ["_display", "_control"];
if !(ctrlEnabled _control) exitWith {};
private _data = profileNamespace getVariable [QGVAR(saved_loadouts), []];
private _contentPanelCtrl = _display displayCtrl IDC_contentPanel;
private _loadoutName = _contentPanelCtrl lnbText [(lnbCurSelRow _contentPanelCtrl), 1];
private _editBoxCtrl = _display displayCtrl IDC_textEditBox;
private _editBoxContent = ctrlText _editBoxCtrl;
private _loadoutData = (_data select {_x select 0 == _loadoutName}) select 0;
private _loadoutIndex = _data find _loadoutData;
_data set [_loadoutIndex, [_editBoxContent, _loadoutData select 1]];
_contentPanelCtrl lnbSetText [[(lnbCurSelRow _contentPanelCtrl), 1], _editBoxContent];
[(findDisplay IDD_ace_arsenal), format ["Loadout '%1' was renamed to '%2'", _loadoutName, _editBoxContent]] call FUNC(message); // TBL
_contentPanelCtrl lnbSort [1, false];
for '_i' from 0 to (((lnbsize _contentPanelCtrl) select 0) - 1) do {
if ((_contentPanelCtrl lnbText [_i, 1]) == _editBoxContent) exitwith {_contentPanelCtrl lnbSetCurSelRow _i};
};

View File

@ -43,6 +43,8 @@ switch (GVAR(currentLoadoutsTab)) do {
} else {
_data set [_data find (_sameNameLoadoutsList select 0), [[_editBoxContent, _loadoutName] select (_loadoutName isEqualTo _editBoxContent), _loadout]];
};
[(findDisplay IDD_ace_arsenal), format ["Loadout '%1' was saved", _editBoxContent]] call FUNC(message); // TBL
};
case IDC_buttonDefaultLoadouts: {

View File

@ -10,6 +10,7 @@ private _shareButtonCtrl = _display displayCtrl IDC_buttonShare;
private _saveButtonCtrl = _display displayCtrl IDC_buttonSave;
private _loadButtonCtrl = _display displayCtrl IDC_buttonLoad;
private _deleteButtonCtrl = _display displayCtrl IDC_buttonDelete;
private _renameButtonCtrl = _display displayCtrl IDC_buttonRename;
switch (ctrlIDC _control) do {
case IDC_buttonMyLoadouts: {
@ -28,7 +29,7 @@ switch (ctrlIDC _control) do {
{
_x ctrlEnable false;
_x ctrlCommit 0;
} foreach [_shareButtonCtrl, _loadButtonCtrl, _deleteButtonCtrl];
} foreach [_shareButtonCtrl, _loadButtonCtrl, _deleteButtonCtrl, _renameButtonCtrl];
[_display, _control] call FUNC(fillLoadoutsList);

View File

@ -9,6 +9,7 @@ private _shareButtonCtrl = _display displayCtrl IDC_buttonShare;
private _saveButtonCtrl = _display displayCtrl IDC_buttonSave;
private _loadButtonCtrl = _display displayCtrl IDC_buttonLoad;
private _deleteButtonCtrl = _display displayCtrl IDC_buttonDelete;
private _renameButtonCtrl = _display displayCtrl IDC_buttonRename;
private _textEditBoxCtrl= _display displayCtrl IDC_textEditBox;
switch (GVAR(currentLoadoutsTab)) do {
@ -21,8 +22,10 @@ switch (GVAR(currentLoadoutsTab)) do {
_shareButtonCtrl ctrlEnable ([false, true] select (GVAR(allowSharedLoadouts)));
_shareButtonCtrl ctrlCommit 0;
_deleteButtonCtrl ctrlEnable (_curSel >= 0);
_deleteButtonCtrl ctrlCommit 0;
{
_x ctrlEnable (_curSel >= 0);
_x ctrlCommit 0;
} foreach [_renameButtonCtrl, _deleteButtonCtrl];
_textEditBoxCtrl ctrlSetText (_control lnbText [_curSel, 1]);
};

View File

@ -755,21 +755,21 @@ class GVAR(loadoutsDisplay) {
colorSelect[]={1,1,1,1};
colorSelect2[]={1,1,1,1};
colorPictureRightSelected[]={1,1,1,1};
columns[]={0, 0.10, 0.45, 0.55, 0.65, 0.75, 0.80, 0.85, 0.90, 0.95};
columns[]={0, 0.05, 0.40, 0.50, 0.60, 0.70, 0.75, 0.80, 0.85, 0.90};
drawSideArrows=0;
disableOverflow=1;
onLBSelChanged = QUOTE([ARR_3(ctrlParent (_this select 0), _this select 0, _this select 1)] call FUNC(onSelChangedLoadouts));
x = QUOTE(0);
y = QUOTE(5 * GRID_H);
w = QUOTE(160 * GRID_W);
h = QUOTE(safezoneH - (67 * GRID_H));
h = QUOTE(safezoneH - (57 * GRID_H));
sizeEx = QUOTE(7 * GRID_H);
};
class textTitle: RscText {
idc= -1;
text="$STR_DISP_GAME_NAME";
x = QUOTE(5 * GRID_W);
y = QUOTE(safezoneH - (61 * GRID_H));
y = QUOTE(safezoneH - (51 * GRID_H));
w = QUOTE(15 * GRID_W);
h = QUOTE(5 * GRID_H);
colorBackground[]={0,0,0,0.2};
@ -777,44 +777,51 @@ class GVAR(loadoutsDisplay) {
class textEditBox: ctrlEdit {
idc= IDC_textEditBox;
x = QUOTE(20 * GRID_W);
y = QUOTE(safezoneH - (61 * GRID_H));
w = QUOTE(50 * GRID_W);
y = QUOTE(safezoneH - (51 * GRID_H));
w = QUOTE(100 * GRID_W);
h = QUOTE(5 * GRID_H);
};
class buttonSave: ctrlButton {
idc = IDC_buttonSave;
x = QUOTE(5 * GRID_W);
y = QUOTE(safezoneH - (55 * GRID_H));
w = QUOTE(30 * GRID_W);
h = QUOTE(10 * GRID_H);
text="Save"; // TBL
tooltip="Save selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsSave));
colorBackground[] = {0,0,0,0.8};
};
class buttonLoad: buttonSave {
idc = IDC_buttonLoad;
x = QUOTE(45 * GRID_W);
text="Load"; // TBL
tooltip="Load selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsLoad));
};
class buttonShare: buttonSave {
idc = IDC_buttonShare;
x = QUOTE(85 * GRID_W);
text="Share"; // TBL
tooltip="Share selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsShare));
};
class buttonDelete: buttonSave {
idc = IDC_buttonDelete;
x = QUOTE(125 * GRID_W);
text="Delete"; // TBL
tooltip="Delete loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsDelete));
};
};
};
class buttonSave: ctrlButton {
idc = IDC_buttonSave;
x = QUOTE((safezoneW * 0.5) + safezoneX - (75 * GRID_W));
y = QUOTE(safezoneH + safezoneY - 39 * GRID_H);
w = QUOTE(25 * GRID_W);
h = QUOTE(10 * GRID_H);
text="Save"; // TBL
tooltip="Save selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsSave));
colorBackground[] = {0,0,0,0.8};
};
class buttonRename: buttonSave {
idc = IDC_buttonRename;
x = QUOTE((safezoneW * 0.5) + safezoneX - (45 * GRID_W));
text="Rename"; // TBL
tooltip="Rename loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsRename));
};
class buttonLoad: buttonSave {
idc = IDC_buttonLoad;
x = QUOTE((safezoneW * 0.5) + safezoneX - (15 * GRID_W));
text="Load"; // TBL
tooltip="Load selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsLoad));
};
class buttonShare: buttonSave {
idc = IDC_buttonShare;
x = QUOTE((safezoneW * 0.5) + safezoneX + (15 * GRID_W));
text="Share"; // TBL
tooltip="Share selected loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsShare));
};
class buttonDelete: buttonSave {
idc = IDC_buttonDelete;
x = QUOTE((safezoneW * 0.5) + safezoneX + (45 * GRID_W));
text="Delete"; // TBL
tooltip="Delete loadout"; // TBL
onButtonClick = QUOTE([ARR_2(ctrlparent (_this select 0), _this select 0)] call FUNC(buttonLoadoutsDelete));
};
class buttonBar: ctrlControlsGroupNoScrollbars {
idc = -1;
x = QUOTE((safezoneW * 0.5) + safezoneX - (61 * GRID_W));