Hello,
I was looking for a class with fixed size that only contains a dialog child window just like CExtPanelControlBar. Unfortunately this class cannot be docked to resizable windows like CExtControlBar, because it acts like a toolbar.
So I wrote a class deriving from CExtControlBar with CBRS_GRIPPER disabled ( to deactivate the window caption/frame ) which overwrites the _CalcDesiredMinHW() and _CalcDesiredMinVH() functions.
But somehow, the min. dimensions were always square, so I traced the computation back to CExtControlBar::_CalcDesiredLayout() where I found this:
if( m_sizeDockedH.cy < _CalcDesiredMinHW() )
m_sizeDockedH.cy = _CalcDesiredMinHW();
and similiar code blocks for vertical/floating docking. Assuming that W stands for width, at least the terminology sounds odd ( comparing y to width ). So I changed it to
if( m_sizeDockedH.cx < _CalcDesiredMinHW() )
m_sizeDockedH.cx = _CalcDesiredMinHW();
and the window was as I expected it to be. My sample project was the SDI-sample with a modified dialog child window.
Best regards