summaryrefslogtreecommitdiff
path: root/sfx2/inc/msgnodei.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/inc/msgnodei.hxx')
-rw-r--r--sfx2/inc/msgnodei.hxx219
1 files changed, 219 insertions, 0 deletions
diff --git a/sfx2/inc/msgnodei.hxx b/sfx2/inc/msgnodei.hxx
new file mode 100644
index 000000000000..c48765acfe42
--- /dev/null
+++ b/sfx2/inc/msgnodei.hxx
@@ -0,0 +1,219 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org 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 version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _MSGNODEI_HXX
+#define _MSGNODEI_HXX
+
+
+#include <svl/eitem.hxx>
+#include <tools/string.hxx>
+#include <svl/poolitem.hxx>
+#include <tools/list.hxx>
+struct SfxMsgAttachFile {
+ String aFile;
+ String aName;
+
+ int operator==( const SfxMsgAttachFile& rRec ) const
+ {
+ if( aName == rRec.aName && aFile == rRec.aFile )
+ return TRUE;
+ return FALSE;
+ }
+
+ SfxMsgAttachFile( const String& rFile, const String& rName)
+ : aName( rName ), aFile( rFile ) {}
+
+ SfxMsgAttachFile( const SfxMsgAttachFile& rRec )
+ : aName( rRec.aName), aFile( rRec.aFile ) {}
+};
+
+enum SfxMsgReceiverRole
+{
+ MSG_RECEIVER_TO = 0,
+ MSG_RECEIVER_CC,
+ MSG_RECEIVER_BCC,
+ MSG_RECEIVER_NEWSGROUP
+};
+
+struct SfxMsgReceiver {
+ String aName;
+ SfxMsgReceiverRole eRole;
+
+ int operator==( const SfxMsgReceiver& rRec ) const
+ {
+ if( aName == rRec.aName && eRole == rRec.eRole )
+ return TRUE;
+ return FALSE;
+ }
+
+ SfxMsgReceiver( const String& rName, SfxMsgReceiverRole _eRole )
+ : aName( rName ), eRole( _eRole ) {}
+
+ SfxMsgReceiver( const SfxMsgReceiver& rRec )
+ : aName( rRec.aName), eRole( rRec.eRole ) {}
+};
+
+// ------------------------------------------------------------------------
+
+class SfxMsgReceiverList_Impl : public List
+{
+ ULONG nRef;
+ ~SfxMsgReceiverList_Impl();
+ SfxMsgReceiverList_Impl& operator=( const SfxMsgReceiverList_Impl&); //n.i.
+public:
+ SfxMsgReceiverList_Impl();
+ SfxMsgReceiverList_Impl(const SfxMsgReceiverList_Impl&);
+
+ void Load( SvStream& );
+ void Store( SvStream& ) const;
+ void IncRef() { nRef++; }
+ void DecRef() { nRef--; if( !nRef ) delete this; }
+ ULONG GetRefCount() const { return nRef; }
+ int operator==( const SfxMsgReceiverList_Impl& ) const;
+};
+
+class SfxMsgReceiverListItem : public SfxPoolItem
+{
+ void Disconnect();
+protected:
+ SfxMsgReceiverList_Impl* pImp;
+public:
+ TYPEINFO();
+
+ SfxMsgReceiverListItem();
+ SfxMsgReceiverListItem( USHORT nWhich );
+ SfxMsgReceiverListItem( USHORT nWhich, SvStream& rStream );
+ SfxMsgReceiverListItem( const SfxMsgReceiverListItem& rItem );
+ ~SfxMsgReceiverListItem();
+
+ virtual int operator==( const SfxPoolItem& ) const;
+
+ virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
+ SfxMapUnit eCoreMetric,
+ SfxMapUnit ePresMetric,
+ XubString &rText ) const;
+
+ USHORT Count() const;
+ SfxMsgReceiver* GetObject( USHORT nPos );
+ void Remove( USHORT nPos );
+ void Add( const SfxMsgReceiver& );
+
+ virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const;
+ virtual SfxPoolItem* Create( SvStream &, USHORT nVersion ) const;
+ virtual SvStream& Store( SvStream &, USHORT nItemVersion ) const;
+};
+
+
+// ------------------------------------------------------------------------
+
+class SfxMsgAttachFileList_Impl : public List
+{
+ ULONG nRef;
+ ~SfxMsgAttachFileList_Impl();
+ SfxMsgAttachFileList_Impl& operator=( const SfxMsgAttachFileList_Impl&); //n.i.
+
+public:
+ SfxMsgAttachFileList_Impl();
+ SfxMsgAttachFileList_Impl(const SfxMsgAttachFileList_Impl&);
+
+ int operator==( const SfxMsgAttachFileList_Impl& rRec ) const;
+ SfxMsgAttachFile* GetReceiver(ULONG nPos) { return (SfxMsgAttachFile*)List::GetObject(nPos); }
+ void Load( SvStream& );
+ void Store( SvStream& ) const;
+ void IncRef() { nRef++; }
+ void DecRef() { nRef--; if( !nRef ) delete this; }
+ ULONG GetRefCount() const { return nRef; }
+};
+
+class SfxMsgAttachFileListItem : public SfxPoolItem
+{
+protected:
+ SfxMsgAttachFileList_Impl* pImp;
+ void Disconnect();
+public:
+ TYPEINFO();
+
+ SfxMsgAttachFileListItem();
+ SfxMsgAttachFileListItem( USHORT nWhich );
+ SfxMsgAttachFileListItem( USHORT nWhich, SvStream& rStream );
+ SfxMsgAttachFileListItem( const SfxMsgAttachFileListItem& rItem );
+ ~SfxMsgAttachFileListItem();
+
+ virtual int operator==( const SfxPoolItem& ) const;
+
+ virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
+ SfxMapUnit eCoreMetric,
+ SfxMapUnit ePresMetric,
+ XubString &rText ) const;
+
+ USHORT Count() const;
+ SfxMsgAttachFile* GetObject( USHORT nPos );
+ void Remove( USHORT nPos );
+ void Add( const SfxMsgAttachFile& );
+
+ virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const;
+ virtual SfxPoolItem* Create( SvStream &, USHORT nVersion ) const;
+ virtual SvStream& Store( SvStream &, USHORT nItemVersion ) const;
+};
+
+
+//=========================================================================
+
+enum SfxMsgPriority
+{
+ MSG_PRIORITY_LOW = 0,
+ MSG_PRIORITY_NORMAL,
+ MSG_PRIORITY_URGENT
+};
+#define SFXMSGPRIORITYCOUNT 3
+
+class SfxMsgPriorityItem : public SfxEnumItem
+{
+public:
+ TYPEINFO();
+
+ SfxMsgPriorityItem( USHORT nWhich, SfxMsgPriority = MSG_PRIORITY_NORMAL);
+
+ virtual SfxPoolItem* Clone( SfxItemPool* pPool=0 ) const;
+ virtual SfxPoolItem* Create( SvStream&, USHORT ) const;
+ virtual SvStream& Store( SvStream&, USHORT ) const;
+ virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePresentation,
+ SfxMapUnit eCoreMetric,
+ SfxMapUnit ePresentationMetric,
+ String &rText ) const;
+ virtual USHORT GetValueCount() const;
+ virtual String GetValueTextByPos( USHORT nPos ) const;
+
+ inline SfxMsgPriorityItem& operator=(const SfxMsgPriorityItem& rPrio)
+ {
+ SetValue( rPrio.GetValue() );
+ return *this;
+ }
+};
+
+
+#endif