sd/source/ui/view/drtxtob.cxx | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-)
New commits: commit 0ed4da1a01e6cdfe44403a0686abe4aacea83dfb Author: Muthu Subramanian <sumu...@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; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits