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 » Bug in CExtCheckBox and CExtRadioButton Collapse All
Subject Author Date
Jeroen Walter Aug 2, 2010 - 7:00 AM

Hi

There is a bug in ExtButton.cpp (using profuis version 2.87, but also present in 2.90)
Both the CExtCheckBox and the CExtRadioButton don’t draw their states correctly.
When a checkbox or radio has a state that is not BST_UNCHECKED, then it is drawn as if it were being pressed.
Not only will this draw the checkbox and radio incorrectly, it also breaks the hover behaviour when they’re checked.

This bug occurs in the methods:

CExtCheckBox::_RenderImpl
CExtRadioButton::_RenderImpl

In this line:

bool bPushed = (m_bPushed || GetCheck()) ? true : false;

The checked state of a radio or checkbox has nothing to do with the button being pressed.

It should therefore be

bool pPushed = m_bPushed;

or just use m_bPushed instead of pPushed.

Once you change this, the drawing and hover behavior are correct.

Technical Support Aug 2, 2010 - 8:09 AM

Thank you for reporting this issue. The bool bPushed = (m_bPushed || GetCheck()) ? true : false; code is really should be the bool pPushed = m_bPushed; code.