Added stubs for all functions.
This commit is contained in:
parent
40774be857
commit
40f3056598
|
@ -2,3 +2,4 @@ Makefile
|
|||
uxtheme.dll.dbg.c
|
||||
uxtheme.spec.c
|
||||
uxtheme.spec.def
|
||||
version.res
|
||||
|
|
|
@ -7,7 +7,13 @@ IMPORTS = gdi32 user32 advapi32 kernel32 ntdll
|
|||
EXTRALIBS = $(LIBUNICODE)
|
||||
|
||||
C_SRCS = \
|
||||
main.c
|
||||
draw.c \
|
||||
main.c \
|
||||
metric.c \
|
||||
property.c \
|
||||
system.c
|
||||
|
||||
RC_SRCS = version.rc
|
||||
|
||||
@MAKE_DLL_RULES@
|
||||
|
||||
|
|
|
@ -0,0 +1,216 @@
|
|||
/*
|
||||
* Win32 5.1 Theme drawing
|
||||
*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "wingdi.h"
|
||||
#include "uxtheme.h"
|
||||
|
||||
#include "uxthemedll.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(uxtheme);
|
||||
|
||||
/***********************************************************************
|
||||
* EnableThemeDialogTexture (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI EnableThemeDialogTexture(HWND hwnd, DWORD dwFlags)
|
||||
{
|
||||
FIXME("%p 0x%08lx: stub\n", hwnd, dwFlags);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* IsThemeDialogTextureEnabled (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI IsThemeDialogTextureEnabled(void)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeParentBackground (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeParentBackground(HWND hwnd, HDC hdc, RECT *prc)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeBackground (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeBackground(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, const RECT *pRect,
|
||||
const RECT *pClipRect)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeBackgroundEx (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeBackgroundEx(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, const RECT *pRect,
|
||||
const DTBGOPTS *pOptions)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeEdge (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeEdge(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, const RECT *pDestRect, UINT uEdge,
|
||||
UINT uFlags, RECT *pContentRect)
|
||||
{
|
||||
FIXME("%d %d 0x%08x 0x%08x: stub\n", iPartId, iStateId, uEdge, uFlags);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeIcon (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeIcon(HTHEME hTheme, HDC hdc, int iPartId, int iStateId,
|
||||
const RECT *pRect, HIMAGELIST himl, int iImageIndex)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DrawThemeText (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI DrawThemeText(HTHEME hTheme, HDC hdc, int iPartId, int iStateId,
|
||||
LPCWSTR pszText, int iCharCount, DWORD dwTextFlags,
|
||||
DWORD dwTextFlags2, const RECT *pRect)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeBackgroundContentRect (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeBackgroundContentRect(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId,
|
||||
const RECT *pBoundingRect,
|
||||
RECT *pContentRect)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeBackgroundExtent (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeBackgroundExtent(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, const RECT *pContentRect,
|
||||
RECT *pExtentRect)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeBackgroundRegion (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeBackgroundRegion(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, const RECT *pRect,
|
||||
HRGN *pRegion)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemePartSize (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemePartSize(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, RECT *prc, THEMESIZE eSize,
|
||||
SIZE *psz)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, eSize);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeTextExtent (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeTextExtent(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, LPCWSTR pszText, int iCharCount,
|
||||
DWORD dwTextFlags, const RECT *pBoundingRect,
|
||||
RECT *pExtentRect)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeTextMetrics (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeTextMetrics(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, TEXTMETRICW *ptm)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* IsThemeBackgroundPartiallyTransparent (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI IsThemeBackgroundPartiallyTransparent(HTHEME hTheme, int iPartId,
|
||||
int iStateId)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
return FALSE;
|
||||
}
|
|
@ -24,57 +24,25 @@
|
|||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "wingdi.h"
|
||||
#include "uxtheme.h"
|
||||
#include "uxthemedll.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(uxtheme);
|
||||
|
||||
/***********************************************************************/
|
||||
|
||||
/* For the moment, do nothing here. */
|
||||
BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
|
||||
{
|
||||
TRACE("%p 0x%lx %p: stub\n", hInstDLL, fdwReason, lpv);
|
||||
switch(fdwReason) {
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(hInstDLL);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
UXTHEME_InitSystem();
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI IsAppThemed(void)
|
||||
{
|
||||
FIXME("\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL WINAPI IsThemeActive(void)
|
||||
{
|
||||
FIXME("\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
HRESULT WINAPI EnableThemeDialogTexture(HWND hwnd, DWORD dwFlags) {
|
||||
FIXME("%p 0x%08lx\n", hwnd, dwFlags);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
HRESULT WINAPI EnableTheming(BOOL fEnable) {
|
||||
FIXME("%d\n", fEnable);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
HTHEME WINAPI OpenThemeData(HWND hwnd, LPCWSTR pszClassList) {
|
||||
FIXME("%p %s\n", hwnd, debugstr_w(pszClassList));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
HRESULT WINAPI SetWindowTheme(HWND hwnd, LPCWSTR pszSubAppName,
|
||||
LPCWSTR pszSubIdList) {
|
||||
FIXME("%p %s %s\n", hwnd, debugstr_w(pszSubAppName),
|
||||
debugstr_w(pszSubIdList));
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,105 @@
|
|||
/*
|
||||
* Win32 5.1 Theme metrics
|
||||
*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "wingdi.h"
|
||||
#include "uxtheme.h"
|
||||
|
||||
#include "uxthemedll.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(uxtheme);
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysBool (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI GetThemeSysBool(HTHEME hTheme, int iBoolID)
|
||||
{
|
||||
FIXME("%d: stub\n", iBoolID);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysColor (UXTHEME.@)
|
||||
*/
|
||||
COLORREF WINAPI GetThemeSysColor(HTHEME hTheme, int iColorID)
|
||||
{
|
||||
FIXME("%d: stub\n", iColorID);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysColorBrush (UXTHEME.@)
|
||||
*/
|
||||
HBRUSH WINAPI GetThemeSysColorBrush(HTHEME hTheme, int iColorID)
|
||||
{
|
||||
FIXME("%d: stub\n", iColorID);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysFont (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeSysFont(HTHEME hTheme, int iFontID, LOGFONTW *plf)
|
||||
{
|
||||
FIXME("%d: stub\n", iFontID);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysInt (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeSysInt(HTHEME hTheme, int iIntID, int *piValue)
|
||||
{
|
||||
FIXME("%d: stub\n", iIntID);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysSize (UXTHEME.@)
|
||||
*/
|
||||
int WINAPI GetThemeSysSize(HTHEME hTheme, int iSizeID)
|
||||
{
|
||||
FIXME("%d: stub\n", iSizeID);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeSysString (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeSysString(HTHEME hTheme, int iStringID,
|
||||
LPWSTR pszStringBuff, int cchMaxStringChars)
|
||||
{
|
||||
FIXME("%d: stub\n", iStringID);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
|
@ -0,0 +1,205 @@
|
|||
/*
|
||||
* Win32 5.1 Theme properties
|
||||
*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "wingdi.h"
|
||||
#include "uxtheme.h"
|
||||
|
||||
#include "uxthemedll.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(uxtheme);
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeDocumentationProperty (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeDocumentationProperty(LPCWSTR pszThemeName,
|
||||
LPCWSTR pszPropertyName,
|
||||
LPWSTR pszValueBuff,
|
||||
int cchMaxValChars)
|
||||
{
|
||||
FIXME("%s %s: stub\n", debugstr_w(pszThemeName), debugstr_w(pszPropertyName));
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeBool (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeBool(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, BOOL *pfVal)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeColor (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeColor(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, COLORREF *pColor)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeEnumValue (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeEnumValue(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, int *piVal)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeFilename (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeFilename(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, LPWSTR pszThemeFilename,
|
||||
int cchMaxBuffChars)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeFont (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeFont(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, int iPropId, LOGFONTW *pFont)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeInt (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeInt(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, int *piVal)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeIntList (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeIntList(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, INTLIST *pIntList)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemePosition (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemePosition(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, POINT *pPoint)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeRect (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeRect(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, RECT *pRect)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeString (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeString(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, LPWSTR pszBuff, int cchMaxBuffChars)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeMargins (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeMargins(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, int iPropId, RECT *prc,
|
||||
MARGINS *pMargins)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeMetric (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeMetric(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, int iPropId, int *piVal)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemePropertyOrigin (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetThemePropertyOrigin(HTHEME hTheme, int iPartId, int iStateId,
|
||||
int iPropId, PROPERTYORIGIN *pOrigin)
|
||||
{
|
||||
FIXME("%d %d %d: stub\n", iPartId, iStateId, iPropId);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
|
@ -0,0 +1,418 @@
|
|||
/*
|
||||
* Win32 5.1 Theme system
|
||||
*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "wingdi.h"
|
||||
#include "uxtheme.h"
|
||||
|
||||
#include "uxthemedll.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(uxtheme);
|
||||
|
||||
/***********************************************************************
|
||||
* Defines and global variables
|
||||
*/
|
||||
|
||||
DWORD dwThemeAppProperties = STAP_ALLOW_NONCLIENT | STAP_ALLOW_CONTROLS;
|
||||
ATOM atWindowTheme;
|
||||
ATOM atSubAppName;
|
||||
ATOM atSubIdList;
|
||||
|
||||
/***********************************************************************/
|
||||
|
||||
/***********************************************************************
|
||||
* UXTHEME_InitSystem
|
||||
*/
|
||||
void UXTHEME_InitSystem()
|
||||
{
|
||||
const WCHAR szWindowTheme[] = {
|
||||
'u','x','_','t','h','e','m','e','\0'
|
||||
};
|
||||
const WCHAR szSubAppName[] = {
|
||||
'u','x','_','s','u','b','a','p','p','\0'
|
||||
};
|
||||
const WCHAR szSubIdList[] = {
|
||||
'u','x','_','s','u','b','i','d','l','s','t','\0'
|
||||
};
|
||||
|
||||
atWindowTheme = GlobalAddAtomW(szWindowTheme);
|
||||
atSubAppName = GlobalAddAtomW(szSubAppName);
|
||||
atSubIdList = GlobalAddAtomW(szSubIdList);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* IsAppThemed (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI IsAppThemed(void)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* IsThemeActive (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI IsThemeActive(void)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* EnableTheming (UXTHEME.@)
|
||||
*
|
||||
* NOTES
|
||||
* This is a global and persistant change
|
||||
*/
|
||||
HRESULT WINAPI EnableTheming(BOOL fEnable)
|
||||
{
|
||||
FIXME("%d: stub\n", fEnable);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OpenThemeData (UXTHEME.@)
|
||||
*/
|
||||
HTHEME WINAPI OpenThemeData(HWND hwnd, LPCWSTR pszClassList)
|
||||
{
|
||||
FIXME("%p %s: stub\n", hwnd, debugstr_w(pszClassList));
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetWindowTheme (UXTHEME.@)
|
||||
*
|
||||
* Retrieve the last theme opened for a window
|
||||
*/
|
||||
HTHEME WINAPI GetWindowTheme(HWND hwnd)
|
||||
{
|
||||
TRACE("(%p)\n", hwnd);
|
||||
return GetPropW(hwnd, MAKEINTATOMW(atWindowTheme));
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* UXTHEME_SetWindowProperty
|
||||
*
|
||||
* I'm using atoms as there may be large numbers of duplicated strings
|
||||
* and they do the work of keeping memory down as a cause of that quite nicely
|
||||
*/
|
||||
HRESULT UXTHEME_SetWindowProperty(HWND hwnd, ATOM aProp, LPCWSTR pszValue)
|
||||
{
|
||||
ATOM oldValue = (ATOM)(size_t)RemovePropW(hwnd, MAKEINTATOMW(aProp));
|
||||
if(oldValue)
|
||||
DeleteAtom(oldValue);
|
||||
if(pszValue) {
|
||||
ATOM atValue = AddAtomW(pszValue);
|
||||
if(!atValue
|
||||
|| !SetPropW(hwnd, MAKEINTATOMW(aProp), (LPWSTR)MAKEINTATOMW(atValue))) {
|
||||
HRESULT hr = HRESULT_FROM_WIN32(GetLastError());
|
||||
if(atValue) DeleteAtom(atValue);
|
||||
return hr;
|
||||
}
|
||||
}
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* SetWindowTheme (UXTHEME.@)
|
||||
*
|
||||
* Persistant through the life of the window, even after themes change
|
||||
*/
|
||||
HRESULT WINAPI SetWindowTheme(HWND hwnd, LPCWSTR pszSubAppName,
|
||||
LPCWSTR pszSubIdList)
|
||||
{
|
||||
HRESULT hr;
|
||||
TRACE("(%p,%s,%s)\n", hwnd, debugstr_w(pszSubAppName),
|
||||
debugstr_w(pszSubIdList));
|
||||
hr = UXTHEME_SetWindowProperty(hwnd, atSubAppName, pszSubAppName);
|
||||
if(SUCCEEDED(hr))
|
||||
hr = UXTHEME_SetWindowProperty(hwnd, atSubIdList, pszSubIdList);
|
||||
return hr;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetCurrentThemeName (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI GetCurrentThemeName(LPWSTR pszThemeFileName, int dwMaxNameChars,
|
||||
LPWSTR pszColorBuff, int cchMaxColorChars,
|
||||
LPWSTR pszSizeBuff, int cchMaxSizeChars)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* GetThemeAppProperties (UXTHEME.@)
|
||||
*/
|
||||
DWORD WINAPI GetThemeAppProperties(void)
|
||||
{
|
||||
return dwThemeAppProperties;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* SetThemeAppProperties (UXTHEME.@)
|
||||
*/
|
||||
void WINAPI SetThemeAppProperties(DWORD dwFlags)
|
||||
{
|
||||
TRACE("(0x%08lx)\n", dwFlags);
|
||||
dwThemeAppProperties = dwFlags;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CloseThemeData (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI CloseThemeData(HTHEME hTheme)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* HitTestThemeBackground (UXTHEME.@)
|
||||
*/
|
||||
HRESULT WINAPI HitTestThemeBackground(HTHEME hTheme, HDC hdc, int iPartId,
|
||||
int iStateId, DWORD dwOptions,
|
||||
const RECT *pRect, HRGN hrgn,
|
||||
POINT ptTest, WORD *pwHitTestCode)
|
||||
{
|
||||
FIXME("%d %d 0x%08lx: stub\n", iPartId, iStateId, dwOptions);
|
||||
if(!hTheme)
|
||||
return E_HANDLE;
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* IsThemePartDefined (UXTHEME.@)
|
||||
*/
|
||||
BOOL WINAPI IsThemePartDefined(HTHEME hTheme, int iPartId, int iStateId)
|
||||
{
|
||||
FIXME("%d %d: stub\n", iPartId, iStateId);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* Undocumented functions
|
||||
*/
|
||||
|
||||
/**********************************************************************
|
||||
* QueryThemeServices (UXTHEME.1)
|
||||
*
|
||||
* RETURNS
|
||||
* some kind of status flag
|
||||
*/
|
||||
DWORD WINAPI QueryThemeServices()
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return 3; /* This is what is returned under XP in most cases */
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* OpenThemeFile (UXTHEME.2)
|
||||
*
|
||||
* Opens a theme file, which can be used to change the current theme, etc
|
||||
*
|
||||
* PARAMS
|
||||
* pszThemeFileName Path to a msstyles theme file
|
||||
* pszColorName Color defined in the theme, eg. NormalColor
|
||||
* pszSizeName Size defined in the theme, eg. NormalSize
|
||||
* hThemeFile Handle to theme file
|
||||
*/
|
||||
HRESULT WINAPI OpenThemeFile(LPCWSTR pszThemeFileName, LPCWSTR pszColorName,
|
||||
LPCWSTR pszSizeName, HTHEMEFILE *hThemeFile,
|
||||
DWORD unknown)
|
||||
{
|
||||
FIXME("%s,%s,%s,%ld: stub\n", debugstr_w(pszThemeFileName),
|
||||
debugstr_w(pszColorName),
|
||||
debugstr_w(pszSizeName), unknown);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* CloseThemeFile (UXTHEME.3)
|
||||
*
|
||||
* Releases theme file handle returned by OpenThemeFile
|
||||
*
|
||||
* PARAMS
|
||||
* hThemeFile Handle to theme file
|
||||
*/
|
||||
HRESULT WINAPI CloseThemeFile(HTHEMEFILE hThemeFile)
|
||||
{
|
||||
FIXME("stub\n");
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* ApplyTheme (UXTHEME.4)
|
||||
*
|
||||
* Set a theme file to be the currently active theme
|
||||
*
|
||||
* PARAMS
|
||||
* hThemeFile Handle to theme file
|
||||
* unknown See notes
|
||||
* hWnd Window requesting the theme change
|
||||
*
|
||||
* NOTES
|
||||
* I'm not sure what the second parameter is (the datatype is likely wrong), other then this:
|
||||
* Under XP if I pass
|
||||
* char b[] = "";
|
||||
* the theme is applied with the screen redrawing really badly (flickers)
|
||||
* char b[] = "\0"; where \0 can be one or more of any character, makes no difference
|
||||
* the theme is applied smoothly (screen does not flicker)
|
||||
* char *b = "\0" or NULL; where \0 can be zero or more of any character, makes no difference
|
||||
* the function fails returning invalid parameter...very strange
|
||||
*/
|
||||
HRESULT WINAPI ApplyTheme(HTHEMEFILE hThemeFile, char *unknown, HWND hWnd)
|
||||
{
|
||||
FIXME("%s: stub\n", unknown);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* GetThemeDefaults (UXTHEME.7)
|
||||
*
|
||||
* Get the default color & size for a theme
|
||||
*
|
||||
* PARAMS
|
||||
* pszThemeFileName Path to a msstyles theme file
|
||||
* pszColorName Buffer to recieve the default color name
|
||||
* dwColorNameLen Length, in characters, of color name buffer
|
||||
* pszSizeName Buffer to recieve the default size name
|
||||
* dwSizeNameLen Length, in characters, of size name buffer
|
||||
*/
|
||||
HRESULT WINAPI GetThemeDefaults(LPCWSTR pszThemeFileName, LPWSTR pszColorName,
|
||||
DWORD dwColorNameLen, LPWSTR pszSizeName,
|
||||
DWORD dwSizeNameLen)
|
||||
{
|
||||
FIXME("%s: stub\n", debugstr_w(pszThemeFileName));
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* EnumThemes (UXTHEME.8)
|
||||
*
|
||||
* Enumerate available themes, calls specified EnumThemeProc for each
|
||||
* theme found. Passes lpData through to callback function.
|
||||
*
|
||||
* PARAMS
|
||||
* pszThemePath Path containing themes
|
||||
* callback Called for each theme found in path
|
||||
* lpData Passed through to callback
|
||||
*/
|
||||
HRESULT WINAPI EnumThemes(LPCWSTR pszThemePath, EnumThemeProc callback,
|
||||
LPVOID lpData)
|
||||
{
|
||||
FIXME("%s: stub\n", debugstr_w(pszThemePath));
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* EnumThemeColors (UXTHEME.9)
|
||||
*
|
||||
* Enumerate theme colors available with a particular size
|
||||
*
|
||||
* PARAMS
|
||||
* pszThemeFileName Path to a msstyles theme file
|
||||
* pszSizeName Theme size to enumerate available colors
|
||||
* If NULL the default theme size is used
|
||||
* dwColorNum Color index to retrieve, increment from 0
|
||||
* pszColorName Output color name
|
||||
*
|
||||
* RETURNS
|
||||
* S_OK on success
|
||||
* E_PROP_ID_UNSUPPORTED when dwColorName does not refer to a color
|
||||
* or when pszSizeName does not refer to a valid size
|
||||
*
|
||||
* NOTES
|
||||
* XP fails with E_POINTER when pszColorName points to a buffer smaller then 605
|
||||
* characters
|
||||
*/
|
||||
HRESULT WINAPI EnumThemeColors(LPWSTR pszThemeFileName, LPWSTR pszSizeName,
|
||||
DWORD dwColorNum, LPWSTR pszColorName)
|
||||
{
|
||||
FIXME("%s %s %ld: stub\n", debugstr_w(pszThemeFileName),
|
||||
debugstr_w(pszSizeName), dwColorNum);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* EnumThemeSizes (UXTHEME.10)
|
||||
*
|
||||
* Enumerate theme colors available with a particular size
|
||||
*
|
||||
* PARAMS
|
||||
* pszThemeFileName Path to a msstyles theme file
|
||||
* pszColorName Theme color to enumerate available sizes
|
||||
* If NULL the default theme color is used
|
||||
* dwSizeNum Size index to retrieve, increment from 0
|
||||
* pszSizeName Output size name
|
||||
*
|
||||
* RETURNS
|
||||
* S_OK on success
|
||||
* E_PROP_ID_UNSUPPORTED when dwSizeName does not refer to a size
|
||||
* or when pszColorName does not refer to a valid color
|
||||
*
|
||||
* NOTES
|
||||
* XP fails with E_POINTER when pszSizeName points to a buffer smaller then 605
|
||||
* characters
|
||||
*/
|
||||
HRESULT WINAPI EnumThemeSizes(LPWSTR pszThemeFileName, LPWSTR pszColorName,
|
||||
DWORD dwSizeNum, LPWSTR pszSizeName)
|
||||
{
|
||||
FIXME("%s %s %ld: stub\n", debugstr_w(pszThemeFileName), debugstr_w(pszColorName), dwSizeNum);
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
* ParseThemeIniFile (UXTHEME.11)
|
||||
*
|
||||
* Enumerate data in a theme INI file.
|
||||
*
|
||||
* PARAMS
|
||||
* pszIniFileName Path to a theme ini file
|
||||
* pszUnknown Cannot be NULL, L"" is valid
|
||||
* callback Called for each found entry
|
||||
* lpData Passed through to callback
|
||||
*
|
||||
* RETURNS
|
||||
* S_OK on success
|
||||
* 0x800706488 (Unknown property) when enumeration is canceled from callback
|
||||
*
|
||||
* NOTES
|
||||
* When pszUnknown is NULL the callback is never called, the value does not seem to surve
|
||||
* any other purpose
|
||||
*/
|
||||
HRESULT WINAPI ParseThemeIniFile(LPCWSTR pszIniFileName, LPWSTR pszUnknown,
|
||||
ParseThemeIniFileProc callback, LPVOID lpData)
|
||||
{
|
||||
FIXME("%s %s: stub\n", debugstr_w(pszIniFileName), debugstr_w(pszUnknown));
|
||||
return ERROR_CALL_NOT_IMPLEMENTED;
|
||||
}
|
|
@ -1,48 +1,93 @@
|
|||
@ stub CloseThemeData
|
||||
@ stub DrawThemeBackground
|
||||
@ stub DrawThemeBackgroundEx
|
||||
@ stub DrawThemeEdge
|
||||
@ stub DrawThemeIcon
|
||||
@ stub DrawThemeParentBackground
|
||||
@ stub DrawThemeText
|
||||
# Undocumented functions - Names derived from debug symbols
|
||||
1 stdcall QueryThemeServices()
|
||||
2 stdcall OpenThemeFile(wstr wstr wstr ptr long)
|
||||
3 stdcall CloseThemeFile(ptr)
|
||||
4 stdcall ApplyTheme(ptr ptr ptr)
|
||||
7 stdcall GetThemeDefaults(wstr wstr long wstr long)
|
||||
8 stdcall EnumThemes(wstr ptr ptr)
|
||||
9 stdcall EnumThemeColors(wstr wstr long wstr)
|
||||
10 stdcall EnumThemeSizes(wstr wstr long wstr)
|
||||
11 stdcall ParseThemeIniFile(wstr wstr ptr ptr)
|
||||
13 stub DrawNCPreview
|
||||
14 stub RegisterDefaultTheme
|
||||
15 stub DumpLoadedThemeToTextFile
|
||||
16 stub OpenThemeDataFromFile
|
||||
17 stub OpenThemeFileFromData
|
||||
18 stub GetThemeSysSize96
|
||||
19 stub GetThemeSysFont96
|
||||
20 stub SessionAllocate
|
||||
21 stub SessionFree
|
||||
22 stub ThemeHooksOn
|
||||
23 stub ThemeHooksOff
|
||||
24 stub AreThemeHooksActive
|
||||
25 stub GetCurrentChangeNumber
|
||||
26 stub GetNewChangeNumber
|
||||
27 stub SetGlobalTheme
|
||||
28 stub GetGlobalTheme
|
||||
29 stub CheckThemeSignature
|
||||
30 stub LoadTheme
|
||||
31 stub InitUserTheme
|
||||
32 stub InitUserRegistry
|
||||
33 stub ReestablishServerConnection
|
||||
34 stub ThemeHooksInstall
|
||||
35 stub ThemeHooksRemove
|
||||
36 stub RefreshThemeForTS
|
||||
43 stub ClassicGetSystemMetrics
|
||||
44 stub ClassicSystemParametersInfoA
|
||||
45 stub ClassicSystemParametersInfoW
|
||||
46 stub ClassicAdjustWindowRectEx
|
||||
48 stub GetThemeParseErrorInfo
|
||||
60 stub CreateThemeDataFromObjects
|
||||
61 stub OpenThemeDataEx
|
||||
62 stub ServerClearStockObjects
|
||||
63 stub MarkSelection
|
||||
|
||||
# Standard functions
|
||||
@ stdcall CloseThemeData(ptr)
|
||||
@ stdcall DrawThemeBackground(ptr ptr long long ptr ptr)
|
||||
@ stdcall DrawThemeBackgroundEx(ptr ptr long long ptr ptr)
|
||||
@ stdcall DrawThemeEdge(ptr ptr long long ptr long long ptr)
|
||||
@ stdcall DrawThemeIcon(ptr ptr long long ptr ptr long)
|
||||
@ stdcall DrawThemeParentBackground(ptr ptr ptr)
|
||||
@ stdcall DrawThemeText(ptr ptr long long wstr long long long ptr)
|
||||
@ stdcall EnableThemeDialogTexture(ptr long)
|
||||
@ stdcall EnableTheming(long)
|
||||
@ stub GetCurrentThemeName
|
||||
@ stub GetThemeAppProperties
|
||||
@ stub GetThemeBackgroundContentRect
|
||||
@ stub GetThemeBackgroundExtent
|
||||
@ stub GetThemeBackgroundRegion
|
||||
@ stub GetThemeBool
|
||||
@ stub GetThemeColor
|
||||
@ stub GetThemeDocumentationProperty
|
||||
@ stub GetThemeEnumValue
|
||||
@ stub GetThemeFilename
|
||||
@ stub GetThemeFont
|
||||
@ stub GetThemeInt
|
||||
@ stub GetThemeIntList
|
||||
@ stub GetThemeMargins
|
||||
@ stub GetThemeMetric
|
||||
@ stub GetThemePartSize
|
||||
@ stub GetThemePosition
|
||||
@ stub GetThemePropertyOrigin
|
||||
@ stub GetThemeRect
|
||||
@ stub GetThemeString
|
||||
@ stub GetThemeSysBool
|
||||
@ stub GetThemeSysColor
|
||||
@ stub GetThemeSysColorBrush
|
||||
@ stub GetThemeSysFont
|
||||
@ stub GetThemeSysInt
|
||||
@ stub GetThemeSysSize
|
||||
@ stub GetThemeSysString
|
||||
@ stub GetThemeTextExtent
|
||||
@ stub GetThemeTextMetrics
|
||||
@ stub GetWindowTheme
|
||||
@ stub HitTestThemeBackground
|
||||
@ stdcall GetCurrentThemeName(wstr long wstr long wstr long)
|
||||
@ stdcall GetThemeAppProperties()
|
||||
@ stdcall GetThemeBackgroundContentRect(ptr ptr long long ptr ptr)
|
||||
@ stdcall GetThemeBackgroundExtent(ptr ptr long long ptr ptr)
|
||||
@ stdcall GetThemeBackgroundRegion(ptr ptr long long ptr ptr)
|
||||
@ stdcall GetThemeBool(ptr long long long ptr)
|
||||
@ stdcall GetThemeColor(ptr long long long ptr)
|
||||
@ stdcall GetThemeDocumentationProperty(wstr wstr wstr long)
|
||||
@ stdcall GetThemeEnumValue(ptr long long long ptr)
|
||||
@ stdcall GetThemeFilename(ptr long long long wstr long)
|
||||
@ stdcall GetThemeFont(ptr ptr long long long ptr)
|
||||
@ stdcall GetThemeInt(ptr long long long ptr)
|
||||
@ stdcall GetThemeIntList(ptr long long long ptr)
|
||||
@ stdcall GetThemeMargins(ptr ptr long long long ptr ptr)
|
||||
@ stdcall GetThemeMetric(ptr ptr long long long ptr)
|
||||
@ stdcall GetThemePartSize(ptr ptr long long ptr long ptr)
|
||||
@ stdcall GetThemePosition(ptr long long long ptr)
|
||||
@ stdcall GetThemePropertyOrigin(ptr long long long ptr)
|
||||
@ stdcall GetThemeRect(ptr long long long ptr)
|
||||
@ stdcall GetThemeString(ptr long long long wstr long)
|
||||
@ stdcall GetThemeSysBool(ptr long)
|
||||
@ stdcall GetThemeSysColor(ptr long)
|
||||
@ stdcall GetThemeSysColorBrush(ptr long)
|
||||
@ stdcall GetThemeSysFont(ptr long ptr)
|
||||
@ stdcall GetThemeSysInt(ptr long ptr)
|
||||
@ stdcall GetThemeSysSize(ptr long)
|
||||
@ stdcall GetThemeSysString(ptr long wstr long)
|
||||
@ stdcall GetThemeTextExtent(ptr ptr long long wstr long long ptr ptr)
|
||||
@ stdcall GetThemeTextMetrics(ptr ptr long long ptr)
|
||||
@ stdcall GetWindowTheme(ptr)
|
||||
@ stdcall HitTestThemeBackground(ptr ptr long long long ptr ptr long ptr)
|
||||
@ stdcall IsAppThemed()
|
||||
@ stdcall IsThemeActive()
|
||||
@ stub IsThemeBackgroundPartiallyTransparent
|
||||
@ stub IsThemeDialogTextureEnabled
|
||||
@ stub IsThemePartDefined
|
||||
@ stdcall IsThemeBackgroundPartiallyTransparent(ptr long long)
|
||||
@ stdcall IsThemeDialogTextureEnabled()
|
||||
@ stdcall IsThemePartDefined(ptr long long)
|
||||
@ stdcall OpenThemeData(ptr wstr)
|
||||
@ stub SetThemeAppProperties
|
||||
@ stdcall SetThemeAppProperties(long)
|
||||
@ stdcall SetWindowTheme(ptr wstr wstr)
|
||||
|
|
|
@ -0,0 +1,90 @@
|
|||
/*
|
||||
* Internal uxtheme defines & declarations
|
||||
*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __WINE_UXTHEMEDLL_H
|
||||
#define __WINE_UXTHEMEDLL_H
|
||||
|
||||
typedef HANDLE HTHEMEFILE;
|
||||
|
||||
/**********************************************************************
|
||||
* EnumThemeProc
|
||||
*
|
||||
* Callback function for EnumThemes.
|
||||
*
|
||||
* RETURNS
|
||||
* TRUE to continue enumeration, FALSE to stop
|
||||
*
|
||||
* PARAMS
|
||||
* lpReserved Always 0
|
||||
* pszThemeFileName Full path to theme msstyles file
|
||||
* pszThemeName Display name for theme
|
||||
* pszToolTip Tooltip name for theme
|
||||
* lpReserved2 Always 0
|
||||
* lpData Value passed through lpData from EnumThemes
|
||||
*/
|
||||
typedef BOOL (CALLBACK *EnumThemeProc)(LPVOID lpReserved, LPCWSTR pszThemeFileName,
|
||||
LPCWSTR pszThemeName, LPCWSTR pszToolTip, LPVOID lpReserved2,
|
||||
LPVOID lpData);
|
||||
|
||||
/**********************************************************************
|
||||
* ParseThemeIniFileProc
|
||||
*
|
||||
* Callback function for ParseThemeIniFile.
|
||||
*
|
||||
* RETURNS
|
||||
* TRUE to continue enumeration, FALSE to stop
|
||||
*
|
||||
* PARAMS
|
||||
* dwType Entry type
|
||||
* pszParam1 Use defined by entry type
|
||||
* pszParam2 Use defined by entry type
|
||||
* pszParam3 Use defined by entry type
|
||||
* dwParam Use defined by entry type
|
||||
* lpData Value passed through lpData from ParseThemeIniFile
|
||||
*
|
||||
* NOTES
|
||||
* I dont know what the valid entry types are
|
||||
*/
|
||||
typedef BOOL (CALLBACK*ParseThemeIniFileProc)(DWORD dwType, LPWSTR pszParam1,
|
||||
LPWSTR pszParam2, LPWSTR pszParam3,
|
||||
DWORD dwParam, LPVOID lpData);
|
||||
|
||||
/* Declarations for undocumented functions for use internally */
|
||||
DWORD WINAPI QueryThemeServices();
|
||||
HRESULT WINAPI OpenThemeFile(LPCWSTR pszThemeFileName, LPCWSTR pszColorName,
|
||||
LPCWSTR pszSizeName, HTHEMEFILE *hThemeFile,
|
||||
DWORD unknown);
|
||||
HRESULT WINAPI CloseThemeFile(HTHEMEFILE hThemeFile);
|
||||
HRESULT WINAPI ApplyTheme(HTHEMEFILE hThemeFile, char *unknown, HWND hWnd);
|
||||
HRESULT WINAPI GetThemeDefaults(LPCWSTR pszThemeFileName, LPWSTR pszColorName,
|
||||
DWORD dwColorNameLen, LPWSTR pszSizeName,
|
||||
DWORD dwSizeNameLen);
|
||||
HRESULT WINAPI EnumThemes(LPCWSTR pszThemePath, EnumThemeProc callback,
|
||||
LPVOID lpData);
|
||||
HRESULT WINAPI EnumThemeColors(LPWSTR pszThemeFileName, LPWSTR pszSizeName,
|
||||
DWORD dwColorNum, LPWSTR pszColorName);
|
||||
HRESULT WINAPI EnumThemeSizes(LPWSTR pszThemeFileName, LPWSTR pszColorName,
|
||||
DWORD dwSizeNum, LPWSTR pszSizeName);
|
||||
HRESULT WINAPI ParseThemeIniFile(LPCWSTR pszIniFileName, LPWSTR pszUnknown,
|
||||
ParseThemeIniFileProc callback, LPVOID lpData);
|
||||
|
||||
extern void UXTHEME_InitSystem(void);
|
||||
|
||||
#endif
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* Copyright (C) 2003 Kevin Koltzau
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#define WINE_FILENAME_STR "uxtheme.dll"
|
||||
|
||||
#include <wine/wine_common_ver.rc>
|
Loading…
Reference in New Issue