summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2007-04-11 14:49:04 +0000
committerVladimir Glazounov <vg@openoffice.org>2007-04-11 14:49:04 +0000
commit1982c6b8ec96b793ee5461a984e2fbc40caa6342 (patch)
treecd28bab1a8aba265f2edee6e3b6bdd8d7b77da18
parent3370c400897e99bf3d4c911f0598ba498c888cf4 (diff)
INTEGRATION: CWS hedaburemove01 (1.1.2); FILE ADDED
2007/02/09 16:53:06 vg 1.1.2.1: #72503# get rid of hedabu procedure: Moving headers to svx/inc/svx and correspondent necessary changes
-rw-r--r--svx/inc/svx/escpitem.hxx132
-rw-r--r--svx/inc/svx/extrud3d.hxx134
-rw-r--r--svx/inc/svx/extrusionbar.hxx79
-rw-r--r--svx/inc/svx/f3dchild.hxx64
4 files changed, 409 insertions, 0 deletions
diff --git a/svx/inc/svx/escpitem.hxx b/svx/inc/svx/escpitem.hxx
new file mode 100644
index 000000000000..7f60d32d23d0
--- /dev/null
+++ b/svx/inc/svx/escpitem.hxx
@@ -0,0 +1,132 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: escpitem.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 15:48:17 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+#ifndef _SVX_ESCPITEM_HXX
+#define _SVX_ESCPITEM_HXX
+
+// include ---------------------------------------------------------------
+
+#ifndef _SFXENUMITEM_HXX //autogen
+#include <svtools/eitem.hxx>
+#endif
+#ifndef _SVX_SVXENUM_HXX
+#include <svx/svxenum.hxx>
+#endif
+#ifndef _SVX_SVXIDS_HRC
+#include <svx/svxids.hrc>
+#endif
+
+#ifndef INCLUDED_SVXDLLAPI_H
+#include "svx/svxdllapi.h"
+#endif
+
+class SvXMLUnitConverter;
+namespace rtl
+{
+ class OUString;
+}
+
+// class SvxEscapementItem -----------------------------------------------
+
+#define DFLT_ESC_SUPER 33 // 1/3
+#define DFLT_ESC_SUB -33 // auch 1/3 fr"uher 8/100
+#define DFLT_ESC_PROP 58
+#define DFLT_ESC_AUTO_SUPER 101
+#define DFLT_ESC_AUTO_SUB -101
+
+/* [Beschreibung]
+
+ Dieses Item beschreibt die Schrift-Position.
+*/
+
+class SVX_DLLPUBLIC SvxEscapementItem : public SfxEnumItemInterface
+{
+ short nEsc;
+ BYTE nProp;
+public:
+ TYPEINFO();
+
+ SvxEscapementItem( const USHORT nId = ITEMID_ESCAPEMENT );
+ SvxEscapementItem( const SvxEscapement eEscape,
+ const USHORT nId = ITEMID_ESCAPEMENT );
+ SvxEscapementItem( const short nEsc, const BYTE nProp,
+ const USHORT nId = ITEMID_ESCAPEMENT );
+
+ // "pure virtual Methoden" vom SfxPoolItem
+ virtual int operator==( const SfxPoolItem& ) const;
+ virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
+ SfxMapUnit eCoreMetric,
+ SfxMapUnit ePresMetric,
+ String &rText, const IntlWrapper * = 0 ) const;
+
+ virtual sal_Bool QueryValue( com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 ) const;
+ virtual sal_Bool PutValue( const com::sun::star::uno::Any& rVal, BYTE nMemberId = 0 );
+
+ virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const;
+ virtual SfxPoolItem* Create(SvStream &, USHORT) const;
+ virtual SvStream& Store(SvStream &, USHORT nItemVersion) const;
+
+ inline void SetEscapement( const SvxEscapement eNew )
+ {
+ if( SVX_ESCAPEMENT_OFF == eNew )
+ nEsc = 0, nProp = 100;
+ else
+ if( SVX_ESCAPEMENT_SUPERSCRIPT == eNew )
+ nEsc = DFLT_ESC_SUPER, nProp = DFLT_ESC_PROP;
+ else
+ nEsc = DFLT_ESC_SUB, nProp = DFLT_ESC_PROP;
+ }
+ inline SvxEscapement GetEscapement() const { return static_cast< SvxEscapement >( GetEnumValue() ); }
+
+ inline short &GetEsc() { return nEsc; }
+ inline short GetEsc() const { return nEsc; }
+
+ inline BYTE &GetProp() { return nProp; }
+ inline BYTE GetProp() const { return nProp; }
+
+ inline SvxEscapementItem& operator=(const SvxEscapementItem& rEsc)
+ {
+ nEsc = rEsc.GetEsc();
+ nProp = rEsc.GetProp();
+ return *this;
+ }
+
+ virtual USHORT GetValueCount() const;
+ virtual String GetValueTextByPos( USHORT nPos ) const;
+ virtual USHORT GetEnumValue() const;
+ virtual void SetEnumValue( USHORT nNewVal );
+};
+
+#endif
+
diff --git a/svx/inc/svx/extrud3d.hxx b/svx/inc/svx/extrud3d.hxx
new file mode 100644
index 000000000000..1368302d6963
--- /dev/null
+++ b/svx/inc/svx/extrud3d.hxx
@@ -0,0 +1,134 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: extrud3d.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 15:48:29 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#ifndef _E3D_EXTRUD3D_HXX
+#define _E3D_EXTRUD3D_HXX
+
+#ifndef _E3D_OBJ3D_HXX
+#include <svx/obj3d.hxx>
+#endif
+
+#ifndef INCLUDED_SVXDLLAPI_H
+#include "svx/svxdllapi.h"
+#endif
+
+/*************************************************************************
+|*
+|* 3D-Extrusionsobjekt aus uebergebenem 2D-Polygon erzeugen
+|*
+\************************************************************************/
+
+class SVX_DLLPUBLIC E3dExtrudeObj : public E3dCompoundObject
+{
+ virtual sdr::properties::BaseProperties* CreateObjectSpecificProperties();
+
+ // to allow sdr::properties::E3dExtrudeProperties access to SetGeometryValid()
+ friend class sdr::properties::E3dExtrudeProperties;
+
+private:
+ // Geometrie, die dieses Objekt bestimmt
+ basegfx::B2DPolyPolygon maExtrudePolygon;
+
+ // #78972#
+ basegfx::B3DPolyPolygon maLinePolyPolygon;
+
+protected:
+ void SetDefaultAttributes(E3dDefaultAttributes& rDefault);
+ basegfx::B3DPolyPolygon GetFrontSide();
+ basegfx::B3DPolyPolygon GetBackSide(const basegfx::B3DPolyPolygon& rFrontSide);
+
+public:
+ TYPEINFO();
+
+ E3dExtrudeObj(E3dDefaultAttributes& rDefault, const basegfx::B2DPolyPolygon& rPP, double fDepth);
+ E3dExtrudeObj();
+
+ // PercentDiagonal: 0..100, before 0.0..0.5
+ sal_uInt16 GetPercentDiagonal() const
+ { return ((const Svx3DPercentDiagonalItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_PERCENT_DIAGONAL)).GetValue(); }
+
+ // BackScale: 0..100, before 0.0..1.0
+ sal_uInt16 GetPercentBackScale() const
+ { return ((const Svx3DBackscaleItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_BACKSCALE)).GetValue(); }
+
+ // BackScale: 0..100, before 0.0..1.0
+ sal_uInt32 GetExtrudeDepth() const
+ { return ((const Svx3DDepthItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_DEPTH)).GetValue(); }
+
+ // #107245# GetSmoothNormals() for bExtrudeSmoothed
+ sal_Bool GetSmoothNormals() const
+ { return ((const Svx3DSmoothNormalsItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_SMOOTH_NORMALS)).GetValue(); }
+
+ // #107245# GetSmoothLids() for bExtrudeSmoothFrontBack
+ sal_Bool GetSmoothLids() const
+ { return ((const Svx3DSmoothLidsItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_SMOOTH_LIDS)).GetValue(); }
+
+ // #107245# GetCharacterMode() for bExtrudeCharacterMode
+ sal_Bool GetCharacterMode() const
+ { return ((const Svx3DCharacterModeItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_CHARACTER_MODE)).GetValue(); }
+
+ // #107245# GetCloseFront() for bExtrudeCloseFront
+ sal_Bool GetCloseFront() const
+ { return ((const Svx3DCloseFrontItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_CLOSE_FRONT)).GetValue(); }
+
+ // #107245# GetCloseBack() for bExtrudeCloseBack
+ sal_Bool GetCloseBack() const
+ { return ((const Svx3DCloseBackItem&)GetObjectItemSet().Get(SDRATTR_3DOBJ_CLOSE_BACK)).GetValue(); }
+
+ virtual UINT16 GetObjIdentifier() const;
+
+ virtual void operator=(const SdrObject&);
+
+ // TakeObjName...() ist fuer die Anzeige in der UI, z.B. "3 Rahmen selektiert".
+ virtual void TakeObjNameSingul(String& rName) const;
+ virtual void TakeObjNamePlural(String& rName) const;
+
+ // Geometrieerzeugung
+ virtual void CreateGeometry();
+
+ // Give out simple line geometry
+ virtual basegfx::B3DPolyPolygon Get3DLineGeometry() const;
+
+ // Lokale Parameter setzen/lesen mit Geometrieneuerzeugung
+ void SetExtrudePolygon(const basegfx::B2DPolyPolygon &rNew);
+ const basegfx::B2DPolyPolygon &GetExtrudePolygon() { return maExtrudePolygon; }
+
+ // Aufbrechen
+ virtual BOOL IsBreakObjPossible();
+ virtual SdrAttrObj* GetBreakObj();
+};
+
+#endif // _E3D_EXTRUD3D_HXX
+
diff --git a/svx/inc/svx/extrusionbar.hxx b/svx/inc/svx/extrusionbar.hxx
new file mode 100644
index 000000000000..faec58aaaff6
--- /dev/null
+++ b/svx/inc/svx/extrusionbar.hxx
@@ -0,0 +1,79 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: extrusionbar.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 15:48:40 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#ifndef _SVX_EXTRUSION_BAR_HXX
+#define _SVX_EXTRUSION_BAR_HXX
+
+#ifndef _SFX_SHELL_HXX //autogen
+#include <sfx2/shell.hxx>
+#endif
+#ifndef _SFXMODULE_HXX //autogen
+#include <sfx2/module.hxx>
+#endif
+
+#ifndef _SVX_IFACEIDS_HXX
+#include <svx/ifaceids.hxx>
+#endif
+
+#ifndef INCLUDED_SVXDLLAPI_H
+#include "svx/svxdllapi.h"
+#endif
+
+class SfxViewShell;
+class SdrView;
+
+/************************************************************************/
+
+namespace svx
+{
+
+SVX_DLLPUBLIC bool checkForSelectedCustomShapes( SdrView* pSdrView, bool bOnlyExtruded );
+
+class SVX_DLLPUBLIC ExtrusionBar : public SfxShell
+{
+public:
+ TYPEINFO();
+ SFX_DECL_INTERFACE(SVX_INTERFACE_EXTRUSION_BAR)
+
+ ExtrusionBar(SfxViewShell* pViewShell );
+ ~ExtrusionBar();
+
+ static void execute( SdrView* pSdrView, SfxRequest& rReq, SfxBindings& rBindings );
+ static void getState( SdrView* pSdrView, SfxItemSet& rSet );
+};
+
+}
+
+#endif // _SVX_EXTRUSION_BAR_HXX
diff --git a/svx/inc/svx/f3dchild.hxx b/svx/inc/svx/f3dchild.hxx
new file mode 100644
index 000000000000..b17ed364a5c2
--- /dev/null
+++ b/svx/inc/svx/f3dchild.hxx
@@ -0,0 +1,64 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: f3dchild.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-04-11 15:49:04 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+
+#ifndef _SVX_F3DCHILD_HXX
+#define _SVX_F3DCHILD_HXX
+
+
+#ifndef _SFX_CHILDWIN_HXX //autogen
+#include <sfx2/childwin.hxx>
+#endif
+
+#ifndef INCLUDED_SVXDLLAPI_H
+#include "svx/svxdllapi.h"
+#endif
+
+/*************************************************************************
+|*
+|* Ableitung vom SfxChildWindow als "Behaelter" fuer 3D Window
+|*
+\************************************************************************/
+
+class SVX_DLLPUBLIC Svx3DChildWindow : public SfxChildWindow
+{
+ public:
+ Svx3DChildWindow( Window*, USHORT, SfxBindings*, SfxChildWinInfo* );
+
+ SFX_DECL_CHILDWINDOW(Svx3DChildWindow);
+};
+
+#endif // _SVX_F3DCHILD_HXX
+