19#ifndef INCLUDED_EDITENG_NUMITEM_HXX
20#define INCLUDED_EDITENG_NUMITEM_HXX
22#include <rtl/ustring.hxx>
28#include <com/sun/star/style/NumberingType.hpp>
33#include <vcl/font.hxx>
47#define SVX_NO_NUMLEVEL 0x20
48#define SVX_NUM_REL_SIZE_MIN 25
51#define LINK_TOKEN 0x80
58 static css::uno::Reference<css::text::XNumberingFormatter>
xFormatter;
69 OUString GetNumStr( sal_Int32 nNo )
const;
70 OUString GetNumStr( sal_Int32 nNo,
const css::lang::Locale& rLocale,
bool bIsLegal =
false )
const;
80 return css::style::NumberingType::NUMBER_NONE !=
nNumType &&
81 css::style::NumberingType::CHAR_SPECIAL !=
nNumType &&
82 css::style::NumberingType::BITMAP !=
nNumType;
145 std::unique_ptr<SvxBrushItem>
150 std::optional<vcl::Font>
155 bool mbIsLegal =
false;
172 void SetPrefix(
const OUString& rSet);
174 void SetSuffix(
const OUString& rSet);
177 void SetListFormat(
const OUString& rPrefix,
const OUString& rSuffix,
int nLevel);
178 void SetListFormat(std::optional<OUString> oSet = std::nullopt);
180 OUString GetListFormat(
bool bIncludePrefixSuffix =
true)
const;
183 virtual OUString GetCharFormatName()
const;
185 void SetBulletFont(
const vcl::Font* pFont);
186 const std::optional<vcl::Font>&
GetBulletFont()
const {
return pBulletFont; }
199 virtual void SetGraphicBrush(
const SvxBrushItem* pBrushItem,
const Size* pSize =
nullptr,
const sal_Int16* pOrient =
nullptr);
201 void SetGraphic(
const OUString& rName );
202 sal_Int16 GetVertOrient()
const;
207 void SetPositionAndSpaceMode( SvxNumPositionAndSpaceMode ePositionAndSpaceMode );
210 sal_Int32 GetAbsLSpace()
const;
212 sal_Int32 GetFirstLineOffset()
const;
214 short GetCharTextDistance()
const;
216 void SetLabelFollowedBy(
const LabelFollowedBy eLabelFollowedBy );
218 OUString GetLabelFollowedByAsString()
const;
219 void SetListtabPos(
const tools::Long nListtabPos );
221 void SetFirstLineIndent(
const tools::Long nFirstLineIndent );
226 static Size GetGraphicSizeMM100(
const Graphic* pGraphic);
227 static OUString CreateRomanString( sal_Int32 nNo,
bool bUpper );
273 eDefaultNumberFormatPositionAndSpaceMode
281 bool operator!=( const
SvxNumRule& rRule )
const {
return !(*
this == rRule);}
290 void SetLevel(sal_uInt16 nLevel, const
SvxNumberFormat& rFmt,
bool bIsValid = true);
293 bool IsContinuousNumbering()
const
294 {
return bContinuousNumbering;}
296 {bContinuousNumbering = bSet;}
300 {
return bool(nFeatureFlags & nFeature); }
304 OUString MakeNumString(
const SvxNodeNum& )
const;
308 void UnLinkGraphics();
328 virtual bool QueryValue( css::uno::Any& rVal,
sal_uInt8 nMemberId = 0 )
const override;
329 virtual bool PutValue(
const css::uno::Any& rVal,
sal_uInt8 nMemberId )
override;
sal_uInt8 GetLevel() const
sal_uInt16 nLevelVal[SVX_MAX_NUM]
SvxNodeNum & operator=(const SvxNodeNum &rCpy)
void SetLevel(sal_uInt8 nVal)
const sal_uInt16 * GetLevelVal() const
sal_uInt16 * GetLevelVal()
SvxNumRule & GetNumRule()
const SvxNumRule & GetNumRule() const
sal_uInt16 GetLevelCount() const
SvxNumRuleFlags GetFeatureFlags() const
void SetContinuousNumbering(bool bSet)
static sal_Int32 nRefCount
SvxNumRuleType GetNumRuleType() const
SvxNumRuleType eNumberingType
bool bContinuousNumbering
SvxNumRuleFlags nFeatureFlags
bool IsFeatureSupported(SvxNumRuleFlags nFeature) const
void SetFeatureFlag(SvxNumRuleFlags nFlag, bool bSet=true)
bool IsTextFormat() const
static css::uno::Reference< css::text::XNumberingFormatter > xFormatter
bool IsShowSymbol() const
void SetNumberingType(SvxNumType nSet)
SvxNumType GetNumberingType() const
void SetShowSymbol(bool bSet)
static sal_Int32 nRefCount
bool operator==(const EditLine &r1, const EditLine &r2)
#define EDITENG_DLLPUBLIC
struct _xmlTextWriter * xmlTextWriterPtr
void * FontToSubsFontConverter
sal_Int32 nFirstLineOffset
css::uno::Reference< css::animations::XAnimationNode > Clone(const css::uno::Reference< css::animations::XAnimationNode > &xSourceNode, const SdPage *pSource=nullptr, const SdPage *pTarget=nullptr)
#define SVX_NUM_REL_SIZE_MIN
struct _xmlTextWriter * xmlTextWriterPtr
SvxNumRule SvxConvertNumRule(const SvxNumRule &rRule, sal_uInt16 nLevel, SvxNumRuleType eType)
SvxNumType
these must match the values in css::style::NumberingType