[Libreoffice-commits] core.git: include/svx svx/sdi sw/sdi sw/source

gokaysatir (via logerrit) logerrit at kemper.freedesktop.org
Fri May 8 10:37:53 UTC 2020


 include/svx/svxids.hrc              |    5 ++++-
 svx/sdi/svx.sdi                     |   16 ++++++++++++++++
 sw/sdi/_viewsh.sdi                  |    4 ++++
 sw/source/uibase/uiview/viewtab.cxx |   27 +++++++++++++++++++++++++++
 4 files changed, 51 insertions(+), 1 deletion(-)

New commits:
commit 15adfafee5b48d6f88a0b970c50e5c5bc77a4ab1
Author:     gokaysatir <gokaysatir at gmail.com>
AuthorDate: Wed May 6 12:04:39 2020 +0300
Commit:     Tomaž Vajngerl <quikee at gmail.com>
CommitDate: Fri May 8 12:37:16 2020 +0200

    tdf#111535 - Add First-line indent, paragraph indent, and tab spaces/Core part
    
    Change-Id: Ib340e74646299c344dd770977497f59a030c86f3
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93165
    Tested-by: Jenkins
    Tested-by: Tomaž Vajngerl <quikee at gmail.com>
    Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>

diff --git a/include/svx/svxids.hrc b/include/svx/svxids.hrc
index 61d02ff504ea..5c18856d0713 100644
--- a/include/svx/svxids.hrc
+++ b/include/svx/svxids.hrc
@@ -537,6 +537,9 @@ class SvxSetItem;
 #define SID_TABSTOP_ADD_OR_CHANGE                       ( SID_SVX_START + 581 )
 #define SID_TABSTOP_ATTR_INDEX                          ( SID_SVX_START + 582 )
 #define SID_TABSTOP_ATTR_POSITION                       ( SID_SVX_START + 583 )
+#define SID_PARAGRAPH_FIRST_LINE_INDENT                 ( SID_SVX_START + 584 )
+#define SID_PARAGRAPH_LEFT_INDENT                       ( SID_SVX_START + 585 )
+#define SID_PARAGRAPH_RIGHT_INDENT                      ( SID_SVX_START + 586 )
 
 // CAUTION! Range <587 .. 587> used by EditEngine (!)
 
@@ -649,7 +652,7 @@ class SvxSetItem;
 #define SID_FM_CONVERTTO_FORMATTED                      ( SID_SVX_START + 751 )
 #define SID_FM_FILTER_NAVIGATOR_CONTROL                 ( SID_SVX_START + 752 )
 #define SID_INSERT_GRIDCONTROL                          ( SID_SVX_START + 753 )
-//FREE
+#define SID_PARAGRAPH_CHANGE_STATE                      ( SID_SVX_START + 754 )
 //FREE
 //FREE
 //FREE
diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi
index bf3b73f5ab78..e8d6cf705b71 100644
--- a/svx/sdi/svx.sdi
+++ b/svx/sdi/svx.sdi
@@ -7226,6 +7226,22 @@ SfxVoidItem ChangeTabStop SID_TABSTOP_ADD_OR_CHANGE
     GroupId = ;
 ]
 
+SfxVoidItem ParagraphChangeState SID_PARAGRAPH_CHANGE_STATE
+(SfxStringItem FirstLineIndent SID_PARAGRAPH_FIRST_LINE_INDENT, SfxStringItem LeftParaIndent SID_PARAGRAPH_LEFT_INDENT, SfxStringItem RightParaIndent SID_PARAGRAPH_RIGHT_INDENT)
+[
+    AutoUpdate = FALSE,
+    FastCall = TRUE,
+    ReadOnlyDoc = TRUE,
+    Toggle = FALSE,
+    Container = FALSE,
+    RecordAbsolute = FALSE,
+    RecordPerSet;
+    AccelConfig = FALSE,
+    MenuConfig = FALSE,
+    ToolBoxConfig = FALSE,
+    GroupId = ;
+]
+
 SfxVoidItem TableChangeCurrentBorderPosition SID_TABLE_CHANGE_CURRENT_BORDER_POSITION
     (SfxStringItem BorderType SID_TABLE_BORDER_TYPE,
      SfxUInt16Item Index SID_TABLE_BORDER_INDEX,
diff --git a/sw/sdi/_viewsh.sdi b/sw/sdi/_viewsh.sdi
index 47b95ab80409..55072f98ec2a 100644
--- a/sw/sdi/_viewsh.sdi
+++ b/sw/sdi/_viewsh.sdi
@@ -647,6 +647,10 @@ interface BaseTextEditView
     [
         ExecMethod = ExecTabWin;
     ]
+    SID_PARAGRAPH_CHANGE_STATE // status()
+    [
+        ExecMethod = ExecTabWin;
+    ]
     // from here  Export = FALSE;
     FID_SEARCH_ON // status()
     [
diff --git a/sw/source/uibase/uiview/viewtab.cxx b/sw/source/uibase/uiview/viewtab.cxx
index 7be532cd29b4..0c2995e0b56d 100644
--- a/sw/source/uibase/uiview/viewtab.cxx
+++ b/sw/source/uibase/uiview/viewtab.cxx
@@ -693,7 +693,34 @@ void SwView::ExecTabWin( SfxRequest const & rReq )
             }
         }
         break;
+    case SID_PARAGRAPH_CHANGE_STATE:
+    {
+        const SfxPoolItem *fLineIndent, *pLeftIndent, *pRightIndent;
+        if (pReqArgs)
+        {
+            SfxItemSet aLRSpaceSet( GetPool(), svl::Items<RES_LR_SPACE, RES_LR_SPACE>{} );
+            rSh.GetCurAttr( aLRSpaceSet );
+            SvxLRSpaceItem aParaMargin( aLRSpaceSet.Get( RES_LR_SPACE ) );
 
+            if (pReqArgs->GetItemState(SID_PARAGRAPH_FIRST_LINE_INDENT,true,&fLineIndent) == SfxItemState::SET)
+            {
+                const OUString ratio = static_cast<const SfxStringItem*>(fLineIndent)->GetValue();
+                aParaMargin.SetTextFirstLineOffset(nPageWidth * ratio.toFloat());
+            }
+            else if (pReqArgs->GetItemState(SID_PARAGRAPH_LEFT_INDENT,true,&pLeftIndent) == SfxItemState::SET)
+            {
+                const OUString ratio = static_cast<const SfxStringItem*>(pLeftIndent)->GetValue();
+                aParaMargin.SetLeft(nPageWidth * ratio.toFloat());
+            }
+            else if (pReqArgs->GetItemState(SID_PARAGRAPH_RIGHT_INDENT,true,&pRightIndent) == SfxItemState::SET)
+            {
+                const OUString ratio = static_cast<const SfxStringItem*>(pRightIndent)->GetValue();
+                aParaMargin.SetRight(nPageWidth * ratio.toFloat());
+            }
+            rSh.SetAttrItem(aParaMargin);
+        }
+        break;
+    }
     case SID_HANGING_INDENT:
     {
         SfxItemSet aLRSpaceSet( GetPool(), svl::Items<RES_LR_SPACE, RES_LR_SPACE>{} );


More information about the Libreoffice-commits mailing list