additional fix for fdo#51336 for radiobuttons
Change-Id: Ib35d27962b2c63221e1967886236547b3b1047d6
This commit is contained in:
@@ -313,6 +313,10 @@ private:
|
||||
protected:
|
||||
using Control::ImplInitSettings;
|
||||
using Window::ImplInit;
|
||||
// allows the behaviour of horizontal placement of the checbox image to be
|
||||
// overridden.
|
||||
virtual void ImplHandleHoriAlign( const Point& rPos, const Size& rSize,
|
||||
const Size& rImageSize, Rectangle& rStateRect );
|
||||
SAL_DLLPRIVATE void ImplInit( Window* pParent, WinBits nStyle );
|
||||
SAL_DLLPRIVATE void ImplLoadRes( const ResId& rResId );
|
||||
|
||||
|
||||
@@ -2124,6 +2124,14 @@ if ( bNativeOK == sal_False )
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
void RadioButton:: ImplHandleHoriAlign( const Point& rPos, const Size& /*rSize*/,
|
||||
const Size& /*rImageSize*/, Rectangle& rStateRect )
|
||||
{
|
||||
// align Checkbox image left ( always )
|
||||
rStateRect.Left() = rPos.X();
|
||||
}
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
void RadioButton::ImplDraw( OutputDevice* pDev, sal_uLong nDrawFlags,
|
||||
const Point& rPos, const Size& rSize,
|
||||
const Size& rImageSize, Rectangle& rStateRect,
|
||||
@@ -2188,12 +2196,9 @@ void RadioButton::ImplDraw( OutputDevice* pDev, sal_uLong nDrawFlags,
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( nWinStyle & WB_CENTER )
|
||||
rStateRect.Left() = rPos.X()+((rSize.Width()-rImageSize.Width())/2);
|
||||
else if ( nWinStyle & WB_RIGHT )
|
||||
rStateRect.Left() = rPos.X()+rSize.Width()-rImageSize.Width(); //-1;
|
||||
else
|
||||
rStateRect.Left() = rPos.X(); //+1;
|
||||
// allow specific handling of WB_CENTER, WB_LEFT & WB_RIGHT by
|
||||
// by subclasses
|
||||
ImplHandleHoriAlign( rPos, rSize, rImageSize, rStateRect );
|
||||
if ( nWinStyle & WB_VCENTER )
|
||||
rStateRect.Top() = rPos.Y()+((rSize.Height()-rImageSize.Height())/2);
|
||||
else if ( nWinStyle & WB_BOTTOM )
|
||||
|
||||
Reference in New Issue
Block a user