Kaydet (Commit) e2f6c7f0 authored tarafından Gulsah Kose's avatar Gulsah Kose Kaydeden (comit) Maxim Monastirsky

tdf#101390 Add "Dimesion Line" command to the writer arrowsbox.

Change-Id: I238bc37871c029d547b21ce7c8ef3cb0c0ff95b8
Signed-off-by: 's avatarGulsah Kose <gulsah.1004@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/29669Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMaxim Monastirsky <momonasmon@gmail.com>
üst aa4e5608
......@@ -998,9 +998,10 @@
#define SID_DRAWTBX_ARROWS ( SID_SVX_START + 1164 )
#define SID_LINE_ARROW_START ( SID_SVX_START + 1165 )
#define SID_LINE_ARROW_END ( SID_SVX_START + 1166 )
#define SID_DRAW_MEASURELINE ( SID_SVX_START + 1167 )
// IMPORTANT NOTE: adjust SID_SVX_FIRSTFREE, when adding new slot id
#define SID_SVX_FIRSTFREE ( SID_LINE_ARROW_END + 1 )
#define SID_SVX_FIRSTFREE ( SID_DRAW_MEASURELINE + 1 )
// Overflow check for slot IDs
......
......@@ -858,14 +858,6 @@
<value xml:lang="en-US">~Layer</value>
</prop>
</node>
<node oor:name=".uno:MeasureLine" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">Dimension Line</value>
</prop>
<prop oor:name="Properties" oor:type="xs:int">
<value>1</value>
</prop>
</node>
<node oor:name=".uno:MasterPage" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">~Master</value>
......
......@@ -2024,6 +2024,14 @@
<value>1</value>
</prop>
</node>
<node oor:name=".uno:MeasureLine" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">Dimension Line</value>
</prop>
<prop oor:name="Properties" oor:type="xs:int">
<value>1</value>
</prop>
</node>
<node oor:name=".uno:GrafMode" oor:op="replace">
<prop oor:name="Label" oor:type="xs:string">
<value xml:lang="en-US">Image mode</value>
......
......@@ -104,7 +104,6 @@
#define SID_MODIFYLAYER (SID_SD_START+45)
#define SID_PAGEMODE (SID_SD_START+46)
#define SID_LAYERMODE (SID_SD_START+47)
#define SID_DRAW_MEASURELINE (SID_SD_START+48)
#define SID_STARTAPP (SID_SD_START+49)
#define SID_MASTERPAGE (SID_SD_START+50)
// Navigation between slides
......
......@@ -2509,24 +2509,6 @@ SfxVoidItem MeasureAttributes SID_MEASURE_DLG
GroupId = GID_FORMAT;
]
SfxBoolItem MeasureLine SID_DRAW_MEASURELINE
[
AutoUpdate = TRUE,
FastCall = FALSE,
ReadOnlyDoc = FALSE,
Toggle = FALSE,
Container = FALSE,
RecordAbsolute = FALSE,
RecordPerItem;
AccelConfig = TRUE,
MenuConfig = TRUE,
ToolBoxConfig = TRUE,
GroupId = GID_DRAWING;
]
SfxVoidItem MirrorHorz SID_HORIZONTAL
()
[
......
......@@ -5319,6 +5319,25 @@ SfxVoidItem LeftRightParaMargin_Vertical SID_ATTR_PARA_LRSPACE_VERTICAL
]
SfxBoolItem MeasureLine SID_DRAW_MEASURELINE
[
AutoUpdate = TRUE,
FastCall = FALSE,
ReadOnlyDoc = FALSE,
Toggle = FALSE,
Container = FALSE,
RecordAbsolute = FALSE,
RecordPerItem;
AccelConfig = TRUE,
MenuConfig = TRUE,
ToolBoxConfig = TRUE,
GroupId = GID_DRAWING;
]
SfxBoolItem Line SID_DRAW_LINE
[
......
......@@ -117,6 +117,11 @@ interface TextEditView : BaseTextEditView
ExecMethod = ExecDraw ;
StateMethod = GetDrawState ;
]
SID_DRAW_MEASURELINE
[
ExecMethod = ExecDraw ;
StateMethod = GetDrawState ;
]
SID_DRAWTBX_ARROWS
[
StateMethod = GetDrawState ;
......
......@@ -36,6 +36,7 @@
#include <svx/xlnedwit.hxx>
#include <svx/xlnedit.hxx>
#include <svx/xlnstit.hxx>
#include <svx/svdomeas.hxx>
#include <sfx2/app.hxx>
#include <editeng/boxitem.hxx>
#include <editeng/opaqitem.hxx>
......@@ -2918,6 +2919,9 @@ long SwFEShell::GetSectionWidth( SwFormat const & rFormat ) const
}
pObj->SetLogicRect(aRect);
Point aStart = aRect.TopLeft();
Point aEnd = aRect.BottomRight();
if(dynamic_cast<const SdrCircObj*>( pObj) != nullptr)
{
SfxItemSet aAttr(pDrawModel->GetItemPool());
......@@ -3021,6 +3025,12 @@ long SwFEShell::GetSectionWidth( SwFormat const & rFormat ) const
static_cast<SdrPathObj*>(pObj)->SetPathPoly(aPoly);
}
else if(dynamic_cast<const SdrMeasureObj*>( pObj) != nullptr)
{
sal_Int32 nYMiddle((aRect.Top() + aRect.Bottom()) / 2);
static_cast<SdrMeasureObj*>(pObj)->SetPoint(Point(aStart.X(), nYMiddle), 0);
static_cast<SdrMeasureObj*>(pObj)->SetPoint(Point(aEnd.X(), nYMiddle), 1);
}
else if(dynamic_cast<const SdrCaptionObj*>( pObj) != nullptr)
{
bool bVerticalText = ( SID_DRAW_TEXT_VERTICAL == nSlotId ||
......
......@@ -170,6 +170,10 @@ void ConstRectangle::Activate(const sal_uInt16 nSlotId)
m_pWin->SetSdrDrawMode(OBJ_LINE);
break;
case SID_DRAW_MEASURELINE:
m_pWin->SetSdrDrawMode(OBJ_MEASURE);
break;
case SID_DRAW_RECT:
m_pWin->SetSdrDrawMode(OBJ_RECT);
break;
......
......@@ -253,6 +253,7 @@ void SwView::ExecDraw(SfxRequest& rReq)
case SID_LINE_SQUARE_ARROW:
case SID_LINE_ARROWS:
case SID_DRAW_LINE:
case SID_DRAW_MEASURELINE:
case SID_DRAW_RECT:
case SID_DRAW_ELLIPSE:
case SID_DRAW_TEXT:
......
......@@ -502,6 +502,7 @@ void SwView::GetDrawState(SfxItemSet &rSet)
case SID_LINE_CIRCLE_ARROW:
case SID_LINE_SQUARE_ARROW:
case SID_LINE_ARROWS:
case SID_DRAW_MEASURELINE:
case SID_DRAW_RECT:
case SID_DRAW_ELLIPSE:
case SID_DRAW_XPOLYGON_NOFILL:
......
......@@ -27,4 +27,6 @@
<toolbar:toolbaritem xlink:href=".uno:LineArrowCircle"/>
<toolbar:toolbaritem xlink:href=".uno:LineArrowSquare"/>
<toolbar:toolbaritem xlink:href=".uno:Line"/>
<toolbar:toolbarbreak/>
<toolbar:toolbaritem xlink:href=".uno:MeasureLine"/>
</toolbar:toolbar>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment