Commit Graph

223 Commits

Author SHA1 Message Date
Frank Richter 44b4c7459b Pass around what kind of transparency an image actually needs. Use
alpha-blending for 32bpp images.
2005-08-29 21:47:26 +00:00
Frank Richter e53a7639d7 If a MINSIZEn property is not present, fall back to actual size of nth
image to determine whether it is suitable.
2005-08-29 10:46:45 +00:00
Frank Richter 9a03000e5e Take a common computation out of two if-branches in
UXTHEME_LoadImage().
2005-08-29 10:15:59 +00:00
Frank Richter eed5b662b9 Implement "manual" image sharing(as opposed to using LoadImage() with
LR_SHARED) by keeping the loaded images in a list. This is needed for
proper alpha support later on since once-per-image preparations will
be needed then.
2005-08-29 09:30:17 +00:00
Kevin Koltzau dbfac2ee12 Fix 'cast to pointer from integer of different size' warnings in
64bit.
2005-08-22 10:18:17 +00:00
Frank Richter fcb8a2f859 Compare result of RegQueryValueExW() with ERROR_SUCCESS. 2005-08-15 10:23:48 +00:00
Frank Richter 6451a1495a Whatever TrueSizeStretchMark is for - it's not what Wine uxtheme used
it for. Native uxtheme always stretches "truesize" parts when the
destination is smaller than the part image size, but
TrueSizeStretchMark doesn't seem to have an influence.
2005-08-15 10:21:40 +00:00
Frank Richter 8ff3c7e623 Better computations to have uniformly sized parts scaled in both
directions.
2005-08-15 09:34:21 +00:00
Frank Richter 0f94e03b40 Enhance uxtheme to store the themed system metrics in the registry and
also backup the old metrics. That way, themed system colors are set
even uxtheme was not loaded and initialized yet, and when a theme is
deactivated, the colors prior to the activation are restored as well.
Also, not having to set the system colors in uxtheme startup works
around weird problems where SetSystemColors() ended up being called
from inside window creation and this seemingly led to some creation
message being sent twice.
2005-08-12 15:51:13 +00:00
Frank Richter 70442d5eb0 Implement DrawThemeEdge(). 2005-08-03 21:16:45 +00:00
Frank Richter aab700d16e Set some default values for truesize sizing that seem closer to
Windows.
2005-08-03 19:47:51 +00:00
Frank Richter 30fffdaef0 The default image layout is HORIZONTAL, not VERTICAL. 2005-08-03 19:13:01 +00:00
Frank Richter 635135ba3d Another fix to use magenta as the default transparent color. 2005-08-03 15:42:43 +00:00
Frank Richter 46c31adab2 Add support for horizontal & vertical alignment when doing truesize
sizing.
2005-08-03 14:54:28 +00:00
Frank Richter 1979ab3c2b Add support for the BT_NONE background type. 2005-08-03 12:32:59 +00:00
Frank Richter 50cd0e0232 Implement GetThemeBackgroundExtent(). 2005-08-03 11:45:02 +00:00
Frank Richter 59e5ce9d87 Implement support for the ST_TILE background stretching mode. 2005-08-03 10:55:40 +00:00
Frank Richter 3701cb2fa0 Implementation for GetThemePartSize() (not entirely equivalent to
native uxtheme, but sensibly useable).
2005-07-27 15:33:31 +00:00
Frank Richter 1621ff4a44 Make GetThemeMargins() return default values (0 margin) if the
function does not succeed.
2005-07-27 15:15:09 +00:00
Frank Richter 100923508c OpenThemeData() now always sets the window theme to the handle
returned (even if that is NULL) - previously, it could happen that
when no theme was active or the theme data could not be opened that
the window theme remained became then-dangling (and hence subsequent
calls to GetWindowTheme() would return that bogus theme).
2005-07-24 17:11:05 +00:00
Frank Richter 4d2e6b7d98 GetThemeBackgroundContentRect() does not use the content margins
alone, it also falls back to the border size or sizing margins, and if
it can't find any possible margins at all, it returns the original
rectangle.
2005-07-24 17:09:58 +00:00
Frank Richter 5bb8f968f6 Make dialog theme texture setting non-global (ie a per-window
setting).
2005-07-15 16:32:37 +00:00
Frank Richter 4d363ab085 Better viewport origin in DrawThemeParentBackground(). 2005-07-12 17:55:20 +00:00
Frank Richter 2986adb0b5 Correct border rectangle drawing. 2005-07-12 16:59:32 +00:00
Frank Richter 0bd04866e8 Don't crash if NULL is passed as the class list to OpenThemeData(). 2005-07-12 16:59:20 +00:00
Mike McCormack 257c337c19 gcc 4.0 -Wpointer-sign fixes (Reg* functions). 2005-07-07 12:08:42 +00:00
Frank Richter 6212477ea4 Every window needs to receive WM_THEMECHANGED (esp. controls), so also
send it to child windows.
2005-07-06 10:32:30 +00:00
Frank Richter 4d4c0a2da9 UXTHEME_LoadImage(): Set default image count to 1 to avoid division by
zero in case image count property is not given. Properly support 0
state IDs.
2005-07-05 14:05:35 +00:00
Stefan Huehner 2440dcfe88 Fix -Wmissing-declarations warnings. 2005-07-05 12:49:14 +00:00
Frank Richter 420d7a82da Opening some theme class data now also increases the reference count
of the theme file, so as long as theme class data is still opened
somewhere, the theme file won't get freed. Otherwise, it could happen
that invalid class data was used, which could lead to problems.
2005-07-05 11:45:57 +00:00
Frank Richter 204f32eae2 Changed the default transparent color in case none was explicitly
specified from the upper left pixel color to magenta. Empirically
gives better results.
2005-07-05 11:45:41 +00:00
Frank Richter 72d6a98469 Write WCHAR strings to registry with correct size. 2005-07-05 10:57:17 +00:00
Thomas Weidenmueller e1d2852def IsThemeDialogTextureEnabled should have one parameter to match the
prototype in the official headers.
2005-07-05 10:56:27 +00:00
Frank Richter 796f941bee Enable/disable "flat menus" based on the setting from the active
theme.
2005-07-05 10:55:22 +00:00
Stefan Huehner 4b53c3aa18 Make some function static. 2005-07-01 15:40:24 +00:00
Frank Richter db56189f24 Have the theme INI file parsed upon theme activation and not just when
the first theme data is requested; that way, the themed system colors
are set correctly from the start, and not just after some theme data
was requested.
2005-07-01 15:39:14 +00:00
Stefan Huehner 863a4b1488 Fix some more -Wstrict-prototypes warnings. 2005-06-21 20:53:13 +00:00
Kevin Koltzau 1c97e56fa9 Use uniformsizing theme property. 2005-05-24 09:49:29 +00:00
Alexandre Julliard 34fa35dc99 Added rules for building import libraries in the individual dll
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard d62356aa1e Added rules to build import libraries in the individual dll makefiles.
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Eric Pouech 4056d7ef8c Fixed some errors in function prototypes. 2004-12-13 21:19:01 +00:00
Kevin Koltzau a2101225fe Fix clipping for DrawThemeParentBackground. 2004-11-21 15:33:36 +00:00
Kevin Koltzau 33676ad347 Implementation of GetThemeBackgroundExtent.
Partial implementation of GetThemeBackgroundRegion.
Correct a few comments.
2004-11-09 20:03:25 +00:00
Kevin Koltzau 399842b136 Fix crash when no theme is set and application ignores errors. 2004-11-09 20:02:39 +00:00
Hans Leidekker 719a789792 Fix signed/unsigned comparison warnings. 2004-09-22 02:46:38 +00:00
Francois Gouget 313dadb368 Fix typo in RBS_UNCHECKEDHOT (spotted by Jan Schweizer).
Fix the HSAS_ enumeration.
2004-09-03 17:29:15 +00:00
Patrik Stridvall 070db4e5de Fixed some issues found by winapi_check. 2004-05-17 21:08:31 +00:00
Francois Gouget 52c0832161 Make Unicode strings static const. 2004-04-20 01:12:17 +00:00
Francois Gouget ebf0eb3138 Make static Unicode strings const. 2004-04-20 00:34:52 +00:00
Francois Gouget 6a6c85c6d8 Make Unicode const strings static so they are not copied to the stack
each time we enter the function.
2004-04-19 20:12:14 +00:00
Kevin Koltzau 352cddae6b Implement CheckThemeSignature. 2004-04-07 18:59:23 +00:00
Kevin Koltzau 549853175e Implemented EnumThemes. 2004-04-05 20:12:38 +00:00
Alexandre Julliard 9e4ed6460c .spec.c files are no longer used for 32-bit dlls. 2004-03-24 03:36:44 +00:00
Francois Gouget 87f223a879 Assorted spelling and case fixes. 2004-03-02 20:55:57 +00:00
Kevin Koltzau 08d8551910 Implement GetThemeTextMetrics. 2004-02-27 04:34:00 +00:00
Kevin Koltzau 92002d924b Implemented system metric functions. 2004-02-20 05:12:21 +00:00
Kevin Koltzau 0fd8e51365 Corrected method of creating registry keys, both to fix an issue where
they were not created and to act more like Windows.
2004-02-17 21:03:33 +00:00
Kevin Koltzau f28552b3d3 Keep track of theme filename within THEME_FILE. 2004-02-17 20:22:27 +00:00
Kevin Koltzau 533a999adb Implement DrawThemeBackgroundEx, DrawThemeText, GetThemeTextExtent. 2004-02-16 20:32:59 +00:00
Francois Gouget ad5ff7ceeb Assorted spelling and case fixes. 2004-02-09 22:07:42 +00:00
Kevin Koltzau f3883fe820 Process color metrics for themes. 2004-02-07 01:02:28 +00:00
Kevin Koltzau 64851e1664 Implement IsThemeBackgroundPartiallyTransparent,
DrawThemeParentBackground, and beginnings of other drawing functions.
2004-02-05 01:24:04 +00:00
Kevin Koltzau 16dc166d4f Ensure MSSTYLES_SetActiveTheme fails properly when theme is invalid. 2004-01-26 21:22:34 +00:00
Vitaliy Margolen a3b58e9d30 Prevent segfault if no theme is set. 2004-01-26 20:13:50 +00:00
Kevin Koltzau c31cae0f7e Load properties from the theme ini.
Implemented most of the GetTheme* functions.
2004-01-23 04:34:02 +00:00
Dmitry Timoshkov c660117622 Fixed some problems found while compiling and linking Wine under
Cygwin.
2004-01-20 22:35:34 +00:00
Kevin Koltzau 5e8a34f163 Full implementation of OpenThemeData, CloseThemeData, and
IsThemePartDefined
Export undocumented functions by ordinal only (to match Microsoft's
uxtheme).
2004-01-19 21:52:09 +00:00
Kevin Koltzau e04ff33417 Add INI file processing.
Full implementation of GetThemeDocumentationProperty.
Define string maps for parsing INI files into useable form.
Implemented (undocumented) ApplyTheme to select current theme.
2004-01-16 21:25:25 +00:00
Francois Gouget 640cc3f3e1 Assorted spelling fixes. 2004-01-06 22:08:33 +00:00
Kevin Koltzau d2c4cf14f8 Load, validate and retrieve a few properties from an msstyles theme. 2003-12-08 22:45:26 +00:00
Kevin Koltzau 40f3056598 Added stubs for all functions. 2003-12-04 20:55:30 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Kevin Koltzau 0af4fb9e6d Initial implementation of uxtheme.dll, mostly stubbed out for now. 2003-10-04 03:48:11 +00:00