comctl32/monthcal: Some tests for MCM_SIZERECTTOMIN.
authorNikolay Sivov <nsivov@codeweavers.com>
Sat, 2 Apr 2011 10:35:45 +0000 (14:35 +0400)
committerAlexandre Julliard <julliard@winehq.org>
Mon, 4 Apr 2011 09:52:03 +0000 (11:52 +0200)
dlls/comctl32/tests/monthcal.c
include/commctrl.h

index ae6c7b55af35cdb9226a0606f752ad3365410b8b..f585376f205267e6f0bad1810d7453ad3b419f1c 100644 (file)
@@ -1756,6 +1756,49 @@ static void test_get_set_border(void)
     DestroyWindow(hwnd);
 }
 
+static void test_MCM_SIZERECTTOMIN(void)
+{
+    HWND hwnd;
+    DWORD ret;
+    RECT r, r2;
+
+    hwnd = create_monthcal_control(0);
+
+    ret = SendMessageA(hwnd, MCM_GETMINREQRECT, 0, (LPARAM)&r2);
+    if (ret == 0)
+    {
+        win_skip("Message MCM_GETMINREQRECT unsupported. Skipping.\n");
+        DestroyWindow(hwnd);
+        return;
+    }
+
+    ret = SendMessageA(hwnd, MCM_SIZERECTTOMIN, 0, 0);
+    ok(ret == 0, "got %d\n", ret);
+
+    r.left = r.right = r.top = r.bottom = 0;
+    ret = SendMessageA(hwnd, MCM_SIZERECTTOMIN, 0, (LPARAM)&r);
+    if (ret == 0)
+    {
+        skip("Message MCM_SIZERECTTOMIN unsupported. Skipping.\n");
+        DestroyWindow(hwnd);
+        return;
+    }
+    ok(ret == 1, "got %d\n", ret);
+    ok(r.left == 0 && r.right > 0, "got %d, %d\n", r.left, r.right);
+
+    r = r2;
+    ret = SendMessageA(hwnd, MCM_SIZERECTTOMIN, 0, (LPARAM)&r);
+    ok(ret == 1, "got %d\n", ret);
+
+    r2.right = (r2.right - r2.left) * 3;
+    r2.bottom = (r2.bottom - r2.top) * 3;
+    r2.left = r2.top = 0;
+    ret = SendMessageA(hwnd, MCM_SIZERECTTOMIN, 0, (LPARAM)&r2);
+    ok(ret == 1, "got %d\n", ret);
+
+    DestroyWindow(hwnd);
+}
+
 START_TEST(monthcal)
 {
     BOOL (WINAPI *pInitCommonControlsEx)(const INITCOMMONCONTROLSEX*);
@@ -1822,6 +1865,7 @@ START_TEST(monthcal)
 
     test_hittest_v6();
     test_get_set_border();
+    test_MCM_SIZERECTTOMIN();
 
     unload_v6_module(ctx_cookie, hCtx);
 
index 9273d40880113b11ebed3ce0d25564ff6702c96b..92f72740775ace6a4af2e0a0e6569465a6dc3a16 100644 (file)
@@ -4689,6 +4689,7 @@ static const WCHAR MONTHCAL_CLASSW[] = { 'S','y','s',
 #define MCM_GETMONTHDELTA     (MCM_FIRST + 19)
 #define MCM_SETMONTHDELTA     (MCM_FIRST + 20)
 #define MCM_GETMAXTODAYWIDTH  (MCM_FIRST + 21)
+#define MCM_SIZERECTTOMIN     (MCM_FIRST + 29)
 #define MCM_SETCALENDARBORDER (MCM_FIRST + 30)
 #define MCM_GETCALENDARBORDER (MCM_FIRST + 31)
 #define MCM_GETUNICODEFORMAT  CCM_GETUNICODEFORMAT