~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Wine Cross Reference
wine/dlls/user32/tests/scroll.c

Version: ~ [ wine-1.5.30 ] ~ [ wine-1.5.29 ] ~ [ wine-1.5.28 ] ~ [ wine-1.5.27 ] ~ [ wine-1.5.26 ] ~ [ wine-1.5.25 ] ~ [ wine-1.5.24 ] ~ [ wine-1.5.23 ] ~ [ wine-1.5.22 ] ~ [ wine-1.5.21 ] ~ [ wine-1.5.20 ] ~ [ wine-1.5.19 ] ~ [ wine-1.5.18 ] ~ [ wine-1.5.17 ] ~ [ wine-1.5.16 ] ~ [ wine-1.5.15 ] ~ [ wine-1.5.14 ] ~ [ wine-1.5.13 ] ~ [ wine-1.5.12 ] ~ [ wine-1.5.11 ] ~ [ wine-1.5.10 ] ~ [ wine-1.5.9 ] ~ [ wine-1.5.8 ] ~ [ wine-1.5.7 ] ~ [ wine-1.4.1 ] ~ [ wine-1.5.6 ] ~ [ wine-1.5.5 ] ~ [ wine-1.5.4 ] ~ [ wine-1.5.3 ] ~ [ wine-1.5.2 ] ~ [ wine-1.5.1 ] ~ [ wine-1.5.0 ] ~ [ wine-1.4 ] ~ [ wine-1.4-rc6 ] ~ [ wine-1.4-rc5 ] ~ [ wine-1.4-rc4 ] ~ [ wine-1.4-rc3 ] ~ [ wine-1.4-rc2 ] ~ [ wine-1.4-rc1 ] ~ [ wine-1.3.37 ] ~ [ wine-1.3.36 ] ~ [ wine-1.3.35 ] ~ [ wine-1.3.34 ] ~ [ wine-1.3.33 ] ~ [ wine-1.3.32 ] ~ [ wine-1.3.31 ] ~ [ wine-1.3.30 ] ~ [ wine-1.3.29 ] ~ [ wine-1.3.28 ] ~ [ wine-1.3.27 ] ~ [ wine-1.3.26 ] ~ [ wine-1.3.25 ] ~ [ wine-1.3.24 ] ~ [ wine-1.3.23 ] ~ [ wine-1.3.22 ] ~ [ wine-1.3.21 ] ~ [ wine-1.3.20 ] ~ [ wine-1.3.19 ] ~ [ wine-1.3.18 ] ~ [ wine-1.2.3 ] ~ [ wine-1.3.17 ] ~ [ wine-1.3.16 ] ~ [ wine-1.3.15 ] ~ [ wine-1.3.14 ] ~ [ wine-1.3.13 ] ~ [ wine-1.3.12 ] ~ [ wine-1.3.11 ] ~ [ wine-1.3.10 ] ~ [ wine-1.3.9 ] ~ [ wine-1.2.2 ] ~ [ wine-1.3.8 ] ~ [ wine-1.3.7 ] ~ [ wine-1.3.6 ] ~ [ wine-1.3.5 ] ~ [ wine-1.2.1 ] ~ [ wine-1.3.4 ] ~ [ wine-1.3.3 ] ~ [ wine-1.3.2 ] ~ [ wine-1.3.1 ] ~ [ wine-1.3.0 ] ~ [ wine-1.2 ] ~ [ wine-1.2-rc7 ] ~ [ wine-1.2-rc6 ] ~ [ wine-1.2-rc5 ] ~ [ wine-1.2-rc4 ] ~ [ wine-1.2-rc3 ] ~ [ wine-1.2-rc2 ] ~ [ wine-1.2-rc1 ] ~ [ wine-1.1.44 ] ~ [ wine-1.1.43 ] ~ [ wine-1.1.42 ] ~ [ wine-1.1.41 ] ~ [ wine-1.1.40 ] ~ [ wine-1.1.39 ] ~ [ wine-1.1.38 ] ~ [ wine-1.1.37 ] ~ [ wine-1.1.36 ] ~ [ wine-1.1.35 ] ~ [ wine-1.1.34 ] ~ [ wine-1.1.33 ] ~ [ wine-1.1.32 ] ~ [ wine-1.1.31 ] ~ [ wine-1.1.30 ] ~ [ wine-1.1.29 ] ~ [ wine-1.1.28 ] ~ [ wine-1.1.27 ] ~ [ wine-1.1.26 ] ~ [ wine-1.1.25 ] ~ [ wine-1.1.24 ] ~ [ wine-1.1.23 ] ~ [ wine-1.1.22 ] ~ [ wine-1.1.21 ] ~ [ wine-1.1.20 ] ~ [ wine-1.1.19 ] ~ [ wine-1.1.18 ] ~ [ wine-1.1.17 ] ~ [ wine-1.1.16 ] ~ [ wine-1.1.15 ] ~ [ wine-1.1.14 ] ~ [ wine-1.1.13 ] ~ [ wine-1.1.12 ] ~ [ wine-1.1.11 ] ~ [ wine-1.1.10 ] ~ [ wine-1.1.9 ] ~ [ wine-1.1.8 ] ~ [ wine-1.1.7 ] ~ [ wine-1.0.1 ] ~ [ wine-1.1.6 ] ~ [ wine-1.1.5 ] ~ [ wine-1.1.4 ] ~ [ wine-1.1.3 ] ~ [ wine-1.1.2 ] ~ [ wine-1.1.1 ] ~ [ wine-1.1.0 ] ~ [ wine-1.0 ] ~

  1 /*
  2  * Unit tests for scrollbar
  3  *
  4  * Copyright 2008 Lyutin Anatoly (Etersoft)
  5  *
  6  * This library is free software; you can redistribute it and/or
  7  * modify it under the terms of the GNU Lesser General Public
  8  * License as published by the Free Software Foundation; either
  9  * version 2.1 of the License, or (at your option) any later version.
 10  *
 11  * This library is distributed in the hope that it will be useful,
 12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 14  * Lesser General Public License for more details.
 15  *
 16  * You should have received a copy of the GNU Lesser General Public
 17  * License along with this library; if not, write to the Free Software
 18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 19  */
 20 
 21 #include <assert.h>
 22 #include <stdarg.h>
 23 #include <stdio.h>
 24 #include <windows.h>
 25 
 26 #include "wine/test.h"
 27 
 28 static HWND hScroll, hMainWnd;
 29 
 30 static LRESULT CALLBACK MyWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam )
 31 {
 32     switch(msg)
 33     {
 34 
 35     case WM_CREATE:
 36     {
 37         hScroll = CreateWindowA( "SCROLLBAR", "", WS_CHILD | WS_VISIBLE, 0, 0, 120, 100, hWnd, (HMENU)100, GetModuleHandleA(0), 0 );
 38 
 39         return 0;
 40     }
 41     case WM_DESTROY:
 42         PostQuitMessage(0);
 43         break;
 44 
 45     default:
 46         return DefWindowProcA(hWnd, msg, wParam, lParam);
 47     }
 48     return 0;
 49 }
 50 
 51 static void scrollbar_test1(void)
 52 {
 53     BOOL ret;
 54 
 55     ret = EnableScrollBar( hScroll, SB_CTL, ESB_DISABLE_BOTH );
 56     ok( ret, "The scrollbar should be disabled.\n" );
 57     todo_wine
 58     {
 59         ok( !IsWindowEnabled( hScroll ), "The scrollbar window should be disabled.\n" );
 60     }
 61 
 62     ret = EnableScrollBar( hScroll, SB_CTL, ESB_ENABLE_BOTH );
 63     ok( ret, "The scrollbar should be enabled.\n" );
 64     ok( IsWindowEnabled( hScroll ), "The scrollbar window should be enabled.\n" );
 65 
 66 }
 67 
 68 static void scrollbar_test2(void)
 69 {
 70     int ret;
 71 
 72     trace("The scrollbar is disabled.\n");
 73 
 74     EnableWindow( hScroll, FALSE );
 75     ok( !IsWindowEnabled( hScroll ), "The scroll should be disabled.\n" );
 76 
 77     ret = SetScrollPos( hScroll, SB_CTL, 30, TRUE);
 78     ok( !ret, "The position should not be set.\n" );
 79 
 80     ret = GetScrollPos( hScroll, SB_CTL);
 81     ok( !ret, "The position should be equal to zero\n");
 82 
 83     ret = SetScrollRange( hScroll, SB_CTL, 0, 100, TRUE );
 84     ok( ret, "The range should be set.\n" );
 85 
 86     ret = SetScrollPos( hScroll, SB_CTL, 30, TRUE);
 87     ok( !ret , "The position should not be set.\n" );
 88 
 89     ret = GetScrollPos( hScroll, SB_CTL);
 90     ok( ret == 30, "The position should be set!!!\n");
 91 
 92     trace("The scrollbar is enabled.\n");
 93 
 94     EnableWindow( hScroll, TRUE );
 95     ok( IsWindowEnabled( hScroll ), "The scroll should be enabled.\n" );
 96 
 97     ret = SetScrollPos( hScroll, SB_CTL, 30, TRUE);
 98     ok( ret == 30, "The position should be set.\n" );
 99 
100     ret = GetScrollPos( hScroll, SB_CTL);
101     ok( ret == 30, "The position should not be equal to zero\n");
102 
103     ret = SetScrollRange( hScroll, SB_CTL, 0, 100, TRUE );
104     ok( ret, "The range should be set.\n" );
105 
106     ret = SetScrollPos( hScroll, SB_CTL, 30, TRUE);
107     ok( ret == 30, "The position should be set.\n" );
108 
109     ret = GetScrollPos( hScroll, SB_CTL);
110     ok( ret == 30, "The position should not be equal to zero\n");
111 }
112 
113 static void scrollbar_test3(void)
114 {
115     BOOL    ret;
116 
117     ret = ShowScrollBar( hScroll, SB_CTL, FALSE );
118     ok( ret, "The ShowScrollBar() should not failed.\n" );
119     ok( !IsWindowVisible( hScroll ), "The scrollbar window should not be visible\n" );
120 
121     ret = ShowScrollBar( hScroll, SB_CTL, TRUE );
122     ok( ret, "The ShowScrollBar() should not failed.\n" );
123     ok( !IsWindowVisible( hScroll ), "The scrollbar window should be visible\n" );
124 
125     ret = ShowScrollBar( NULL, SB_CTL, TRUE );
126     ok( !ret, "The ShowScrollBar() should failed.\n" );
127 
128 }
129 
130 START_TEST ( scroll )
131 {
132     WNDCLASSA wc;
133 
134     wc.style = CS_HREDRAW | CS_VREDRAW;
135     wc.cbClsExtra = 0;
136     wc.cbWndExtra = 0;
137     wc.hInstance = GetModuleHandleA(NULL);
138     wc.hIcon = NULL;
139     wc.hCursor = LoadCursorA(NULL, IDC_IBEAM);
140     wc.hbrBackground = GetSysColorBrush(COLOR_WINDOW);
141     wc.lpszMenuName = NULL;
142     wc.lpszClassName = "MyTestWnd";
143     wc.lpfnWndProc = MyWndProc;
144     RegisterClassA(&wc);
145 
146     hMainWnd = CreateWindowExA( 0, "MyTestWnd", "Scroll", WS_OVERLAPPEDWINDOW,
147       CW_USEDEFAULT, CW_USEDEFAULT, 100, 100, NULL, NULL, GetModuleHandleA(NULL), 0 );
148 
149     if ( !ok( hMainWnd != NULL, "Failed to create parent window. Tests aborted.\n" ) )
150         return;
151 
152     assert( hScroll );
153 
154     scrollbar_test1();
155     scrollbar_test2();
156     scrollbar_test3();
157 
158     DestroyWindow(hScroll);
159     DestroyWindow(hMainWnd);
160 }
161 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.