tekno_uttv2/ultimateteknotool.v2/windows_quickbuttons.cpp
2020-12-31 15:35:46 +03:00

54 lines
1.5 KiB
C++

#include "pch.h"
#include "windows_quickbuttons.h"
#include "iw5mp_quickbuttons_functions.h"
#include "compiletime_XORstring.h"
namespace windows_quickbuttons
{
CWindow_button forceDisconnect;
wchar_t ws_forceDisconnect[wstringSzFromSizeof(sizeof(L"fdisc"))] = { 0 } ;
};
static CONSTEXPRENCRYPTSTRW(ws_forceDisconnect, L"fdisc", 0x6690);
#define DECRYPT_fdisconnect DECRYPTCONSTENCSTRW(ws_forceDisconnect, sizeof(L"fdisc") / sizeof(wchar_t), 0x6690)
void windows_quickbuttons::Build(CWindowsBuilder& builder, int left, int width, int top, int height, int gap, HWND hwnd)
{
constexpr DWORD FlatButtonStyleInvisble = (WS_CHILD & ~WS_VISIBLE) | BS_PUSHBUTTON | BS_CENTER | BS_FLAT;
builder.ChangeParentHWND(hwnd);
builder.ChangeLeftPos(left);
builder.ChangeTopPos(top);
copy_string_w((wchar_t*)ws_forceDisconnect, wstringSzFromSizeof(sizeof(ws_forceDisconnect)), DECRYPT_fdisconnect, wstringSzFromSizeof(sizeof(L"fdisc")));
builder.ChangeTextP(ws_forceDisconnect);
int rwidth = width - gap * 2;
int rheight = height - gap * 2;
builder.ChangeHeight(rheight);
builder.ChangeWidth(rwidth);
builder.ChangeStyle(FlatButtonStyleInvisble);
forceDisconnect.Visit(&builder);
}
void windows_quickbuttons::ApplyFonts(CWindowsFontApplier& fontappl)
{
forceDisconnect.Visit(&fontappl);
}
void windows_quickbuttons::Show()
{
forceDisconnect.Show();
}
void windows_quickbuttons::Hide()
{
forceDisconnect.Hide();
}
void windows_quickbuttons::Handler_ClickButton(WPARAM wparam)
{
if (LOWORD(wparam) == forceDisconnect.id)
{
iw5mp_changedata::ForceJumpToMenu();
}
}