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 General Discussion » theme colorizer question !! Collapse All
Subject Author Date
hansu chung Dec 12, 2004 - 7:14 PM

I have been waited this sample code for months !!


I’m happy to use this sample...


I have already put your library into my activeX..


I want to change the ActiveX control color and hope it will work any OS...


Can you tell me which part I have to change?


It is little bit hard to me to change code with only theme colorizer sample code...


If we succeeded with changing color we will buy your library right a way !!


I know that it is many things to tell me but please help me...


My activeX applied Prof-UIS 2.26 version...


wait for your response !!

Technical Support Dec 13, 2004 - 9:21 AM

To implement what you need, just derive a class from CExtPaintManagerOffice2003 and override two its methods OnQueryThemeColors and OnQueryUseThemeColors as follows:

// header file .h
class CLunaBlueThemeOffice2003 : public CExtPaintManagerOffice2003
{
public:
            DECLARE_DYNCREATE( CLunaBlueThemeOffice2003 )
 
            CLunaBlueThemeOffice2003()
            {
                        m_clrFillHint = 
                                    stat_HLS_Adjust(
                                                RGB(151, 190, 244),
                                                0.00, -0.07, -0.10
                                    );
                        m_clrAccentHint = 
                                    RGB(255, 200, 91);
            }
 
            COLORREF m_clrFillHint;
            COLORREF m_clrAccentHint;
 
protected:
            virtual bool OnQueryThemeColors(
                        COLORREF *pclrFillHint,
                        COLORREF *pclrAccentHint = NULL
                        )
            {
                        if( pclrFillHint != NULL )
                                    *pclrFillHint = m_clrFillHint;
                        if( pclrAccentHint != NULL )
                                    *pclrAccentHint = m_clrAccentHint;
                        return true;
            }
 
            virtual bool OnQueryUseThemeColors() const
            {
                        return true;
            }
};
 
// source file .cpp
IMPLEMENT_DYNCREATE( CLunaBlueThemeOffice2003, 
CExtPaintManagerOffice2003 )
Then it can be used in this way
g_PaintManager.InstallPaintManager( new CLunaBlueThemeOffice2003   );
Please note that this feature was introduced in Prof-UIS 2.27.