summaryrefslogtreecommitdiff
path: root/svtools/inc
diff options
context:
space:
mode:
authorKurt Zenker <kz@openoffice.org>2009-06-03 11:26:39 +0000
committerKurt Zenker <kz@openoffice.org>2009-06-03 11:26:39 +0000
commitc1f8c3252a1a957049e9b5fdac708bde5bcd9817 (patch)
tree6184ff6eb0b4cd9dd0877d83b72dcd7cdbe94452 /svtools/inc
parentd46d946139c30ce29b8eaee4fa735236e2a95a4c (diff)
CWS-TOOLING: integrate CWS os128
2009-04-22 12:58:26 +0200 b_michaelsen r271093 : #i101084# using the frames enumeration for other SwXFrames-queries; also added a complex test to ensure the behavior to be the same 2009-04-20 14:53:03 +0200 mav r270987 : #i101219# adjust the testcases to test memory cache and temporary file cache 2009-04-20 14:52:09 +0200 mav r270986 : #i101219#,#i99077# use memory to cache data; no precopying on commit 2009-04-20 14:39:21 +0200 mav r270984 : #i101219# use memory to cache data 2009-04-20 14:39:08 +0200 mav r270983 : #i101219# use memory to cache data 2009-04-20 14:38:45 +0200 mav r270982 : #i101219# use memory to cache data 2009-04-17 07:37:52 +0200 os r270912 : CWS-TOOLING: rebase CWS os128 to trunk@270723 (milestone: DEV300:m46) 2009-04-15 14:54:18 +0200 b_michaelsen r270845 : #i101084# using frame enumerations for paragraph export for better performance 2009-04-15 14:52:54 +0200 b_michaelsen r270843 : #i101084# implemented XEnumerationAccess interface on framesets 2009-04-03 17:08:10 +0200 mav r270504 : #i100722# do not compress streams of known compressed types per default 2009-04-03 13:49:50 +0200 os r270484 : resync error fixed 2009-04-03 12:55:32 +0200 mav r270470 : #i100722# do not compress streams of known compressed types per default 2009-04-03 10:00:58 +0200 os r270463 : resync error fixed 2009-04-03 09:52:53 +0200 os r270462 : resync error fixed 2009-04-03 09:10:14 +0200 os r270449 : #i99568# string compare operator of hash_map changed 2009-04-03 09:03:49 +0200 os r270446 : #i100683# normalize file URLs 2009-04-02 11:09:27 +0200 os r270381 : #i100683# making URLs relative without file access 2009-04-02 09:04:42 +0200 os r270366 : CWS-TOOLING: rebase CWS os128 to trunk@270033 (milestone: DEV300:m45) 2009-03-31 08:08:37 +0200 os r270258 : #i100683# reducing calls to URIHelper::simpleNormalizeMakeRelative() 2009-03-19 17:06:22 +0100 os r269756 : #i99568# XTolerantMultiPropertySet activated 2009-03-16 11:46:14 +0100 os r269517 : wrong commit to #i97471# removed 2009-03-16 11:36:50 +0100 os r269514 : #i97471# SwDrawTextShell::Init(): mouse double click and key input in group objects at the same time: prevent crash 2009-03-13 11:08:54 +0100 os r269464 : #i99568# static SfxItemPropertySet 2009-03-13 11:03:22 +0100 os r269463 : #i99568# static SfxItemPropertySet 2009-03-11 12:59:27 +0100 os r269320 : #i99568# WhichId of properties handled from ScDocOptionsObj added 2009-03-06 09:09:58 +0100 os r268972 : #i99568# SfxItemPropertySet improvements 2009-03-05 20:54:43 +0100 os r268942 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 20:19:52 +0100 os r268941 : #i99568# SfxItemPropertySet improvements 2009-03-05 20:05:03 +0100 os r268940 : #i99568# SfxItemPropertySet improvements 2009-03-05 18:54:47 +0100 os r268936 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 17:51:38 +0100 os r268931 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 17:33:03 +0100 os r268930 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 15:53:00 +0100 os r268920 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 15:52:50 +0100 os r268919 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 15:50:41 +0100 os r268918 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 15:41:04 +0100 os r268916 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 15:40:40 +0100 os r268915 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 10:16:20 +0100 os r268881 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-05 10:15:55 +0100 os r268880 : #i99568# Sfx/SvxItemPropertySet improvements 2009-03-03 08:40:09 +0100 os r268704 : ScTableSheetObj::GetItemPropertyMap fixed 2009-03-03 07:50:00 +0100 os r268703 : SfxItemProperty set as pointer 2009-03-03 07:49:46 +0100 os r268702 : SfxItemProperty set as pointer 2009-03-02 08:15:37 +0100 os r268631 : minor fix 2009-03-02 07:58:38 +0100 os r268630 : minor fix 2009-02-27 13:03:25 +0100 os r268584 : exports 2009-02-27 11:17:04 +0100 os r268567 : debug code removed 2009-02-27 11:04:07 +0100 os r268565 : duplicate return removed 2009-02-27 10:17:37 +0100 os r268558 : syntax fixed 2009-02-27 09:56:14 +0100 os r268554 : #i99568# type mix fixed 2009-02-27 09:40:56 +0100 os r268553 : #i99568# exports changes reverted 2009-02-25 12:50:54 +0100 os r268433 : #i99568# SfxItemPropertySet rework 2009-02-25 12:13:39 +0100 os r268432 : #i99568# SfxItemPropertySet rework 2009-02-25 12:12:47 +0100 os r268431 : #i99568# SfxItemPropertySet rework 2009-02-25 12:10:27 +0100 os r268430 : #i99568# SfxItemPropertySet rework 2009-02-25 12:09:36 +0100 os r268429 : #i99568# SfxItemPropertySet rework 2009-02-25 12:07:39 +0100 os r268428 : #i99568# SfxItemPropertySet rework 2009-02-25 11:59:35 +0100 os r268427 : #i99568# SfxItemPropertySet rework 2009-02-25 11:52:52 +0100 os r268425 : #i99568# SfxItemPropertySet rework 2009-02-25 11:49:17 +0100 os r268424 : #i99568# SfxItemPropertySet rework 2009-02-25 11:45:17 +0100 os r268423 : #i99568# SfxItemPropertySet rework 2009-02-11 11:39:04 +0100 os r267587 : #i57008# use registration of index marks at SwUnoCallback
Diffstat (limited to 'svtools/inc')
-rw-r--r--svtools/inc/svtools/itemprop.hxx122
1 files changed, 87 insertions, 35 deletions
diff --git a/svtools/inc/svtools/itemprop.hxx b/svtools/inc/svtools/itemprop.hxx
index 34064595753e..feab0eab004b 100644
--- a/svtools/inc/svtools/itemprop.hxx
+++ b/svtools/inc/svtools/itemprop.hxx
@@ -38,12 +38,13 @@
#include <com/sun/star/beans/XPropertySetInfo.hpp>
#include <com/sun/star/beans/PropertyState.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
-
+#include <vector>
/* -----------------------------21.02.00 11:03--------------------------------
UNO III - Implementation
---------------------------------------------------------------------------*/
#define MAP_CHAR_LEN(cchar) cchar, sizeof(cchar) - 1
-struct SfxItemPropertyMap
+
+struct SfxItemPropertyMapEntry
{
const char* pName;
USHORT nNameLen;
@@ -52,34 +53,83 @@ struct SfxItemPropertyMap
long nFlags;
BYTE nMemberId;
- SVL_DLLPUBLIC static const SfxItemPropertyMap* GetByName(
- const SfxItemPropertyMap *pMap,
- const ::rtl::OUString &rName );
- SVL_DLLPUBLIC static const SfxItemPropertyMap* GetTolerantByName(
- const SfxItemPropertyMap *pMap,
- const ::rtl::OUString &rName );
+};
+
+struct SfxItemPropertySimpleEntry
+{
+ USHORT nWID;
+ const com::sun::star::uno::Type* pType;
+ long nFlags;
+ BYTE nMemberId;
+
+ SfxItemPropertySimpleEntry() :
+ nWID( 0 ),
+ pType( 0 ),
+ nFlags( 0 ),
+ nMemberId( 0 ){}
+
+ SfxItemPropertySimpleEntry(USHORT _nWID, const com::sun::star::uno::Type* _pType,
+ long _nFlags, BYTE _nMemberId) :
+ nWID( _nWID ),
+ pType( _pType ),
+ nFlags( _nFlags ),
+ nMemberId( _nMemberId ){}
+
+ SfxItemPropertySimpleEntry( const SfxItemPropertyMapEntry* pMapEntry ) :
+ nWID( pMapEntry->nWID ),
+ pType( pMapEntry->pType ),
+ nFlags( pMapEntry->nFlags ),
+ nMemberId( pMapEntry->nMemberId ){}
+
+};
+struct SfxItemPropertyNamedEntry : public SfxItemPropertySimpleEntry
+{
+ ::rtl::OUString sName;
+ SfxItemPropertyNamedEntry( const String& rName, const SfxItemPropertySimpleEntry& rSimpleEntry) :
+ SfxItemPropertySimpleEntry( rSimpleEntry ),
+ sName( rName ){}
+
+};
+typedef std::vector< SfxItemPropertyNamedEntry > PropertyEntryVector_t;
+class SfxItemPropertyMap_Impl;
+class SVL_DLLPUBLIC SfxItemPropertyMap
+{
+ SfxItemPropertyMap_Impl* m_pImpl;
+public:
+ SfxItemPropertyMap( const SfxItemPropertyMapEntry* pEntries );
+ SfxItemPropertyMap( const SfxItemPropertyMap* pSource );
+ ~SfxItemPropertyMap();
+
+ const SfxItemPropertySimpleEntry* getByName( const ::rtl::OUString &rName ) const;
+ com::sun::star::uno::Sequence< com::sun::star::beans::Property > getProperties() const;
+ com::sun::star::beans::Property getPropertyByName( const ::rtl::OUString rName ) const
+ throw( ::com::sun::star::beans::UnknownPropertyException );
+ sal_Bool hasPropertyByName( const ::rtl::OUString& rName ) const;
+
+ void mergeProperties( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >& rPropSeq );
+ PropertyEntryVector_t getPropertyEntries() const;
+ sal_uInt32 getSize() const;
+
};
/* -----------------------------21.02.00 11:19--------------------------------
---------------------------------------------------------------------------*/
class SVL_DLLPUBLIC SfxItemPropertySet
{
- const SfxItemPropertyMap* _pMap;
+ SfxItemPropertyMap m_aMap;
+ mutable com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo> m_xInfo;
protected:
virtual BOOL FillItem(SfxItemSet& rSet, USHORT nWhich, BOOL bGetProperty) const;
public:
- SfxItemPropertySet( const SfxItemPropertyMap *pMap ) :
- _pMap(pMap) {}
-
- void getPropertyValue( const SfxItemPropertyMap& rMap,
- const SfxItemSet& rSet,
- com::sun::star::uno::Any& rAny) const
- throw(::com::sun::star::uno::RuntimeException);
- com::sun::star::uno::Any
- getPropertyValue( const SfxItemPropertyMap& rMap,
- const SfxItemSet& rSet ) const
- throw(::com::sun::star::uno::RuntimeException);
+ SfxItemPropertySet( const SfxItemPropertyMapEntry *pMap ) :
+ m_aMap(pMap) {}
+ virtual ~SfxItemPropertySet();
+
+ void getPropertyValue( const SfxItemPropertySimpleEntry& rEntry,
+ const SfxItemSet& rSet,
+ com::sun::star::uno::Any& rAny) const
+ throw(::com::sun::star::uno::RuntimeException);
void getPropertyValue( const ::rtl::OUString &rName,
const SfxItemSet& rSet,
com::sun::star::uno::Any& rAny) const
@@ -90,11 +140,11 @@ public:
const SfxItemSet& rSet ) const
throw(::com::sun::star::uno::RuntimeException,
::com::sun::star::beans::UnknownPropertyException);
- void setPropertyValue( const SfxItemPropertyMap& rMap,
- const com::sun::star::uno::Any& aVal,
- SfxItemSet& rSet ) const
- throw(::com::sun::star::uno::RuntimeException,
- com::sun::star::lang::IllegalArgumentException);
+ void setPropertyValue( const SfxItemPropertySimpleEntry& rEntry,
+ const com::sun::star::uno::Any& aVal,
+ SfxItemSet& rSet ) const
+ throw(::com::sun::star::uno::RuntimeException,
+ com::sun::star::lang::IllegalArgumentException);
void setPropertyValue( const ::rtl::OUString& rPropertyName,
const com::sun::star::uno::Any& aVal,
SfxItemSet& rSet ) const
@@ -103,29 +153,31 @@ public:
::com::sun::star::beans::UnknownPropertyException);
com::sun::star::beans::PropertyState
- getPropertyState(const ::rtl::OUString& rName, const SfxItemSet& rSet)
+ getPropertyState(const ::rtl::OUString& rName, const SfxItemSet& rSet)const
throw(com::sun::star::beans::UnknownPropertyException);
com::sun::star::beans::PropertyState
- getPropertyState(const SfxItemPropertyMap& rMap, const SfxItemSet& rSet)
+ getPropertyState(const SfxItemPropertySimpleEntry& rEntry, const SfxItemSet& rSet) const
throw();
com::sun::star::uno::Reference<com::sun::star::beans::XPropertySetInfo>
getPropertySetInfo() const;
const SfxItemPropertyMap*
- getPropertyMap() const {return _pMap;}
+ getPropertyMap() const {return &m_aMap;}
};
/* -----------------------------21.02.00 11:09--------------------------------
---------------------------------------------------------------------------*/
+struct SfxItemPropertySetInfo_Impl;
class SVL_DLLPUBLIC SfxItemPropertySetInfo : public
cppu::WeakImplHelper1<com::sun::star::beans::XPropertySetInfo>
{
- const SfxItemPropertyMap* _pMap;
+ SfxItemPropertySetInfo_Impl* m_pImpl;
public:
- SfxItemPropertySetInfo(const SfxItemPropertyMap *pMap ) :
- _pMap(pMap) {}
+ SfxItemPropertySetInfo(const SfxItemPropertyMap *pMap );
+ SfxItemPropertySetInfo(const SfxItemPropertyMapEntry *pEntries );
+ virtual ~SfxItemPropertySetInfo();
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property > SAL_CALL
getProperties( )
@@ -140,19 +192,19 @@ public:
hasPropertyByName( const ::rtl::OUString& Name )
throw(::com::sun::star::uno::RuntimeException);
- const SfxItemPropertyMap* getMap() const { return _pMap; }
+ const SfxItemPropertyMap* getMap() const;
};
/* -----------------------------21.02.00 12:01--------------------------------
---------------------------------------------------------------------------*/
class SVL_DLLPUBLIC SfxExtItemPropertySetInfo: public cppu::WeakImplHelper1<com::sun::star::beans::XPropertySetInfo >
{
- const SfxItemPropertyMap* _pExtMap;
- com::sun::star::uno::Sequence<com::sun::star::beans::Property> aPropertySeq;
+ SfxItemPropertyMap aExtMap;
public:
SfxExtItemPropertySetInfo(
- const SfxItemPropertyMap *pMap,
+ const SfxItemPropertyMapEntry *pMap,
const com::sun::star::uno::Sequence<com::sun::star::beans::Property>& rPropSeq );
+ virtual ~SfxExtItemPropertySetInfo();
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property > SAL_CALL
getProperties( )