From dd61627f93d5f40f530fa71b827716afa3c7c79e Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Sat, 19 May 2012 17:13:01 +0000 Subject: added NewAwaySysMod (not compiled yet) git-svn-id: http://svn.miranda-ng.org/main/trunk@81 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/NewAwaySysMod/CommonLibs/Themes.cpp | 51 +++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 plugins/NewAwaySysMod/CommonLibs/Themes.cpp (limited to 'plugins/NewAwaySysMod/CommonLibs/Themes.cpp') diff --git a/plugins/NewAwaySysMod/CommonLibs/Themes.cpp b/plugins/NewAwaySysMod/CommonLibs/Themes.cpp new file mode 100644 index 0000000000..d8213453b5 --- /dev/null +++ b/plugins/NewAwaySysMod/CommonLibs/Themes.cpp @@ -0,0 +1,51 @@ +/* + Themes.cpp + Copyright (c) 2005-2007 Chervov Dmitry + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ + +#include "Themes.h" +#include + +#define IsWinVerXPPlus() (LOBYTE(LOWORD(GetVersion())) >= 5 && LOWORD(GetVersion()) != 5) + +tOpenThemeData pOpenThemeData = NULL; +tCloseThemeData pCloseThemeData = NULL; +tDrawThemeBackground pDrawThemeBackground = NULL; +tDrawThemeParentBackground pDrawThemeParentBackground = NULL; +tDrawThemeText pDrawThemeText = NULL; +tGetThemeTextExtent pGetThemeTextExtent = NULL; +tEnableThemeDialogTexture pEnableThemeDialogTexture = NULL; +tSetWindowTheme pSetWindowTheme = NULL; + +void InitThemes() +{ + if (IsWinVerXPPlus()) + { + HMODULE hThemeAPI = GetModuleHandle(_T("uxtheme")); + if (hThemeAPI) + { + pOpenThemeData = (tOpenThemeData)GetProcAddress(hThemeAPI, "OpenThemeData"); + pCloseThemeData = (tCloseThemeData)GetProcAddress(hThemeAPI, "CloseThemeData"); + pDrawThemeBackground = (tDrawThemeBackground)GetProcAddress(hThemeAPI, "DrawThemeBackground"); + pDrawThemeParentBackground = (tDrawThemeParentBackground)GetProcAddress(hThemeAPI, "DrawThemeParentBackground"); + pDrawThemeText = (tDrawThemeText)GetProcAddress(hThemeAPI, "DrawThemeText"); + pGetThemeTextExtent = (tGetThemeTextExtent)GetProcAddress(hThemeAPI, "GetThemeTextExtent"); + pEnableThemeDialogTexture = (tEnableThemeDialogTexture)GetProcAddress(hThemeAPI, "EnableThemeDialogTexture"); + pSetWindowTheme = (tSetWindowTheme)GetProcAddress(hThemeAPI, "SetWindowTheme"); + } + } +} -- cgit v1.2.3