22#include <svx/svxids.hrc>
59#include <stlsheet.hxx>
78 sal_uInt16 nSlot = rReq.
GetSlot();
81 std::unique_ptr<OutlineViewModelChangeGuard, o3tl::default_delete<OutlineViewModelChangeGuard>> aGuard;
106 if( rReq.
GetSlot() == SID_STYLE_APPLY )
139 for( sal_Int32 nPara = nStartPara; nPara <= nEndPara; nPara++ )
144 if (pStyleSheet !=
nullptr)
148 aAttr.
Put( aTmpSet,
false );
150 std::unique_ptr<SvxLRSpaceItem> pNewItem(rItem.
Clone());
153 if( nSlot == SID_INC_INDENT )
158 nLeft = std::max<::tools::Long>( nLeft, 0 );
160 pNewItem->SetLeftValue(
static_cast<sal_uInt16
>(nLeft) );
163 aNewAttrs.
Put( std::move(pNewItem) );
179 case SID_PARASPACE_INCREASE:
180 case SID_PARASPACE_DECREASE:
195 for( sal_Int32 nPara = nStartPara; nPara <= nEndPara; nPara++ )
200 if (pStyleSheet !=
nullptr)
204 aAttr.
Put( aTmpSet,
false );
206 std::unique_ptr<SvxULSpaceItem> pNewItem(rItem.
Clone());
209 if( nSlot == SID_PARASPACE_INCREASE )
214 nUpper = std::max<::tools::Long>( nUpper, 0 );
216 pNewItem->SetUpper(
static_cast<sal_uInt16
>(nUpper) );
219 if( nSlot == SID_PARASPACE_INCREASE )
224 nLower = std::max<::tools::Long>( nLower, 0 );
226 pNewItem->SetLower(
static_cast<sal_uInt16
>(nLower) );
229 aNewAttrs.
Put( std::move(pNewItem) );
248 std::unique_ptr<SvxULSpaceItem> pNewItem(rItem.
Clone());
251 if( nSlot == SID_PARASPACE_INCREASE )
256 nUpper = std::max<::tools::Long>( nUpper, 0 );
258 pNewItem->SetUpper(
static_cast<sal_uInt16
>(nUpper) );
261 if( nSlot == SID_PARASPACE_INCREASE )
266 nLower = std::max<::tools::Long>( nLower, 0 );
268 pNewItem->SetLower(
static_cast<sal_uInt16
>(nLower) );
270 aNewAttrs.
Put( std::move(pNewItem) );
284 case SID_OUTLINE_LEFT:
299 case SID_OUTLINE_RIGHT:
314 case SID_ATTR_PARA_LRSPACE:
317 SID_ATTR_PARA_LRSPACE));
322 aEditAttr.
Put( aLRSpace );
329 case SID_HANGING_INDENT:
339 aLRSpaceSet.
Put( aNewMargin );
359 case SID_OUTLINE_DOWN:
372 case SID_TEXTDIRECTION_LEFT_TO_RIGHT:
373 case SID_TEXTDIRECTION_TOP_TO_BOTTOM:
381 nSlot == SID_TEXTDIRECTION_LEFT_TO_RIGHT ?
382 css::text::WritingMode_LR_TB : css::text::WritingMode_TB_RL,
391 case FN_NUM_BULLET_ON:
395 bool bMasterPage =
false;
418 OUString sStyleName(
SdResId(STR_PSEUDOSHEET_OUTLINE) +
" 1");
420 if( pFirstStyleSheet )
430 for (sal_Int32 nPara = nStartPara; nPara <= nEndPara; ++nPara)
432 sal_uInt16 nLevel = pOL->
GetDepth(nPara);
459 case SID_GROW_FONT_SIZE:
460 case SID_SHRINK_FONT_SIZE:
477 OUString aReplaceText;
481 if (!aReplaceText.isEmpty())
498 case SID_ATTR_CHAR_WEIGHT:
506 case SID_ATTR_CHAR_POSTURE:
514 case SID_ATTR_CHAR_UNDERLINE:
523 case SID_ULINE_VAL_NONE:
529 case SID_ULINE_VAL_SINGLE:
530 case SID_ULINE_VAL_DOUBLE:
531 case SID_ULINE_VAL_DOTTED:
538 case SID_ULINE_VAL_SINGLE:
541 case SID_ULINE_VAL_DOUBLE:
544 case SID_ULINE_VAL_DOTTED:
550 aNewAttr.
Put(aUnderline);
554 case SID_ATTR_CHAR_OVERLINE:
562 case SID_ATTR_CHAR_CONTOUR:
567 case SID_ATTR_CHAR_SHADOWED:
572 case SID_ATTR_CHAR_CASEMAP:
577 case SID_ATTR_CHAR_STRIKEOUT:
585 case SID_ATTR_PARA_ADJUST_LEFT:
590 case SID_ATTR_PARA_ADJUST_CENTER:
595 case SID_ATTR_PARA_ADJUST_RIGHT:
600 case SID_ATTR_PARA_ADJUST_BLOCK:
605 case SID_ATTR_PARA_LINESPACE_10:
609 aNewAttr.
Put( aItem );
612 case SID_ATTR_PARA_LINESPACE_15:
616 aNewAttr.
Put( aItem );
619 case SID_ATTR_PARA_LINESPACE_20:
623 aNewAttr.
Put( aItem );
626 case SID_SET_SUPER_SCRIPT:
631 if( eEsc == SvxEscapement::Superscript )
635 aNewAttr.
Put( aItem );
638 case SID_SET_SUB_SCRIPT:
643 if( eEsc == SvxEscapement::Subscript )
647 aNewAttr.
Put( aItem );
652 case SID_ATTR_CHAR_FONT:
654 Execute( SID_CHAR_DLG, SfxCallMode::ASYNCHRON );
656 case SID_ATTR_CHAR_FONTHEIGHT:
658 Execute( SID_CHAR_DLG, SfxCallMode::ASYNCHRON );
660 case SID_ATTR_CHAR_COLOR:
665 rReq.
Done( aNewAttr );
668 else if ( nSlot == SID_ATTR_PARA_LEFT_TO_RIGHT ||
669 nSlot == SID_ATTR_PARA_RIGHT_TO_LEFT )
671 bool bLeftToRight = nSlot == SID_ATTR_PARA_LEFT_TO_RIGHT;
675 nAdjust = pAdjustItem->GetAdjust();
680 if(
nAdjust == SvxAdjust::Right )
686 if(
nAdjust == SvxAdjust::Left )
690 rReq.
Done( aNewAttr );
695 else if ( nSlot == SID_ATTR_CHAR_FONT ||
696 nSlot == SID_ATTR_CHAR_FONTHEIGHT ||
697 nSlot == SID_ATTR_CHAR_POSTURE ||
698 nSlot == SID_ATTR_CHAR_WEIGHT )
701 SvtScriptType nScriptType = SvtScriptType::LATIN | SvtScriptType::ASIAN | SvtScriptType::COMPLEX;
702 if (nSlot == SID_ATTR_CHAR_FONT)
708 aNewAttr.
Put( aSvxScriptSetItem.GetItemSet() );
709 rReq.
Done( aNewAttr );
712 else if (nSlot == SID_ATTR_PARA_ADJUST_LEFT ||
713 nSlot == SID_ATTR_PARA_ADJUST_CENTER ||
714 nSlot == SID_ATTR_PARA_ADJUST_RIGHT ||
715 nSlot == SID_ATTR_PARA_ADJUST_BLOCK)
719 case SID_ATTR_PARA_ADJUST_LEFT:
724 case SID_ATTR_PARA_ADJUST_CENTER:
729 case SID_ATTR_PARA_ADJUST_RIGHT:
734 case SID_ATTR_PARA_ADJUST_BLOCK:
740 rReq.
Done( aNewAttr );
743 else if(nSlot == SID_ATTR_CHAR_KERNING)
746 rReq.
Done( aNewAttr );
749 else if(nSlot == SID_SET_SUPER_SCRIPT )
754 if( eEsc == SvxEscapement::Superscript )
758 aNewAttr.
Put( aItem );
759 rReq.
Done( aNewAttr );
762 else if( nSlot == SID_SET_SUB_SCRIPT )
767 if( eEsc == SvxEscapement::Subscript )
771 aNewAttr.
Put( aItem );
772 rReq.
Done( aNewAttr );
776 std::unique_ptr<SfxItemSet> pNewArgs = pArgs->
Clone();
779 std::unique_ptr<SvxColorItem> pColorItem;
780 if (nSlot == SID_ATTR_CHAR_COLOR)
782 pColorItem = std::make_unique<SvxColorItem>(pNewArgs->Get(
EE_CHAR_COLOR));
797 pColorItem->setComplexColor(aComplexColor);
798 pNewArgs->Put(std::move(pColorItem));
813 if ( nSlot != SID_STYLE_APPLY && pOLV )
const OUString & GetValue() const
const SfxItemSet & GetEmptyItemSet() const
void AdjustDepth(short nDX)
vcl::Window * GetWindow() const
ESelection GetSelection() const
void AdjustHeight(tools::Long nDY)
Outliner * GetOutliner() const
void SetAttribs(const SfxItemSet &)
EditView & GetEditView() const
void ShowCursor(bool bGotoCursor=true, bool bActivate=false)
sal_Int16 GetDepth(sal_Int32 nPara) const
void SetParaAttribs(sal_Int32 nPara, const SfxItemSet &)
void UndoActionStart(sal_uInt16 nId)
SfxItemSet const & GetParaAttribs(sal_Int32 nPara) const
SfxStyleSheet * GetStyleSheet(sal_Int32 nPara)
sal_Int32 GetParagraphCount() const
SAL_DLLPRIVATE SfxItemPool & GetPool()
PageKind GetPageKind() const
static void setDefaultOutlineNumberFormatBulletAndIndent(sal_uInt16 i, SvxNumberFormat &rNumberFormat)
static void BroadcastSdStyleSheetChange(SfxStyleSheetBase const *pStyleSheet, PresentationObjects ePO, SfxStyleSheetBasePool *pSSPool)
const OutlinerView * GetTextEditOutlinerView() const
virtual SvtScriptType GetScriptType() const
SdrPage * GetPage() const
bool IsMasterPage() const
SdrPageView * GetSdrPageView() const
void Invalidate(sal_uInt16 nId)
const SfxPoolItem * Execute(sal_uInt16 nSlot, SfxCallMode nCall=SfxCallMode::SLOT, const SfxPoolItem **pArgs=nullptr, sal_uInt16 nModi=0, const SfxPoolItem **pInternalArgs=nullptr)
sal_uInt16 GetWhich(sal_uInt16 nSlot, bool bDeep=true) const
const WhichRangesContainer & GetRanges() const
SfxItemPool * GetPool() const
virtual std::unique_ptr< SfxItemSet > Clone(bool bItems=true, SfxItemPool *pToPool=nullptr) const
const T * GetItemIfSet(TypedWhichId< T > nWhich, bool bSrchInParent=true) const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem * Put(const SfxPoolItem &rItem, sal_uInt16 nWhich)
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
sal_uInt16 GetSlot() const
const SfxItemSet * GetArgs() const
const T * GetArg(sal_uInt16 nSlotId) const
void Done(bool bRemove=false)
SfxItemPool & GetPool() const
const SfxPoolItem * GetItem(sal_uInt16 nSlotId) const
virtual void Invalidate(sal_uInt16 nId=0)
SfxViewShell * GetViewShell() const
virtual SfxStyleSheetBase * Find(const OUString &, SfxStyleFamily eFam, SfxStyleSearchBits n=SfxStyleSearchBits::All)
virtual SfxItemSet & GetItemSet()
SfxBindings & GetBindings()
SfxDispatcher * GetDispatcher()
vcl::Window * GetWindow() const
void SetEscapement(const SvxEscapement eNew)
const FontList * GetFontList() const
short GetTextFirstLineOffset() const
void SetRight(const tools::Long nR, const sal_uInt16 nProp=100)
tools::Long GetRight() const
virtual SvxLRSpaceItem * Clone(SfxItemPool *pPool=nullptr) const override
void SetTextLeft(const tools::Long nL, const sal_uInt16 nProp=100)
tools::Long GetTextLeft() const
void SetTextFirstLineOffset(const short nF, const sal_uInt16 nProp=100)
void SetPropLineSpace(const sal_uInt16 nProp)
const SvxNumRule & GetNumRule() const
const SvxNumberFormat & GetLevel(sal_uInt16 nLevel) const
void SetLevel(sal_uInt16 nLevel, const SvxNumberFormat &rFmt, bool bIsValid=true)
void SetNumberingType(SvxNumType nSet)
SvxNumType GetNumberingType() const
void PutItemForScriptType(SvtScriptType nScriptType, const SfxPoolItem &rItem)
virtual SvxULSpaceItem * Clone(SfxItemPool *pPool=nullptr) const override
void setSchemeColor(ThemeColorType eType)
void addTransformation(Transformation const &rTransform)
virtual SfxStyleSheetBasePool * GetStyleSheetPool() override
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
static void ChangeFontSize(bool, OutlinerView *, const FontList *, ::sd::View *)
Derivative of sd::View for the outline mode |* .
void Execute(SfxRequest &rReq)
Process SfxRequests.
SD_DLLPUBLIC DrawDocShell * GetDocSh() const
::sd::Window * GetActiveWindow() const
The active window is usually the mpContentWindow.
SD_DLLPUBLIC SfxViewFrame * GetViewFrame() const
DrawDocShell * GetDocSh() const
virtual bool SetAttributes(const SfxItemSet &rSet, bool bReplaceAll=false, bool bSlide=false, bool bMaster=false)
virtual void GetAttributes(SfxItemSet &rTargetSet, bool bOnlyHardAttr=false) const
virtual SdrEndTextEditKind SdrEndTextEdit(bool bDontDeleteReally=false) override
ends current text editing
SdDrawDocument & GetDoc() const
An SdWindow contains the actual working area of ViewShell.
constexpr TypedWhichId< SvxContourItem > EE_CHAR_OUTLINE(EE_CHAR_START+8)
constexpr TypedWhichId< SvxUnderlineItem > EE_CHAR_UNDERLINE(EE_CHAR_START+5)
constexpr TypedWhichId< SvxAdjustItem > EE_PARA_JUST(EE_PARA_START+16)
constexpr TypedWhichId< SvxShadowedItem > EE_CHAR_SHADOW(EE_CHAR_START+9)
constexpr TypedWhichId< SvxULSpaceItem > EE_PARA_ULSPACE(EE_PARA_START+14)
constexpr TypedWhichId< SvxOverlineItem > EE_CHAR_OVERLINE(EE_CHAR_START+29)
constexpr TypedWhichId< SvxWeightItem > EE_CHAR_WEIGHT(EE_CHAR_START+4)
constexpr TypedWhichId< SvxLRSpaceItem > EE_PARA_LRSPACE(EE_PARA_START+13)
constexpr TypedWhichId< SvxColorItem > EE_CHAR_COLOR(EE_CHAR_START+0)
constexpr TypedWhichId< SvxCrossedOutItem > EE_CHAR_STRIKEOUT(EE_CHAR_START+6)
constexpr TypedWhichId< SvxPostureItem > EE_CHAR_ITALIC(EE_CHAR_START+7)
constexpr TypedWhichId< SvxLineSpacingItem > EE_PARA_SBL(EE_PARA_START+15)
constexpr TypedWhichId< SvxEscapementItem > EE_CHAR_ESCAPEMENT(EE_CHAR_START+10)
constexpr TypedWhichId< SvxFrameDirectionItem > EE_PARA_WRITINGDIR(EE_PARA_START+0)
constexpr TypedWhichId< SvxCaseMapItem > EE_CHAR_CASEMAP(EE_CHAR_START+30)
constexpr TypedWhichId< SvxNumBulletItem > EE_PARA_NUMBULLET(EE_PARA_START+5)
#define LINE_SPACE_DEFAULT_HEIGHT
constexpr ThemeColorType convertToThemeColorType(sal_Int32 nIndex)
void ReplaceTextWithSynonym(EditView &rEditView, const OUString &rSynonmText)
OUString SdResId(TranslateId aId)
constexpr TypedWhichId< SvxWritingModeItem > SDRATTR_TEXTDIRECTION(SDRATTR_NOTPERSIST_FIRST+34)