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 » Skinable sample gets in infinite loop...bug Collapse All
Subject Author Date
Wesley Garrard Dec 19, 2006 - 3:40 PM

Looks like an infinite loop is happening in the Skinable sample project before the window is ever displayed if a parent control is a disabled control with children. Saw a similar problem posted here for unchecking controls. To fix bring up Prof-UIS dll project and open extbutton.cpp, find the CExtRadioButton::WindowProc method. Insert line in code snippet below and build:

LRESULT CExtRadioButton::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
    if( message == WM_GETDLGCODE )
        return (DLGC_BUTTON | DLGC_RADIOBUTTON);

    if( message == BM_SETCHECK )
    {
        LRESULT lRes = CExtCheckBox::WindowProc( message, wParam, lParam );
        CWnd * pWndParent = GetParent();
        ASSERT_VALID( pWndParent );
        
        if( !this->IsWindowEnabled() ) return lRes; //INSERT THIS LINE!!!
...

Thanks,
Wes Garrard

Technical Support Dec 20, 2006 - 9:02 AM

Thank you for the fix. We added this to the library’s source code.