summaryrefslogtreecommitdiff
path: root/svx/inc
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2004-02-03 16:25:18 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2004-02-03 16:25:18 +0000
commitf658417eeea6b4a91733f4aebb0e414b4da67424 (patch)
tree3ef0cee952b4ed5677d238b1572307d60c54e79b /svx/inc
parent390f036db598c53aa1501c595588b146891c9511 (diff)
INTEGRATION: CWS dialogdiet (1.1.2); FILE ADDED
2004/01/13 04:02:37 mwu 1.1.2.1: DialogDiet 2004_01_13
Diffstat (limited to 'svx/inc')
-rw-r--r--svx/inc/galobj.hxx284
1 files changed, 284 insertions, 0 deletions
diff --git a/svx/inc/galobj.hxx b/svx/inc/galobj.hxx
new file mode 100644
index 000000000000..10d11395148b
--- /dev/null
+++ b/svx/inc/galobj.hxx
@@ -0,0 +1,284 @@
+/*************************************************************************
+ *
+ * $RCSfile: galobj.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: hr $ $Date: 2004-02-03 17:25:18 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 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
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef _SVX_GALOBJ_HXX_
+#define _SVX_GALOBJ_HXX_
+
+#include <tools/urlobj.hxx>
+#include <vcl/graph.hxx>
+
+// -----------
+// - Defines -
+// -----------
+
+#define S_THUMB 80
+
+// -----------------------------------------------------------------------------
+
+#define SGA_FORMAT_NONE 0x00000000L
+#define SGA_FORMAT_STRING 0x00000001L
+#define SGA_FORMAT_GRAPHIC 0x00000010L
+#define SGA_FORMAT_SOUND 0x00000100L
+#define SGA_FORMAT_OLE 0x00001000L
+#define SGA_FORMAT_SVDRAW 0x00010000L
+#define SGA_FORMAT_ALL 0xFFFFFFFFL
+
+// --------------
+// - SgaObjKind -
+// --------------
+
+enum SgaObjKind
+{
+ SGA_OBJ_NONE = 0, // Abstraktes Objekt
+ SGA_OBJ_BMP = 1, // Bitmap-Objekt
+ SGA_OBJ_SOUND = 2, // Sound-Objekt
+ SGA_OBJ_VIDEO = 3, // Video-Objekt
+ SGA_OBJ_ANIM = 4, // Animations-Objekt
+ SGA_OBJ_SVDRAW = 5, // Svdraw-Objekt
+ SGA_OBJ_INET = 6 // Grafik aus dem Internet
+};
+
+// ----------------
+// - GalSoundType -
+// ----------------
+
+enum GalSoundType
+{
+ SOUND_STANDARD = 0,
+ SOUND_COMPUTER = 1,
+ SOUND_MISC = 2,
+ SOUND_MUSIC = 3,
+ SOUND_NATURE = 4,
+ SOUND_SPEECH = 5,
+ SOUND_TECHNIC = 6,
+ SOUND_ANIMAL = 7
+};
+
+// -------------
+// - SgaObject -
+// -------------
+
+class SgaObject
+{
+ friend class GalleryTheme;
+
+private:
+
+ void ImplUpdateURL( const INetURLObject& rNewURL ) { aURL = rNewURL; }
+
+protected:
+
+ Bitmap aThumbBmp;
+ GDIMetaFile aThumbMtf;
+ INetURLObject aURL;
+ String aUserName;
+ String aTitle;
+ BOOL bIsValid;
+ BOOL bIsThumbBmp;
+
+ virtual void WriteData( SvStream& rOut ) const;
+ virtual void ReadData( SvStream& rIn, UINT16& rReadVersion );
+
+ BOOL CreateThumb( const Graphic& rGraphic );
+
+public:
+
+ SgaObject();
+ virtual ~SgaObject() {};
+
+ virtual SgaObjKind GetObjKind() const = 0;
+ virtual UINT16 GetVersion() const = 0;
+
+ virtual Bitmap GetThumbBmp() const { return aThumbBmp; }
+ const GDIMetaFile& GetThumbMtf() const { return aThumbMtf; }
+ const INetURLObject& GetURL() const { return aURL; }
+ BOOL IsValid() const { return bIsValid; }
+ BOOL IsThumbBitmap() const { return bIsThumbBmp; }
+
+ const String GetTitle() const;
+ void SetTitle( const String& rTitle );
+
+ friend SvStream& operator<<( SvStream& rOut, const SgaObject& rObj );
+ friend SvStream& operator>>( SvStream& rIn, SgaObject& rObj );
+};
+
+// ------------------
+// - SgaObjectSound -
+// ------------------
+
+class SgaObjectSound : public SgaObject
+{
+private:
+
+ GalSoundType eSoundType;
+
+ virtual void WriteData( SvStream& rOut ) const;
+ virtual void ReadData( SvStream& rIn, UINT16& rReadVersion );
+
+ virtual UINT16 GetVersion() const { return 6; }
+
+public:
+
+ SgaObjectSound();
+ SgaObjectSound( const INetURLObject& rURL );
+ virtual ~SgaObjectSound();
+
+ virtual SgaObjKind GetObjKind() const { return SGA_OBJ_SOUND; }
+ virtual Bitmap GetThumbBmp() const;
+ GalSoundType GetSoundType() const { return eSoundType; }
+};
+
+// -------------------
+// - SgaObjectSvDraw -
+// -------------------
+
+class FmFormModel;
+
+class SgaObjectSvDraw : public SgaObject
+{
+private:
+
+ BOOL CreateThumb( const FmFormModel& rModel );
+
+ virtual void WriteData( SvStream& rOut ) const;
+ virtual void ReadData( SvStream& rIn, UINT16& rReadVersion );
+
+ virtual UINT16 GetVersion() const { return 5; }
+
+public:
+
+ SgaObjectSvDraw();
+ SgaObjectSvDraw( const FmFormModel& rModel, const INetURLObject& rURL );
+ SgaObjectSvDraw( SvStream& rIStm, const INetURLObject& rURL );
+ virtual ~SgaObjectSvDraw() {};
+
+ virtual SgaObjKind GetObjKind() const { return SGA_OBJ_SVDRAW; }
+
+public:
+
+ static BOOL DrawCentered( OutputDevice* pOut, const FmFormModel& rModel );
+};
+
+// ----------------
+// - SgaObjectBmp -
+// ----------------
+
+class SgaObjectBmp: public SgaObject
+{
+private:
+
+ void Init( const Graphic& rGraphic, const INetURLObject& rURL );
+
+ virtual void WriteData( SvStream& rOut ) const;
+ virtual void ReadData( SvStream& rIn, UINT16& rReadVersion );
+
+ virtual UINT16 GetVersion() const { return 5; }
+
+public:
+
+ SgaObjectBmp();
+ SgaObjectBmp( const INetURLObject& rURL );
+ SgaObjectBmp( const Graphic& rGraphic, const INetURLObject& rURL, const String& rFormat );
+ virtual ~SgaObjectBmp() {};
+
+ virtual SgaObjKind GetObjKind() const { return SGA_OBJ_BMP; }
+};
+
+// -----------------
+// - SgaObjectAnim -
+// -----------------
+
+class SgaObjectAnim : public SgaObjectBmp
+{
+private:
+
+ SgaObjectAnim( const INetURLObject& rURL ) {};
+
+public:
+
+ SgaObjectAnim();
+ SgaObjectAnim( const Graphic& rGraphic, const INetURLObject& rURL, const String& rFormatName );
+
+ virtual ~SgaObjectAnim() {};
+
+ virtual SgaObjKind GetObjKind() const { return SGA_OBJ_ANIM; }
+};
+
+// -----------------
+// - SgaObjectINet -
+// -----------------
+
+class SgaObjectINet : public SgaObjectAnim
+{
+private:
+
+ SgaObjectINet( const INetURLObject& rURL ) {};
+
+public:
+
+ SgaObjectINet();
+ SgaObjectINet( const Graphic& rGraphic, const INetURLObject& rURL, const String& rFormatName );
+
+ virtual ~SgaObjectINet() {};
+
+ virtual SgaObjKind GetObjKind() const { return SGA_OBJ_INET; }
+};
+#endif