[Libreoffice-commits] core.git: Branch 'libreoffice-4-1' - include/vcl vcl/source
Caolán McNamara
caolanm at redhat.com
Fri Jun 21 06:29:47 PDT 2013
include/vcl/edit.hxx | 2 +-
vcl/source/control/edit.cxx | 16 +++++++++++-----
2 files changed, 12 insertions(+), 6 deletions(-)
New commits:
commit 874dad99efd531abcad486a6b1abc21c13194bb0
Author: Caolán McNamara <caolanm at redhat.com>
Date: Fri Jun 21 13:00:51 2013 +0100
Resolves: fdo#65635 don't include border gap in height for borderless edits
Change-Id: If778fdeb5bdbd5a5cac33f57ef8d598ddc1408f2
(cherry picked from commit 0a5c151b62a7abc3fc4abaadb0b50c3047eb5f26)
Reviewed-on: https://gerrit.libreoffice.org/4428
Reviewed-by: Eike Rathke <erack at redhat.com>
Tested-by: Eike Rathke <erack at redhat.com>
diff --git a/include/vcl/edit.hxx b/include/vcl/edit.hxx
index 488758a..11c1ae8 100644
--- a/include/vcl/edit.hxx
+++ b/include/vcl/edit.hxx
@@ -122,7 +122,7 @@ protected:
SAL_DLLPRIVATE void ImplInitSettings( sal_Bool bFont, sal_Bool bForeground, sal_Bool bBackground );
SAL_DLLPRIVATE void ImplLoadRes( const ResId& rResId );
SAL_DLLPRIVATE void ImplSetSelection( const Selection& rSelection, sal_Bool bPaint = sal_True );
- SAL_DLLPRIVATE int ImplGetNativeControlType();
+ SAL_DLLPRIVATE int ImplGetNativeControlType() const;
SAL_DLLPRIVATE long ImplGetExtraOffset() const;
static SAL_DLLPRIVATE void ImplInvalidateOutermostBorder( Window* pWin );
diff --git a/vcl/source/control/edit.cxx b/vcl/source/control/edit.cxx
index 10b25dc..20323b3 100644
--- a/vcl/source/control/edit.cxx
+++ b/vcl/source/control/edit.cxx
@@ -1048,10 +1048,10 @@ void Edit::ImplSetText( const OUString& rText, const Selection* pNewSelection )
// -----------------------------------------------------------------------
-int Edit::ImplGetNativeControlType()
+int Edit::ImplGetNativeControlType() const
{
int nCtrl = 0;
- Window *pControl = mbIsSubEdit ? GetParent() : this;
+ const Window *pControl = mbIsSubEdit ? GetParent() : this;
switch( pControl->GetType() )
{
@@ -2877,6 +2877,8 @@ void Edit::SetSubEdit( Edit* pEdit )
Size Edit::CalcMinimumSizeForText(const OUString &rString) const
{
+ int eCtrlType = ImplGetNativeControlType();
+
Size aSize;
if (mnWidthInChars != -1)
{
@@ -2893,8 +2895,12 @@ Size Edit::CalcMinimumSizeForText(const OUString &rString) const
if (aSize.Width() < aMinSize.Width())
aSize.Width() = aMinSize.Width();
}
- // add some space between text entry and border
- aSize.Height() += 4;
+
+ if (eCtrlType != CTRL_EDITBOX_NOBORDER)
+ {
+ // add some space between text entry and border
+ aSize.Height() += 4;
+ }
aSize = CalcWindowSize( aSize );
@@ -2903,7 +2909,7 @@ Size Edit::CalcMinimumSizeForText(const OUString &rString) const
Rectangle aRect( Point( 0, 0 ), aSize );
Rectangle aContent, aBound;
if( const_cast<Edit*>(this)->GetNativeControlRegion(
- CTRL_EDITBOX, PART_ENTIRE_CONTROL,
+ eCtrlType, PART_ENTIRE_CONTROL,
aRect, 0, aControlValue, OUString(), aBound, aContent) )
{
if( aBound.GetHeight() > aSize.Height() )
More information about the Libreoffice-commits
mailing list