Print Page | Close Window

CXTPStatusBar

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Command Bars
Forum Description: Topics Related to Codejock Command Bars
URL: http://forum.codejock.com/forum_posts.asp?TID=3613
Printed Date: 07 June 2024 at 2:27pm
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: CXTPStatusBar
Posted By: Kenneth
Subject: CXTPStatusBar
Date Posted: 07 February 2006 at 8:39am

On Windows XP the pane items on the statusbar has a border drawn around them.  On other systems such as Windows 98 and Windows 2003, the border does not appear.  What could be causing this?

Futher testing indicates the borders are being drawn in the Native XP and Office XP themes, but not in the Office 2003 and Luna themes.  The older versions of the pro toolkit did draw the borders in Office 2003 and Luna themes.

 




Replies:
Posted By: Oleg
Date Posted: 07 February 2006 at 2:04pm

Hi,

hmm. Can you show screenshot how you see StatusBar with Office 2003 theme? Borders must be...



-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: Kenneth
Date Posted: 07 February 2006 at 5:09pm

The following is a screenshot of the statusbar running on XP with the Office 2003 Theme.  I also just noticed today that the Silver Luna theme on Windows XP also does not draw the borders.

Note the borders I am referring to surround the words "XTERM", CAP, NUM, 17:02 and the three icon panes to the right of 17:02.

None of the borders appear in Windows 98, ME, and 2003 when in Office 2003 Theme and all of the Luna themes.



Posted By: Oleg
Date Posted: 08 February 2006 at 9:47am

Strange, but I see them... :)

Here screenshot of my Word 2003... It used exactly same border with color - RGB(211, 211, 211)



-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: Kenneth
Date Posted: 08 February 2006 at 10:15am

Oleg

I am not quite sure what you mean by your response.  Your Word 2003 screenshot shows the borders, just like my screenshot shows the borders.  My assumption is the borders SHOULD be shown with the 2003 theme and all three luna themes.

My problem is on Windows 98, ME, and Windows 2003, the borders ARE NOT SHOWN in the 2003 theme, and all three luna themes.

 



Posted By: Oleg
Date Posted: 14 February 2006 at 8:47am

Hello,

Keneth, I can't reproduce it, so please attach screenshot how you see it on Windows 98 _without borders_



-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: Kenneth
Date Posted: 14 February 2006 at 9:30am

Oleg

I took a screen snapshot of the statusline on XP, then on the systems where it appears to be no border (Windows 98, ME, and Windows Server 2003).  What is really happening is the border color on the Windows 98, ME, and Windows Server 2003, has almost the same color as the background.  The following shows both the background color and border colors on the systems:

                                   Windows Me    Windows XP   Windows 2003

Border RGB Color          207,208,207    211,211,211   211,211,211

Background RGB Color   208,207,192    236,233,216   212,208,200

This is the same statusbar on a Windows 2003 system:

The background color on Windows Server 2003 is different than that of XP and Windows 98/ME, but as with Windows 98/ME, the color of the border blends into the background color, thus making it look like the border does not exist.  As the image above indicates, no border is present, but if you zoom the image up, you can barely see the border.

 



Posted By: Oleg
Date Posted: 14 February 2006 at 11:13am

Hello,

I guess you chanaged this color it in custom paint manager or call something like XTPColorManager()->SetLunaColor(xtpSystemThemeBlue);

by default another color must be used, please check our CustomThemes sample.



-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: Kenneth
Date Posted: 14 February 2006 at 11:40am

If I select the Office2003Theme, then I call:

CXTPPaintManager *pTheme = new CXTPOffice2003Theme();

regardless of the OS type.  Are you saying after I call that, I have to change a color within that theme based upon OS type?

Ken

 

 

 



Posted By: Kenneth
Date Posted: 14 February 2006 at 1:35pm

I see the problem.  The CXTPOffice2003Theme hardcodes the value of m_clrStatusPane to RGB(211,211,211).  When the CXTPStatusBar OnPaint() function calls:

pPaintManager->DrawStatusBarPaneBorder()

The PaintManager uses the m_clrStatusPane color to draw the border.  Since this has been set to RGB(211,211,211), regardless of the OS type, the frame may or may not be visible depending upon the background color of the statusbar on the system.

I fixed it by overriding the DrawStatusBarPaneBorder() in the CXTPOffice2003Theme and set the value to RGB(172,168,153).  This works for all systems and probably what should be used in CXTPOffice2003Theme instead of the RGB(211,211,211) currently hardcoded.  This also fixes the "missing borders" in the silver luna theme on Windows XP.

 

Ken

 




Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net