Files
libreoffice/sw/inc/format.hxx

338 lines
17 KiB
C++
Raw Normal View History

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
re-base on ALv2 code. Includes: Patches contributed by Oliver-Rainer Wittmann sw34bf06: #i117783# - Writer's implementation of XPagePrintable - apply print settings to new printing routines http://svn.apache.org/viewvc?view=revision&revision=1172115 sw34bf06: #o12311627# use <rtl_random> methods to create unique ids for list styles and list ids http://svn.apache.org/viewvc?view=revision&revision=1172112 sw34bf06 #i114725#,#i115828# - method <SwDoc::ClearDoc()> - clear list structures completely http://svn.apache.org/viewvc?view=revision&revision=1172122 i#118572 - remove ui string and help content regarding usage of Java Mail in Writer's Mail Merge as Java Mail is not used. http://svn.apache.org/viewvc?view=revision&revision=1197035 Patches contributed by Mathias Bauer cws mba34issues01: #i117718#: provide filter name in case storage of medium does not allow to detect one http://svn.apache.org/viewvc?view=revision&revision=1172350 cws mba34issues01: #i117721#: directly provide parameters retrieved from SfxMedium http://svn.apache.org/viewvc?view=revision&revision=1172353 gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1396797 http://svn.apache.org/viewvc?view=revision&revision=1397315 cws mba34issues01: #i117723#: convert assertion into trace http://svn.apache.org/viewvc?view=revision&revision=1172355 cws mba34issues01: #i117699#: keep layout alive until swdoc dies http://svn.apache.org/viewvc?view=revision&revision=1172362 cws mba34issues01: #i117943#: missing color attributes in RTF clipboard http://svn.apache.org/viewvc?view=revision&revision=1172363 Patch contributed by Henning Brinkmann imported patch i#103878 http://svn.apache.org/viewvc?view=revision&revision=1172109 Patches contributed by Michael Stahl sw34bf06: #i117955#: WW8 export: disable storing of section breaks in endnotes http://svn.apache.org/viewvc?view=revision&revision=1172119 Patch contributed by imacat Fixed the Asian language work count. http://svn.apache.org/viewvc?view=revision&revision=1241345 Patch contributed by Pedro Giffuni i#20878 - Add comment with BZ issue for reference. http://svn.apache.org/viewvc?view=revision&revision=1244517 Patch contributed by Andre Fischer Do not add targets for junit tests when junit is disabled. http://svn.apache.org/viewvc?view=revision&revision=1241508 add writerperfect dependency.
2011-03-31 10:05:04 +02:00
/*
* 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_SW_INC_FORMAT_HXX
#define INCLUDED_SW_INC_FORMAT_HXX
2000-09-18 16:15:01 +00:00
#include <tools/solar.h>
#include "swdllapi.h"
#include <swatrset.hxx>
#include <calbck.hxx>
2000-09-18 16:15:01 +00:00
#include <hintids.hxx>
#include <memory>
2000-09-18 16:15:01 +00:00
class IDocumentSettingAccess;
class IDocumentDrawModelAccess;
class IDocumentLayoutAccess;
class IDocumentTimerAccess;
class IDocumentFieldsAccess;
class IDocumentChartDataProviderAccess;
2000-09-18 16:15:01 +00:00
class SwDoc;
class SfxGrabBagItem;
2000-09-18 16:15:01 +00:00
Related: #i124638# Second step of DrawingLayer FillAttributes... for Writer objects, now added support for Paragraph and PageStyle (including Header and Footer) for direct attributes and style attributes (cherry picked from commit cc25c58f7052827bfebdc9fbeec668c8fa29ed1b) Conflicts: cui/source/factory/dlgfact.cxx cui/source/factory/dlgfact.hxx cui/source/inc/bbdlg.hxx cui/source/inc/cuires.hrc cui/source/tabpages/bbdlg.cxx cui/source/tabpages/bbdlg.src cui/source/tabpages/page.cxx cui/source/tabpages/tparea.cxx include/svx/pagectrl.hxx include/svx/svxdlg.hxx include/svx/svxids.hrc include/xmloff/PageMasterStyleMap.hxx include/xmloff/prstylei.hxx include/xmloff/txtprmap.hxx svx/Package_inc.mk svx/inc/svx/hdft.hxx svx/source/dialog/hdft.cxx svx/source/dialog/pagectrl.cxx svx/source/tbxctrls/tbxcolorupdate.cxx svx/source/unodraw/unobrushitemhelper.cxx sw/Library_sw.mk sw/inc/fillattributes.hxx sw/inc/format.hxx sw/inc/frmatr.hxx sw/inc/frmfmt.hxx sw/inc/hintids.hxx sw/inc/hints.hxx sw/inc/ndtxt.hxx sw/inc/node.hxx sw/inc/swunohelper.hxx sw/inc/unobrushitemhelper.hxx sw/inc/unoprnms.hxx sw/source/core/attr/format.cxx sw/source/core/attr/hints.cxx sw/source/core/doc/docdesc.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfmt.cxx sw/source/core/doc/docnew.cxx sw/source/core/doc/docredln.cxx sw/source/core/doc/poolfmt.cxx sw/source/core/doc/visiturl.cxx sw/source/core/docnode/node.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/inc/rolbck.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/fillattributes.cxx sw/source/core/layout/findfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/txtnode/ndtxt.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtedt.cxx sw/source/core/undo/rolbck.cxx sw/source/core/unocore/swunohelper.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoparagraph.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/chrdlg/paradlg.src sw/source/ui/chrdlg/pardlg.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/uibase/app/docst.cxx sw/source/uibase/app/docstyle.cxx sw/source/uibase/frmdlg/colex.cxx sw/source/uibase/shells/basesh.cxx sw/source/uibase/shells/textsh1.cxx sw/source/uibase/uiview/viewstat.cxx sw/source/uibase/utlui/uitool.cxx xmloff/inc/PageMasterImportContext.hxx xmloff/inc/xmloff/XMLShapeStyleContext.hxx xmloff/source/draw/XMLShapeStyleContext.cxx xmloff/source/draw/sdpropls.hxx xmloff/source/style/PageMasterExportPropMapper.cxx xmloff/source/style/PageMasterImportContext.cxx xmloff/source/style/PageMasterPropHdlFactory.cxx xmloff/source/style/PageMasterStyleMap.cxx xmloff/source/style/prstylei.cxx xmloff/source/text/txtexppr.cxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx xmloff/source/text/txtstyli.cxx Conflicts: svx/source/dialog/hdft.cxx sw/source/core/doc/visiturl.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtatr2.cxx sw/source/core/unocore/unostyle.cxx Change-Id: I7e8779db6c0cbd1e242b63eab888f468f2de509a
2014-06-02 15:00:50 +00:00
namespace drawinglayer { namespace attribute {
class SdrAllFillAttributesHelper;
typedef std::shared_ptr< SdrAllFillAttributesHelper > SdrAllFillAttributesHelperPtr;
Related: #i124638# Second step of DrawingLayer FillAttributes... for Writer objects, now added support for Paragraph and PageStyle (including Header and Footer) for direct attributes and style attributes (cherry picked from commit cc25c58f7052827bfebdc9fbeec668c8fa29ed1b) Conflicts: cui/source/factory/dlgfact.cxx cui/source/factory/dlgfact.hxx cui/source/inc/bbdlg.hxx cui/source/inc/cuires.hrc cui/source/tabpages/bbdlg.cxx cui/source/tabpages/bbdlg.src cui/source/tabpages/page.cxx cui/source/tabpages/tparea.cxx include/svx/pagectrl.hxx include/svx/svxdlg.hxx include/svx/svxids.hrc include/xmloff/PageMasterStyleMap.hxx include/xmloff/prstylei.hxx include/xmloff/txtprmap.hxx svx/Package_inc.mk svx/inc/svx/hdft.hxx svx/source/dialog/hdft.cxx svx/source/dialog/pagectrl.cxx svx/source/tbxctrls/tbxcolorupdate.cxx svx/source/unodraw/unobrushitemhelper.cxx sw/Library_sw.mk sw/inc/fillattributes.hxx sw/inc/format.hxx sw/inc/frmatr.hxx sw/inc/frmfmt.hxx sw/inc/hintids.hxx sw/inc/hints.hxx sw/inc/ndtxt.hxx sw/inc/node.hxx sw/inc/swunohelper.hxx sw/inc/unobrushitemhelper.hxx sw/inc/unoprnms.hxx sw/source/core/attr/format.cxx sw/source/core/attr/hints.cxx sw/source/core/doc/docdesc.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfmt.cxx sw/source/core/doc/docnew.cxx sw/source/core/doc/docredln.cxx sw/source/core/doc/poolfmt.cxx sw/source/core/doc/visiturl.cxx sw/source/core/docnode/node.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/inc/rolbck.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/fillattributes.cxx sw/source/core/layout/findfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/txtnode/ndtxt.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtedt.cxx sw/source/core/undo/rolbck.cxx sw/source/core/unocore/swunohelper.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoparagraph.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/chrdlg/paradlg.src sw/source/ui/chrdlg/pardlg.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/uibase/app/docst.cxx sw/source/uibase/app/docstyle.cxx sw/source/uibase/frmdlg/colex.cxx sw/source/uibase/shells/basesh.cxx sw/source/uibase/shells/textsh1.cxx sw/source/uibase/uiview/viewstat.cxx sw/source/uibase/utlui/uitool.cxx xmloff/inc/PageMasterImportContext.hxx xmloff/inc/xmloff/XMLShapeStyleContext.hxx xmloff/source/draw/XMLShapeStyleContext.cxx xmloff/source/draw/sdpropls.hxx xmloff/source/style/PageMasterExportPropMapper.cxx xmloff/source/style/PageMasterImportContext.cxx xmloff/source/style/PageMasterPropHdlFactory.cxx xmloff/source/style/PageMasterStyleMap.cxx xmloff/source/style/prstylei.cxx xmloff/source/text/txtexppr.cxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx xmloff/source/text/txtstyli.cxx Conflicts: svx/source/dialog/hdft.cxx sw/source/core/doc/visiturl.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtatr2.cxx sw/source/core/unocore/unostyle.cxx Change-Id: I7e8779db6c0cbd1e242b63eab888f468f2de509a
2014-06-02 15:00:50 +00:00
}}
2012-02-17 10:47:49 +01:00
/// Base class for various Writer styles.
class SW_DLLPUBLIC SwFormat : public SwModify
2000-09-18 16:15:01 +00:00
{
OUString m_aFormatName;
SwAttrSet m_aSet;
2000-09-18 16:15:01 +00:00
sal_uInt16 m_nWhichId;
sal_uInt16 m_nPoolFormatId; /**< Id for "automatically" created formats.
(is not hard attribution!!!) */
sal_uInt16 m_nPoolHelpId; ///< HelpId for this Pool-style.
sal_uInt8 m_nPoolHlpFileId; ///< FilePos to Doc to these style helps.
bool m_bWritten : 1; ///< TRUE: already written.
bool m_bAutoFormat : 1; /**< FALSE: it is a template.
default is true! */
bool m_bFormatInDTOR : 1; /**< TRUE: Format becomes deleted. In order to be able
to recognize this in FormatChg-message!! */
bool m_bAutoUpdateFormat : 1;/**< TRUE: Set attributes of a whole paragraph
at format (UI-side!). */
bool m_bHidden : 1;
std::shared_ptr<SfxGrabBagItem> m_pGrabBagItem; ///< Style InteropGrabBag.
2000-09-18 16:15:01 +00:00
protected:
SwFormat( SwAttrPool& rPool, const sal_Char* pFormatNm,
const sal_uInt16* pWhichRanges, SwFormat *pDrvdFrm, sal_uInt16 nFormatWhich );
SwFormat( SwAttrPool& rPool, const OUString &rFormatNm, const sal_uInt16* pWhichRanges,
SwFormat *pDrvdFrm, sal_uInt16 nFormatWhich );
SwFormat( const SwFormat& rFormat );
virtual void Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNewValue ) SAL_OVERRIDE;
2000-09-18 16:15:01 +00:00
public:
TYPEINFO_OVERRIDE(); ///< Already in base class Client.
2000-09-18 16:15:01 +00:00
virtual ~SwFormat();
SwFormat &operator=(const SwFormat&);
2000-09-18 16:15:01 +00:00
/// for Querying of Writer-functions.
sal_uInt16 Which() const { return m_nWhichId; }
2000-09-18 16:15:01 +00:00
/// Query format information.
virtual bool GetInfo( SfxPoolItem& ) const SAL_OVERRIDE;
2000-09-18 16:15:01 +00:00
/// Copy attributes even among documents.
void CopyAttrs( const SwFormat&, bool bReplace=true );
2000-09-18 16:15:01 +00:00
/// Delete all attributes that are not in rFormat.
2000-09-18 16:15:01 +00:00
void DelDiffs( const SfxItemSet& rSet );
void DelDiffs( const SwFormat& rFormat ) { DelDiffs( rFormat.GetAttrSet() ); }
2000-09-18 16:15:01 +00:00
/// 0 is Default.
bool SetDerivedFrom(SwFormat *pDerivedFrom = 0);
2000-09-18 16:15:01 +00:00
/// If bInParents is FALSE, search only in this format for attribute.
Merge back branch alg_writerframes to trunk (cherry picked from commit b635b4fa4e42053d30ab639643d2236a20243f62) Conflicts: comphelper/inc/comphelper/TypeGeneration.hxx comphelper/source/property/TypeGeneration.cxx cui/source/factory/dlgfact.hxx cui/source/inc/cuitabarea.hxx cui/source/tabpages/tabarea.cxx cui/source/tabpages/tabarea.hrc cui/source/tabpages/tabarea.src cui/source/tabpages/tparea.cxx drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx drawinglayer/source/texture/texture.cxx editeng/inc/editeng/unotext.hxx editeng/source/items/frmitems.cxx include/drawinglayer/texture/texture.hxx include/editeng/brushitem.hxx include/svx/sdr/primitive2d/sdrdecompositiontools.hxx include/svx/svxids.hrc include/xmloff/xmltypes.hxx reportdesign/source/ui/misc/UITools.cxx sc/source/ui/drawfunc/drawsh.cxx sfx2/source/dialog/tabdlg.cxx svl/source/undo/undo.cxx svx/inc/svx/unoshprp.hxx sw/Library_sw.mk sw/inc/doc.hxx sw/inc/format.hxx sw/inc/frmfmt.hxx sw/inc/swatrset.hxx sw/inc/unomap.hxx sw/inc/unoprnms.hxx sw/source/core/access/accpara.cxx sw/source/core/attr/format.cxx sw/source/core/attr/swatrset.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfly.cxx sw/source/core/doc/notxtfrm.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/text/inftxt.cxx sw/source/core/text/porfld.cxx sw/source/core/text/txtfly.cxx sw/source/core/txtnode/fntcache.cxx sw/source/core/uibase/app/docst.cxx sw/source/core/uibase/app/docstyle.cxx sw/source/core/uibase/shells/drawdlg.cxx sw/source/core/uibase/shells/frmsh.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/ui/frmdlg/frmdlg.cxx sw/source/ui/frmdlg/frmpage.src sw/source/ui/inc/frmsh.hxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx Change-Id: Id3ffaa83bb5594d287f1ac8f2c1c9cf55c70946d
2014-03-19 16:17:02 +00:00
//UUUUinline
const SfxPoolItem& GetFormatAttr( sal_uInt16 nWhich,
bool bInParents = true ) const;
Merge back branch alg_writerframes to trunk (cherry picked from commit b635b4fa4e42053d30ab639643d2236a20243f62) Conflicts: comphelper/inc/comphelper/TypeGeneration.hxx comphelper/source/property/TypeGeneration.cxx cui/source/factory/dlgfact.hxx cui/source/inc/cuitabarea.hxx cui/source/tabpages/tabarea.cxx cui/source/tabpages/tabarea.hrc cui/source/tabpages/tabarea.src cui/source/tabpages/tparea.cxx drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx drawinglayer/source/texture/texture.cxx editeng/inc/editeng/unotext.hxx editeng/source/items/frmitems.cxx include/drawinglayer/texture/texture.hxx include/editeng/brushitem.hxx include/svx/sdr/primitive2d/sdrdecompositiontools.hxx include/svx/svxids.hrc include/xmloff/xmltypes.hxx reportdesign/source/ui/misc/UITools.cxx sc/source/ui/drawfunc/drawsh.cxx sfx2/source/dialog/tabdlg.cxx svl/source/undo/undo.cxx svx/inc/svx/unoshprp.hxx sw/Library_sw.mk sw/inc/doc.hxx sw/inc/format.hxx sw/inc/frmfmt.hxx sw/inc/swatrset.hxx sw/inc/unomap.hxx sw/inc/unoprnms.hxx sw/source/core/access/accpara.cxx sw/source/core/attr/format.cxx sw/source/core/attr/swatrset.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfly.cxx sw/source/core/doc/notxtfrm.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/text/inftxt.cxx sw/source/core/text/porfld.cxx sw/source/core/text/txtfly.cxx sw/source/core/txtnode/fntcache.cxx sw/source/core/uibase/app/docst.cxx sw/source/core/uibase/app/docstyle.cxx sw/source/core/uibase/shells/drawdlg.cxx sw/source/core/uibase/shells/frmsh.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/ui/frmdlg/frmdlg.cxx sw/source/ui/frmdlg/frmpage.src sw/source/ui/inc/frmsh.hxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx Change-Id: Id3ffaa83bb5594d287f1ac8f2c1c9cf55c70946d
2014-03-19 16:17:02 +00:00
//UUUUinline
SfxItemState GetItemState( sal_uInt16 nWhich, bool bSrchInParent = true,
2000-09-18 16:15:01 +00:00
const SfxPoolItem **ppItem = 0 ) const;
SfxItemState GetBackgroundState(SvxBrushItem &rItem,
bool bSrchInParent = true) const;
virtual bool SetFormatAttr( const SfxPoolItem& rAttr );
virtual bool SetFormatAttr( const SfxItemSet& rSet );
virtual bool ResetFormatAttr( sal_uInt16 nWhich1, sal_uInt16 nWhich2 = 0 );
2000-09-18 16:15:01 +00:00
/** Takes all hints from Delta-Array,
@return count of deleted hints. */
virtual sal_uInt16 ResetAllFormatAttr();
2000-09-18 16:15:01 +00:00
inline SwFormat* DerivedFrom() const { return const_cast<SwFormat*>(static_cast<const SwFormat*>(GetRegisteredIn())); }
inline bool IsDefault() const { return DerivedFrom() == 0; }
2000-09-18 16:15:01 +00:00
inline OUString GetName() const { return m_aFormatName; }
inline bool HasName(const OUString &rName) const { return m_aFormatName == rName; }
void SetName( const OUString& rNewName, bool bBroadcast=false );
inline void SetName( const sal_Char* pNewName,
bool bBroadcast=false);
2000-09-18 16:15:01 +00:00
/// For querying the attribute array.
inline const SwAttrSet& GetAttrSet() const { return m_aSet; }
2000-09-18 16:15:01 +00:00
/** Das Doc wird jetzt am SwAttrPool gesetzt. Dadurch hat man es immer
im Zugriff. */
const SwDoc *GetDoc() const { return m_aSet.GetDoc(); }
SwDoc *GetDoc() { return m_aSet.GetDoc(); }
2000-09-18 16:15:01 +00:00
2011-02-07 02:08:11 +01:00
/// Provides access to the document settings interface.
const IDocumentSettingAccess* getIDocumentSettingAccess() const;
2011-02-07 02:08:11 +01:00
/// Provides access to the document draw model interface.
const IDocumentDrawModelAccess* getIDocumentDrawModelAccess() const;
IDocumentDrawModelAccess* getIDocumentDrawModelAccess();
2011-02-07 02:08:11 +01:00
/// Provides access to the document layout interface.
const IDocumentLayoutAccess* getIDocumentLayoutAccess() const;
IDocumentLayoutAccess* getIDocumentLayoutAccess();
2011-02-07 02:08:11 +01:00
/// Provides access to the document idle timer interface.
IDocumentTimerAccess* getIDocumentTimerAccess();
2011-02-07 02:08:11 +01:00
/// Provides access to the document idle timer interface.
IDocumentFieldsAccess* getIDocumentFieldsAccess();
2011-02-07 02:08:11 +01:00
/// Gives access to the chart data-provider.
IDocumentChartDataProviderAccess* getIDocumentChartDataProviderAccess();
/// Get and set Pool style IDs.
sal_uInt16 GetPoolFormatId() const { return m_nPoolFormatId; }
void SetPoolFormatId( sal_uInt16 nId ) { m_nPoolFormatId = nId; }
2000-09-18 16:15:01 +00:00
/// Get and set Help-IDs for document templates.
sal_uInt16 GetPoolHelpId() const { return m_nPoolHelpId; }
void SetPoolHelpId( sal_uInt16 nId ) { m_nPoolHelpId = nId; }
sal_uInt8 GetPoolHlpFileId() const { return m_nPoolHlpFileId; }
void SetPoolHlpFileId( sal_uInt8 nId ) { m_nPoolHlpFileId = nId; }
2011-02-07 02:08:11 +01:00
/// Get attribute-description. Returns passed string.
2000-09-18 16:15:01 +00:00
void GetPresentation( SfxItemPresentation ePres,
SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric, OUString &rText ) const
{ m_aSet.GetPresentation( ePres, eCoreMetric, ePresMetric, rText ); }
2011-02-07 02:08:11 +01:00
/// Format-ID for reading/writing:
void ResetWritten() { m_bWritten = false; }
2000-09-18 16:15:01 +00:00
/// Query / set AutoFormat-flag.
bool IsAuto() const { return m_bAutoFormat; }
void SetAuto( bool bNew = false ) { m_bAutoFormat = bNew; }
2000-09-18 16:15:01 +00:00
bool IsHidden() const { return m_bHidden; }
void SetHidden( bool bValue = false ) { m_bHidden = bValue; }
void GetGrabBagItem(com::sun::star::uno::Any& rVal) const;
void SetGrabBagItem(const com::sun::star::uno::Any& rVal);
/// Query / set bAutoUpdateFormat-flag.
bool IsAutoUpdateFormat() const { return m_bAutoUpdateFormat; }
void SetAutoUpdateFormat( bool bNew = true ) { m_bAutoUpdateFormat = bNew; }
2000-09-18 16:15:01 +00:00
bool IsFormatInDTOR() const { return m_bFormatInDTOR; }
2000-09-18 16:15:01 +00:00
/** GetMethods: Bool indicates whether to search only in Set (FALSE)
or also in Parents.
If nothing is found the defaulted attribute is returned. */
2011-02-07 02:08:11 +01:00
/// Character-attributes - implemented in charatr.hxx
inline const SvxPostureItem &GetPosture( bool = true ) const;
inline const SvxWeightItem &GetWeight( bool = true ) const;
inline const SvxShadowedItem &GetShadowed( bool = true ) const;
inline const SvxAutoKernItem &GetAutoKern( bool = true ) const;
inline const SvxWordLineModeItem &GetWordLineMode( bool = true ) const;
inline const SvxContourItem &GetContour( bool = true ) const;
inline const SvxKerningItem &GetKerning( bool = true ) const;
inline const SvxUnderlineItem &GetUnderline( bool = true ) const;
inline const SvxOverlineItem &GetOverline( bool = true ) const;
inline const SvxCrossedOutItem &GetCrossedOut( bool = true ) const;
inline const SvxFontHeightItem &GetSize( bool = true ) const;
inline const SvxPropSizeItem &GetPropSize( bool = true ) const;
inline const SvxFontItem &GetFont( bool = true ) const;
inline const SvxColorItem &GetColor( bool = true ) const;
inline const SvxCharSetColorItem &GetCharSetColor( bool = true ) const;
inline const SvxLanguageItem &GetLanguage( bool = true ) const;
inline const SvxEscapementItem &GetEscapement( bool = true ) const;
inline const SvxCaseMapItem &GetCaseMap( bool = true ) const;
inline const SvxNoHyphenItem &GetNoHyphenHere( bool = true ) const;
inline const SvxBlinkItem &GetBlink( bool = true ) const;
inline const SvxBrushItem &GetChrBackground( bool = true ) const;
inline const SvxBrushItem &GetChrHighlight( bool = true ) const;
inline const SvxFontItem &GetCJKFont( bool = true ) const;
inline const SvxFontHeightItem &GetCJKSize( bool = true ) const;
inline const SvxLanguageItem &GetCJKLanguage( bool = true ) const;
inline const SvxPostureItem &GetCJKPosture( bool = true ) const;
inline const SvxWeightItem &GetCJKWeight( bool = true ) const;
inline const SvxFontItem &GetCTLFont( bool = true ) const;
inline const SvxFontHeightItem &GetCTLSize( bool = true ) const;
inline const SvxLanguageItem &GetCTLLanguage( bool = true ) const;
inline const SvxPostureItem &GetCTLPosture( bool = true ) const;
inline const SvxWeightItem &GetCTLWeight( bool = true ) const;
inline const SfxBoolItem &GetWritingDirection( bool = true ) const;
inline const SvxEmphasisMarkItem &GetEmphasisMark( bool = true ) const;
inline const SvxTwoLinesItem &Get2Lines( bool = true ) const;
inline const SvxCharScaleWidthItem &GetCharScaleW( bool = true ) const;
inline const SvxCharRotateItem &GetCharRotate( bool = true ) const;
inline const SvxCharReliefItem &GetCharRelief( bool = true ) const;
inline const SvxCharHiddenItem &GetCharHidden( bool = true ) const;
inline const SvxBoxItem &GetCharBorder( bool = true ) const;
inline const SvxShadowItem &GetCharShadow( bool = true ) const;
2000-09-18 16:15:01 +00:00
/// Frame-attributes - implemented in frmatr.hxx.
inline const SwFormatFillOrder &GetFillOrder( bool = true ) const;
inline const SwFormatFrmSize &GetFrmSize( bool = true ) const;
inline const SwFormatHeader &GetHeader( bool = true ) const;
inline const SwFormatFooter &GetFooter( bool = true ) const;
inline const SwFormatSurround &GetSurround( bool = true ) const;
inline const SwFormatHoriOrient &GetHoriOrient( bool = true ) const;
inline const SwFormatAnchor &GetAnchor( bool = true ) const;
inline const SwFormatCol &GetCol( bool = true ) const;
inline const SvxPaperBinItem &GetPaperBin( bool = true ) const;
inline const SvxLRSpaceItem &GetLRSpace( bool = true ) const;
inline const SvxULSpaceItem &GetULSpace( bool = true ) const;
inline const SwFormatContent &GetContent( bool = true ) const;
inline const SvxPrintItem &GetPrint( bool = true ) const;
inline const SvxOpaqueItem &GetOpaque( bool = true ) const;
inline const SvxProtectItem &GetProtect( bool = true ) const;
inline const SwFormatVertOrient &GetVertOrient( bool = true ) const;
inline const SvxBoxItem &GetBox( bool = true ) const;
inline const SvxFormatKeepItem &GetKeep( bool = true ) const;
Merge back branch alg_writerframes to trunk (cherry picked from commit b635b4fa4e42053d30ab639643d2236a20243f62) Conflicts: comphelper/inc/comphelper/TypeGeneration.hxx comphelper/source/property/TypeGeneration.cxx cui/source/factory/dlgfact.hxx cui/source/inc/cuitabarea.hxx cui/source/tabpages/tabarea.cxx cui/source/tabpages/tabarea.hrc cui/source/tabpages/tabarea.src cui/source/tabpages/tparea.cxx drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx drawinglayer/source/texture/texture.cxx editeng/inc/editeng/unotext.hxx editeng/source/items/frmitems.cxx include/drawinglayer/texture/texture.hxx include/editeng/brushitem.hxx include/svx/sdr/primitive2d/sdrdecompositiontools.hxx include/svx/svxids.hrc include/xmloff/xmltypes.hxx reportdesign/source/ui/misc/UITools.cxx sc/source/ui/drawfunc/drawsh.cxx sfx2/source/dialog/tabdlg.cxx svl/source/undo/undo.cxx svx/inc/svx/unoshprp.hxx sw/Library_sw.mk sw/inc/doc.hxx sw/inc/format.hxx sw/inc/frmfmt.hxx sw/inc/swatrset.hxx sw/inc/unomap.hxx sw/inc/unoprnms.hxx sw/source/core/access/accpara.cxx sw/source/core/attr/format.cxx sw/source/core/attr/swatrset.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfly.cxx sw/source/core/doc/notxtfrm.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/text/inftxt.cxx sw/source/core/text/porfld.cxx sw/source/core/text/txtfly.cxx sw/source/core/txtnode/fntcache.cxx sw/source/core/uibase/app/docst.cxx sw/source/core/uibase/app/docstyle.cxx sw/source/core/uibase/shells/drawdlg.cxx sw/source/core/uibase/shells/frmsh.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/ui/frmdlg/frmdlg.cxx sw/source/ui/frmdlg/frmpage.src sw/source/ui/inc/frmsh.hxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx Change-Id: Id3ffaa83bb5594d287f1ac8f2c1c9cf55c70946d
2014-03-19 16:17:02 +00:00
//UUUU Create SvxBrushItem for Background fill (partially for backwards compatibility)
SvxBrushItem makeBackgroundBrushItem( bool = true ) const;
inline const SvxShadowItem &GetShadow( bool = true ) const;
inline const SwFormatPageDesc &GetPageDesc( bool = true ) const;
inline const SvxFormatBreakItem &GetBreak( bool = true ) const;
inline const SvxMacroItem &GetMacro( bool = true ) const;
inline const SwFormatURL &GetURL( bool = true ) const;
inline const SwFormatEditInReadonly &GetEditInReadonly( bool = true ) const;
inline const SwFormatLayoutSplit &GetLayoutSplit( bool = true ) const;
inline const SwFormatRowSplit &GetRowSplit( bool = true ) const;
inline const SwFormatChain &GetChain( bool = true ) const;
inline const SwFormatLineNumber &GetLineNumber( bool = true ) const;
inline const SwFormatFootnoteAtTextEnd &GetFootnoteAtTextEnd( bool = true ) const;
inline const SwFormatEndAtTextEnd &GetEndAtTextEnd( bool = true ) const;
inline const SwFormatNoBalancedColumns &GetBalancedColumns( bool = true ) const;
inline const SvxFrameDirectionItem &GetFrmDir( bool = true ) const;
inline const SwTextGridItem &GetTextGrid( bool = true ) const;
inline const SwHeaderAndFooterEatSpacingItem &GetHeaderAndFooterEatSpacing( bool = true ) const;
// #i18732#
inline const SwFormatFollowTextFlow &GetFollowTextFlow(bool = true) const;
// #i28701#
inline const SwFormatWrapInfluenceOnObjPos& GetWrapInfluenceOnObjPos(bool = true) const;
inline const SdrTextVertAdjustItem& GetTextVertAdjust(bool = true) const;
2000-09-18 16:15:01 +00:00
/// Graphics-attributes - implemented in grfatr.hxx
inline const SwMirrorGrf &GetMirrorGrf( bool = true ) const;
inline const SwCropGrf &GetCropGrf( bool = true ) const;
inline const SwRotationGrf &GetRotationGrf(bool = true ) const;
inline const SwLuminanceGrf &GetLuminanceGrf(bool = true ) const;
inline const SwContrastGrf &GetContrastGrf(bool = true ) const;
inline const SwChannelRGrf &GetChannelRGrf(bool = true ) const;
inline const SwChannelGGrf &GetChannelGGrf(bool = true ) const;
inline const SwChannelBGrf &GetChannelBGrf(bool = true ) const;
inline const SwGammaGrf &GetGammaGrf(bool = true ) const;
inline const SwInvertGrf &GetInvertGrf(bool = true ) const;
inline const SwTransparencyGrf &GetTransparencyGrf(bool = true ) const;
inline const SwDrawModeGrf &GetDrawModeGrf(bool = true ) const;
2000-09-18 16:15:01 +00:00
/// Paragraph-attributes - implemented in paratr.hxx.
inline const SvxLineSpacingItem &GetLineSpacing( bool = true ) const;
inline const SvxAdjustItem &GetAdjust( bool = true ) const;
inline const SvxFormatSplitItem &GetSplit( bool = true ) const;
inline const SwRegisterItem &GetRegister( bool = true ) const;
inline const SwNumRuleItem &GetNumRule( bool = true ) const;
inline const SvxWidowsItem &GetWidows( bool = true ) const;
inline const SvxOrphansItem &GetOrphans( bool = true ) const;
inline const SvxTabStopItem &GetTabStops( bool = true ) const;
inline const SvxHyphenZoneItem &GetHyphenZone( bool = true ) const;
inline const SwFormatDrop &GetDrop( bool = true ) const;
inline const SvxScriptSpaceItem &GetScriptSpace(bool = true) const;
inline const SvxHangingPunctuationItem &GetHangingPunctuation(bool = true) const;
inline const SvxForbiddenRuleItem &GetForbiddenRule(bool = true) const;
inline const SvxParaVertAlignItem &GetParaVertAlign(bool = true) const;
inline const SvxParaGridItem &GetParaGrid(bool = true) const;
inline const SwParaConnectBorderItem &GetParaConnectBorder(bool = true ) const;
2000-09-18 16:15:01 +00:00
/// TableBox attributes - implemented in cellatr.hxx.
inline const SwTableBoxNumFormat &GetTableBoxNumFormat( bool = true ) const;
inline const SwTableBoxFormula &GetTableBoxFormula( bool = true ) const;
inline const SwTableBoxValue &GetTableBoxValue( bool = true ) const;
/** SwFormat::IsBackgroundTransparent
Virtual method to determine, if background of format is transparent.
Default implementation returns false. Thus, subclasses have to override
method, if the specific subclass can have a transparent background.
@author OD
@return false, default implementation
*/
virtual bool IsBackgroundTransparent() const;
Related: #i124638# Second step of DrawingLayer FillAttributes... for Writer objects, now added support for Paragraph and PageStyle (including Header and Footer) for direct attributes and style attributes (cherry picked from commit cc25c58f7052827bfebdc9fbeec668c8fa29ed1b) Conflicts: cui/source/factory/dlgfact.cxx cui/source/factory/dlgfact.hxx cui/source/inc/bbdlg.hxx cui/source/inc/cuires.hrc cui/source/tabpages/bbdlg.cxx cui/source/tabpages/bbdlg.src cui/source/tabpages/page.cxx cui/source/tabpages/tparea.cxx include/svx/pagectrl.hxx include/svx/svxdlg.hxx include/svx/svxids.hrc include/xmloff/PageMasterStyleMap.hxx include/xmloff/prstylei.hxx include/xmloff/txtprmap.hxx svx/Package_inc.mk svx/inc/svx/hdft.hxx svx/source/dialog/hdft.cxx svx/source/dialog/pagectrl.cxx svx/source/tbxctrls/tbxcolorupdate.cxx svx/source/unodraw/unobrushitemhelper.cxx sw/Library_sw.mk sw/inc/fillattributes.hxx sw/inc/format.hxx sw/inc/frmatr.hxx sw/inc/frmfmt.hxx sw/inc/hintids.hxx sw/inc/hints.hxx sw/inc/ndtxt.hxx sw/inc/node.hxx sw/inc/swunohelper.hxx sw/inc/unobrushitemhelper.hxx sw/inc/unoprnms.hxx sw/source/core/attr/format.cxx sw/source/core/attr/hints.cxx sw/source/core/doc/docdesc.cxx sw/source/core/doc/docdraw.cxx sw/source/core/doc/docfmt.cxx sw/source/core/doc/docnew.cxx sw/source/core/doc/docredln.cxx sw/source/core/doc/poolfmt.cxx sw/source/core/doc/visiturl.cxx sw/source/core/docnode/node.cxx sw/source/core/inc/frame.hxx sw/source/core/inc/frmtool.hxx sw/source/core/inc/rolbck.hxx sw/source/core/layout/atrfrm.cxx sw/source/core/layout/fillattributes.cxx sw/source/core/layout/findfrm.cxx sw/source/core/layout/paintfrm.cxx sw/source/core/txtnode/ndtxt.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtedt.cxx sw/source/core/undo/rolbck.cxx sw/source/core/unocore/swunohelper.cxx sw/source/core/unocore/unoframe.cxx sw/source/core/unocore/unomap.cxx sw/source/core/unocore/unoparagraph.cxx sw/source/core/unocore/unoprnms.cxx sw/source/core/unocore/unostyle.cxx sw/source/ui/chrdlg/paradlg.src sw/source/ui/chrdlg/pardlg.cxx sw/source/ui/fmtui/tmpdlg.cxx sw/source/ui/fmtui/tmpdlg.src sw/source/uibase/app/docst.cxx sw/source/uibase/app/docstyle.cxx sw/source/uibase/frmdlg/colex.cxx sw/source/uibase/shells/basesh.cxx sw/source/uibase/shells/textsh1.cxx sw/source/uibase/uiview/viewstat.cxx sw/source/uibase/utlui/uitool.cxx xmloff/inc/PageMasterImportContext.hxx xmloff/inc/xmloff/XMLShapeStyleContext.hxx xmloff/source/draw/XMLShapeStyleContext.cxx xmloff/source/draw/sdpropls.hxx xmloff/source/style/PageMasterExportPropMapper.cxx xmloff/source/style/PageMasterImportContext.cxx xmloff/source/style/PageMasterPropHdlFactory.cxx xmloff/source/style/PageMasterStyleMap.cxx xmloff/source/style/prstylei.cxx xmloff/source/text/txtexppr.cxx xmloff/source/text/txtprhdl.cxx xmloff/source/text/txtprmap.cxx xmloff/source/text/txtstyli.cxx Conflicts: svx/source/dialog/hdft.cxx sw/source/core/doc/visiturl.cxx sw/source/core/txtnode/thints.cxx sw/source/core/txtnode/txtatr2.cxx sw/source/core/unocore/unostyle.cxx Change-Id: I7e8779db6c0cbd1e242b63eab888f468f2de509a
2014-06-02 15:00:50 +00:00
//UUUU Access to DrawingLayer FillAttributes in a preprocessed form for primitive usage
virtual drawinglayer::attribute::SdrAllFillAttributesHelperPtr getSdrAllFillAttributesHelper() const;
virtual bool supportsFullDrawingLayerFillAttributeSet() const;
2000-09-18 16:15:01 +00:00
};
inline void SwFormat::SetName( const sal_Char* pNewName,
bool bBroadcast )
2000-09-18 16:15:01 +00:00
{
SetName(OUString::createFromAscii(pNewName), bBroadcast);
2000-09-18 16:15:01 +00:00
}
#endif // INCLUDED_SW_INC_FORMAT_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */