diff options
| author | Vladimir Glazounov <vg@openoffice.org> | 2007-04-11 14:49:04 +0000 |
|---|---|---|
| committer | Vladimir Glazounov <vg@openoffice.org> | 2007-04-11 14:49:04 +0000 |
| commit | 1982c6b8ec96b793ee5461a984e2fbc40caa6342 (patch) | |
| tree | cd28bab1a8aba265f2edee6e3b6bdd8d7b77da18 | |
| parent | 3370c400897e99bf3d4c911f0598ba498c888cf4 (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.hxx | 132 | ||||
| -rw-r--r-- | svx/inc/svx/extrud3d.hxx | 134 | ||||
| -rw-r--r-- | svx/inc/svx/extrusionbar.hxx | 79 | ||||
| -rw-r--r-- | svx/inc/svx/f3dchild.hxx | 64 |
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 + |
