Module: wine Branch: master Commit: ca5184f512a4e70a8c966cf54914025824b521f7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ca5184f512a4e70a8c966cf549...
Author: Mark Harmstone hellas@burntcomma.com Date: Sun Feb 15 16:10:10 2015 +0000
comctl32: Add themed scrollbar stub.
---
dlls/comctl32/Makefile.in | 1 + dlls/comctl32/theme_scrollbar.c | 44 +++++++++++++++++++++++++++++++++++++++++ dlls/comctl32/theming.c | 9 +++++++-- 3 files changed, 52 insertions(+), 2 deletions(-)
diff --git a/dlls/comctl32/Makefile.in b/dlls/comctl32/Makefile.in index e63f0ac..27f9741 100644 --- a/dlls/comctl32/Makefile.in +++ b/dlls/comctl32/Makefile.in @@ -35,6 +35,7 @@ C_SRCS = \ theme_dialog.c \ theme_edit.c \ theme_listbox.c \ + theme_scrollbar.c \ theming.c \ toolbar.c \ tooltips.c \ diff --git a/dlls/comctl32/theme_scrollbar.c b/dlls/comctl32/theme_scrollbar.c new file mode 100644 index 0000000..9978598 --- /dev/null +++ b/dlls/comctl32/theme_scrollbar.c @@ -0,0 +1,44 @@ +/* + * Theming - Scrollbar control + * + * Copyright (c) 2015 Mark Harmstone + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + * + */ + +#include <stdarg.h> +#include <string.h> +#include <stdlib.h> + +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" +#include "winuser.h" +#include "uxtheme.h" +#include "vssym32.h" +#include "comctl32.h" +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(theme_scroll); + +LRESULT CALLBACK THEMING_ScrollbarSubclassProc (HWND hwnd, UINT msg, + WPARAM wParam, LPARAM lParam, + ULONG_PTR dwRefData) +{ + TRACE("(%p, 0x%x, %lu, %lu, %lu)\n", hwnd, msg, wParam, lParam, dwRefData); + + return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam); +} diff --git a/dlls/comctl32/theming.c b/dlls/comctl32/theming.c index aa99fc1..93d6fe6 100644 --- a/dlls/comctl32/theming.c +++ b/dlls/comctl32/theming.c @@ -44,6 +44,8 @@ extern LRESULT CALLBACK THEMING_EditSubclassProc (HWND, UINT, WPARAM, LPARAM, ULONG_PTR) DECLSPEC_HIDDEN; extern LRESULT CALLBACK THEMING_ListBoxSubclassProc (HWND, UINT, WPARAM, LPARAM, ULONG_PTR) DECLSPEC_HIDDEN; +extern LRESULT CALLBACK THEMING_ScrollbarSubclassProc (HWND, UINT, WPARAM, LPARAM, + ULONG_PTR) DECLSPEC_HIDDEN;
static const WCHAR dialogClass[] = {'#','3','2','7','7','0',0}; static const WCHAR comboLboxClass[] = {'C','o','m','b','o','L','b','o','x',0}; @@ -59,7 +61,8 @@ static const struct ThemingSubclass {WC_COMBOBOXW, THEMING_ComboSubclassProc}, {comboLboxClass, THEMING_ListBoxSubclassProc}, {WC_EDITW, THEMING_EditSubclassProc}, - {WC_LISTBOXW, THEMING_ListBoxSubclassProc} + {WC_LISTBOXW, THEMING_ListBoxSubclassProc}, + {WC_SCROLLBARW, THEMING_ScrollbarSubclassProc} };
#define NUM_SUBCLASSES (sizeof(subclasses)/sizeof(subclasses[0])) @@ -95,6 +98,7 @@ MAKE_SUBCLASS_PROC(2) MAKE_SUBCLASS_PROC(3) MAKE_SUBCLASS_PROC(4) MAKE_SUBCLASS_PROC(5) +MAKE_SUBCLASS_PROC(6)
static const WNDPROC subclassProcs[NUM_SUBCLASSES] = { subclass_proc0, @@ -102,7 +106,8 @@ static const WNDPROC subclassProcs[NUM_SUBCLASSES] = { subclass_proc2, subclass_proc3, subclass_proc4, - subclass_proc5 + subclass_proc5, + subclass_proc6 };
/***********************************************************************