Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » Colorizing Theme + PageNavigatorItemCaption Collapse All
Subject Author Date
Suhai Gyorgy Nov 8, 2005 - 8:12 AM

Hi! I’d like to have the docking mechanism of CExtPaintManagerStudio2005 combined with the colors of CExtPaintManagerOffice2003. For this I used a PaintManager class derived from CExtPaintManagerStudio2005 similar to the one you use in ThemeColorizer Sample. As I could see, the "Luna Blue" theme of that sample matches the colors of CExtPaintManagerOffice2003, except for one thing: I also have a "static" (more like a header) painted with

g_PaintManager->PaintPageNavigatorItemCaption


and the color of this control isn’t the same as with CExtPaintManagerOffice2003 and not even gradient. How could I make it look the same as before?


Thank you: Chris

Technical Support Nov 8, 2005 - 10:21 AM

Please create a CExtPaintManager-derived class and override the CExtPaintManager::GetThemeDockingType() virtual method in it. To implement the Visual Studio .NET docking behavior, return __RESIZABLE_DOCKING_TYPE_STUDIO_2003 in this method:

virtual int GetThemeDockingType() const
{
 ASSERT_VALID( this );
 return int(CExtControlBar::__RESIZABLE_DOCKING_TYPE_STUDIO_2003);
}
If you prefer your control bars to be docked as in the Visual Studio 2005, return __RESIZABLE_DOCKING_TYPE_STUDIO_2005:
virtual int GetThemeDockingType() const
{
 ASSERT_VALID( this );
 return int(CExtControlBar::__RESIZABLE_DOCKING_TYPE_STUDIO_2005);
}

Suhai Gyorgy Nov 8, 2005 - 8:52 AM

I already answered my own question above: The problem was with the overridden OnQuerySystemTheme() method returning ThemeUnknown. So now it’s just out of curiosity: in the ThemeColorizer Sample why is it needed to override this method? What effect does it have on the colors?
Thank you: Chris

Technical Support Nov 8, 2005 - 10:22 AM

The ThemeUnknown constant means that the custom theme is used.