commit 06500cd123296afc7041ddc233148e9050513254
parent 7a95b64cf63b84a4bf6e11bf1ef5ce77f17809c6
Author: cfillion <cfillion@users.noreply.github.com>
Date: Fri, 23 Dec 2016 23:46:07 -0500
dialog: allow about and browser windows to be resized smaller than the default size
Diffstat:
4 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/about.cpp b/src/about.cpp
@@ -63,6 +63,7 @@ void About::onInit()
m_list->onContextMenu([=] (Menu &m, int i) { return m_delegate->fillContextMenu(m, i); });
m_list->onActivate([=] { m_delegate->itemActivated(); });
+ setMinimumSize({560, 200});
setAnchor(m_tabs->handle(), AnchorRight | AnchorBottom);
setAnchor(m_desc->handle(), AnchorRight | AnchorBottom);
setAnchor(m_menu->handle(), AnchorBottom);
diff --git a/src/browser.cpp b/src/browser.cpp
@@ -131,6 +131,8 @@ void Browser::onInit()
});
Dialog::onInit();
+ setMinimumSize({600, 200});
+
setAnchor(m_filterHandle, AnchorRight);
setAnchor(getControl(IDC_CLEAR), AnchorLeftRight);
setAnchor(getControl(IDC_LABEL2), AnchorLeftRight);
diff --git a/src/dialog.cpp b/src/dialog.cpp
@@ -83,8 +83,8 @@ WDL_DLGRET Dialog::Proc(HWND handle, UINT msg, WPARAM wParam, LPARAM lParam)
break;
case WM_GETMINMAXINFO: {
MINMAXINFO *mmi = (MINMAXINFO *)lParam;
- mmi->ptMinTrackSize.x = dlg->m_initialSize.x;
- mmi->ptMinTrackSize.y = dlg->m_initialSize.y;
+ mmi->ptMinTrackSize.x = dlg->m_minimumSize.x;
+ mmi->ptMinTrackSize.y = dlg->m_minimumSize.y;
break;
}
case WM_SIZE:
@@ -134,7 +134,7 @@ int Dialog::HandleKey(MSG *msg, accelerator_register_t *accel)
}
Dialog::Dialog(const int templateId)
- : m_template(templateId), m_isVisible(false), m_initialSize(),
+ : m_template(templateId), m_isVisible(false), m_minimumSize(),
m_instance(nullptr), m_parent(nullptr), m_handle(nullptr)
{
m_accel.translateAccel = HandleKey;
@@ -392,7 +392,7 @@ void Dialog::onInit()
{
RECT rect;
GetWindowRect(m_handle, &rect);
- m_initialSize = {rect.right - rect.left, rect.bottom - rect.top};
+ m_minimumSize = {rect.right - rect.left, rect.bottom - rect.top};
center();
diff --git a/src/dialog.hpp b/src/dialog.hpp
@@ -106,6 +106,7 @@ public:
HWND getControl(int idc);
std::string getText(HWND);
void setAnchor(HWND, int flags);
+ void setMinimumSize(const POINT &p) { m_minimumSize = p; }
void restore(Serializer::Data &);
void save(Serializer::Data &) const;
@@ -154,7 +155,7 @@ private:
const int m_template;
bool m_isVisible;
- POINT m_initialSize;
+ POINT m_minimumSize;
WDL_WndSizer m_resizer;
Modality m_mode;