diff --git a/idd/LGIddHelper/CConfigWindow.cpp b/idd/LGIddHelper/CConfigWindow.cpp index fd8e2fa7..e111f8eb 100644 --- a/idd/LGIddHelper/CConfigWindow.cpp +++ b/idd/LGIddHelper/CConfigWindow.cpp @@ -88,7 +88,7 @@ void CConfigWindow::updateFont() for (HWND child : std::initializer_list({ *m_version, *m_modeGroup, *m_modeBox, *m_widthLabel, *m_heightLabel, *m_refreshLabel, - *m_modeWidth, *m_modeHeight, *m_modeRefresh, *m_modeUpdate, *m_modeDelete, + *m_modeWidth, *m_modeHeight, *m_modeRefresh, *m_modeUpdate, *m_modeDelete, *m_modeReset, *m_autosizeGroup, *m_defRefreshLabel, *m_defRefresh, *m_defRefreshHz, })) SendMessage(child, WM_SETFONT, (WPARAM)m_font.Get(), 1); @@ -154,6 +154,7 @@ LRESULT CConfigWindow::onCreate() m_modeUpdate.reset(new CButton(L"Save", WS_CHILD | WS_VISIBLE | WS_TABSTOP, m_hwnd)); m_modeDelete.reset(new CButton(L"Delete", WS_CHILD | WS_VISIBLE | WS_TABSTOP, m_hwnd)); + m_modeReset.reset(new CButton(L"Reset", WS_CHILD | WS_VISIBLE | WS_TABSTOP, m_hwnd)); EnableWindow(*m_modeUpdate, FALSE); EnableWindow(*m_modeDelete, FALSE); @@ -198,6 +199,7 @@ LRESULT CConfigWindow::onResize(DWORD width, DWORD height) pos.pinBottomLeft(*m_modeRefresh, 75, 48, 50, 20); pos.pinBottomLeft(*m_modeUpdate, 24, 20, 50, 24); pos.pinBottomLeft(*m_modeDelete, 75, 20, 50, 24); + pos.pinBottomLeft(*m_modeReset, 126, 20, 50, 24); pos.pinTopLeft(*m_autosizeGroup, 224, 40, 200, 52); pos.pinTopLeft(*m_defRefreshLabel, 236, 64, 95, 20); @@ -281,6 +283,14 @@ LRESULT CConfigWindow::onCommand(WORD id, WORD code, HWND hwnd) updateModeList(); onModeListSelectChange(); } + else if (m_modeReset && hwnd == *m_modeReset && code == BN_CLICKED && m_modes) + { + *m_modes = m_settings.getDefaultModes(); + m_settings.setModes(*m_modes); + m_modeBox->clear(); + updateModeList(); + onModeListSelectChange(); + } else if (m_defRefresh && hwnd == *m_defRefresh && code == EN_CHANGE && m_defaultRefresh) { int value; diff --git a/idd/LGIddHelper/CConfigWindow.h b/idd/LGIddHelper/CConfigWindow.h index f8fbecf7..8b294e43 100644 --- a/idd/LGIddHelper/CConfigWindow.h +++ b/idd/LGIddHelper/CConfigWindow.h @@ -51,6 +51,7 @@ class CConfigWindow : public CWindow std::unique_ptr m_modeUpdate; std::unique_ptr m_modeDelete; + std::unique_ptr m_modeReset; std::unique_ptr m_autosizeGroup; std::unique_ptr m_defRefreshLabel;