mirror of
https://github.com/chibicitiberiu/rainmeter-studio.git
synced 2024-02-24 04:33:31 +00:00
Manage Skins: "Load order" text box now works in a more sensible manner (improved negative numbers handling)
This commit is contained in:
parent
b0a0f892ce
commit
6e27b4834b
@ -993,18 +993,27 @@ INT_PTR CDialogManage::CTabSkins::OnCommand(WPARAM wParam, LPARAM lParam)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_IgnoreUpdate = true;
|
|
||||||
|
|
||||||
// Convert text to number and set it to get rid of extra chars
|
// Convert text to number and set it to get rid of extra chars
|
||||||
int value = GetDlgItemInt(m_Window, IDC_MANAGESKINS_LOADORDER_TEXT, NULL, TRUE);
|
WCHAR buffer[32];
|
||||||
|
int len = GetWindowText((HWND)lParam, buffer, 32);
|
||||||
|
if ((len == 0) || (len == 1 && buffer[0] == L'-'))
|
||||||
|
{
|
||||||
|
// Ignore if empty or if - is only char
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get selection
|
||||||
|
DWORD sel = Edit_GetSel((HWND)lParam);
|
||||||
|
|
||||||
|
// Reset value (to get rid of invalid chars)
|
||||||
|
m_IgnoreUpdate = true;
|
||||||
|
int value = _wtoi(buffer);
|
||||||
SetDlgItemInt(m_Window, IDC_MANAGESKINS_LOADORDER_TEXT, value, TRUE);
|
SetDlgItemInt(m_Window, IDC_MANAGESKINS_LOADORDER_TEXT, value, TRUE);
|
||||||
|
|
||||||
// Move caret to end
|
// Reset selection
|
||||||
Edit_SetSel((HWND)lParam, 32, 32);
|
Edit_SetSel((HWND)lParam, LOWORD(sel), HIWORD(sel));
|
||||||
|
|
||||||
WCHAR buffer[32];
|
|
||||||
_itow(value, buffer, 10);
|
_itow(value, buffer, 10);
|
||||||
|
|
||||||
WritePrivateProfileString(m_SkinName.c_str(), L"LoadOrder", buffer, Rainmeter->GetIniFile().c_str());
|
WritePrivateProfileString(m_SkinName.c_str(), L"LoadOrder", buffer, Rainmeter->GetIniFile().c_str());
|
||||||
std::pair<int, int> indexes = Rainmeter->GetMeterWindowIndex(m_SkinWindow);
|
std::pair<int, int> indexes = Rainmeter->GetMeterWindowIndex(m_SkinWindow);
|
||||||
if (indexes.first != -1)
|
if (indexes.first != -1)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user