Correct StyleSheet handling when cloning to different Model II
Until now the 'local' StyleSheet got set, but that may not be the same as the original. It was/gets identified just by searching by name and type, not comparing content. What to do? We could... (a) the Style-Friendly way: - check if StyleSheet is identical - if not, create a new in-between StyleSheet hosting missing Items - if yes, use, done. (b) the pragmatic/practical way: - Just hard-attribute the Items that are detected as different similar to what BurnInStyleSheetAttributes does/did, but only for a view differing Items (b) is the most simple for now, but will lead to more hard attributes. The other possibilities will be better in the long term. For now, I will use (b). Note that there are more cases in that VERY complex and grown stuff emerging from SdDrawDocument::PasteBookmarkAsPage. More things will need to be fixed, see this as a 1st step. Needed to adapt postProcessAfterCloneToDifferentModel due to UT testTdf96206 failing, see comment there for details. That 1st implementation showed weaknesses with those Items critical and only on MasterPages, so decided to give up on that and implement ContentCompare to SdPage::Equals. That was easier than thought: No parameter needed, only used by InsertBookmarkAsPage_FindDuplicateLayouts::operator(). Thus, SdPage::Equals needs no change, just SdrObject::Equals. Due to still problems with Items corrected in Objects on MasterPages I will for now exclude this. Could now isolate remaining problems, these are defaults and/or PresObj things on MasterPages. Important is that I can completely correct all Items for all Objects in postProcessAfterCloneToDifferentModel. I can react to these false-positives in the ContentCompare in SdrObject::Equals. Signed-off-by: Armin Le Grand (collabora) <Armin.LeGrand@collabora.com> Change-Id: I10e17c8d6a893dbe92ab716182f07bafce1f3284 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/6595 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Armin Le Grand <armin.legrand@collabora.com> (cherry picked from commit 92ffaeac04c5c8586006b026f29ce12fba3674f1) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211729 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
This commit is contained in:
committed by
Xisco Fauli
parent
1c0b50766a
commit
5519a3d407
@@ -901,7 +901,7 @@ SdrObjKind DlgEdObj::GetObjIdentifier() const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> DlgEdObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> DlgEdObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new DlgEdObj(rTargetModel, *this);
|
return new DlgEdObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,15 +47,15 @@ class DlgEdObj: public SdrUnoObj
|
|||||||
friend class DlgEdPropListenerImpl;
|
friend class DlgEdPropListenerImpl;
|
||||||
friend class DlgEdForm;
|
friend class DlgEdForm;
|
||||||
|
|
||||||
private:
|
|
||||||
bool bIsListening;
|
bool bIsListening;
|
||||||
rtl::Reference<DlgEdForm> pDlgEdForm;
|
rtl::Reference<DlgEdForm> pDlgEdForm;
|
||||||
rtl::Reference<DlgEdPropListenerImpl> m_xPropertyChangeListener;
|
rtl::Reference<DlgEdPropListenerImpl> m_xPropertyChangeListener;
|
||||||
rtl::Reference<DlgEdEvtContListenerImpl> m_xContainerListener;
|
rtl::Reference<DlgEdEvtContListenerImpl> m_xContainerListener;
|
||||||
|
|
||||||
private:
|
|
||||||
DlgEditor& GetDialogEditor ();
|
DlgEditor& GetDialogEditor ();
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override; // not working yet
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
DlgEdObj(SdrModel& rSdrModel);
|
DlgEdObj(SdrModel& rSdrModel);
|
||||||
// copy constructor
|
// copy constructor
|
||||||
@@ -98,8 +98,6 @@ public:
|
|||||||
virtual SdrInventor GetObjInventor() const override;
|
virtual SdrInventor GetObjInventor() const override;
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override; // not working yet
|
|
||||||
|
|
||||||
// FullDrag support
|
// FullDrag support
|
||||||
virtual rtl::Reference<SdrObject> getFullDragClone() const override;
|
virtual rtl::Reference<SdrObject> getFullDragClone() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ public:
|
|||||||
|
|
||||||
void setup();
|
void setup();
|
||||||
|
|
||||||
rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
SdrObjKind GetObjIdentifier() const override;
|
SdrObjKind GetObjIdentifier() const override;
|
||||||
OUString TakeObjNameSingul() const override;
|
OUString TakeObjNameSingul() const override;
|
||||||
|
|||||||
@@ -54,10 +54,11 @@ class SAL_WARN_UNUSED E3dCubeObj final : public E3dCompoundObject
|
|||||||
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
virtual ~E3dCubeObj() override;
|
virtual ~E3dCubeObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SVXCORE_DLLPUBLIC E3dCubeObj(SdrModel& rSdrModel,
|
SVXCORE_DLLPUBLIC E3dCubeObj(SdrModel& rSdrModel,
|
||||||
const E3dDefaultAttributes& rDefault,
|
const E3dDefaultAttributes& rDefault,
|
||||||
@@ -69,8 +70,6 @@ public:
|
|||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
// Set local parameters with geometry recreation
|
// Set local parameters with geometry recreation
|
||||||
void SetCubePos(const basegfx::B3DPoint& rNew);
|
void SetCubePos(const basegfx::B3DPoint& rNew);
|
||||||
const basegfx::B3DPoint& GetCubePos() const { return m_aCubePos; }
|
const basegfx::B3DPoint& GetCubePos() const { return m_aCubePos; }
|
||||||
|
|||||||
@@ -47,10 +47,11 @@ class E3dLatheObj final : public E3dCompoundObject
|
|||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
virtual ~E3dLatheObj() override;
|
virtual ~E3dLatheObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SVXCORE_DLLPUBLIC E3dLatheObj(
|
SVXCORE_DLLPUBLIC E3dLatheObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -101,8 +102,6 @@ public:
|
|||||||
|
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
||||||
|
|
||||||
// TakeObjName...() is for the display in the UI, for example "3 frames selected".
|
// TakeObjName...() is for the display in the UI, for example "3 frames selected".
|
||||||
|
|||||||
@@ -61,11 +61,12 @@ public:
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC E3dObject : public SdrAttrObj
|
class SVXCORE_DLLPUBLIC E3dObject : public SdrAttrObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// Allow everything for E3dObjList and E3dDragMethod
|
// Allow everything for E3dObjList and E3dDragMethod
|
||||||
friend class E3dDragMethod;
|
friend class E3dDragMethod;
|
||||||
|
|
||||||
protected:
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
|
protected:
|
||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
|
|
||||||
basegfx::B3DRange maLocalBoundVol; // surrounding volume of the object (from the geometry generation)
|
basegfx::B3DRange maLocalBoundVol; // surrounding volume of the object (from the geometry generation)
|
||||||
@@ -125,7 +126,6 @@ public:
|
|||||||
// TakeObjName...() is for the display in the UI, for example "3 frames selected".
|
// TakeObjName...() is for the display in the UI, for example "3 frames selected".
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual std::unique_ptr<SdrObjGeoData> NewGeoData() const override;
|
virtual std::unique_ptr<SdrObjGeoData> NewGeoData() const override;
|
||||||
virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
||||||
@@ -152,13 +152,14 @@ public:
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC E3dCompoundObject : public E3dObject
|
class SVXCORE_DLLPUBLIC E3dCompoundObject : public E3dObject
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::E3dCompoundProperties access to SetGeometryValid()
|
// to allow sdr::properties::E3dCompoundProperties access to SetGeometryValid()
|
||||||
friend class sdr::properties::E3dCompoundProperties;
|
friend class sdr::properties::E3dCompoundProperties;
|
||||||
friend class sdr::properties::E3dExtrudeProperties;
|
friend class sdr::properties::E3dExtrudeProperties;
|
||||||
friend class sdr::properties::E3dLatheProperties;
|
friend class sdr::properties::E3dLatheProperties;
|
||||||
friend class sdr::properties::E3dSphereProperties;
|
friend class sdr::properties::E3dSphereProperties;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
|
|
||||||
@@ -179,8 +180,6 @@ public:
|
|||||||
|
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual void RecalcSnapRect() override;
|
virtual void RecalcSnapRect() override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // INCLUDED_SVX_OBJ3D_HXX
|
#endif // INCLUDED_SVX_OBJ3D_HXX
|
||||||
|
|||||||
@@ -73,6 +73,8 @@ class SVXCORE_DLLPUBLIC E3dScene final : public E3dObject, public SdrObjList
|
|||||||
void SetDefaultAttributes();
|
void SetDefaultAttributes();
|
||||||
void ImpCleanup3DDepthMapper();
|
void ImpCleanup3DDepthMapper();
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
E3dScene(SdrModel& rSdrModel);
|
E3dScene(SdrModel& rSdrModel);
|
||||||
E3dScene(SdrModel& rSdrModel, E3dScene const &);
|
E3dScene(SdrModel& rSdrModel, E3dScene const &);
|
||||||
@@ -120,8 +122,6 @@ public:
|
|||||||
const Camera3D& GetCamera() const { return m_aCamera; }
|
const Camera3D& GetCamera() const { return m_aCamera; }
|
||||||
void removeAllNonSelectedObjects();
|
void removeAllNonSelectedObjects();
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual std::unique_ptr<SdrObjGeoData> NewGeoData() const override;
|
virtual std::unique_ptr<SdrObjGeoData> NewGeoData() const override;
|
||||||
virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
||||||
virtual void RestoreGeoData(const SdrObjGeoData& rGeo) override;
|
virtual void RestoreGeoData(const SdrObjGeoData& rGeo) override;
|
||||||
|
|||||||
@@ -41,6 +41,9 @@ namespace sdr::properties
|
|||||||
// Make sure the pool outlives any use via moItemSet:
|
// Make sure the pool outlives any use via moItemSet:
|
||||||
rtl::Reference<SfxItemPool> m_itemPoolHolder;
|
rtl::Reference<SfxItemPool> m_itemPoolHolder;
|
||||||
|
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
SAL_DLLPRIVATE virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// the to be used ItemSet
|
// the to be used ItemSet
|
||||||
mutable std::optional<SfxItemSet> moItemSet;
|
mutable std::optional<SfxItemSet> moItemSet;
|
||||||
@@ -81,9 +84,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
SAL_DLLPRIVATE void dumpAsXml(xmlTextWriterPtr pWriter) const override;
|
SAL_DLLPRIVATE void dumpAsXml(xmlTextWriterPtr pWriter) const override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
SAL_DLLPRIVATE virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// get itemset
|
// get itemset
|
||||||
SAL_DLLPRIVATE virtual const SfxItemSet& GetObjectItemSet() const override;
|
SAL_DLLPRIVATE virtual const SfxItemSet& GetObjectItemSet() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -72,15 +72,16 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class SVXCORE_DLLPUBLIC BaseProperties
|
class SVXCORE_DLLPUBLIC BaseProperties
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// the owner of this Properties. Set from constructor and not
|
// the owner of this Properties. Set from constructor and not
|
||||||
// to be changed in any way.
|
// to be changed in any way.
|
||||||
SdrObject& mrObject;
|
SdrObject& mrObject;
|
||||||
|
|
||||||
|
// thje Clone-implementations, overloaded for each derivation
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// internal access to SdrObject
|
// internal access to SdrObject
|
||||||
const SdrObject& GetSdrObject() const;
|
const SdrObject& GetSdrObject() const;
|
||||||
|
|
||||||
SdrObject& GetSdrObject();
|
SdrObject& GetSdrObject();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
@@ -90,11 +91,17 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~BaseProperties();
|
virtual ~BaseProperties();
|
||||||
|
|
||||||
|
// create needed SfxItemSet, overloaded in all derivations as needed
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) = 0;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) = 0;
|
||||||
|
|
||||||
|
// Regulates Styles/Items between models when a Clone to another model
|
||||||
|
// was done. This is needed to evtl. also clone Styles and/or attributes
|
||||||
|
// to target model
|
||||||
|
virtual void postProcessAfterCloneToDifferentModel(const SdrObject& rSrcObj);
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor,
|
// Clone() operator, normally just calls the local copy constructor,
|
||||||
// see above.
|
// see above.
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const = 0;
|
std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const;
|
||||||
|
|
||||||
// Get the local ItemSet. This directly returns the local ItemSet of the object. No
|
// Get the local ItemSet. This directly returns the local ItemSet of the object. No
|
||||||
// merging of ItemSets is done for e.g. Group objects.
|
// merging of ItemSets is done for e.g. Group objects.
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ class E3dDefaultAttributes;
|
|||||||
*/
|
*/
|
||||||
class E3dSphereObj final : public E3dCompoundObject
|
class E3dSphereObj final : public E3dCompoundObject
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
basegfx::B3DPoint m_aCenter;
|
basegfx::B3DPoint m_aCenter;
|
||||||
basegfx::B3DVector m_aSize;
|
basegfx::B3DVector m_aSize;
|
||||||
|
|
||||||
@@ -42,10 +41,11 @@ private:
|
|||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
virtual ~E3dSphereObj() override;
|
virtual ~E3dSphereObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SVXCORE_DLLPUBLIC E3dSphereObj(
|
SVXCORE_DLLPUBLIC E3dSphereObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -70,8 +70,6 @@ public:
|
|||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier, bool bAddText) const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
const basegfx::B3DPoint& Center() const { return m_aCenter; }
|
const basegfx::B3DPoint& Center() const { return m_aCenter; }
|
||||||
const basegfx::B3DVector& Size() const { return m_aSize; }
|
const basegfx::B3DVector& Size() const { return m_aSize; }
|
||||||
|
|
||||||
|
|||||||
@@ -74,11 +74,12 @@ struct SdrCustomShapeInteraction
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC SdrObjCustomShape : public SdrTextObj
|
class SVXCORE_DLLPUBLIC SdrObjCustomShape : public SdrTextObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// fObjectRotation is containing the object rotation in degrees.
|
// fObjectRotation is containing the object rotation in degrees.
|
||||||
double m_fObjectRotation;
|
double m_fObjectRotation;
|
||||||
bool mbAdjustingTextFrameWidthAndHeight;
|
bool mbAdjustingTextFrameWidthAndHeight;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
virtual void setUnoShape(const css::uno::Reference<css::drawing::XShape>& rxUnoShape) override;
|
virtual void setUnoShape(const css::uno::Reference<css::drawing::XShape>& rxUnoShape) override;
|
||||||
@@ -113,7 +114,6 @@ public:
|
|||||||
// returns the new text rect that corresponds to the current logic rect, the return value can be empty if nothing changed.
|
// returns the new text rect that corresponds to the current logic rect, the return value can be empty if nothing changed.
|
||||||
tools::Rectangle ImpCalculateTextFrame( const bool bHgt, const bool bWdt );
|
tools::Rectangle ImpCalculateTextFrame( const bool bHgt, const bool bWdt );
|
||||||
|
|
||||||
public:
|
|
||||||
// #i37011#
|
// #i37011#
|
||||||
const SdrObject* GetSdrObjectFromCustomShape() const;
|
const SdrObject* GetSdrObjectFromCustomShape() const;
|
||||||
const SdrObject* GetSdrObjectShadowFromCustomShape() const;
|
const SdrObject* GetSdrObjectShadowFromCustomShape() const;
|
||||||
@@ -209,7 +209,6 @@ public:
|
|||||||
virtual void TakeTextAnchorRect( tools::Rectangle& rAnchorRect ) const override;
|
virtual void TakeTextAnchorRect( tools::Rectangle& rAnchorRect ) const override;
|
||||||
virtual void TakeTextRect( SdrOutliner& rOutliner, tools::Rectangle& rTextRect, bool bNoEditText,
|
virtual void TakeTextRect( SdrOutliner& rOutliner, tools::Rectangle& rTextRect, bool bNoEditText,
|
||||||
tools::Rectangle* pAnchorRect, bool bLineWidth = true ) const override;
|
tools::Rectangle* pAnchorRect, bool bLineWidth = true ) const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -254,6 +254,9 @@ private:
|
|||||||
friend class SdrVirtObj;
|
friend class SdrVirtObj;
|
||||||
friend class SdrRectObj;
|
friend class SdrRectObj;
|
||||||
|
|
||||||
|
// Returns a copy of the object. Every inherited class must reimplement this.
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const = 0;
|
||||||
|
|
||||||
// OperationSmiley: Allow at each SdrObject to set a FillGeometryDefiningShape,
|
// OperationSmiley: Allow at each SdrObject to set a FillGeometryDefiningShape,
|
||||||
// so that for SdrObjects where this is set, the definition of a defined FillStyle
|
// so that for SdrObjects where this is set, the definition of a defined FillStyle
|
||||||
// will use this, but the local geometry will be filled. This allows to fill
|
// will use this, but the local geometry will be filled. This allows to fill
|
||||||
@@ -452,8 +455,12 @@ public:
|
|||||||
// means no change of the rotation point (only centered) and no shear allowed
|
// means no change of the rotation point (only centered) and no shear allowed
|
||||||
virtual bool HasLimitedRotation() const;
|
virtual bool HasLimitedRotation() const;
|
||||||
|
|
||||||
// Returns a copy of the object. Every inherited class must reimplement this.
|
// Returns a copy of the object. Internally uses the virtual and
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const = 0;
|
// overridden method implCloneSdrObject that is implemented for each
|
||||||
|
// derivation. If cloned to another SdrModel it will support calling
|
||||||
|
// postProcessAfterCloneToDifferentModel
|
||||||
|
rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const;
|
||||||
|
|
||||||
// helper, since Clone always return the type of the current subclass
|
// helper, since Clone always return the type of the current subclass
|
||||||
template<class T>
|
template<class T>
|
||||||
static rtl::Reference<T> Clone(T const & rObj, SdrModel& rTargetModel)
|
static rtl::Reference<T> Clone(T const & rObj, SdrModel& rTargetModel)
|
||||||
|
|||||||
@@ -40,7 +40,6 @@ public:
|
|||||||
// SdrCaptionObj
|
// SdrCaptionObj
|
||||||
class SVXCORE_DLLPUBLIC SdrCaptionObj final : public SdrRectObj
|
class SVXCORE_DLLPUBLIC SdrCaptionObj final : public SdrRectObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::CaptionProperties access to ImpRecalcTail()
|
// to allow sdr::properties::CaptionProperties access to ImpRecalcTail()
|
||||||
friend class sdr::properties::CaptionProperties;
|
friend class sdr::properties::CaptionProperties;
|
||||||
friend class SdrTextObj; // for ImpRecalcTail() during AutoGrow
|
friend class SdrTextObj; // for ImpRecalcTail() during AutoGrow
|
||||||
@@ -71,6 +70,8 @@ private:
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
SAL_DLLPRIVATE virtual ~SdrCaptionObj() override;
|
SAL_DLLPRIVATE virtual ~SdrCaptionObj() override;
|
||||||
|
|
||||||
|
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SAL_DLLPRIVATE SdrCaptionObj(SdrModel& rSdrModel);
|
SAL_DLLPRIVATE SdrCaptionObj(SdrModel& rSdrModel);
|
||||||
|
|
||||||
@@ -84,8 +85,6 @@ public:
|
|||||||
|
|
||||||
SAL_DLLPRIVATE virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
SAL_DLLPRIVATE virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
||||||
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
// for calc: special shadow only for text box
|
// for calc: special shadow only for text box
|
||||||
void SetSpecialTextBoxShadow() { mbSpecialTextBoxShadow = true; }
|
void SetSpecialTextBoxShadow() { mbSpecialTextBoxShadow = true; }
|
||||||
bool GetSpecialTextBoxShadow() const { return mbSpecialTextBoxShadow; }
|
bool GetSpecialTextBoxShadow() const { return mbSpecialTextBoxShadow; }
|
||||||
|
|||||||
@@ -42,7 +42,6 @@ extern SVXCORE_DLLPUBLIC SdrCircKind ToSdrCircKind(SdrObjKind);
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC SdrCircObj final : public SdrRectObj
|
class SVXCORE_DLLPUBLIC SdrCircObj final : public SdrRectObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::CircleProperties access to ImpSetAttrToCircInfo()
|
// to allow sdr::properties::CircleProperties access to ImpSetAttrToCircInfo()
|
||||||
friend class sdr::properties::CircleProperties;
|
friend class sdr::properties::CircleProperties;
|
||||||
|
|
||||||
@@ -64,10 +63,11 @@ private:
|
|||||||
|
|
||||||
SAL_DLLPRIVATE virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
|
SAL_DLLPRIVATE virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
SAL_DLLPRIVATE virtual ~SdrCircObj() override;
|
SAL_DLLPRIVATE virtual ~SdrCircObj() override;
|
||||||
|
|
||||||
|
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SAL_DLLPRIVATE SdrCircObj(
|
SAL_DLLPRIVATE SdrCircObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -99,8 +99,6 @@ public:
|
|||||||
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
SAL_DLLPRIVATE virtual void RecalcSnapRect() override;
|
SAL_DLLPRIVATE virtual void RecalcSnapRect() override;
|
||||||
SAL_DLLPRIVATE virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
SAL_DLLPRIVATE virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
||||||
SAL_DLLPRIVATE virtual basegfx::B2DPolyPolygon TakeXorPoly() const override;
|
SAL_DLLPRIVATE virtual basegfx::B2DPolyPolygon TakeXorPoly() const override;
|
||||||
|
|||||||
@@ -134,7 +134,6 @@ public:
|
|||||||
/// Utility class SdrEdgeObj
|
/// Utility class SdrEdgeObj
|
||||||
class SVXCORE_DLLPUBLIC SdrEdgeObj final : public SdrTextObj
|
class SVXCORE_DLLPUBLIC SdrEdgeObj final : public SdrTextObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::ConnectorProperties access to ImpSetAttrToEdgeInfo()
|
// to allow sdr::properties::ConnectorProperties access to ImpSetAttrToEdgeInfo()
|
||||||
friend class sdr::properties::ConnectorProperties;
|
friend class sdr::properties::ConnectorProperties;
|
||||||
|
|
||||||
@@ -169,6 +168,8 @@ private:
|
|||||||
// to a correct state for first real layouting
|
// to a correct state for first real layouting
|
||||||
bool mbSuppressed : 1;
|
bool mbSuppressed : 1;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Interface to default connect suppression
|
// Interface to default connect suppression
|
||||||
void SetSuppressDefaultConnect(bool bNew) { mbSuppressDefaultConnect = bNew; }
|
void SetSuppressDefaultConnect(bool bNew) { mbSuppressDefaultConnect = bNew; }
|
||||||
@@ -224,7 +225,6 @@ public:
|
|||||||
|
|
||||||
SAL_DLLPRIVATE virtual void RecalcSnapRect() override;
|
SAL_DLLPRIVATE virtual void RecalcSnapRect() override;
|
||||||
SAL_DLLPRIVATE virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
SAL_DLLPRIVATE virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,6 @@ class SdrGraphicLink;
|
|||||||
*/
|
*/
|
||||||
class SVXCORE_DLLPUBLIC SdrGrafObj final : public SdrRectObj
|
class SVXCORE_DLLPUBLIC SdrGrafObj final : public SdrRectObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::GraphicProperties access to SetXPolyDirty()
|
// to allow sdr::properties::GraphicProperties access to SetXPolyDirty()
|
||||||
friend class sdr::properties::GraphicProperties;
|
friend class sdr::properties::GraphicProperties;
|
||||||
|
|
||||||
@@ -109,6 +108,8 @@ private:
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
SAL_DLLPRIVATE virtual ~SdrGrafObj() override;
|
SAL_DLLPRIVATE virtual ~SdrGrafObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SdrGrafObj(SdrModel& rSdrModel);
|
SdrGrafObj(SdrModel& rSdrModel);
|
||||||
// Copy constructor
|
// Copy constructor
|
||||||
@@ -166,8 +167,6 @@ public:
|
|||||||
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
SAL_DLLPRIVATE virtual sal_uInt32 GetHdlCount() const override;
|
SAL_DLLPRIVATE virtual sal_uInt32 GetHdlCount() const override;
|
||||||
SAL_DLLPRIVATE virtual void AddToHdlList(SdrHdlList& rHdlList) const override;
|
SAL_DLLPRIVATE virtual void AddToHdlList(SdrHdlList& rHdlList) const override;
|
||||||
|
|
||||||
|
|||||||
@@ -47,6 +47,8 @@ private:
|
|||||||
// the DiagramHelper if this SdrObjGroup host a Diagram
|
// the DiagramHelper if this SdrObjGroup host a Diagram
|
||||||
std::shared_ptr< svx::diagram::DiagramHelper_svx > mp_DiagramHelper;
|
std::shared_ptr< svx::diagram::DiagramHelper_svx > mp_DiagramHelper;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SdrObjGroup(SdrModel& rSdrModel);
|
SdrObjGroup(SdrModel& rSdrModel);
|
||||||
// Copy constructor
|
// Copy constructor
|
||||||
@@ -74,8 +76,6 @@ public:
|
|||||||
virtual const tools::Rectangle& GetCurrentBoundRect() const override;
|
virtual const tools::Rectangle& GetCurrentBoundRect() const override;
|
||||||
virtual const tools::Rectangle& GetSnapRect() const override;
|
virtual const tools::Rectangle& GetSnapRect() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -43,7 +43,6 @@ public:
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC SdrMeasureObj final : public SdrTextObj
|
class SVXCORE_DLLPUBLIC SdrMeasureObj final : public SdrTextObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::MeasureProperties access to SetTextDirty()
|
// to allow sdr::properties::MeasureProperties access to SetTextDirty()
|
||||||
friend class sdr::properties::MeasureProperties;
|
friend class sdr::properties::MeasureProperties;
|
||||||
friend class SdrMeasureField;
|
friend class SdrMeasureField;
|
||||||
@@ -76,6 +75,8 @@ private:
|
|||||||
SAL_DLLPRIVATE virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
SAL_DLLPRIVATE virtual void SaveGeoData(SdrObjGeoData& rGeo) const override;
|
||||||
SAL_DLLPRIVATE virtual void RestoreGeoData(const SdrObjGeoData& rGeo) override;
|
SAL_DLLPRIVATE virtual void RestoreGeoData(const SdrObjGeoData& rGeo) override;
|
||||||
|
|
||||||
|
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SAL_DLLPRIVATE SdrMeasureObj(SdrModel& rSdrModel);
|
SAL_DLLPRIVATE SdrMeasureObj(SdrModel& rSdrModel);
|
||||||
// Copy constructor
|
// Copy constructor
|
||||||
@@ -89,7 +90,6 @@ public:
|
|||||||
SAL_DLLPRIVATE virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
SAL_DLLPRIVATE virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
||||||
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
||||||
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -34,10 +34,11 @@ class SVXCORE_DLLPUBLIC SdrMediaObj final : public SdrRectObj
|
|||||||
friend class sdr::contact::ViewContactOfSdrMediaObj;
|
friend class sdr::contact::ViewContactOfSdrMediaObj;
|
||||||
friend class SdrMediaLink;
|
friend class SdrMediaLink;
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
SAL_DLLPRIVATE virtual ~SdrMediaObj() override;
|
SAL_DLLPRIVATE virtual ~SdrMediaObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SAL_DLLPRIVATE SdrMediaObj(SdrModel& rSdrModel);
|
SAL_DLLPRIVATE SdrMediaObj(SdrModel& rSdrModel);
|
||||||
// Copy constructor
|
// Copy constructor
|
||||||
@@ -54,8 +55,6 @@ public:
|
|||||||
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNameSingul() const override;
|
||||||
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
SAL_DLLPRIVATE virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual void AdjustToMaxRect( const tools::Rectangle& rMaxRect, bool bShrinkOnly = false ) override;
|
virtual void AdjustToMaxRect( const tools::Rectangle& rMaxRect, bool bShrinkOnly = false ) override;
|
||||||
|
|
||||||
void setURL(const OUString& rURL, const OUString& rReferer);
|
void setURL(const OUString& rURL, const OUString& rReferer);
|
||||||
|
|||||||
@@ -45,10 +45,8 @@ class SvxOle2Shape;
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC SdrOle2Obj : public SdrRectObj
|
class SVXCORE_DLLPUBLIC SdrOle2Obj : public SdrRectObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
std::unique_ptr<SdrOle2ObjImpl> mpImpl;
|
std::unique_ptr<SdrOle2ObjImpl> mpImpl;
|
||||||
|
|
||||||
private:
|
|
||||||
SVX_DLLPRIVATE void Connect_Impl(SvxOle2Shape* pCreator = nullptr);
|
SVX_DLLPRIVATE void Connect_Impl(SvxOle2Shape* pCreator = nullptr);
|
||||||
SVX_DLLPRIVATE void Disconnect_Impl();
|
SVX_DLLPRIVATE void Disconnect_Impl();
|
||||||
SVX_DLLPRIVATE void AddListeners_Impl();
|
SVX_DLLPRIVATE void AddListeners_Impl();
|
||||||
@@ -61,6 +59,8 @@ private:
|
|||||||
|
|
||||||
SVX_DLLPRIVATE void Init();
|
SVX_DLLPRIVATE void Init();
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
@@ -140,8 +140,6 @@ public:
|
|||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual void NbcMove(const Size& rSize) override;
|
virtual void NbcMove(const Size& rSize) override;
|
||||||
virtual void NbcResize(const Point& rRef, double xFact, double yFact) override;
|
virtual void NbcResize(const Point& rRef, double xFact, double yFact) override;
|
||||||
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
||||||
|
|||||||
@@ -41,6 +41,8 @@ private:
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
virtual ~SdrPageObj() override;
|
virtual ~SdrPageObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SdrPageObj(
|
SdrPageObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -60,7 +62,6 @@ public:
|
|||||||
|
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ public:
|
|||||||
|
|
||||||
class SVXCORE_DLLPUBLIC SdrPathObj final : public SdrTextObj
|
class SVXCORE_DLLPUBLIC SdrPathObj final : public SdrTextObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
friend class ImpPathForDragAndCreate;
|
friend class ImpPathForDragAndCreate;
|
||||||
|
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
@@ -59,10 +58,11 @@ private:
|
|||||||
void ImpForceLineAngle();
|
void ImpForceLineAngle();
|
||||||
ImpPathForDragAndCreate& impGetDAC() const;
|
ImpPathForDragAndCreate& impGetDAC() const;
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
virtual ~SdrPathObj() override;
|
virtual ~SdrPathObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SdrPathObj(
|
SdrPathObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -77,7 +77,6 @@ public:
|
|||||||
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -37,18 +37,18 @@ namespace sdr::properties {
|
|||||||
/// Rectangle objects (rectangle, circle, ...)
|
/// Rectangle objects (rectangle, circle, ...)
|
||||||
class SVXCORE_DLLPUBLIC SdrRectObj : public SdrTextObj
|
class SVXCORE_DLLPUBLIC SdrRectObj : public SdrTextObj
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::RectangleProperties access to SetXPolyDirty()
|
// to allow sdr::properties::RectangleProperties access to SetXPolyDirty()
|
||||||
friend class sdr::properties::RectangleProperties;
|
friend class sdr::properties::RectangleProperties;
|
||||||
friend class SdrTextObj; // Due to SetXPolyDirty for GrowAdjust
|
friend class SdrTextObj; // Due to SetXPolyDirty for GrowAdjust
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
|
|
||||||
std::optional<XPolygon> mpXPoly;
|
std::optional<XPolygon> mpXPoly;
|
||||||
|
|
||||||
protected:
|
|
||||||
XPolygon ImpCalcXPoly(const tools::Rectangle& rRect1, tools::Long nRad1) const;
|
XPolygon ImpCalcXPoly(const tools::Rectangle& rRect1, tools::Long nRad1) const;
|
||||||
void SetXPolyDirty();
|
void SetXPolyDirty();
|
||||||
|
|
||||||
@@ -82,7 +82,6 @@ public:
|
|||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
virtual void RecalcSnapRect() override;
|
virtual void RecalcSnapRect() override;
|
||||||
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
||||||
virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool bAdaptTextMinSize = true) override;
|
virtual void NbcSetLogicRect(const tools::Rectangle& rRect, bool bAdaptTextMinSize = true) override;
|
||||||
|
|||||||
@@ -93,6 +93,8 @@ class SVXCORE_DLLPUBLIC SdrTableObj final : public ::SdrTextObj
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
virtual ~SdrTableObj() override;
|
virtual ~SdrTableObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SdrTableObj(SdrModel& rSdrModel);
|
SdrTableObj(SdrModel& rSdrModel);
|
||||||
// Copy constructor
|
// Copy constructor
|
||||||
@@ -203,7 +205,6 @@ public:
|
|||||||
virtual bool AdjustTextFrameWidthAndHeight() override;
|
virtual bool AdjustTextFrameWidthAndHeight() override;
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
virtual void RecalcSnapRect() override;
|
virtual void RecalcSnapRect() override;
|
||||||
virtual const tools::Rectangle& GetSnapRect() const override;
|
virtual const tools::Rectangle& GetSnapRect() const override;
|
||||||
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
virtual void NbcSetSnapRect(const tools::Rectangle& rRect) override;
|
||||||
|
|||||||
@@ -119,7 +119,6 @@ namespace sdr::properties
|
|||||||
// SdrTextObj
|
// SdrTextObj
|
||||||
class SVXCORE_DLLPUBLIC SdrTextObj : public SdrAttrObj, public svx::ITextProvider
|
class SVXCORE_DLLPUBLIC SdrTextObj : public SdrAttrObj, public svx::ITextProvider
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// Cell needs access to ImpGetDrawOutliner();
|
// Cell needs access to ImpGetDrawOutliner();
|
||||||
friend class sdr::table::Cell;
|
friend class sdr::table::Cell;
|
||||||
friend class sdr::table::SdrTableRtfExporter;
|
friend class sdr::table::SdrTableRtfExporter;
|
||||||
@@ -132,6 +131,8 @@ private:
|
|||||||
// CustomShapeproperties need to access the "mbTextFrame" member:
|
// CustomShapeproperties need to access the "mbTextFrame" member:
|
||||||
friend class sdr::properties::CustomShapeProperties;
|
friend class sdr::properties::CustomShapeProperties;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
|
||||||
@@ -463,7 +464,6 @@ public:
|
|||||||
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const;
|
virtual void TakeUnrotatedSnapRect(tools::Rectangle& rRect) const;
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
virtual basegfx::B2DPolyPolygon TakeXorPoly() const override;
|
virtual basegfx::B2DPolyPolygon TakeXorPoly() const override;
|
||||||
virtual basegfx::B2DPolyPolygon TakeContour() const override;
|
virtual basegfx::B2DPolyPolygon TakeContour() const override;
|
||||||
virtual void RecalcSnapRect() override;
|
virtual void RecalcSnapRect() override;
|
||||||
|
|||||||
@@ -48,6 +48,8 @@ class SVXCORE_DLLPUBLIC SdrUnoObj : public SdrRectObj
|
|||||||
OUString m_aUnoControlModelTypeName;
|
OUString m_aUnoControlModelTypeName;
|
||||||
OUString m_aUnoControlTypeName;
|
OUString m_aUnoControlTypeName;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
css::uno::Reference< css::awt::XControlModel > m_xUnoControlModel; // Can also be set from outside
|
css::uno::Reference< css::awt::XControlModel > m_xUnoControlModel; // Can also be set from outside
|
||||||
|
|
||||||
@@ -71,7 +73,6 @@ public:
|
|||||||
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
virtual void TakeObjInfo(SdrObjTransformInfoRec& rInfo) const override;
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
virtual void NbcResize(const Point& rRef, double xFact, double yFact) override;
|
virtual void NbcResize(const Point& rRef, double xFact, double yFact) override;
|
||||||
virtual void NbcSetLayer(SdrLayerID nLayer) override;
|
virtual void NbcSetLayer(SdrLayerID nLayer) override;
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ class SVXCORE_DLLPUBLIC SdrVirtObj : public SdrObject
|
|||||||
{
|
{
|
||||||
SdrVirtObj(const SdrVirtObj&) = delete;
|
SdrVirtObj(const SdrVirtObj&) = delete;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual sdr::properties::BaseProperties& GetProperties() const override;
|
virtual sdr::properties::BaseProperties& GetProperties() const override;
|
||||||
|
|
||||||
@@ -81,7 +83,6 @@ public:
|
|||||||
virtual const tools::Rectangle& GetCurrentBoundRect() const override;
|
virtual const tools::Rectangle& GetCurrentBoundRect() const override;
|
||||||
virtual const tools::Rectangle& GetLastBoundRect() const override;
|
virtual const tools::Rectangle& GetLastBoundRect() const override;
|
||||||
virtual void RecalcBoundRect() override;
|
virtual void RecalcBoundRect() override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ public:
|
|||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual SdrInventor GetObjInventor() const override;
|
virtual SdrInventor GetObjInventor() const override;
|
||||||
// Clone() should make a complete copy of the object.
|
// Clone() should make a complete copy of the object.
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
virtual void initializeOle() override;
|
virtual void initializeOle() override;
|
||||||
|
|
||||||
void initializeChart( const css::uno::Reference< css::frame::XModel>& _xModel);
|
void initializeChart( const css::uno::Reference< css::frame::XModel>& _xModel);
|
||||||
@@ -262,7 +262,7 @@ public:
|
|||||||
virtual css::uno::Reference< css::drawing::XShape > getUnoShape() override;
|
virtual css::uno::Reference< css::drawing::XShape > getUnoShape() override;
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
virtual SdrInventor GetObjInventor() const override;
|
virtual SdrInventor GetObjInventor() const override;
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual void setUnoShape( const css::uno::Reference< css::drawing::XShape >& rxUnoShape ) override;
|
virtual void setUnoShape( const css::uno::Reference< css::drawing::XShape >& rxUnoShape ) override;
|
||||||
|
|||||||
@@ -903,7 +903,7 @@ void OUnoObject::setUnoShape( const uno::Reference< drawing::XShape >& rxUnoShap
|
|||||||
releaseUnoShape();
|
releaseUnoShape();
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> OUnoObject::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> OUnoObject::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new OUnoObject(rTargetModel, *this);
|
return new OUnoObject(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
@@ -1116,7 +1116,7 @@ static uno::Reference< chart2::data::XDatabaseDataProvider > lcl_getDataProvider
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Clone() should make a complete copy of the object.
|
// Clone() should make a complete copy of the object.
|
||||||
rtl::Reference<SdrObject> OOle2Obj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> OOle2Obj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new OOle2Obj(rTargetModel, *this);
|
return new OOle2Obj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -849,7 +849,7 @@ CPPUNIT_TEST_FIXTURE(SdUiImpressTest, testTdf96708)
|
|||||||
|
|
||||||
const sal_uInt16 nMasterPageCnt2 = pDoc->GetMasterSdPageCount(PageKind::Standard);
|
const sal_uInt16 nMasterPageCnt2 = pDoc->GetMasterSdPageCount(PageKind::Standard);
|
||||||
//FIXME: tdf#151802: Number of master pages should be 4, it's 5 instead
|
//FIXME: tdf#151802: Number of master pages should be 4, it's 5 instead
|
||||||
//CPPUNIT_ASSERT_EQUAL(nMasterPageCnt1, nMasterPageCnt2);
|
// CPPUNIT_ASSERT_EQUAL(nMasterPageCnt1, nMasterPageCnt2);
|
||||||
CPPUNIT_ASSERT_EQUAL(sal_uInt16(5), nMasterPageCnt2);
|
CPPUNIT_ASSERT_EQUAL(sal_uInt16(5), nMasterPageCnt2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ class E3dDefaultAttributes;
|
|||||||
|
|
||||||
class SAL_WARN_UNUSED E3dExtrudeObj final : public E3dCompoundObject
|
class SAL_WARN_UNUSED E3dExtrudeObj final : public E3dCompoundObject
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// to allow sdr::properties::E3dExtrudeProperties access to SetGeometryValid()
|
// to allow sdr::properties::E3dExtrudeProperties access to SetGeometryValid()
|
||||||
friend class sdr::properties::E3dExtrudeProperties;
|
friend class sdr::properties::E3dExtrudeProperties;
|
||||||
|
|
||||||
@@ -48,10 +47,11 @@ private:
|
|||||||
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
|
||||||
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
void SetDefaultAttributes(const E3dDefaultAttributes& rDefault);
|
||||||
|
|
||||||
private:
|
|
||||||
// protected destructor - due to final, make private
|
// protected destructor - due to final, make private
|
||||||
virtual ~E3dExtrudeObj() override;
|
virtual ~E3dExtrudeObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SVXCORE_DLLPUBLIC E3dExtrudeObj(
|
SVXCORE_DLLPUBLIC E3dExtrudeObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -95,8 +95,6 @@ public:
|
|||||||
|
|
||||||
virtual SdrObjKind GetObjIdentifier() const override;
|
virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
// TakeObjName...() is for the display in the UI (for example "3 frames selected")
|
// TakeObjName...() is for the display in the UI (for example "3 frames selected")
|
||||||
virtual OUString TakeObjNameSingul() const override;
|
virtual OUString TakeObjNameSingul() const override;
|
||||||
virtual OUString TakeObjNamePlural() const override;
|
virtual OUString TakeObjNamePlural() const override;
|
||||||
|
|||||||
@@ -39,6 +39,8 @@ class E3dPolygonObj final : public E3dCompoundObject
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
virtual ~E3dPolygonObj() override;
|
virtual ~E3dPolygonObj() override;
|
||||||
|
|
||||||
|
virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void SetPolyPolygon3D(const basegfx::B3DPolyPolygon& rNewPolyPoly3D);
|
void SetPolyPolygon3D(const basegfx::B3DPolyPolygon& rNewPolyPoly3D);
|
||||||
void SetPolyNormals3D(const basegfx::B3DPolyPolygon& rNewPolyPoly3D);
|
void SetPolyNormals3D(const basegfx::B3DPolyPolygon& rNewPolyPoly3D);
|
||||||
@@ -57,8 +59,6 @@ public:
|
|||||||
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier,
|
virtual rtl::Reference<SdrObject> DoConvertToPolyObj(bool bBezier,
|
||||||
bool bAddText) const override;
|
bool bAddText) const override;
|
||||||
|
|
||||||
virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
// LineOnly?
|
// LineOnly?
|
||||||
bool GetLineOnly() const { return bLineOnly; }
|
bool GetLineOnly() const { return bLineOnly; }
|
||||||
void SetLineOnly(bool bNew);
|
void SetLineOnly(bool bNew);
|
||||||
|
|||||||
@@ -29,6 +29,12 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class AttributeProperties : public DefaultProperties, public SfxListener, public svl::StyleSheetUser
|
class AttributeProperties : public DefaultProperties, public SfxListener, public svl::StyleSheetUser
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
|
// Regulates Styles/Items between models
|
||||||
|
virtual void postProcessAfterCloneToDifferentModel(const SdrObject& rSrcObj) override;
|
||||||
|
|
||||||
// core to set parent at SfxItemSet and to execute the hard attribute computations
|
// core to set parent at SfxItemSet and to execute the hard attribute computations
|
||||||
void ImpSetParentAtSfxItemSet(bool bDontRemoveHardAttr);
|
void ImpSetParentAtSfxItemSet(bool bDontRemoveHardAttr);
|
||||||
|
|
||||||
@@ -58,9 +64,6 @@ namespace sdr::properties
|
|||||||
AttributeProperties(const AttributeProperties& rProps, SdrObject& rObj);
|
AttributeProperties(const AttributeProperties& rProps, SdrObject& rObj);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// Get the local ItemSet. This directly returns the local ItemSet of the object. No
|
// Get the local ItemSet. This directly returns the local ItemSet of the object. No
|
||||||
// merging of ItemSets is done for e.g. Group objects.
|
// merging of ItemSets is done for e.g. Group objects.
|
||||||
virtual const SfxItemSet& GetObjectItemSet() const override final;
|
virtual const SfxItemSet& GetObjectItemSet() const override final;
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class CaptionProperties final : public RectangleProperties
|
class CaptionProperties final : public RectangleProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
|
|
||||||
@@ -43,9 +46,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~CaptionProperties() override;
|
virtual ~CaptionProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ public:
|
|||||||
~CellProperties();
|
~CellProperties();
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
void ForceDefaultAttributes() override;
|
void ForceDefaultAttributes() override;
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class CircleProperties final : public RectangleProperties
|
class CircleProperties final : public RectangleProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
|
|
||||||
@@ -43,9 +46,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~CircleProperties() override;
|
virtual ~CircleProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class ConnectorProperties final : public TextProperties
|
class ConnectorProperties final : public TextProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
|
|
||||||
@@ -43,9 +46,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~ConnectorProperties() override;
|
virtual ~ConnectorProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -27,7 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class CustomShapeProperties final : public TextProperties
|
class CustomShapeProperties final : public TextProperties
|
||||||
{
|
{
|
||||||
private:
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
void UpdateTextFrameStatus(bool bInvalidateRenderGeometry);
|
void UpdateTextFrameStatus(bool bInvalidateRenderGeometry);
|
||||||
|
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
@@ -72,9 +74,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~CustomShapeProperties() override;
|
virtual ~CustomShapeProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// This is the notifier from SfxListener
|
// This is the notifier from SfxListener
|
||||||
virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
|
virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -27,7 +27,10 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dCompoundProperties : public E3dProperties
|
class E3dCompoundProperties : public E3dProperties
|
||||||
{
|
{
|
||||||
protected:
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
|
protected:
|
||||||
// Called after ItemChange() is done for all items.
|
// Called after ItemChange() is done for all items.
|
||||||
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
||||||
|
|
||||||
@@ -41,9 +44,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dCompoundProperties() override;
|
virtual ~E3dCompoundProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// Get merged ItemSet. Normally, this maps directly to GetObjectItemSet(), but may
|
// Get merged ItemSet. Normally, this maps directly to GetObjectItemSet(), but may
|
||||||
// be overridden e.g for group objects to return a merged ItemSet of the object.
|
// be overridden e.g for group objects to return a merged ItemSet of the object.
|
||||||
// When using this method the returned ItemSet may contain items in the state
|
// When using this method the returned ItemSet may contain items in the state
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dExtrudeProperties final : public E3dCompoundProperties
|
class E3dExtrudeProperties final : public E3dCompoundProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// Called after ItemChange() is done for all items.
|
// Called after ItemChange() is done for all items.
|
||||||
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
||||||
|
|
||||||
@@ -39,9 +42,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dExtrudeProperties() override;
|
virtual ~E3dExtrudeProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // end of namespace sdr::properties
|
} // end of namespace sdr::properties
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dLatheProperties final : public E3dCompoundProperties
|
class E3dLatheProperties final : public E3dCompoundProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// Called after ItemChange() is done for all items.
|
// Called after ItemChange() is done for all items.
|
||||||
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
||||||
|
|
||||||
@@ -39,9 +42,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dLatheProperties() override;
|
virtual ~E3dLatheProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // end of namespace sdr::properties
|
} // end of namespace sdr::properties
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dProperties : public AttributeProperties
|
class E3dProperties : public AttributeProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
@@ -43,9 +46,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dProperties() override;
|
virtual ~E3dProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // end of namespace sdr::properties
|
} // end of namespace sdr::properties
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dSceneProperties final : public E3dProperties
|
class E3dSceneProperties final : public E3dProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// Called after ItemChange() is done for all items.
|
// Called after ItemChange() is done for all items.
|
||||||
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
||||||
|
|
||||||
@@ -40,9 +43,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dSceneProperties() override;
|
virtual ~E3dSceneProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// get merged ItemSet. Normally, this maps directly to GetObjectItemSet(), but may
|
// get merged ItemSet. Normally, this maps directly to GetObjectItemSet(), but may
|
||||||
// be overridden e.g for group objects to return a merged ItemSet of the object.
|
// be overridden e.g for group objects to return a merged ItemSet of the object.
|
||||||
// When using this method the returned ItemSet may contain items in the state
|
// When using this method the returned ItemSet may contain items in the state
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class E3dSphereProperties final : public E3dCompoundProperties
|
class E3dSphereProperties final : public E3dCompoundProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// Called after ItemChange() is done for all items.
|
// Called after ItemChange() is done for all items.
|
||||||
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
virtual void PostItemChange(const sal_uInt16 nWhich) override;
|
||||||
|
|
||||||
@@ -39,9 +42,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
// destructor
|
// destructor
|
||||||
virtual ~E3dSphereProperties() override;
|
virtual ~E3dSphereProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // end of namespace sdr::properties
|
} // end of namespace sdr::properties
|
||||||
|
|||||||
@@ -30,13 +30,13 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class EmptyProperties final : public BaseProperties
|
class EmptyProperties final : public BaseProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// basic constructor
|
// basic constructor
|
||||||
explicit EmptyProperties(SdrObject& rObj);
|
explicit EmptyProperties(SdrObject& rObj);
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// create a new object specific itemset with object specific ranges.
|
// create a new object specific itemset with object specific ranges.
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class GraphicProperties final : public RectangleProperties
|
class GraphicProperties final : public RectangleProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// apply the correct SfyStyleSheet from SdrObject's SdrModel
|
// apply the correct SfyStyleSheet from SdrObject's SdrModel
|
||||||
virtual void applyDefaultStyleSheetFromSdrModel() override;
|
virtual void applyDefaultStyleSheetFromSdrModel() override;
|
||||||
|
|
||||||
@@ -46,9 +49,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~GraphicProperties() override;
|
virtual ~GraphicProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -28,8 +28,12 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class GroupProperties final : public BaseProperties
|
class GroupProperties final : public BaseProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// the to be used ItemSet
|
// the to be used ItemSet
|
||||||
mutable std::optional<SfxItemSet> moMergedItemSet;
|
mutable std::optional<SfxItemSet> moMergedItemSet;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// basic constructor
|
// basic constructor
|
||||||
explicit GroupProperties(SdrObject& rObj);
|
explicit GroupProperties(SdrObject& rObj);
|
||||||
@@ -40,9 +44,6 @@ namespace sdr::properties
|
|||||||
// create a new object specific itemset with object specific ranges.
|
// create a new object specific itemset with object specific ranges.
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// get itemset
|
// get itemset
|
||||||
virtual const SfxItemSet& GetObjectItemSet() const override;
|
virtual const SfxItemSet& GetObjectItemSet() const override;
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class MeasureProperties final : public TextProperties
|
class MeasureProperties final : public TextProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
|
|
||||||
@@ -43,9 +46,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~MeasureProperties() override;
|
virtual ~MeasureProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class OleProperties final : public RectangleProperties
|
class OleProperties final : public RectangleProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// apply the correct SfyStyleSheet from SdrObject's SdrModel
|
// apply the correct SfyStyleSheet from SdrObject's SdrModel
|
||||||
virtual void applyDefaultStyleSheetFromSdrModel() override;
|
virtual void applyDefaultStyleSheetFromSdrModel() override;
|
||||||
|
|
||||||
@@ -39,9 +42,6 @@ namespace sdr::properties
|
|||||||
|
|
||||||
// destructor
|
// destructor
|
||||||
virtual ~OleProperties() override;
|
virtual ~OleProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
};
|
};
|
||||||
} // end of namespace sdr::properties
|
} // end of namespace sdr::properties
|
||||||
|
|
||||||
|
|||||||
@@ -28,6 +28,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class PageProperties final : public BaseProperties
|
class PageProperties final : public BaseProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
// the to be used ItemSet
|
// the to be used ItemSet
|
||||||
mutable std::optional<SfxItemSet> mxEmptyItemSet;
|
mutable std::optional<SfxItemSet> mxEmptyItemSet;
|
||||||
|
|
||||||
@@ -44,9 +47,6 @@ namespace sdr::properties
|
|||||||
// create a new object specific itemset with object specific ranges.
|
// create a new object specific itemset with object specific ranges.
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& pPool) override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
virtual const SfxItemSet& GetObjectItemSet() const override;
|
virtual const SfxItemSet& GetObjectItemSet() const override;
|
||||||
|
|
||||||
// get the installed StyleSheet
|
// get the installed StyleSheet
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class RectangleProperties : public TextProperties
|
class RectangleProperties : public TextProperties
|
||||||
{
|
{
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// react on ItemSet changes
|
// react on ItemSet changes
|
||||||
virtual void ItemSetChanged(std::span< const SfxPoolItem* const > aChangedItems, sal_uInt16 nDeletedWhich, bool bAdjustTextFrameWidthAndHeight = true) override;
|
virtual void ItemSetChanged(std::span< const SfxPoolItem* const > aChangedItems, sal_uInt16 nDeletedWhich, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
@@ -41,9 +44,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~RectangleProperties() override;
|
virtual ~RectangleProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -28,10 +28,12 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
class TextProperties : public AttributeProperties
|
class TextProperties : public AttributeProperties
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
// #i101556# versioning support
|
// #i101556# versioning support
|
||||||
sal_uInt32 maVersion;
|
sal_uInt32 maVersion;
|
||||||
|
|
||||||
|
// Clone() operator, normally just calls the local copy constructor
|
||||||
|
virtual std::unique_ptr<BaseProperties> implCloneProperties(SdrObject& rObj) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// create a new itemset
|
// create a new itemset
|
||||||
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
virtual SfxItemSet CreateObjectSpecificItemSet(SfxItemPool& rPool) override;
|
||||||
@@ -55,9 +57,6 @@ namespace sdr::properties
|
|||||||
// destructor
|
// destructor
|
||||||
virtual ~TextProperties() override;
|
virtual ~TextProperties() override;
|
||||||
|
|
||||||
// Clone() operator, normally just calls the local copy constructor
|
|
||||||
virtual std::unique_ptr<BaseProperties> Clone(SdrObject& rObj) const override;
|
|
||||||
|
|
||||||
// set a new StyleSheet and broadcast
|
// set a new StyleSheet and broadcast
|
||||||
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
virtual void SetStyleSheet(SfxStyleSheet* pNewStyleSheet, bool bDontRemoveHardAttr,
|
||||||
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
bool bBroadcast, bool bAdjustTextFrameWidthAndHeight = true) override;
|
||||||
|
|||||||
@@ -232,7 +232,7 @@ OUString AnnotationObject::TakeObjNameSingul() const
|
|||||||
|
|
||||||
OUString AnnotationObject::TakeObjNamePlural() const { return u"Annotations"_ustr; }
|
OUString AnnotationObject::TakeObjNamePlural() const { return u"Annotations"_ustr; }
|
||||||
|
|
||||||
rtl::Reference<SdrObject> AnnotationObject::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> AnnotationObject::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new AnnotationObject(rTargetModel, *this);
|
return new AnnotationObject(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ rtl::Reference<SdrObject> E3dCubeObj::DoConvertToPolyObj(bool /*bBezier*/, bool
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dCubeObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dCubeObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dCubeObj(rTargetModel, *this);
|
return new E3dCubeObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ SdrObjKind E3dExtrudeObj::GetObjIdentifier() const
|
|||||||
return SdrObjKind::E3D_Extrusion;
|
return SdrObjKind::E3D_Extrusion;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dExtrudeObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dExtrudeObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dExtrudeObj(rTargetModel, *this);
|
return new E3dExtrudeObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ SdrObjKind E3dLatheObj::GetObjIdentifier() const
|
|||||||
return SdrObjKind::E3D_Lathe;
|
return SdrObjKind::E3D_Lathe;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dLatheObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dLatheObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dLatheObj(rTargetModel, *this);
|
return new E3dLatheObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -397,7 +397,7 @@ OUString E3dObject::TakeObjNamePlural() const
|
|||||||
return SvxResId(STR_ObjNamePluralObj3d);
|
return SvxResId(STR_ObjNamePluralObj3d);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dObject::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dObject::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dObject(rTargetModel, *this);
|
return new E3dObject(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
@@ -593,7 +593,7 @@ void E3dCompoundObject::RecalcSnapRect()
|
|||||||
sal_Int32(ceil(aSnapRange.getMaxX())), sal_Int32(ceil(aSnapRange.getMaxY())));
|
sal_Int32(ceil(aSnapRange.getMaxX())), sal_Int32(ceil(aSnapRange.getMaxY())));
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dCompoundObject::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dCompoundObject::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dCompoundObject(rTargetModel, *this);
|
return new E3dCompoundObject(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -223,7 +223,7 @@ rtl::Reference<SdrObject> E3dPolygonObj::DoConvertToPolyObj(bool /*bBezier*/,
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dPolygonObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dPolygonObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dPolygonObj(rTargetModel, *this);
|
return new E3dPolygonObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -439,7 +439,7 @@ void E3dScene::removeAllNonSelectedObjects()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dScene::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dScene::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dScene(rTargetModel, *this);
|
return new E3dScene(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ rtl::Reference<SdrObject> E3dSphereObj::DoConvertToPolyObj(bool /*bBezier*/, boo
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> E3dSphereObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> E3dSphereObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new E3dSphereObj(rTargetModel, *this);
|
return new E3dSphereObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -358,7 +358,7 @@ SdrObjKind FmFormObj::GetObjIdentifier() const
|
|||||||
return SdrObjKind::UNO;
|
return SdrObjKind::UNO;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> FmFormObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> FmFormObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new FmFormObj(rTargetModel, *this);
|
return new FmFormObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,6 +50,8 @@ class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) FmFormObj final : public SdrUnoObj
|
|||||||
// protected destructor
|
// protected destructor
|
||||||
SAL_DLLPRIVATE virtual ~FmFormObj() override;
|
SAL_DLLPRIVATE virtual ~FmFormObj() override;
|
||||||
|
|
||||||
|
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
FmFormObj(
|
FmFormObj(
|
||||||
SdrModel& rSdrModel,
|
SdrModel& rSdrModel,
|
||||||
@@ -79,8 +81,6 @@ public:
|
|||||||
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
SAL_DLLPRIVATE virtual SdrObjKind GetObjIdentifier() const override;
|
||||||
SAL_DLLPRIVATE virtual void NbcReformatText() override;
|
SAL_DLLPRIVATE virtual void NbcReformatText() override;
|
||||||
|
|
||||||
SAL_DLLPRIVATE virtual rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override;
|
|
||||||
|
|
||||||
SAL_DLLPRIVATE static css::uno::Reference< css::uno::XInterface> ensureModelEnv(
|
SAL_DLLPRIVATE static css::uno::Reference< css::uno::XInterface> ensureModelEnv(
|
||||||
const css::uno::Reference< css::uno::XInterface>& _rSourceContainer,
|
const css::uno::Reference< css::uno::XInterface>& _rSourceContainer,
|
||||||
const css::uno::Reference< css::form::XForms>& _rTopLevelDestContainer);
|
const css::uno::Reference< css::form::XForms>& _rTopLevelDestContainer);
|
||||||
|
|||||||
@@ -144,74 +144,103 @@ namespace sdr::properties
|
|||||||
: DefaultProperties(rProps, rObj),
|
: DefaultProperties(rProps, rObj),
|
||||||
mpStyleSheet(nullptr)
|
mpStyleSheet(nullptr)
|
||||||
{
|
{
|
||||||
SfxStyleSheet* pTargetStyleSheet(rProps.GetStyleSheet());
|
const bool bModelChange(&rObj.getSdrModelFromSdrObject() != &rProps.GetSdrObject().getSdrModelFromSdrObject());
|
||||||
|
|
||||||
if(pTargetStyleSheet)
|
if (bModelChange)
|
||||||
{
|
{
|
||||||
const bool bModelChange(&rObj.getSdrModelFromSdrObject() != &rProps.GetSdrObject().getSdrModelFromSdrObject());
|
// use default; will be corrected/handled in call to
|
||||||
|
// postProcessAfterCloneToDifferentModel below. Thus,
|
||||||
if(bModelChange)
|
// also do not yet call ImpAddStyleSheet here
|
||||||
{
|
mpStyleSheet = GetSdrObject().getSdrModelFromSdrObject().GetDefaultStyleSheet();
|
||||||
// tdf#117506
|
|
||||||
// The error shows that it is definitely necessary to solve this problem.
|
|
||||||
// Interestingly I already had a note here for 'work needed'.
|
|
||||||
// Checked in libreoffice-6-0 what happened there. In principle, the whole
|
|
||||||
// ::Clone of SdrPage and SdrObject happened in the same SdrModel, only
|
|
||||||
// afterwards a ::SetModel was used at the cloned SdrPage which went through
|
|
||||||
// all layers. The StyleSheet-problem was solved in
|
|
||||||
// AttributeProperties::MoveToItemPool at the end. There, a StyleSheet with the
|
|
||||||
// same name was searched for in the target-SdrModel.
|
|
||||||
// Start by resetting the current TargetStyleSheet so that nothing goes wrong
|
|
||||||
// when we do not find a fitting TargetStyleSheet.
|
|
||||||
// Note: The test for SdrModelChange above was wrong (compared the already set
|
|
||||||
// new SdrObject), so this never triggered and pTargetStyleSheet was never set to
|
|
||||||
// nullptr before. This means that a StyleSheet from another SdrModel was used
|
|
||||||
// which of course is very dangerous. Interestingly did not crash since when that
|
|
||||||
// other SdrModel was destroyed the ::Notify mechanism still worked reliably
|
|
||||||
// and disconnected these Properties successfully from the alien-StyleSheet.
|
|
||||||
pTargetStyleSheet = nullptr;
|
|
||||||
|
|
||||||
// Check if we have a TargetStyleSheetPool at the target-SdrModel. This *should*
|
|
||||||
// be the case already (SdrModel::Merge and SdDrawDocument::InsertBookmarkAsPage
|
|
||||||
// have already cloned the StyleSheets to the target-SdrModel when used in Draw/impress).
|
|
||||||
// If none is found, ImpGetDefaultStyleSheet will be used to set a 'default'
|
|
||||||
// StyleSheet as StyleSheet implicitly later (that's what happened in the task,
|
|
||||||
// thus the FillStyle changed to the 'default' Blue).
|
|
||||||
// Note: It *may* be necessary to do more for StyleSheets, e.g. clone/copy the
|
|
||||||
// StyleSheet Hierarchy from the source SdrModel and/or add the Items from there
|
|
||||||
// as hard attributes. If needed, have a look at the older AttributeProperties::SetModel
|
|
||||||
// implementation from e.g. libreoffice-6-0.
|
|
||||||
SfxStyleSheetBasePool* pTargetStyleSheetPool(rObj.getSdrModelFromSdrObject().GetStyleSheetPool());
|
|
||||||
|
|
||||||
if(nullptr != pTargetStyleSheetPool)
|
|
||||||
{
|
|
||||||
// If we have a TargetStyleSheetPool, search for the used StyleSheet
|
|
||||||
// in the target SdrModel using the Name from the original StyleSheet
|
|
||||||
// in the source-SdrModel.
|
|
||||||
pTargetStyleSheet = dynamic_cast< SfxStyleSheet* >(
|
|
||||||
pTargetStyleSheetPool->Find(
|
|
||||||
rProps.GetStyleSheet()->GetName(),
|
|
||||||
rProps.GetStyleSheet()->GetFamily()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!pTargetStyleSheet)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if(HasSfxItemSet())
|
|
||||||
{
|
|
||||||
// The SfxItemSet has been cloned and exists,
|
|
||||||
// we can directly set the SfxStyleSheet at it
|
|
||||||
ImpAddStyleSheet(pTargetStyleSheet, true);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// No SfxItemSet exists yet (there is none in
|
// copy existing one
|
||||||
// the source, so none was cloned). Remember the
|
mpStyleSheet = rProps.GetStyleSheet();
|
||||||
// SfxStyleSheet to set it when the SfxItemSet
|
|
||||||
// got constructed on-demand
|
// add StyleSheet && establish the parent-links in the SfxItemSet
|
||||||
mpStyleSheet = pTargetStyleSheet;
|
ImpAddStyleSheet(mpStyleSheet, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void AttributeProperties::postProcessAfterCloneToDifferentModel(const SdrObject& rSrcObj)
|
||||||
|
{
|
||||||
|
SdrModel& rDstModel(GetSdrObject().getSdrModelFromSdrObject());
|
||||||
|
const bool bModelChange(&rSrcObj.getSdrModelFromSdrObject() != &rDstModel);
|
||||||
|
|
||||||
|
if (!bModelChange)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// guarantee SfxItemSet existence
|
||||||
|
DefaultProperties::GetObjectItemSet();
|
||||||
|
const sdr::properties::BaseProperties& rSource(rSrcObj.GetProperties());
|
||||||
|
SfxStyleSheet* pNewStyleSheet(nullptr);
|
||||||
|
|
||||||
|
if (rDstModel.GetStyleSheetPool())
|
||||||
|
{
|
||||||
|
SfxStyleSheet* pSourceStyleSheet(rSource.GetStyleSheet());
|
||||||
|
|
||||||
|
if (pSourceStyleSheet)
|
||||||
|
{
|
||||||
|
// If we have a TargetStyleSheetPool, search for the used StyleSheet
|
||||||
|
// in the target SdrModel using the Name from the original StyleSheet
|
||||||
|
// in the source-SdrModel.
|
||||||
|
// That will/should work always since Paste from another model will
|
||||||
|
// in a 1st step copy non-existing StyleSheets to destination model
|
||||||
|
pNewStyleSheet = dynamic_cast< SfxStyleSheet* >(
|
||||||
|
rDstModel.GetStyleSheetPool()->Find(
|
||||||
|
pSourceStyleSheet->GetName(),
|
||||||
|
pSourceStyleSheet->GetFamily()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// fallback: every SdrObject *should* have a StyleSheet, use
|
||||||
|
// default from the model
|
||||||
|
if(!pNewStyleSheet)
|
||||||
|
pNewStyleSheet = rDstModel.GetDefaultStyleSheet();
|
||||||
|
|
||||||
|
if(!pNewStyleSheet)
|
||||||
|
// may still have no StyleSheet, was so before, too, but
|
||||||
|
// should not happen since a DefaultStyleSheet should
|
||||||
|
// always be there
|
||||||
|
return;
|
||||||
|
|
||||||
|
// add StyleSheet && establish the parent-links in the SfxItemSet
|
||||||
|
if (GetStyleSheet() != pNewStyleSheet)
|
||||||
|
{
|
||||||
|
ImpRemoveStyleSheet();
|
||||||
|
ImpAddStyleSheet(pNewStyleSheet, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HasSfxItemSet())
|
||||||
|
{
|
||||||
|
// here we have a model change and a StyleSheet set,. but that
|
||||||
|
// StyleSheet was found by looking for name & type. It may
|
||||||
|
// *not* be identical to the StyleSheet from the Source.
|
||||||
|
|
||||||
|
// What to do? We could...
|
||||||
|
// (a) the Style-friendly way:
|
||||||
|
// - check if StyleSheet is identical
|
||||||
|
// - if not, create a new in-between StyleSheet hosting missing Items
|
||||||
|
// - if yes, use, done.
|
||||||
|
// (b) the pragmatic/practical way:
|
||||||
|
// - Just hard-attribute the Items that are detected as different
|
||||||
|
// similar to what BurnInStyleSheetAttributes does/did, but only
|
||||||
|
// for differing Items here
|
||||||
|
//
|
||||||
|
// (b)) is the most simple for now, but will lead to more hard
|
||||||
|
// attributes. The other possibilities will be better in the
|
||||||
|
// long term. For now, I will use (b).
|
||||||
|
SfxWhichIter aIter(rSource.GetObjectItemSet());
|
||||||
|
|
||||||
|
for (sal_uInt16 nWhich = aIter.FirstWhich(); nWhich; nWhich = aIter.NextWhich())
|
||||||
|
{
|
||||||
|
const SfxPoolItem& rOld(rSource.GetItem(nWhich));
|
||||||
|
const SfxPoolItem& rNew(GetItem(nWhich));
|
||||||
|
|
||||||
|
if (!SfxPoolItem::areSame(rOld, rNew))
|
||||||
|
SetObjectItemDirect(rOld);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -220,7 +249,7 @@ namespace sdr::properties
|
|||||||
ImpRemoveStyleSheet();
|
ImpRemoveStyleSheet();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> AttributeProperties::Clone(SdrObject&) const
|
std::unique_ptr<BaseProperties> AttributeProperties::implCloneProperties(SdrObject&) const
|
||||||
{
|
{
|
||||||
assert(false && "this class is effectively abstract, should only be instantiating subclasses");
|
assert(false && "this class is effectively abstract, should only be instantiating subclasses");
|
||||||
abort();
|
abort();
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> CaptionProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> CaptionProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new CaptionProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new CaptionProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> CircleProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> CircleProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new CircleProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new CircleProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> ConnectorProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> ConnectorProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new ConnectorProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new ConnectorProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -195,7 +195,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> CustomShapeProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> CustomShapeProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new CustomShapeProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new CustomShapeProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ namespace sdr::properties
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> DefaultProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> DefaultProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new DefaultProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new DefaultProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dCompoundProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dCompoundProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dCompoundProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dCompoundProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dExtrudeProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dExtrudeProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dExtrudeProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dExtrudeProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dLatheProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dLatheProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dLatheProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dLatheProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dSceneProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dSceneProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dSceneProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dSceneProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> E3dSphereProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> E3dSphereProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new E3dSphereProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new E3dSphereProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> EmptyProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> EmptyProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new EmptyProperties(rObj));
|
return std::unique_ptr<BaseProperties>(new EmptyProperties(rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> GraphicProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> GraphicProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new GraphicProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new GraphicProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> GroupProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> GroupProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new GroupProperties(rObj));
|
return std::unique_ptr<BaseProperties>(new GroupProperties(rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> MeasureProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> MeasureProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new MeasureProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new MeasureProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> OleProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> OleProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new OleProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new OleProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> PageProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> PageProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new PageProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new PageProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,6 +40,15 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BaseProperties::postProcessAfterCloneToDifferentModel(const SdrObject& /*rSrcObj*/)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
std::unique_ptr<BaseProperties> BaseProperties::Clone(SdrObject& rObj) const
|
||||||
|
{
|
||||||
|
return implCloneProperties(rObj);
|
||||||
|
}
|
||||||
|
|
||||||
const SdrObject& BaseProperties::GetSdrObject() const
|
const SdrObject& BaseProperties::GetSdrObject() const
|
||||||
{
|
{
|
||||||
return mrObject;
|
return mrObject;
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> RectangleProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> RectangleProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new RectangleProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new RectangleProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ namespace sdr::properties
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> TextProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> TextProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
return std::unique_ptr<BaseProperties>(new TextProperties(*this, rObj));
|
return std::unique_ptr<BaseProperties>(new TextProperties(*this, rObj));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2788,7 +2788,7 @@ void SdrObjCustomShape::NbcSetOutlinerParaObject(std::optional<OutlinerParaObjec
|
|||||||
InvalidateRenderGeometry();
|
InvalidateRenderGeometry();
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrObjCustomShape::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrObjCustomShape::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrObjCustomShape(rTargetModel, *this);
|
return new SdrObjCustomShape(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -110,8 +110,10 @@
|
|||||||
#include <svx/xlnwtit.hxx>
|
#include <svx/xlnwtit.hxx>
|
||||||
#include <svx/svdglue.hxx>
|
#include <svx/svdglue.hxx>
|
||||||
#include <svx/svdsob.hxx>
|
#include <svx/svdsob.hxx>
|
||||||
|
#include <svl/whiter.hxx>
|
||||||
#include <svdobjplusdata.hxx>
|
#include <svdobjplusdata.hxx>
|
||||||
#include <svdobjuserdatalist.hxx>
|
#include <svdobjuserdatalist.hxx>
|
||||||
|
#include <svx/xfillit0.hxx>
|
||||||
|
|
||||||
#include <optional>
|
#include <optional>
|
||||||
#include <libxml/xmlwriter.h>
|
#include <libxml/xmlwriter.h>
|
||||||
@@ -1214,6 +1216,19 @@ bool SdrObject::HasLimitedRotation() const
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rtl::Reference<SdrObject> SdrObject::CloneSdrObject(SdrModel& rTargetModel) const
|
||||||
|
{
|
||||||
|
if (&rTargetModel == &getSdrModelFromSdrObject())
|
||||||
|
// clone to same model, simple method
|
||||||
|
return implCloneSdrObject(rTargetModel);
|
||||||
|
|
||||||
|
// clone to different model, need to do more for creating a valid
|
||||||
|
// Style and Properties
|
||||||
|
rtl::Reference<SdrObject> aRetval(implCloneSdrObject(rTargetModel));
|
||||||
|
aRetval->GetProperties().postProcessAfterCloneToDifferentModel(*this);
|
||||||
|
return aRetval;
|
||||||
|
}
|
||||||
|
|
||||||
OUString SdrObject::TakeObjNameSingul() const
|
OUString SdrObject::TakeObjNameSingul() const
|
||||||
{
|
{
|
||||||
OUString sName(SvxResId(STR_ObjNameSingulNONE));
|
OUString sName(SvxResId(STR_ObjNameSingulNONE));
|
||||||
@@ -1920,7 +1935,7 @@ bool SdrObject::HasTextEdit() const
|
|||||||
|
|
||||||
bool SdrObject::Equals(const SdrObject& rOtherObj) const
|
bool SdrObject::Equals(const SdrObject& rOtherObj) const
|
||||||
{
|
{
|
||||||
return (m_aAnchor.X() == rOtherObj.m_aAnchor.X() && m_aAnchor.Y() == rOtherObj.m_aAnchor.Y() &&
|
const bool bEqual(m_aAnchor.X() == rOtherObj.m_aAnchor.X() && m_aAnchor.Y() == rOtherObj.m_aAnchor.Y() &&
|
||||||
m_nOrdNum == rOtherObj.m_nOrdNum && mnNavigationPosition == rOtherObj.mnNavigationPosition &&
|
m_nOrdNum == rOtherObj.m_nOrdNum && mnNavigationPosition == rOtherObj.mnNavigationPosition &&
|
||||||
mbSupportTextIndentingOnLineWidthChange == rOtherObj.mbSupportTextIndentingOnLineWidthChange &&
|
mbSupportTextIndentingOnLineWidthChange == rOtherObj.mbSupportTextIndentingOnLineWidthChange &&
|
||||||
m_aCustomPromptText == rOtherObj.m_aCustomPromptText &&
|
m_aCustomPromptText == rOtherObj.m_aCustomPromptText &&
|
||||||
@@ -1929,7 +1944,87 @@ bool SdrObject::Equals(const SdrObject& rOtherObj) const
|
|||||||
m_bNotVisibleAsMaster == rOtherObj.m_bNotVisibleAsMaster && m_bEmptyPresObj == rOtherObj.m_bEmptyPresObj &&
|
m_bNotVisibleAsMaster == rOtherObj.m_bNotVisibleAsMaster && m_bEmptyPresObj == rOtherObj.m_bEmptyPresObj &&
|
||||||
mbVisible == rOtherObj.mbVisible && m_bNoPrint == rOtherObj.m_bNoPrint && m_bSizProt == rOtherObj.m_bSizProt &&
|
mbVisible == rOtherObj.mbVisible && m_bNoPrint == rOtherObj.m_bNoPrint && m_bSizProt == rOtherObj.m_bSizProt &&
|
||||||
m_bMovProt == rOtherObj.m_bMovProt && m_bVirtObj == rOtherObj.m_bVirtObj &&
|
m_bMovProt == rOtherObj.m_bMovProt && m_bVirtObj == rOtherObj.m_bVirtObj &&
|
||||||
mnLayerID == rOtherObj.mnLayerID && GetMergedItemSet().Equals(rOtherObj.GetMergedItemSet(), false) );
|
mnLayerID == rOtherObj.mnLayerID && IsGroupObject() == rOtherObj.IsGroupObject());
|
||||||
|
|
||||||
|
if (!bEqual)
|
||||||
|
// compare results *without* Items are already not equal, done
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (IsGroupObject())
|
||||||
|
{
|
||||||
|
// for GroupObjects, do what was done before. NOTE: This will create
|
||||||
|
// merged ItemSets for Group content, not sure if that is needed.
|
||||||
|
// It would also be possible to enter content & compare recursively
|
||||||
|
return GetMergedItemSet().Equals(rOtherObj.GetMergedItemSet(), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Do ContentCompare - Items are compared including parent e.g. Styles.
|
||||||
|
// The check above what was done before is more 'hard' in the sense that
|
||||||
|
// it WILL fail for same Item content when e.g. count of hard Items differs,
|
||||||
|
// but with parent ItemSet is actually equal. ContentCompare is necessary
|
||||||
|
// after e.g. in AttributeProperties::postProcessAfterCloneToDifferentModel
|
||||||
|
// the Items of an Object were hard-set/corrected
|
||||||
|
const SfxItemSet& rSrcItemSet(GetObjectItemSet());
|
||||||
|
const SfxItemSet& rDstItemSet(rOtherObj.GetObjectItemSet());
|
||||||
|
SfxWhichIter aIter(rSrcItemSet);
|
||||||
|
const SdrPage* pPage(getSdrPageFromSdrObject());
|
||||||
|
const bool bOnMasterPage(nullptr != pPage && pPage->IsMasterPage());
|
||||||
|
|
||||||
|
for (sal_uInt16 nWhich = aIter.FirstWhich(); nWhich; nWhich = aIter.NextWhich())
|
||||||
|
{
|
||||||
|
const SfxPoolItem& rOld(rSrcItemSet.Get(nWhich));
|
||||||
|
const SfxPoolItem& rNew(rDstItemSet.Get(nWhich));
|
||||||
|
|
||||||
|
if (!SfxPoolItem::areSame(rOld, rNew))
|
||||||
|
{
|
||||||
|
if (bOnMasterPage)
|
||||||
|
{
|
||||||
|
// we have strange effects for Items in Objects on MasterPages on
|
||||||
|
// some Items that seem to be corrected/set different due to being
|
||||||
|
// PresObjs or defaults or similar on MasterPage. React on those
|
||||||
|
// on MasterPages
|
||||||
|
switch (nWhich)
|
||||||
|
{
|
||||||
|
case XATTRSET_LINE:
|
||||||
|
case XATTRSET_FILL:
|
||||||
|
// these Items are not really used (maybe removed),
|
||||||
|
// ignore. Diffs come from these being SfxSetItems
|
||||||
|
// on different models with slightly different defaults
|
||||||
|
// in the contained complete default SfxItemSet
|
||||||
|
continue;
|
||||||
|
|
||||||
|
// somewhere defaults for some objects seem to be set on MasterPages
|
||||||
|
// that define Items (here: for XATTR_FILLGRADIENT and FillStyle_BITMAP).
|
||||||
|
// These can be ignored when the FillStyle does not *use* these anyways.
|
||||||
|
// Better do this already for all FillStyles, you never know.
|
||||||
|
case XATTR_FILLCOLOR:
|
||||||
|
if (drawing::FillStyle_SOLID != rSrcItemSet.Get(XATTR_FILLSTYLE).GetValue())
|
||||||
|
continue;
|
||||||
|
break;
|
||||||
|
case XATTR_FILLGRADIENT:
|
||||||
|
if (drawing::FillStyle_GRADIENT != rSrcItemSet.Get(XATTR_FILLSTYLE).GetValue())
|
||||||
|
continue;
|
||||||
|
break;
|
||||||
|
case XATTR_FILLHATCH:
|
||||||
|
if (drawing::FillStyle_HATCH != rSrcItemSet.Get(XATTR_FILLSTYLE).GetValue())
|
||||||
|
continue;
|
||||||
|
break;
|
||||||
|
case XATTR_FILLBITMAP:
|
||||||
|
if (drawing::FillStyle_BITMAP != rSrcItemSet.Get(XATTR_FILLSTYLE).GetValue())
|
||||||
|
continue;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Item is different, done
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// all Items are Content-Equal
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SdrObject::dumpAsXml(xmlTextWriterPtr pWriter) const
|
void SdrObject::dumpAsXml(xmlTextWriterPtr pWriter) const
|
||||||
@@ -3461,7 +3556,7 @@ public:
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> CloneSdrObject(SdrModel& rTargetModel) const override
|
rtl::Reference<SdrObject> implCloneSdrObject(SdrModel& rTargetModel) const override
|
||||||
{
|
{
|
||||||
return new EmptyObject(rTargetModel, *this);
|
return new EmptyObject(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -232,7 +232,7 @@ SdrObjKind SdrCaptionObj::GetObjIdentifier() const
|
|||||||
return SdrObjKind::Caption;
|
return SdrObjKind::Caption;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrCaptionObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrCaptionObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrCaptionObj(rTargetModel, *this);
|
return new SdrCaptionObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -370,7 +370,7 @@ OUString SdrCircObj::TakeObjNamePlural() const
|
|||||||
return SvxResId(pID);
|
return SvxResId(pID);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrCircObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrCircObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrCircObj(rTargetModel, *this);
|
return new SdrCircObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1721,7 +1721,7 @@ void SdrEdgeObj::Reformat()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrEdgeObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrEdgeObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrEdgeObj(rTargetModel, *this);
|
return new SdrEdgeObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -856,7 +856,7 @@ rtl::Reference<SdrObject> SdrGrafObj::getFullDragClone() const
|
|||||||
return pRetval;
|
return pRetval;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrGrafObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrGrafObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrGrafObj(rTargetModel, *this);
|
return new SdrGrafObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -268,7 +268,7 @@ const tools::Rectangle& SdrObjGroup::GetSnapRect() const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrObjGroup::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrObjGroup::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrObjGroup(rTargetModel, *this);
|
return new SdrObjGroup(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -703,7 +703,7 @@ void SdrMeasureObj::TakeUnrotatedSnapRect(tools::Rectangle& rRect) const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrMeasureObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrMeasureObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrMeasureObj(rTargetModel, *this);
|
return new SdrMeasureObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -207,7 +207,7 @@ OUString SdrMediaObj::TakeObjNamePlural() const
|
|||||||
return SvxResId(STR_ObjNamePluralMEDIA);
|
return SvxResId(STR_ObjNamePluralMEDIA);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrMediaObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrMediaObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrMediaObj(rTargetModel, *this);
|
return new SdrMediaObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1577,7 +1577,7 @@ OUString SdrOle2Obj::TakeObjNamePlural() const
|
|||||||
return SvxResId(mpImpl->mbFrame ? STR_ObjNamePluralFrame : STR_ObjNamePluralOLE2);
|
return SvxResId(mpImpl->mbFrame ? STR_ObjNamePluralFrame : STR_ObjNamePluralOLE2);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrOle2Obj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrOle2Obj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrOle2Obj(rTargetModel, *this);
|
return new SdrOle2Obj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -151,7 +151,7 @@ void SdrPageObj::TakeObjInfo(SdrObjTransformInfoRec& rInfo) const
|
|||||||
rInfo.bCanConvToPolyLineToArea=false;
|
rInfo.bCanConvToPolyLineToArea=false;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrPageObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrPageObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrPageObj(rTargetModel, *this);
|
return new SdrPageObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1821,7 +1821,7 @@ SdrObjKind SdrPathObj::GetObjIdentifier() const
|
|||||||
return meKind;
|
return meKind;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrPathObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrPathObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrPathObj(rTargetModel, *this);
|
return new SdrPathObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ OUString SdrRectObj::TakeObjNamePlural() const
|
|||||||
return SvxResId(pResId);
|
return SvxResId(pResId);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrRectObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrRectObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrRectObj(rTargetModel, *this);
|
return new SdrRectObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1055,7 +1055,7 @@ OUString SdrTextObj::TakeObjNamePlural() const
|
|||||||
return sName;
|
return sName;
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrTextObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrTextObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrTextObj(rTargetModel, *this);
|
return new SdrTextObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -274,7 +274,7 @@ OUString SdrUnoObj::TakeObjNamePlural() const
|
|||||||
return SvxResId(STR_ObjNamePluralUno);
|
return SvxResId(STR_ObjNamePluralUno);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrUnoObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrUnoObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrUnoObj(rTargetModel, *this);
|
return new SdrUnoObj(rTargetModel, *this);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ void SdrVirtObj::RecalcBoundRect()
|
|||||||
setOutRectangle(aRectangle);
|
setOutRectangle(aRectangle);
|
||||||
}
|
}
|
||||||
|
|
||||||
rtl::Reference<SdrObject> SdrVirtObj::CloneSdrObject(SdrModel& rTargetModel) const
|
rtl::Reference<SdrObject> SdrVirtObj::implCloneSdrObject(SdrModel& rTargetModel) const
|
||||||
{
|
{
|
||||||
return new SdrVirtObj(rTargetModel, *this);
|
return new SdrVirtObj(rTargetModel, *this);
|
||||||
// TTTT not sure if the above works - how could SdrObjFactory::MakeNewObject
|
// TTTT not sure if the above works - how could SdrObjFactory::MakeNewObject
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ SdrText* CellTextProvider::getText(sal_Int32 nIndex) const
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<BaseProperties> CellProperties::Clone(SdrObject& rObj) const
|
std::unique_ptr<BaseProperties> CellProperties::implCloneProperties(SdrObject& rObj) const
|
||||||
{
|
{
|
||||||
OSL_FAIL("CellProperties::Clone(), does not work yet!");
|
OSL_FAIL("CellProperties::Clone(), does not work yet!");
|
||||||
return std::unique_ptr<BaseProperties>(new CellProperties(*this, rObj,nullptr));
|
return std::unique_ptr<BaseProperties>(new CellProperties(*this, rObj,nullptr));
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user