summaryrefslogtreecommitdiff
path: root/writerfilter/source/dmapper/NumberingManager.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'writerfilter/source/dmapper/NumberingManager.hxx')
-rw-r--r--writerfilter/source/dmapper/NumberingManager.hxx259
1 files changed, 0 insertions, 259 deletions
diff --git a/writerfilter/source/dmapper/NumberingManager.hxx b/writerfilter/source/dmapper/NumberingManager.hxx
deleted file mode 100644
index 0a4c3e18f8e6..000000000000
--- a/writerfilter/source/dmapper/NumberingManager.hxx
+++ /dev/null
@@ -1,259 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef INCLUDED_WRITERFILTER_SOURCE_DMAPPER_NUMBERINGMANAGER_HXX
-#define INCLUDED_WRITERFILTER_SOURCE_DMAPPER_NUMBERINGMANAGER_HXX
-
-#include "PropertyMap.hxx"
-
-#include "DomainMapper.hxx"
-#include "LoggedResources.hxx"
-#include "StyleSheetTable.hxx"
-
-#include <editeng/numitem.hxx>
-
-#include <com/sun/star/container/XIndexReplace.hpp>
-#include <com/sun/star/awt/XBitmap.hpp>
-
-namespace writerfilter::dmapper {
-
-class DomainMapper;
-class StyleSheetEntry;
-
-
-/** Class representing the numbering level properties.
- */
-class ListLevel : public PropertyMap
-{
- sal_Int32 m_nIStartAt; //LN_CT_Lvl_start
- sal_Int32 m_nStartOverride;
- sal_Int32 m_nNFC; //LN_CT_Lvl_numFmt
- /// LN_CT_NumFmt_format, in case m_nNFC is custom.
- OUString m_aCustomNumberFormat;
- sal_Int16 m_nXChFollow; //LN_IXCHFOLLOW
- OUString m_sBulletChar;
- css::awt::Size m_aGraphicSize;
- css::uno::Reference<css::awt::XBitmap> m_xGraphicBitmap;
- std::optional<sal_Int32> m_nTabstop;
- tools::SvRef< StyleSheetEntry > m_pParaStyle;
- bool m_outline;
- bool m_bHasValues = false;
-
-public:
-
- typedef tools::SvRef< ListLevel > Pointer;
-
- ListLevel() :
- m_nIStartAt(-1)
- ,m_nStartOverride(-1)
- ,m_nNFC(-1)
- ,m_nXChFollow(SvxNumberFormat::LISTTAB)
- ,m_outline(false)
- {}
-
- // Setters for the import
- void SetValue( Id nId, sal_Int32 nValue );
- void SetCustomNumberFormat(const OUString& rValue);
- void SetBulletChar( const OUString& sValue ) { m_sBulletChar = sValue; };
- void SetGraphicSize( const css::awt::Size& aValue ) { m_aGraphicSize = aValue; };
-
- void SetGraphicBitmap(css::uno::Reference<css::awt::XBitmap> const& xGraphicBitmap)
- { m_xGraphicBitmap = xGraphicBitmap; }
- void SetParaStyle( const tools::SvRef< StyleSheetEntry >& pStyle );
-
- // Getters
- const OUString& GetBulletChar( ) const { return m_sBulletChar; };
- const tools::SvRef< StyleSheetEntry >& GetParaStyle( ) const { return m_pParaStyle; };
- bool isOutlineNumbering() const { return m_outline; }
- sal_Int32 GetStartOverride() const { return m_nStartOverride; };
- /// Determines if SetValue() was called at least once.
- bool HasValues() const;
-
- // UNO mapping functions
- css::uno::Sequence<css::beans::PropertyValue> GetProperties(bool bDefaults);
-
- css::uno::Sequence<css::beans::PropertyValue> GetCharStyleProperties();
-private:
-
- css::uno::Sequence<css::beans::PropertyValue> GetLevelProperties(bool bDefaults);
-
- void AddParaProperties(css::uno::Sequence<css::beans::PropertyValue>* pProps);
-};
-
-/// Represents a numbering picture bullet: an id and a graphic.
-class NumPicBullet final : public virtual SvRefBase
-{
-public:
- typedef tools::SvRef<NumPicBullet> Pointer;
- NumPicBullet();
- ~NumPicBullet() override;
-
- void SetId(sal_Int32 nId);
- sal_Int32 GetId() const { return m_nId;}
- void SetShape(css::uno::Reference<css::drawing::XShape> const& xShape);
- const css::uno::Reference<css::drawing::XShape>& GetShape() const { return m_xShape; }
-private:
- sal_Int32 m_nId;
- css::uno::Reference<css::drawing::XShape> m_xShape;
-};
-
-class AbstractListDef : public virtual SvRefBase
-{
-private:
- // The ID member reflects either the abstractNumId or the numId
- // depending on the use of the class
- sal_Int32 m_nId;
-
- // Properties of each level. This can also reflect the overridden
- // levels of a numbering.
- ::std::vector< ListLevel::Pointer > m_aLevels;
-
- // Only used during the numbering import
- ListLevel::Pointer m_pCurrentLevel;
-
- // The style name linked to.
- OUString m_sNumStyleLink;
-
- // This abstract numbering is a base definition for this style
- OUString m_sStyleLink;
-
- /// list id to use for all derived numbering definitions
- std::optional<OUString> m_oListId;
-
-public:
- typedef tools::SvRef< AbstractListDef > Pointer;
-
- AbstractListDef( );
- virtual ~AbstractListDef( ) override;
-
- // Setters using during the import
- void SetId( sal_Int32 nId ) { m_nId = nId; };
- static void SetValue( sal_uInt32 nSprmId );
-
- // Accessors
- sal_Int32 GetId( ) const { return m_nId; };
-
- sal_Int16 Size( ) { return sal_Int16( m_aLevels.size( ) ); };
- ListLevel::Pointer GetLevel( sal_uInt16 nLvl );
- void AddLevel( sal_uInt16 nLvl );
-
- const ListLevel::Pointer& GetCurrentLevel( ) const { return m_pCurrentLevel; };
-
- css::uno::Sequence< css::uno::Sequence<css::beans::PropertyValue> > GetPropertyValues(bool bDefaults);
-
- void SetNumStyleLink(const OUString& sValue) { m_sNumStyleLink = sValue; };
- const OUString& GetNumStyleLink() const { return m_sNumStyleLink; };
-
- void SetStyleLink(const OUString& sValue) { m_sStyleLink = sValue; };
- const OUString& GetStyleLink() const { return m_sStyleLink; };
-
- const OUString& MapListId(OUString const& rId);
- bool isOutlineNumbering( sal_uInt16 nLvl ) { return GetLevel(nLvl) && GetLevel(nLvl)->isOutlineNumbering(); }
-};
-
-class ListDef : public AbstractListDef
-{
-private:
- // Pointer to the abstract numbering
- AbstractListDef::Pointer m_pAbstractDef;
-
- // Cache for the UNO numbering rules
- css::uno::Reference< css::container::XIndexReplace > m_xNumRules;
-
- /// mapped list style name
- OUString m_StyleName;
-
- /// not custom outline parent levels
- sal_Int16 m_nDefaultParentLevels;
-
-public:
- typedef tools::SvRef< ListDef > Pointer;
-
- ListDef( );
- virtual ~ListDef( ) override;
-
- // Accessors
- void SetAbstractDefinition( AbstractListDef::Pointer pAbstract ) { m_pAbstractDef = pAbstract; };
- const AbstractListDef::Pointer& GetAbstractDefinition( ) const { return m_pAbstractDef; };
-
- // Mapping functions
- const OUString & GetStyleName() const { return m_StyleName; };
- const OUString & GetStyleName(sal_Int32 nId, css::uno::Reference<css::container::XNameContainer> const& xStyles);
-
- sal_Int16 GetDefaultParentLevels() const { return m_nDefaultParentLevels; };
-
- css::uno::Sequence< css::uno::Sequence<css::beans::PropertyValue> > GetMergedPropertyValues();
-
- void CreateNumberingRules(DomainMapper& rDMapper, css::uno::Reference<css::lang::XMultiServiceFactory> const& xFactory);
-
- const css::uno::Reference<css::container::XIndexReplace>& GetNumberingRules() const { return m_xNumRules; }
-
-};
-
-/** This class provides access to the defined numbering styles.
- */
-class ListsManager :
- public LoggedProperties,
- public LoggedTable
-{
-private:
-
- DomainMapper& m_rDMapper;
- css::uno::Reference<css::lang::XMultiServiceFactory> m_xFactory;
-
- // The numbering entries
- std::vector< NumPicBullet::Pointer > m_aNumPicBullets;
- std::vector< AbstractListDef::Pointer > m_aAbstractLists;
- std::vector< ListDef::Pointer > m_aLists;
-
-
- // These members are used for import only
- AbstractListDef::Pointer m_pCurrentDefinition;
- NumPicBullet::Pointer m_pCurrentNumPicBullet;
-
- AbstractListDef::Pointer GetAbstractList( sal_Int32 nId );
-
- // Properties
- virtual void lcl_attribute( Id nName, Value & rVal ) override;
- virtual void lcl_sprm(Sprm & sprm) override;
-
- // Table
- virtual void lcl_entry(writerfilter::Reference<Properties>::Pointer_t ref) override;
-
-public:
-
- ListsManager(DomainMapper& rDMapper, const css::uno::Reference<css::lang::XMultiServiceFactory>& xFactory);
- virtual ~ListsManager() override;
-
- typedef tools::SvRef< ListsManager > Pointer;
-
- ListDef::Pointer GetList( sal_Int32 nId );
-
- // Mapping methods
- void CreateNumberingRules( );
-
- // Dispose the NumPicBullets
- void DisposeNumPicBullets( );
-};
-
-}
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */