first congratulations to your fine work. We use your controls in our project AlligatorSQL - but we had some problems when using this in combination with context sensitive help.
When we pressed on a checkbox control the value of the box was changed.
We changed the following line to avoid this problem
Try the spacebar action on the CMacMoreButton controls. The initial space will open the window up, but the arrow doesn't change to point down, subsequent spacebar on an open CMacMoreButton does nothing. If you then click on the CMacMoreButton after it was opened via a spacebar, the arrow then points down. Then hitting a spacebar on the CMacMoreButton when it is pointing down to an open area closes the area but the arrow remains pointing down.
Nice controls, but you need to do more testing on response to keyboard.
Your mac style buttons are cool!But i've found some bugs:when you click CMacCheckBox or CMacRadioButton,the parent windows can not receive notify message.
Here is the fix of the CMacCheckBox:
void CMacCheckBox::OnLButtonUp(UINT nFlags, CPoint point)
m_bChecked = !m_bChecked;
//send notify message to parent window
//added by eric
pParent->SendMessage( WM_COMMAND, MAKEWPARAM( GetDlgCtrlID(),BN_CLICKED ), (LPARAM)this->GetSafeHwnd () );
Fix CMacRadioButton the same way.