mirror of
https://github.com/chibicitiberiu/rainmeter-studio.git
synced 2024-02-24 04:33:31 +00:00
Manage Layouts: Fix missing entries in the displayed list of layouts
This fixes http://rainmeter.net/forum/viewtopic.php?p=101697
This commit is contained in:
parent
6eafb835ad
commit
1cf0212e87
@ -149,10 +149,6 @@ void DialogManage::Open(const WCHAR* tabName, const WCHAR* param1, const WCHAR*
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
** Updates Skins tab.
|
|
||||||
**
|
|
||||||
*/
|
|
||||||
void DialogManage::UpdateSkins(MeterWindow* meterWindow, bool deleted)
|
void DialogManage::UpdateSkins(MeterWindow* meterWindow, bool deleted)
|
||||||
{
|
{
|
||||||
if (c_Dialog && c_Dialog->m_TabSkins.IsInitialized())
|
if (c_Dialog && c_Dialog->m_TabSkins.IsInitialized())
|
||||||
@ -161,6 +157,14 @@ void DialogManage::UpdateSkins(MeterWindow* meterWindow, bool deleted)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DialogManage::UpdateLayouts()
|
||||||
|
{
|
||||||
|
if (c_Dialog && c_Dialog->m_TabLayouts.IsInitialized())
|
||||||
|
{
|
||||||
|
c_Dialog->m_TabLayouts.Update();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Dialog::Tab& DialogManage::GetActiveTab()
|
Dialog::Tab& DialogManage::GetActiveTab()
|
||||||
{
|
{
|
||||||
int sel = TabCtrl_GetCurSel(GetControl(Id_Tab));
|
int sel = TabCtrl_GetCurSel(GetControl(Id_Tab));
|
||||||
@ -1581,6 +1585,7 @@ void DialogManage::TabLayouts::Create(HWND owner)
|
|||||||
void DialogManage::TabLayouts::Initialize()
|
void DialogManage::TabLayouts::Initialize()
|
||||||
{
|
{
|
||||||
HWND item = GetControl(Id_List);
|
HWND item = GetControl(Id_List);
|
||||||
|
ListBox_ResetContent(item);
|
||||||
const std::vector<std::wstring>& layouts = GetRainmeter().GetAllLayouts();
|
const std::vector<std::wstring>& layouts = GetRainmeter().GetAllLayouts();
|
||||||
for (size_t i = 0, isize = layouts.size(); i < isize; ++i)
|
for (size_t i = 0, isize = layouts.size(); i < isize; ++i)
|
||||||
{
|
{
|
||||||
@ -1590,6 +1595,11 @@ void DialogManage::TabLayouts::Initialize()
|
|||||||
m_Initialized = true;
|
m_Initialized = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DialogManage::TabLayouts::Update()
|
||||||
|
{
|
||||||
|
Initialize();
|
||||||
|
}
|
||||||
|
|
||||||
INT_PTR DialogManage::TabLayouts::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
|
INT_PTR DialogManage::TabLayouts::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
switch (uMsg)
|
switch (uMsg)
|
||||||
|
@ -39,6 +39,7 @@ public:
|
|||||||
static void OpenSkin(MeterWindow* meterWindow);
|
static void OpenSkin(MeterWindow* meterWindow);
|
||||||
|
|
||||||
static void UpdateSkins(MeterWindow* meterWindow, bool deleted = false);
|
static void UpdateSkins(MeterWindow* meterWindow, bool deleted = false);
|
||||||
|
static void UpdateLayouts();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual INT_PTR HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
virtual INT_PTR HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||||
@ -132,6 +133,8 @@ private:
|
|||||||
void Create(HWND owner);
|
void Create(HWND owner);
|
||||||
virtual void Initialize();
|
virtual void Initialize();
|
||||||
|
|
||||||
|
void Update();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual INT_PTR HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
virtual INT_PTR HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||||
INT_PTR OnCommand(WPARAM wParam, LPARAM lParam);
|
INT_PTR OnCommand(WPARAM wParam, LPARAM lParam);
|
||||||
|
@ -1215,6 +1215,8 @@ void Rainmeter::ScanForLayouts()
|
|||||||
|
|
||||||
FindClose(hSearch);
|
FindClose(hSearch);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DialogManage::UpdateLayouts();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Rainmeter::ExecuteBang(const WCHAR* bang, std::vector<std::wstring>& args, MeterWindow* meterWindow)
|
void Rainmeter::ExecuteBang(const WCHAR* bang, std::vector<std::wstring>& args, MeterWindow* meterWindow)
|
||||||
|
Loading…
Reference in New Issue
Block a user