1 /************************************************************************* 2 * 3 * OpenOffice.org - a multi-platform office productivity suite 4 * 5 * $RCSfile: sdrattribute3d.hxx,v $ 6 * 7 * $Revision: 1.4 $ 8 * 9 * last change: $Author: aw $ $Date: 2008-05-27 14:11:16 $ 10 * 11 * The Contents of this file are made available subject to 12 * the terms of GNU Lesser General Public License Version 2.1. 13 * 14 * 15 * GNU Lesser General Public License Version 2.1 16 * ============================================= 17 * Copyright 2005 by Sun Microsystems, Inc. 18 * 901 San Antonio Road, Palo Alto, CA 94303, USA 19 * 20 * This library is free software; you can redistribute it and/or 21 * modify it under the terms of the GNU Lesser General Public 22 * License version 2.1, as published by the Free Software Foundation. 23 * 24 * This library is distributed in the hope that it will be useful, 25 * but WITHOUT ANY WARRANTY; without even the implied warranty of 26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 27 * Lesser General Public License for more details. 28 * 29 * You should have received a copy of the GNU Lesser General Public 30 * License along with this library; if not, write to the Free Software 31 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 32 * MA 02111-1307 USA 33 * 34 ************************************************************************/ 35 36 #ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDROBJECTATTRIBUTE3D_HXX 37 #define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDROBJECTATTRIBUTE3D_HXX 38 39 #include <drawinglayer/drawinglayerdllapi.h> 40 #include <com/sun/star/drawing/NormalsKind.hpp> 41 #include <com/sun/star/drawing/TextureProjectionMode.hpp> 42 #include <com/sun/star/drawing/TextureKind2.hpp> 43 #include <com/sun/star/drawing/TextureMode.hpp> 44 45 ////////////////////////////////////////////////////////////////////////////// 46 // predefines 47 48 namespace drawinglayer { namespace attribute { 49 class ImpSdr3DObjectAttribute; 50 class MaterialAttribute3D; 51 }} 52 53 ////////////////////////////////////////////////////////////////////////////// 54 55 namespace drawinglayer 56 { 57 namespace attribute 58 { 59 class DRAWINGLAYER_DLLPUBLIC Sdr3DObjectAttribute 60 { 61 private: 62 ImpSdr3DObjectAttribute* mpSdr3DObjectAttribute; 63 64 public: 65 // constructors/destructor 66 Sdr3DObjectAttribute( 67 ::com::sun::star::drawing::NormalsKind aNormalsKind, 68 ::com::sun::star::drawing::TextureProjectionMode aTextureProjectionX, 69 ::com::sun::star::drawing::TextureProjectionMode aTextureProjectionY, 70 ::com::sun::star::drawing::TextureKind2 aTextureKind, 71 ::com::sun::star::drawing::TextureMode aTextureMode, 72 const MaterialAttribute3D& rMaterial, 73 bool bNormalsInvert, 74 bool bDoubleSided, 75 bool bShadow3D, 76 bool bTextureFilter, 77 bool bReducedLineGeometry); 78 Sdr3DObjectAttribute(); 79 Sdr3DObjectAttribute(const Sdr3DObjectAttribute& rCandidate); 80 ~Sdr3DObjectAttribute(); 81 82 // assignment operator 83 Sdr3DObjectAttribute& operator=(const Sdr3DObjectAttribute& rCandidate); 84 85 // checks if the incarnation is default constructed 86 bool isDefault() const; 87 88 // compare operator 89 bool operator==(const Sdr3DObjectAttribute& rCandidate) const; 90 91 // data read access 92 ::com::sun::star::drawing::NormalsKind getNormalsKind() const; 93 ::com::sun::star::drawing::TextureProjectionMode getTextureProjectionX() const; 94 ::com::sun::star::drawing::TextureProjectionMode getTextureProjectionY() const; 95 ::com::sun::star::drawing::TextureKind2 getTextureKind() const; 96 ::com::sun::star::drawing::TextureMode getTextureMode() const; 97 const MaterialAttribute3D& getMaterial() const; 98 bool getNormalsInvert() const; 99 bool getDoubleSided() const; 100 bool getShadow3D() const; 101 bool getTextureFilter() const; 102 bool getReducedLineGeometry() const; 103 }; 104 } // end of namespace attribute 105 } // end of namespace drawinglayer 106 107 ////////////////////////////////////////////////////////////////////////////// 108 109 #endif //INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDROBJECTATTRIBUTE3D_HXX 110 111 // eof 112