jsdialog: send paragraph margins for impress
Change-Id: Ie0d4d3dc33de66609c005b77c1ef9802446ad57c Reviewed-on: https://gerrit.libreoffice.org/82658 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> (cherry picked from commit 29733bb39a16fc0e1398a7c18781226cfe755ff3) Reviewed-on: https://gerrit.libreoffice.org/82670 Tested-by: Jenkins
This commit is contained in:
@@ -44,6 +44,9 @@
|
|||||||
#include <editeng/writingmodeitem.hxx>
|
#include <editeng/writingmodeitem.hxx>
|
||||||
#include <editeng/frmdiritem.hxx>
|
#include <editeng/frmdiritem.hxx>
|
||||||
#include <editeng/fhgtitem.hxx>
|
#include <editeng/fhgtitem.hxx>
|
||||||
|
#include <comphelper/lok.hxx>
|
||||||
|
#include <LibreOfficeKit/LibreOfficeKitEnums.h>
|
||||||
|
#include <editeng/itemtype.hxx>
|
||||||
|
|
||||||
#include <sfx2/objface.hxx>
|
#include <sfx2/objface.hxx>
|
||||||
|
|
||||||
@@ -479,14 +482,38 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
|
|||||||
nEndPara = pOLV->GetOutliner()->GetParagraphCount() - 1;
|
nEndPara = pOLV->GetOutliner()->GetParagraphCount() - 1;
|
||||||
}
|
}
|
||||||
long nUpper = 0;
|
long nUpper = 0;
|
||||||
|
OUString sUpper, sLower;
|
||||||
|
// TODO: set correct unit
|
||||||
|
MapUnit eTargetUnit = MapUnit::MapInch;
|
||||||
|
|
||||||
for( sal_Int32 nPara = nStartPara; nPara <= nEndPara; nPara++ )
|
for( sal_Int32 nPara = nStartPara; nPara <= nEndPara; nPara++ )
|
||||||
{
|
{
|
||||||
const SfxItemSet& rItems = pOLV->GetOutliner()->GetParaAttribs( nPara );
|
const SfxItemSet& rItems = pOLV->GetOutliner()->GetParaAttribs( nPara );
|
||||||
const SvxULSpaceItem& rItem = rItems.Get( EE_PARA_ULSPACE );
|
const SvxULSpaceItem& rItem = rItems.Get( EE_PARA_ULSPACE );
|
||||||
nUpper = std::max( nUpper, static_cast<long>(rItem.GetUpper()) );
|
nUpper = std::max( nUpper, static_cast<long>(rItem.GetUpper()) );
|
||||||
|
|
||||||
|
if (nPara == nStartPara)
|
||||||
|
{
|
||||||
|
sUpper = GetMetricText(rItem.GetUpper(),
|
||||||
|
MapUnit::MapTwip, eTargetUnit, nullptr);
|
||||||
|
}
|
||||||
|
if (nPara == nEndPara)
|
||||||
|
{
|
||||||
|
sLower = GetMetricText(rItem.GetLower(),
|
||||||
|
MapUnit::MapTwip, eTargetUnit, nullptr);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if( nUpper == 0 )
|
if( nUpper == 0 )
|
||||||
rSet.DisableItem( SID_PARASPACE_DECREASE );
|
rSet.DisableItem( SID_PARASPACE_DECREASE );
|
||||||
|
|
||||||
|
if (comphelper::LibreOfficeKit::isActive())
|
||||||
|
{
|
||||||
|
OUString sPayload = ".uno:ULSpacing={\"upper\": \"" + sUpper +
|
||||||
|
"\", \"lower\": \"" + sLower + "\"}";
|
||||||
|
|
||||||
|
GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED,
|
||||||
|
OUStringToOString(sPayload, RTL_TEXTENCODING_ASCII_US).getStr());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -589,6 +616,29 @@ void TextObjectBar::GetAttrState( SfxItemSet& rSet )
|
|||||||
aLRSpace.SetWhich(SID_ATTR_PARA_LRSPACE);
|
aLRSpace.SetWhich(SID_ATTR_PARA_LRSPACE);
|
||||||
rSet.Put(aLRSpace);
|
rSet.Put(aLRSpace);
|
||||||
Invalidate(SID_ATTR_PARA_LRSPACE);
|
Invalidate(SID_ATTR_PARA_LRSPACE);
|
||||||
|
|
||||||
|
if (comphelper::LibreOfficeKit::isActive())
|
||||||
|
{
|
||||||
|
// TODO: set correct unit
|
||||||
|
MapUnit eTargetUnit = MapUnit::MapInch;
|
||||||
|
|
||||||
|
OUString sLeft = GetMetricText(aLRSpace.GetLeft(),
|
||||||
|
MapUnit::MapTwip, eTargetUnit, nullptr);
|
||||||
|
|
||||||
|
OUString sRight = GetMetricText(aLRSpace.GetRight(),
|
||||||
|
MapUnit::MapTwip, eTargetUnit, nullptr);
|
||||||
|
|
||||||
|
OUString sFirstline = GetMetricText(aLRSpace.GetTextFirstLineOfst(),
|
||||||
|
MapUnit::MapTwip, eTargetUnit, nullptr);
|
||||||
|
|
||||||
|
OUString sPayload = ".uno:LeftRightParaMargin={\"left\": \"" + sLeft +
|
||||||
|
"\", \"right\": \"" + sRight +
|
||||||
|
"\", \"firstline\": \"" + sFirstline + "\"}";
|
||||||
|
|
||||||
|
GetViewShell()->libreOfficeKitViewCallback(LOK_CALLBACK_STATE_CHANGED,
|
||||||
|
OUStringToOString(sPayload, RTL_TEXTENCODING_ASCII_US).getStr());
|
||||||
|
}
|
||||||
|
|
||||||
//Added by xuxu
|
//Added by xuxu
|
||||||
SfxItemState eState = aAttrSet.GetItemState( EE_PARA_LRSPACE );
|
SfxItemState eState = aAttrSet.GetItemState( EE_PARA_LRSPACE );
|
||||||
if ( eState == SfxItemState::DONTCARE )
|
if ( eState == SfxItemState::DONTCARE )
|
||||||
|
Reference in New Issue
Block a user