From 7a20312b1ea4998111a05f207be8023a499050fb Mon Sep 17 00:00:00 2001
From: George Hazan <ghazan@miranda.im>
Date: Mon, 13 May 2019 14:54:10 +0300
Subject: CDlgBase::SetMinSize - a way to get rid of WM_GETMINMAXINFO in
 DlgProc

---
 src/mir_core/src/CDlgBase.cpp   | 9 +++++++++
 src/mir_core/src/mir_core.def   | 1 +
 src/mir_core/src/mir_core64.def | 1 +
 3 files changed, 11 insertions(+)

(limited to 'src/mir_core')

diff --git a/src/mir_core/src/CDlgBase.cpp b/src/mir_core/src/CDlgBase.cpp
index 0ab32341ef..2c91c6a742 100644
--- a/src/mir_core/src/CDlgBase.cpp
+++ b/src/mir_core/src/CDlgBase.cpp
@@ -224,6 +224,15 @@ INT_PTR CDlgBase::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam)
 		}
 		break;
 
+	case WM_GETMINMAXINFO:
+		if (m_iMinHeight != -1 && m_iMinWidth != -1) {
+			MINMAXINFO *lpmmi = (MINMAXINFO*)lParam;
+			lpmmi->ptMinTrackSize.y = m_iMinHeight;
+			lpmmi->ptMinTrackSize.x = m_iMinWidth;
+			return 0;
+		}
+		break;
+
 	case WM_MEASUREITEM:
 		{
 			MEASUREITEMSTRUCT *param = (MEASUREITEMSTRUCT *)lParam;
diff --git a/src/mir_core/src/mir_core.def b/src/mir_core/src/mir_core.def
index 687ddc287a..5adff0f533 100644
--- a/src/mir_core/src/mir_core.def
+++ b/src/mir_core/src/mir_core.def
@@ -1433,3 +1433,4 @@ XmlGetChildText @1645
 ?GetTime@CCtrlDate@@QAEXPAU_SYSTEMTIME@@@Z @1649 NONAME
 ?OnNotify@CCtrlDate@@EAEHHPAUtagNMHDR@@@Z @1650 NONAME
 ?SetTime@CCtrlDate@@QAEXPAU_SYSTEMTIME@@@Z @1651 NONAME
+?SetMinSize@CDlgBase@@QAEXHH@Z @1652 NONAME
diff --git a/src/mir_core/src/mir_core64.def b/src/mir_core/src/mir_core64.def
index faa7e58b4d..4ff6e8e65f 100644
--- a/src/mir_core/src/mir_core64.def
+++ b/src/mir_core/src/mir_core64.def
@@ -1433,3 +1433,4 @@ XmlGetChildText @1645
 ?GetTime@CCtrlDate@@QEAAXPEAU_SYSTEMTIME@@@Z @1649 NONAME
 ?OnNotify@CCtrlDate@@EEAAHHPEAUtagNMHDR@@@Z @1650 NONAME
 ?SetTime@CCtrlDate@@QEAAXPEAU_SYSTEMTIME@@@Z @1651 NONAME
+?SetMinSize@CDlgBase@@QEAAXHH@Z @1652 NONAME
-- 
cgit v1.2.3