[Libreoffice-commits] core.git: sd/source
Muthu Subramanian
sumuthu at suse.com
Thu Mar 7 04:34:33 PST 2013
sd/source/ui/view/drtxtob.cxx | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)
New commits:
commit 0ed4da1a01e6cdfe44403a0686abe4aacea83dfb
Author: Muthu Subramanian <sumuthu at suse.com>
Date: Thu Mar 7 18:17:01 2013 +0530
n#657905: Display the scaled fontsize in the toolbar.
Initial set of changes to improve UX for autofit.
diff --git a/sd/source/ui/view/drtxtob.cxx b/sd/source/ui/view/drtxtob.cxx
index 5ee3978..d29fc55 100644
--- a/sd/source/ui/view/drtxtob.cxx
+++ b/sd/source/ui/view/drtxtob.cxx
@@ -45,6 +45,7 @@
#include <editeng/outlobj.hxx>
#include <editeng/writingmodeitem.hxx>
#include <editeng/frmdiritem.hxx>
+#include <editeng/fhgtitem.hxx>
#include <sfx2/objface.hxx>
@@ -155,6 +156,8 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
case SID_ATTR_CHAR_WEIGHT:
case SID_ATTR_CHAR_POSTURE:
{
+ sal_uInt16 stretchX = 100;
+ sal_uInt16 stretchY = 100;
SvxScriptSetItem aSetItem( nSlotId, GetPool() );
aSetItem.GetItemSet().Put( aAttrSet, sal_False );
@@ -165,6 +168,7 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
// input language should be preferred over
// current cursor position to detect script type
OutlinerView* pOLV = mpView->GetTextEditOutlinerView();
+ SdrOutliner *pOutliner = mpView->GetTextEditOutliner();
if (mpView->ISA(OutlineView))
{
@@ -172,6 +176,9 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
mpViewShell->GetActiveWindow());
}
+ if( pOutliner )
+ pOutliner->GetGlobalCharStretching( stretchX, stretchY );
+
if(pOLV && !pOLV->GetSelection().HasRange())
{
if( mpViewShell && mpViewShell->GetViewShell() && mpViewShell->GetViewShell()->GetWindow() )
@@ -185,9 +192,22 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
const SfxPoolItem* pI = aSetItem.GetItemOfScript( nScriptType );
if( pI )
- aAttrSet.Put( *pI, nWhich );
+ {
+ if( nSlotId == SID_ATTR_CHAR_FONTHEIGHT )
+ {
+ SvxFontHeightItem aFontItem = *(dynamic_cast<const SvxFontHeightItem *>(pI));
+ aFontItem.SetHeight(aFontItem.GetHeight(), stretchX, aFontItem.GetPropUnit());
+ aAttrSet.Put( aFontItem, nWhich );
+ }
+ else
+ {
+ aAttrSet.Put( *pI, nWhich );
+ }
+ }
else
+ {
aAttrSet.InvalidateItem( nWhich );
+ }
}
break;
More information about the Libreoffice-commits
mailing list