summaryrefslogtreecommitdiff
path: root/svx/inc/svx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/inc/svx')
-rwxr-xr-xsvx/inc/svx/AffineMatrixItem.hxx58
-rwxr-xr-xsvx/inc/svx/XPropertyEntry.hxx51
-rw-r--r--svx/inc/svx/XPropertyTable.hxx2
-rw-r--r--svx/inc/svx/bmpmask.hxx4
-rw-r--r--svx/inc/svx/colrctrl.hxx4
-rw-r--r--svx/inc/svx/dialcontrol.hxx65
-rw-r--r--svx/inc/svx/dialogs.hrc96
-rw-r--r--svx/inc/svx/dlgctrl.hxx29
-rw-r--r--svx/inc/svx/dlgutil.hxx3
-rw-r--r--svx/inc/svx/drawitem.hxx10
-rw-r--r--svx/inc/svx/fontwork.hxx4
-rw-r--r--svx/inc/svx/galbrws.hxx11
-rwxr-xr-xsvx/inc/svx/nbdtmg.hxx390
-rwxr-xr-xsvx/inc/svx/nbdtmgfact.hxx37
-rwxr-xr-xsvx/inc/svx/sdr/table/tablecontroller.hxx169
-rw-r--r--svx/inc/svx/sidebar/ColorControl.hxx86
-rw-r--r--svx/inc/svx/sidebar/ColorPopup.hxx55
-rw-r--r--svx/inc/svx/sidebar/ContextChangeEventMultiplexer.hxx69
-rw-r--r--svx/inc/svx/sidebar/Popup.hxx107
-rw-r--r--svx/inc/svx/sidebar/PopupContainer.hxx48
-rw-r--r--svx/inc/svx/sidebar/PopupControl.hxx51
-rw-r--r--svx/inc/svx/sidebar/SelectionAnalyzer.hxx66
-rw-r--r--svx/inc/svx/sidebar/SelectionChangeHandler.hxx89
-rw-r--r--svx/inc/svx/sidebar/SidebarDialControl.hxx45
-rw-r--r--svx/inc/svx/sidebar/ValueSetWithTextControl.hxx161
-rw-r--r--svx/inc/svx/svdedtv.hxx1
-rw-r--r--svx/inc/svx/svdedxv.hxx3
-rw-r--r--svx/inc/svx/svdmodel.hxx13
-rw-r--r--svx/inc/svx/svdobj.hxx4
-rw-r--r--svx/inc/svx/svdogrp.hxx3
-rw-r--r--svx/inc/svx/svdstr.hrc5
-rwxr-xr-xsvx/inc/svx/svxids.hrc27
-rw-r--r--svx/inc/svx/svxitems.hrc3
-rw-r--r--svx/inc/svx/xattr.hxx26
-rw-r--r--svx/inc/svx/xcolit.hxx4
-rw-r--r--svx/inc/svx/xenum.hxx8
-rw-r--r--svx/inc/svx/xflgrit.hxx2
-rw-r--r--svx/inc/svx/xflhtit.hxx2
-rw-r--r--svx/inc/svx/xit.hxx12
-rw-r--r--svx/inc/svx/xlineit.hxx2
-rw-r--r--svx/inc/svx/xlinjoit.hxx9
-rw-r--r--svx/inc/svx/xlncapit.hxx2
-rw-r--r--svx/inc/svx/xlndsit.hxx2
-rw-r--r--svx/inc/svx/xlnedit.hxx2
-rw-r--r--svx/inc/svx/xlnstit.hxx2
-rw-r--r--svx/inc/svx/xtable.hxx348
46 files changed, 1792 insertions, 398 deletions
diff --git a/svx/inc/svx/AffineMatrixItem.hxx b/svx/inc/svx/AffineMatrixItem.hxx
new file mode 100755
index 000000000000..0ad7623ab9d7
--- /dev/null
+++ b/svx/inc/svx/AffineMatrixItem.hxx
@@ -0,0 +1,58 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_AFFINEMATRIXITEM_HXX
+#define _SVX_AFFINEMATRIXITEM_HXX
+
+#include <svx/svxdllapi.h>
+#include <svl/poolitem.hxx>
+#include <com/sun/star/geometry/AffineMatrix2D.hpp>
+
+//---------------------
+// class AffineMatrixItem
+//---------------------
+
+class SVX_DLLPUBLIC AffineMatrixItem : public SfxPoolItem
+{
+private:
+ com::sun::star::geometry::AffineMatrix2D maMatrix;
+
+public:
+ TYPEINFO();
+ AffineMatrixItem(const com::sun::star::geometry::AffineMatrix2D* pMatrix = 0);
+ AffineMatrixItem(SvStream& rIn);
+ AffineMatrixItem(const AffineMatrixItem&);
+ virtual ~AffineMatrixItem();
+
+ virtual int operator==(const SfxPoolItem&) const;
+ virtual SfxPoolItem* Clone( SfxItemPool* pPool = 0 ) const;
+ virtual SfxPoolItem* Create( SvStream& rIn, sal_uInt16 nVer ) const;
+ virtual SvStream& Store(SvStream &, sal_uInt16 nItemVersion ) const;
+
+ virtual sal_Bool QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
+ virtual sal_Bool PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 );
+
+ const com::sun::star::geometry::AffineMatrix2D& GetAffineMatrix2D() const;
+};
+
+#endif // _SVX_AFFINEMATRIXITEM_HXX
+
+// eof
diff --git a/svx/inc/svx/XPropertyEntry.hxx b/svx/inc/svx/XPropertyEntry.hxx
new file mode 100755
index 000000000000..c91183b42668
--- /dev/null
+++ b/svx/inc/svx/XPropertyEntry.hxx
@@ -0,0 +1,51 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _XPROPERTYENTRY_HXX
+#define _XPROPERTYENTRY_HXX
+
+#include <svx/svxdllapi.h>
+#include <tools/string.hxx>
+#include <vcl/bitmap.hxx>
+
+// ---------------------
+// class XPropertyEntry
+
+class SVX_DLLPUBLIC XPropertyEntry
+{
+private:
+ String maName;
+ Bitmap maUiBitmap;
+
+protected:
+ XPropertyEntry(const String& rName);
+ XPropertyEntry(const XPropertyEntry& rOther);
+
+public:
+ virtual ~XPropertyEntry();
+
+ void SetName(const String& rName) { maName = rName; }
+ const String& GetName() const { return maName; }
+ void SetUiBitmap(const Bitmap& rUiBitmap) { maUiBitmap = rUiBitmap; }
+ const Bitmap& GetUiBitmap() const { return maUiBitmap; }
+};
+
+#endif // _XPROPERTYENTRY_HXX
diff --git a/svx/inc/svx/XPropertyTable.hxx b/svx/inc/svx/XPropertyTable.hxx
index efe01418bdaf..73253e324b72 100644
--- a/svx/inc/svx/XPropertyTable.hxx
+++ b/svx/inc/svx/XPropertyTable.hxx
@@ -28,7 +28,7 @@
#include "svx/svxdllapi.h"
#include <svx/xtable.hxx>
-SVX_DLLPUBLIC ::com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SvxUnoXColorTable_createInstance( XPropertyTable* pTable ) throw();
+SVX_DLLPUBLIC ::com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SvxUnoXColorTable_createInstance( XPropertyList* pTable ) throw();
SVX_DLLPUBLIC ::com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SvxUnoXLineEndTable_createInstance( XPropertyList* pList ) throw();
SVX_DLLPUBLIC ::com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SvxUnoXDashTable_createInstance( XPropertyList* pList ) throw();
SVX_DLLPUBLIC ::com::sun::star::uno::Reference< com::sun::star::uno::XInterface > SAL_CALL SvxUnoXHatchTable_createInstance( XPropertyList* pList ) throw();
diff --git a/svx/inc/svx/bmpmask.hxx b/svx/inc/svx/bmpmask.hxx
index 3604f23a9085..c3e110a49314 100644
--- a/svx/inc/svx/bmpmask.hxx
+++ b/svx/inc/svx/bmpmask.hxx
@@ -119,7 +119,7 @@ class SVX_DLLPUBLIC SvxBmpMask : public SfxDockingWindow
CheckBox aCbxTrans;
ColorLB aLbColorTrans;
- const XColorTable* pColTab;
+ const XColorList* pColTab;
Color aPipetteColor;
SvxBmpMaskSelectItem aSelItem;
@@ -161,7 +161,7 @@ public:
void PipetteClicked();
sal_Bool NeedsColorTable() const;
- void SetColorTable( const XColorTable* pColorTable );
+ void SetColorTable( const XColorList* pColorTable );
void SetExecState( sal_Bool bEnable );
diff --git a/svx/inc/svx/colrctrl.hxx b/svx/inc/svx/colrctrl.hxx
index d9ab7ff5b1fc..3519d1060da4 100644
--- a/svx/inc/svx/colrctrl.hxx
+++ b/svx/inc/svx/colrctrl.hxx
@@ -30,7 +30,7 @@
#include <svl/lstner.hxx>
#include "svx/svxdllapi.h"
-class XColorTable;
+class XColorList;
class SvData;
/*************************************************************************
@@ -95,7 +95,7 @@ class SvxColorDockingWindow : public SfxDockingWindow, public SfxListener
friend class SvxColorChildWindow;
private:
- XColorTable* pColorTable;
+ XColorList* pColorTable;
SvxColorValueSet aColorSet;
sal_uInt16 nLeftSlot;
sal_uInt16 nRightSlot;
diff --git a/svx/inc/svx/dialcontrol.hxx b/svx/inc/svx/dialcontrol.hxx
index 8234abe797af..2e80ad289666 100644
--- a/svx/inc/svx/dialcontrol.hxx
+++ b/svx/inc/svx/dialcontrol.hxx
@@ -29,13 +29,42 @@
#include <sfx2/itemconnect.hxx>
#include "svx/svxdllapi.h"
+#include <boost/scoped_ptr.hpp>
+
class NumericField;
namespace svx {
// ============================================================================
-struct DialControl_Impl;
+class DialControlBmp : public VirtualDevice
+{
+public:
+ explicit DialControlBmp( Window& rParent );
+
+ void InitBitmap( const Size& rSize, const Font& rFont );
+ void CopyBackground( const DialControlBmp& rSrc );
+ void DrawBackground( const Size& rSize, bool bEnabled );
+ virtual void DrawBackground();
+ virtual void DrawElements( const String& rText, sal_Int32 nAngle );
+
+protected:
+ Rectangle maRect;
+ bool mbEnabled;
+
+private:
+ const Color& GetBackgroundColor() const;
+ const Color& GetTextColor() const;
+ const Color& GetScaleLineColor() const;
+ const Color& GetButtonLineColor() const;
+ const Color& GetButtonFillColor( bool bMain ) const;
+
+ void Init( const Size& rSize );
+
+ Window& mrParent;
+ long mnCenterX;
+ long mnCenterY;
+};
/** This control allows to input a rotation angle, visualized by a dial.
@@ -90,20 +119,42 @@ public:
/** Returns the current modify handler. */
const Link& GetModifyHdl() const;
-private:
+protected:
+ struct DialControl_Impl
+ {
+ ::boost::scoped_ptr<DialControlBmp> mpBmpEnabled;
+ ::boost::scoped_ptr<DialControlBmp> mpBmpDisabled;
+ ::boost::scoped_ptr<DialControlBmp> mpBmpBuffered;
+ Link maModifyHdl;
+ NumericField* mpLinkField;
+ Size maWinSize;
+ Font maWinFont;
+ sal_Int32 mnAngle;
+ sal_Int32 mnOldAngle;
+ long mnCenterX;
+ long mnCenterY;
+ bool mbNoRot;
+
+ explicit DialControl_Impl( Window& rParent );
+ void Init( const Size& rWinSize, const Font& rWinFont );
+ };
+ std::auto_ptr< DialControl_Impl > mpImpl;
+
+ virtual void HandleMouseEvent( const Point& rPos, bool bInitial );
+ virtual void HandleEscapeEvent();
+
+ void SetRotation( sal_Int32 nAngle, bool bBroadcast );
+
void Init( const Size& rWinSize, const Font& rWinFont );
void Init( const Size& rWinSize );
+
+private:
void InvalidateControl();
- void ImplSetRotation( sal_Int32 nAngle, bool bBroadcast );
void ImplSetFieldLink( const Link& rLink );
- void HandleMouseEvent( const Point& rPos, bool bInitial );
- void HandleEscapeEvent();
DECL_LINK( LinkedFieldModifyHdl, NumericField* );
-
- std::auto_ptr< DialControl_Impl > mpImpl;
};
// ============================================================================
diff --git a/svx/inc/svx/dialogs.hrc b/svx/inc/svx/dialogs.hrc
index a1e1835d0c0d..d95bc5515a45 100644
--- a/svx/inc/svx/dialogs.hrc
+++ b/svx/inc/svx/dialogs.hrc
@@ -30,8 +30,8 @@
// Resource-Id's ------------------------------------------------------------
-// Bitte FIRSTFREE pflegen!!! (gilt nicht f"ur Strings)
-#define RID_SVX_FIRSTFREE 305
+// !!! IMPORTANT: consider and update FIRSTFREE when introducing new RIDs !!! (not for RIDs for Strings - they have there own)
+#define RID_SVX_FIRSTFREE 323
// some strings also used in CUI
#define RID_SVXERRCTX (RID_SVX_START + 351)
@@ -56,7 +56,6 @@
#define RID_SVXSTR_GALLERY_PREVIEW (RID_SVX_START + 255)
//-----IAccessibility2 Implementation 2009
-
// factory IDs of tabpages implemented in CUI
#define RID_SVXPAGE_CHAR_TWOLINES (RID_SVX_START + 242)
#define RID_SVXPAGE_EXT_PARAGRAPH (RID_SVX_START + 7)
@@ -353,7 +352,33 @@
#define RID_SVXDLG_TEXTCONTROL_CHARATTR (RID_SVX_START + 286)
#define RID_SVXDLG_TEXTCONTROL_PARAATTR (RID_SVX_START + 287)
-// !!! please update RID_SVX_FIRSTFREE !!! see line 46
+#define RID_SIDEBAR_TEXT_PANEL (RID_SVX_START + 305)
+#define RID_POPUPPANEL_TEXTPAGE_UNDERLINE (RID_SVX_START + 306)
+#define RID_POPUPPANEL_TEXTPAGE_FONT_COLOR (RID_SVX_START + 307)
+#define RID_POPUPPANEL_TEXTPAGE_SPACING (RID_SVX_START + 308)
+
+#define RID_SIDEBAR_AREA_PANEL (RID_SVX_START + 309)
+#define RID_POPUPPANEL_AERAPAGE_COLOR (RID_SVX_START + 310)
+#define RID_POPUPPANEL_AREAPAGE_TRGR (RID_SVX_START + 311)
+
+#define RID_SIDEBAR_LINE_PANEL (RID_SVX_START + 312)
+#define RID_POPUPPANEL_LINEPAGE_COLOR (RID_SVX_START + 313)
+#define RID_POPUPPANEL_LINEPAGE_STYLE (RID_SVX_START + 314)
+#define RID_POPUPPANEL_LINEPAGE_WIDTH (RID_SVX_START + 315)
+
+#define RID_SIDEBAR_POSSIZE_PANEL (RID_SVX_START + 316)
+#define RID_SIDEBAR_GRAPHIC_PANEL (RID_SVX_START + 317)
+#define RID_SIDEBAR_EMPTY_PANEL (RID_SVX_START + 318)
+
+#define RID_SIDEBAR_PARA_PANEL (RID_SVX_START + 319)
+#define RID_POPUPPANEL_PARAPAGE_LINESPACING (RID_SVX_START + 320)
+#define RID_POPUPPANEL_PARAPAGE_BULLETS (RID_SVX_START + 321)
+#define RID_POPUPPANEL_PARAPAGE_NUMBERING (RID_SVX_START + 322)
+
+// !!! IMPORTANT: consider and update RID_SVX_FIRSTFREE when introducing new RIDs !!! (see above)
+
+
+
// Strings ------------------------------------------------------------------
@@ -597,7 +622,7 @@
#define RID_SVXSTR_LINECAP_ROUND (RID_SVX_START + 587 )
#define RID_SVXSTR_LINECAP_SQUARE (RID_SVX_START + 588 )
-// string resources for XLineJoint item
+// string resources for com::sun::star::drawing::LineJoint item
#define RID_SVXSTR_LINEJOINT_NONE RID_SVXSTR_NONE
#define RID_SVXSTR_LINEJOINT_MIDDLE (RID_SVX_START + 589 )
#define RID_SVXSTR_LINEJOINT_BEVEL (RID_SVX_START + 590 )
@@ -919,14 +944,67 @@
#define RID_SVXSTR_OUTLINENUM_DESCRIPTION_5 (RID_SVXSTR_OUTLINENUM_DESCRIPTIONS + 5)//?
#define RID_SVXSTR_OUTLINENUM_DESCRIPTION_6 (RID_SVXSTR_OUTLINENUM_DESCRIPTIONS + 6)//?
#define RID_SVXSTR_OUTLINENUM_DESCRIPTION_7 (RID_SVXSTR_OUTLINENUM_DESCRIPTIONS + 7)//?
-
-#define RID_SVXSTR_FINDBAR_FIND (RID_SVX_START + 1190)
-
-#define RID_SVXSTR_NEXTFREE (RID_SVX_START + 1191)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS (RID_SVX_START + 1172)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_0 (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 0)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_1 (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 1)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_2 (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 2)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_3 (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 3)
+#define RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS_4 (RID_SVXSTR_SIDEBAR_BULLET_DESCRIPTIONS + 4)
//IAccessibility2 Implementation 2009-----
#define RID_SVXSTR_TEXTCOLOR (RID_SVX_START + 1178)
//-----IAccessibility2 Implementation 2009
+
+#define RID_SVXSTR_FINDBAR_FIND (RID_SVX_START + 1190)
+
+#define RID_SVXSTR_NUMBULLET_NONE (RID_SVX_START + 1191)
+#define RID_SVXSTR_NUMBULLET_CURRENT_LIST_DESCRIPTION (RID_SVX_START + 1192)
+#define RID_SVXSTR_NUMBULLET_CUSTOM_BULLET_DESCRIPTION (RID_SVX_START + 1193)
+#define RID_SVXSTR_NUMBULLET_CUSTOM_NUMBERING_DESCRIPTION (RID_SVX_START + 1194)
+#define RID_SVXSTR_NUMBULLET_CUSTOM_MULTILEVEL_DESCRIPTION (RID_SVX_START + 1195)
+#define RID_SVXSTR_NUMBULLET_CUSTOMIZED_WATERMARK (RID_SVX_START + 1196)
+#define RID_SVXSTR_BULLET_RTL_DESCRIPTION_4 (RID_SVX_START + 1197)
+#define RID_SVXSTR_BULLET_RTL_DESCRIPTION_5 (RID_SVX_START + 1198)
+#define RID_SVXSTR_OUTLINENUM_RTL_DESCRIPTION_7 (RID_SVX_START + 1199)
+
+#define RID_SVXSTR_GRAPHICS_DESCRIPTIONS (RID_SVX_START + 1200)
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_0 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 0) // 1200
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_1 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 1) // 1201
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_2 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 2) // 1202
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_3 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 3) // 1203
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_4 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 4) // 1204
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_5 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 5) // 1205
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_6 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 6) // 1206
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_7 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 7) // 1207
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_8 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 8) // 1208
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_9 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 9) // 1209
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_10 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 10) // 1210
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_11 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 11) // 1211
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_12 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 12) // 1212
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_13 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 13) // 1213
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_14 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 14) // 1214
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_15 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 15) // 1215
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_16 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 16) // 1216
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_17 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 17) // 1217
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_18 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 18) // 1218
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_19 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 19) // 1219
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_20 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 20) // 1220
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_21 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 21) // 1221
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_22 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 22) // 1222
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_23 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 23) // 1223
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_24 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 24) // 1224
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_25 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 25) // 1225
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_26 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 26) // 1226
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_27 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 27) // 1227
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_28 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 28) // 1228
+#define RID_SVXSTR_GRAPHICS_DESCRIPTION_29 (RID_SVXSTR_GRAPHICS_DESCRIPTIONS + 29) // 1229
+
+// !!! IMPORTANT: consider and update RID_SVXSTR_NEXTFREE when introducing new RIDs for Strings !!!
+#define RID_SVXSTR_NEXTFREE (RID_SVX_START + 1230)
+
+
+
+
// ----------------------------------------------------------------------------
// if we have _a_lot_ time, we should group the resource ids by type, instead
// of grouping them by semantics. The reason is that resource ids have to be
diff --git a/svx/inc/svx/dlgctrl.hxx b/svx/inc/svx/dlgctrl.hxx
index f7593c252813..c15a948ef166 100644
--- a/svx/inc/svx/dlgctrl.hxx
+++ b/svx/inc/svx/dlgctrl.hxx
@@ -34,7 +34,7 @@
class XBitmapEntry;
class XBitmapList;
class XColorEntry;
-class XColorTable;
+class XColorList;
class XDash;
class XDashEntry;
class XDashList;
@@ -259,7 +259,7 @@ public:
ColorLB( Window* pParent, ResId Id ) : ColorListBox( pParent, Id ) {}
ColorLB( Window* pParent, WinBits aWB ) : ColorListBox( pParent, aWB ) {}
- virtual void Fill( const XColorTable* pTab );
+ virtual void Fill( const XColorList* pTab );
void Append( XColorEntry* pEntry, Bitmap* pBmp = NULL );
void Modify( XColorEntry* pEntry, sal_uInt16 nPos, Bitmap* pBmp = NULL );
@@ -327,8 +327,8 @@ public:
virtual void Fill(const XBitmapList* pList);
virtual void UserDraw(const UserDrawEvent& rUDEvt);
- void Append(XBitmapEntry* pEntry, BitmapEx* pBmpEx = 0);
- void Modify(XBitmapEntry* pEntry, sal_uInt16 nPos, BitmapEx* pBmpEx = 0);
+ void Append(const Size& rSize, const XBitmapEntry& rEntry, BitmapEx* pBmpEx = 0);
+ void Modify(const Size& rSize, const XBitmapEntry& rEntry, sal_uInt16 nPos, BitmapEx* pBmpEx = 0);
void SelectEntryByList(const XBitmapList* pList, const String& rStr);
private:
@@ -338,7 +338,7 @@ private:
XBitmapList* mpList;
bool mbUserDraw;
- SVX_DLLPRIVATE void SetVirtualDevice();
+ SVX_DLLPRIVATE void SetVirtualDevice(const Size& rSize);
};
/*************************************************************************
@@ -352,13 +352,13 @@ private:
VirtualDevice maVD;
BitmapEx maBitmapEx;
- void SetVirtualDevice();
+ void SetVirtualDevice(const Size& rSize);
public:
FillAttrLB( Window* pParent, ResId Id );
FillAttrLB( Window* pParent, WinBits aWB );
- virtual void Fill( const XColorTable* pTab );
+ virtual void Fill( const XColorList* pTab );
virtual void Fill( const XHatchList* pList );
virtual void Fill( const XGradientList* pList );
virtual void Fill( const XBitmapList* pList );
@@ -395,11 +395,11 @@ public:
virtual void Fill( const XDashList* pList );
- void Append( XDashEntry* pEntry, Bitmap* pBmp = NULL );
- void Modify( XDashEntry* pEntry, sal_uInt16 nPos, Bitmap* pBmp = NULL );
+ void Append( XDashEntry* pEntry, const Bitmap* pBmp = NULL );
+ void Modify( XDashEntry* pEntry, sal_uInt16 nPos, const Bitmap* pBmp = NULL );
void SelectEntryByList( const XDashList* pList, const String& rStr,
const XDash& rDash, sal_uInt16 nDist = 0 );
- void FillStyles();
+ // void FillStyles();
};
/*************************************************************************
@@ -411,14 +411,15 @@ class SVX_DLLPUBLIC LineEndLB : public ListBox
{
public:
- LineEndLB( Window* pParent, ResId Id ) : ListBox( pParent, Id ) {}
- LineEndLB( Window* pParent, WinBits aWB ) : ListBox( pParent, aWB ) {}
+ LineEndLB( Window* pParent, ResId Id );
+ LineEndLB( Window* pParent, WinBits aWB );
+ virtual ~LineEndLB (void);
virtual void Fill( const XLineEndList* pList, sal_Bool bStart = sal_True );
- void Append( XLineEndEntry* pEntry, Bitmap* pBmp = NULL,
+ void Append( XLineEndEntry* pEntry, const Bitmap* pBmp = NULL,
sal_Bool bStart = sal_True );
- void Modify( XLineEndEntry* pEntry, sal_uInt16 nPos, Bitmap* pBmp = NULL,
+ void Modify( XLineEndEntry* pEntry, sal_uInt16 nPos, const Bitmap* pBmp = NULL,
sal_Bool bStart = sal_True );
};
diff --git a/svx/inc/svx/dlgutil.hxx b/svx/inc/svx/dlgutil.hxx
index e42efd6b398b..0edab504b2dd 100644
--- a/svx/inc/svx/dlgutil.hxx
+++ b/svx/inc/svx/dlgutil.hxx
@@ -34,7 +34,8 @@
// Functions -------------------------------------------------------------
class SfxItemSet;
-SVX_DLLPUBLIC FieldUnit GetModuleFieldUnit( const SfxItemSet& );
+SVX_DLLPUBLIC FieldUnit GetModuleFieldUnit(const SfxItemSet&);
+SVX_DLLPUBLIC FieldUnit GetModuleFieldUnit();
#define OUTPUT_DRAWMODE_COLOR (DRAWMODE_DEFAULT)
#define OUTPUT_DRAWMODE_CONTRAST (DRAWMODE_SETTINGSLINE | DRAWMODE_SETTINGSFILL | DRAWMODE_SETTINGSTEXT | DRAWMODE_SETTINGSGRADIENT)
diff --git a/svx/inc/svx/drawitem.hxx b/svx/inc/svx/drawitem.hxx
index c0de777b2657..a5a683801956 100644
--- a/svx/inc/svx/drawitem.hxx
+++ b/svx/inc/svx/drawitem.hxx
@@ -34,16 +34,16 @@
// SvxColorTableItem
//==================================================================
-class XColorTable;
+class XColorList;
class SVX_DLLPUBLIC SvxColorTableItem: public SfxPoolItem
{
- XColorTable* pColorTable;
+ XColorList* pColorTable;
public:
TYPEINFO();
SvxColorTableItem();
- SvxColorTableItem( XColorTable* pTable,
+ SvxColorTableItem( XColorList* pTable,
sal_uInt16 nWhich );
SvxColorTableItem( const SvxColorTableItem& );
@@ -57,8 +57,8 @@ public:
virtual sal_Bool QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
virtual sal_Bool PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
- XColorTable* GetColorTable() const { return pColorTable; }
- void SetColorTable( XColorTable* pTable ) {
+ XColorList* GetColorTable() const { return pColorTable; }
+ void SetColorTable( XColorList* pTable ) {
pColorTable = pTable; }
};
diff --git a/svx/inc/svx/fontwork.hxx b/svx/inc/svx/fontwork.hxx
index 9a97b2472c71..323297dcfc66 100644
--- a/svx/inc/svx/fontwork.hxx
+++ b/svx/inc/svx/fontwork.hxx
@@ -132,7 +132,7 @@ class SVX_DLLPUBLIC SvxFontWorkDialog : public SfxDockingWindow
ImageList maImageList;
ImageList maImageListH;
- const XColorTable* pColorTable;
+ const XColorList* pColorTable;
#ifdef _SVX_FONTWORK_CXX
friend class SvxFontWorkChildWindow;
@@ -175,7 +175,7 @@ class SVX_DLLPUBLIC SvxFontWorkDialog : public SfxDockingWindow
const ResId& rResId );
~SvxFontWorkDialog();
- void SetColorTable(const XColorTable* pTable);
+ void SetColorTable(const XColorList* pTable);
void SetActive(sal_Bool bActivate = sal_True);
};
diff --git a/svx/inc/svx/galbrws.hxx b/svx/inc/svx/galbrws.hxx
index b7ad3ccec64c..834c5659ed84 100644
--- a/svx/inc/svx/galbrws.hxx
+++ b/svx/inc/svx/galbrws.hxx
@@ -19,8 +19,6 @@
*
*************************************************************/
-
-
#ifndef _SVX_GALBRWS_HXX_
#define _SVX_GALBRWS_HXX_
@@ -64,7 +62,7 @@ class GalleryBrowser2;
class GallerySplitter;
class Gallery;
-class GalleryBrowser : public SfxDockingWindow
+class SVX_DLLPUBLIC GalleryBrowser : public SfxDockingWindow
{
friend class GalleryBrowser1;
friend class GalleryBrowser2;
@@ -72,19 +70,16 @@ class GalleryBrowser : public SfxDockingWindow
using Window::KeyInput;
private:
-
Size maLastSize;
GallerySplitter* mpSplitter;
GalleryBrowser1* mpBrowser1;
GalleryBrowser2* mpBrowser2;
Gallery* mpGallery;
- long mnDummy1;
- long mnDummy2;
- long mnDummy3;
+ /// bitfield
void InitSettings();
- virtual sal_Bool Close();
+ virtual sal_Bool Close();
virtual void Resize();
virtual void GetFocus();
diff --git a/svx/inc/svx/nbdtmg.hxx b/svx/inc/svx/nbdtmg.hxx
new file mode 100755
index 000000000000..047fcb508644
--- /dev/null
+++ b/svx/inc/svx/nbdtmg.hxx
@@ -0,0 +1,390 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _NBDTMG_HXX
+#define _NBDTMG_HXX
+#include "svx/svxdllapi.h"
+
+#ifndef _SVX_NUMITEM_HXX
+#include <editeng/numitem.hxx>
+#endif
+#define _SVSTDARR_USHORTS
+#include <svl/svstdarr.hxx>
+#include <svl/svarray.hxx>
+#ifndef _LIST_HXX
+#include <tools/list.hxx>
+#endif
+#ifndef _SV_FONT_HXX
+#include <vcl/font.hxx>
+#endif
+
+namespace svx { namespace sidebar {
+
+#define DEFAULT_BULLET_TYPES 8
+#define DEFAULT_NONE 10
+#define DEFAULT_NUM_TYPE_MEMBER 5
+#define DEFAULT_NUM_VALUSET_COUNT 8
+#define DEFAULT_NUMBERING_CACHE_FORMAT_VERSION 0x10
+
+typedef sal_uInt16 NBOType;
+namespace eNBOType
+{
+ const NBOType BULLETS = 0x01;
+ const NBOType GRAPHICBULLETS = 0x02;
+ const NBOType NUMBERING = 0x03;
+ const NBOType OUTLINE = 0x04;
+ const NBOType MIXBULLETS = 0x05;
+}
+
+typedef sal_uInt16 NBType;
+namespace eNBType
+{
+ const NBOType BULLETS = 0x01;
+ const NBOType GRAPHICBULLETS = 0x02;
+}
+
+class SVX_DLLPUBLIC NumSettings_Impl
+{
+ public:
+ short nNumberType;
+ short nParentNumbering;
+ SvxNumberFormat::SvxNumLabelFollowedBy eLabelFollowedBy;
+ long nTabValue;
+ SvxAdjust eNumAlign;
+ long nNumAlignAt;
+ long nNumIndentAt;
+ rtl::OUString sPrefix;
+ rtl::OUString sSuffix;
+ rtl::OUString sBulletChar;
+ rtl::OUString sBulletFont;
+ SvxBrushItem *pBrushItem;
+ Size aSize;
+
+ public:
+ NumSettings_Impl() :
+ nNumberType(0),
+ pBrushItem(0),
+ aSize(0,0),
+ nParentNumbering(0)
+ {}
+ ~NumSettings_Impl(){}
+};
+/*
+typedef NumSettings_Impl* NumSettings_ImplPtr;
+SV_DECL_PTRARR_DEL(NumSettingsArr_Impl,NumSettings_ImplPtr,8,4)
+SV_IMPL_PTRARR( NumSettingsArr_Impl, NumSettings_ImplPtr )*/
+
+class NumSettingsArr_Impl;
+
+class SVX_DLLPUBLIC BulletsSettings
+{
+ public:
+ sal_Bool bIsCustomized;
+ rtl::OUString sDescription;
+ NBType eType;
+ public:
+ BulletsSettings(NBType eTy) :
+ bIsCustomized(sal_False),
+ eType(eTy)
+ {}
+ virtual ~BulletsSettings(){}
+};
+
+class SVX_DLLPUBLIC BulletsSettings_Impl:public BulletsSettings
+{
+ public:
+ sal_Unicode cBulletChar;
+ //rtl::OUString sBulletFont;
+ Font aFont;
+
+ public:
+ BulletsSettings_Impl(NBType eTy) :
+ BulletsSettings(eTy)
+ {}
+ virtual ~BulletsSettings_Impl(){}
+};
+
+class SVX_DLLPUBLIC GrfBulDataRelation: public BulletsSettings
+{
+ public:
+ String sGrfName;
+ sal_uInt16 nTabIndex;
+ sal_uInt16 nGallaryIndex;
+ const Graphic* pGrfObj;
+ Size aSize;
+ GrfBulDataRelation(NBType eTy):
+ BulletsSettings(eTy),
+ nTabIndex((sal_uInt16)0xFFFF),
+ nGallaryIndex((sal_uInt16)0xFFFF),
+ aSize(0,0),
+ pGrfObj(0)
+ {}
+ virtual ~GrfBulDataRelation(){}
+};
+
+class SVX_DLLPUBLIC MixBulletsSettings_Impl
+{
+ public:
+ NBType eType;
+ sal_uInt16 nIndex; //index in the tab page display
+ sal_uInt16 nIndexDefault;
+ BulletsSettings* pBullets;
+ public:
+ MixBulletsSettings_Impl(NBType eTy) :
+ eType(eTy),
+ nIndex((sal_uInt16)0xFFFF),
+ nIndexDefault((sal_uInt16)0xFFFF),
+ pBullets(0)
+ {}
+ ~MixBulletsSettings_Impl(){}
+};
+
+class SVX_DLLPUBLIC NumberSettings_Impl
+{
+ public:
+ sal_Bool bIsCustomized;
+ rtl::OUString sDescription;
+ sal_uInt16 nIndex; //index in the tab page display
+ sal_uInt16 nIndexDefault;
+ NumSettings_Impl *pNumSetting;
+ public:
+ NumberSettings_Impl() :
+ bIsCustomized(sal_False),
+ nIndex((sal_uInt16)0xFFFF),
+ nIndexDefault((sal_uInt16)0xFFFF),
+ pNumSetting(NULL)
+ {}
+ ~NumberSettings_Impl(){}
+};
+
+class NumberSettingsArr_Impl;
+
+class SVX_DLLPUBLIC OutlineSettings_Impl
+{
+ public:
+ sal_Bool bIsCustomized;
+ rtl::OUString sDescription;
+ NumSettingsArr_Impl *pNumSettingsArr;
+ public:
+ OutlineSettings_Impl() :
+ bIsCustomized(sal_False),
+ pNumSettingsArr(NULL)
+ {}
+ ~OutlineSettings_Impl(){
+ }
+};
+
+class SVX_DLLPUBLIC NBOTypeMgrBase
+{
+ public:
+ NBOType eType;
+ private:
+ const SfxItemSet* pSet;
+ SfxMapUnit eCoreUnit;
+ //Sym3_2508 store the attributes passed from pSet
+ String aNumCharFmtName;
+ void StoreBulCharFmtName_impl();
+ void StoreMapUnit_impl();
+
+ public:
+ NBOTypeMgrBase(const NBOType aType):eType(aType),pSet(0),eCoreUnit(SFX_MAPUNIT_TWIP),aNumCharFmtName(String()){}
+ NBOTypeMgrBase(const NBOType aType,const SfxItemSet* pArg):eType(aType),pSet(pArg),eCoreUnit(SFX_MAPUNIT_TWIP),aNumCharFmtName(String()){}
+ NBOTypeMgrBase(const NBOTypeMgrBase& aTypeMgr){eType = aTypeMgr.eType;pSet = aTypeMgr.pSet;eCoreUnit = aTypeMgr.eCoreUnit;aNumCharFmtName = aTypeMgr.aNumCharFmtName; }
+ virtual ~NBOTypeMgrBase() {}
+ virtual void Init()=0;
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0)=0;
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF)=0;
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF, sal_Bool isDefault=false,sal_Bool isResetSize=false)=0;
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false)=0;
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex)=0;
+ sal_uInt16 IsSingleLevel(sal_uInt16 nCurLevel);
+ const SfxItemSet* GetItems() { return pSet;}
+ //Sym3_2508 store the attributes passed from pSet
+ void SetItems(const SfxItemSet* pArg) { pSet = pArg;StoreBulCharFmtName_impl();StoreMapUnit_impl();}
+ protected:
+ String GetBulCharFmtName();
+ SfxMapUnit GetMapUnit();
+ protected:
+ sal_Bool bIsLoading;
+ void ImplLoad(String filename);
+ void ImplStore(String filename);
+
+};
+
+
+class SVX_DLLPUBLIC BulletsTypeMgr: public NBOTypeMgrBase
+{
+ friend class OutlineTypeMgr;
+ friend class NumberingTypeMgr;
+ public:
+ static sal_Unicode aDynamicBulletTypes[DEFAULT_BULLET_TYPES];
+ static sal_Unicode aDynamicRTLBulletTypes[DEFAULT_BULLET_TYPES];
+ static BulletsSettings_Impl* pActualBullets[DEFAULT_BULLET_TYPES];
+ static BulletsTypeMgr* _instance;
+ public:
+ BulletsTypeMgr(const NBOType aType);
+ BulletsTypeMgr(const NBOType aType,const SfxItemSet* pArg);
+ BulletsTypeMgr(const BulletsTypeMgr& aTypeMgr);
+ virtual ~BulletsTypeMgr() {}
+ virtual void Init();
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0);
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF);
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF,sal_Bool isDefault=false,sal_Bool isResetSize=false);
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false);
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex);
+ sal_Unicode GetBulChar(sal_uInt16 nIndex);
+ Font GetBulCharFont(sal_uInt16 nIndex);
+ static BulletsTypeMgr* GetInstance()
+ {
+ if ( _instance == 0 )
+ {
+ _instance = new BulletsTypeMgr(eNBOType::BULLETS);
+ }
+
+ return _instance;
+ }
+
+};
+
+class SVX_DLLPUBLIC GraphyicBulletsTypeMgr: public NBOTypeMgrBase
+{
+ friend class OutlineTypeMgr;
+ friend class NumberingTypeMgr;
+ public:
+ List aGrfDataLst;
+ static GraphyicBulletsTypeMgr* _instance;
+ public:
+ GraphyicBulletsTypeMgr(const NBOType aType);
+ GraphyicBulletsTypeMgr(const NBOType aType,const SfxItemSet* pArg);
+ GraphyicBulletsTypeMgr(const GraphyicBulletsTypeMgr& aTypeMgr);
+ virtual ~GraphyicBulletsTypeMgr() {}
+ virtual void Init();
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0);
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF);
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF,sal_Bool isDefault=false,sal_Bool isResetSize=false);
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false);
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex);
+ String GetGrfName(sal_uInt16 nIndex);
+ static GraphyicBulletsTypeMgr* GetInstance()
+ {
+ if ( _instance == 0 )
+ {
+ _instance = new GraphyicBulletsTypeMgr(eNBOType::BULLETS);
+ }
+
+ return _instance;
+ }
+
+};
+
+class SVX_DLLPUBLIC MixBulletsTypeMgr: public NBOTypeMgrBase
+{
+ friend class OutlineTypeMgr;
+ friend class NumberingTypeMgr;
+ public:
+ static MixBulletsSettings_Impl* pActualBullets[DEFAULT_BULLET_TYPES];
+ static MixBulletsSettings_Impl* pDefaultActualBullets[DEFAULT_BULLET_TYPES];
+ static MixBulletsTypeMgr* _instance;
+ public:
+ MixBulletsTypeMgr(const NBOType aType);
+ MixBulletsTypeMgr(const NBOType aType,const SfxItemSet* pArg);
+ MixBulletsTypeMgr(const MixBulletsTypeMgr& aTypeMgr);
+ virtual ~MixBulletsTypeMgr() {}
+ virtual void Init();
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0);
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF);
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF,sal_Bool isDefault=false,sal_Bool isResetSize=false);
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false);
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex);
+ static MixBulletsTypeMgr* GetInstance()
+ {
+ if ( _instance == 0 )
+ {
+ _instance = new MixBulletsTypeMgr(eNBOType::MIXBULLETS);
+ }
+
+ return _instance;
+ }
+
+};
+
+class SVX_DLLPUBLIC NumberingTypeMgr: public NBOTypeMgrBase
+{
+ public:
+ //NumSettingsArr_Impl* pNumSettingsArr;
+ NumberSettingsArr_Impl* pNumberSettingsArr;
+ NumberSettingsArr_Impl* pDefaultNumberSettingsArr;
+ static NumberingTypeMgr* _instance;
+ public:
+ NumberingTypeMgr(const NBOType aType);
+ NumberingTypeMgr(const NBOType aType,const SfxItemSet* pArg);
+ NumberingTypeMgr(const NumberingTypeMgr& aTypeMgr);
+ virtual ~NumberingTypeMgr() {}
+ virtual void Init();
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0);
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF);
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF,sal_Bool isDefault=false,sal_Bool isResetSize=false);
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false);
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex);
+ sal_uInt16 GetNumCount() const;
+ NumberSettings_Impl* GetNumSettingByIndex(sal_uInt16 nIndex) const;
+ static NumberingTypeMgr* GetInstance()
+ {
+ if ( _instance == 0 )
+ {
+ _instance = new NumberingTypeMgr(eNBOType::NUMBERING);
+ }
+
+ return _instance;
+ }
+};
+
+class SVX_DLLPUBLIC OutlineTypeMgr: public NBOTypeMgrBase
+{
+ public:
+ //NumSettingsArr_Impl* pNumSettingsArrs[DEFAULT_NUM_VALUSET_COUNT];
+ OutlineSettings_Impl* pOutlineSettingsArrs[DEFAULT_NUM_VALUSET_COUNT];
+ OutlineSettings_Impl* pDefaultOutlineSettingsArrs[DEFAULT_NUM_VALUSET_COUNT];
+ static OutlineTypeMgr* _instance;
+ public:
+ OutlineTypeMgr(const NBOType aType);
+ OutlineTypeMgr(const NBOType aType,const SfxItemSet* pArg);
+ OutlineTypeMgr(const OutlineTypeMgr& aTypeMgr);
+ virtual ~OutlineTypeMgr() {}
+ virtual void Init();
+ virtual sal_uInt16 GetNBOIndexForNumRule(SvxNumRule& aNum,sal_uInt16 mLevel,sal_uInt16 nFromIndex=0);
+ virtual sal_Bool RelplaceNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF);
+ virtual sal_Bool ApplyNumRule(SvxNumRule& aNum,sal_uInt16 nIndex,sal_uInt16 mLevel=(sal_uInt16)0xFFFF,sal_Bool isDefault=false,sal_Bool isResetSize=false);
+ virtual String GetDescription(sal_uInt16 nIndex,sal_Bool isDefault=false);
+ virtual sal_Bool IsCustomized(sal_uInt16 nIndex);
+ static OutlineTypeMgr* GetInstance()
+ {
+ if ( _instance == 0 )
+ {
+ _instance = new OutlineTypeMgr(eNBOType::OUTLINE);
+ }
+
+ return _instance;
+ }
+};
+}}
+#endif
+
diff --git a/svx/inc/svx/nbdtmgfact.hxx b/svx/inc/svx/nbdtmgfact.hxx
new file mode 100755
index 000000000000..7aedc5116e8b
--- /dev/null
+++ b/svx/inc/svx/nbdtmgfact.hxx
@@ -0,0 +1,37 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _NBDTMGFACT_HXX
+#define _NBDTMGFACT_HXX
+#ifndef _NBDTMG_HXX
+#include "nbdtmg.hxx"
+#endif
+namespace svx { namespace sidebar {
+class SVX_DLLPUBLIC NBOutlineTypeMgrFact
+{
+public:
+ static NBOTypeMgrBase* CreateInstance(const NBOType aType);
+ NBOutlineTypeMgrFact();
+ virtual ~NBOutlineTypeMgrFact() {}
+};
+}}
+#endif
+
diff --git a/svx/inc/svx/sdr/table/tablecontroller.hxx b/svx/inc/svx/sdr/table/tablecontroller.hxx
new file mode 100755
index 000000000000..f6494ed6027e
--- /dev/null
+++ b/svx/inc/svx/sdr/table/tablecontroller.hxx
@@ -0,0 +1,169 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+
+
+#ifndef _SVX_TABLECONTROLLER_HXX_
+#define _SVX_TABLECONTROLLER_HXX_
+
+#include <com/sun/star/util/XModifyListener.hpp>
+#include <com/sun/star/table/XTable.hpp>
+#include <rtl/ref.hxx>
+
+#include <svx/sdr/overlay/overlayobjectlist.hxx>
+#include <svx/selectioncontroller.hxx>
+#include <svx/svdotable.hxx>
+#include <svx/svdview.hxx>
+//#include <tablemodel.hxx>
+
+class SdrObjEditView;
+class SdrObject;
+class SfxItemSet;
+
+namespace sdr { namespace table {
+
+class TableModel;
+
+const sal_Int16 SELTYPE_NONE = 0;
+const sal_Int16 SELTYPE_MOUSE = 1;
+const sal_Int16 SELTYPE_KEYS = 2;
+
+class SVX_DLLPUBLIC SvxTableController: public sdr::SelectionController
+{
+public:
+ SVX_DLLPRIVATE SvxTableController( SdrObjEditView* pView, const SdrObject* pObj );
+ SVX_DLLPRIVATE virtual ~SvxTableController();
+
+ // from sdr::SelectionController
+ SVX_DLLPRIVATE virtual bool onKeyInput(const KeyEvent& rKEvt, Window* pWin);
+ SVX_DLLPRIVATE virtual bool onMouseButtonDown(const MouseEvent& rMEvt, Window* pWin);
+ SVX_DLLPRIVATE virtual bool onMouseButtonUp(const MouseEvent& rMEvt, Window* pWin);
+ SVX_DLLPRIVATE virtual bool onMouseMove(const MouseEvent& rMEvt, Window* pWin);
+
+ SVX_DLLPRIVATE virtual bool DeleteMarked();
+
+ SVX_DLLPRIVATE virtual void onSelectionHasChanged();
+
+ SVX_DLLPRIVATE virtual void GetState( SfxItemSet& rSet );
+ SVX_DLLPRIVATE virtual void Execute( SfxRequest& rReq );
+
+ SVX_DLLPRIVATE virtual bool GetStyleSheet( SfxStyleSheet* &rpStyleSheet ) const;
+ SVX_DLLPRIVATE virtual bool SetStyleSheet( SfxStyleSheet* pStyleSheet, bool bDontRemoveHardAttr );
+
+ SVX_DLLPRIVATE virtual bool TakeFormatPaintBrush( boost::shared_ptr< SfxItemSet >& rFormatSet );
+ SVX_DLLPRIVATE virtual bool ApplyFormatPaintBrush( SfxItemSet& rFormatSet, bool bNoCharacterFormats, bool bNoParagraphFormats );
+
+ // slots
+ SVX_DLLPRIVATE void onInsert( sal_uInt16 nSId, const SfxItemSet* pArgs = 0 );
+ SVX_DLLPRIVATE void onDelete( sal_uInt16 nSId );
+ SVX_DLLPRIVATE void onSelect( sal_uInt16 nSId );
+ SVX_DLLPRIVATE void onFormatTable( SfxRequest& rReq );
+ SVX_DLLPRIVATE void MergeMarkedCells();
+ SVX_DLLPRIVATE void SplitMarkedCells();
+ SVX_DLLPRIVATE void DistributeColumns();
+ SVX_DLLPRIVATE void DistributeRows();
+ SVX_DLLPRIVATE void SetVertical( sal_uInt16 nSId );
+
+ SVX_DLLPRIVATE static rtl::Reference< sdr::SelectionController > create( SdrObjEditView* pView, const SdrObject* pObj, const rtl::Reference< sdr::SelectionController >& xRefController );
+
+ SVX_DLLPRIVATE void MergeAttrFromSelectedCells(SfxItemSet& rAttr, bool bOnlyHardAttr) const;
+ SVX_DLLPRIVATE void SetAttrToSelectedCells(const SfxItemSet& rAttr, bool bReplaceAll);
+
+ SVX_DLLPRIVATE virtual bool GetAttributes(SfxItemSet& rTargetSet, bool bOnlyHardAttr) const;
+ SVX_DLLPRIVATE virtual bool SetAttributes(const SfxItemSet& rSet, bool bReplaceAll);
+
+ SVX_DLLPRIVATE virtual bool GetMarkedObjModel( SdrPage* pNewPage );
+ SVX_DLLPRIVATE virtual bool PasteObjModel( const SdrModel& rModel );
+
+ SVX_DLLPRIVATE bool hasSelectedCells() const { return mbCellSelectionMode || mpView->IsTextEdit(); }
+
+ void getSelectedCells( CellPos& rFirstPos, CellPos& rLastPos );
+ void setSelectedCells( const CellPos& rFirstPos, const CellPos& rLastPos );
+ void clearSelection();
+ void selectAll();
+
+ SVX_DLLPRIVATE void onTableModified();
+
+private:
+ SvxTableController(SvxTableController &); // not defined
+ void operator =(SvxTableController &); // not defined
+
+ // internals
+ SVX_DLLPRIVATE void ApplyBorderAttr( const SfxItemSet& rAttr );
+ SVX_DLLPRIVATE void UpdateTableShape();
+
+ SVX_DLLPRIVATE void SetTableStyle( const SfxItemSet* pArgs );
+ SVX_DLLPRIVATE void SetTableStyleSettings( const SfxItemSet* pArgs );
+
+ SVX_DLLPRIVATE bool PasteObject( SdrTableObj* pPasteTableObj );
+
+ SVX_DLLPRIVATE bool checkTableObject();
+ SVX_DLLPRIVATE bool updateTableObject();
+ SVX_DLLPRIVATE const CellPos& getSelectionStart();
+ SVX_DLLPRIVATE void setSelectionStart( const CellPos& rPos );
+ SVX_DLLPRIVATE const CellPos& getSelectionEnd();
+ SVX_DLLPRIVATE ::com::sun::star::uno::Reference< ::com::sun::star::table::XCellCursor > getSelectionCursor();
+ SVX_DLLPRIVATE void checkCell( CellPos& rPos );
+
+ SVX_DLLPRIVATE void MergeRange( sal_Int32 nFirstCol, sal_Int32 nFirstRow, sal_Int32 nLastCol, sal_Int32 nLastRow );
+
+ SVX_DLLPRIVATE void EditCell( const CellPos& rPos, ::Window* pWindow, const ::com::sun::star::awt::MouseEvent* pMouseEvent = 0, sal_uInt16 nAction = 0 );
+ SVX_DLLPRIVATE bool StopTextEdit();
+
+ SVX_DLLPRIVATE void DeleteTable();
+
+ SVX_DLLPRIVATE sal_uInt16 getKeyboardAction( const KeyEvent& rKEvt, Window* pWindow );
+ SVX_DLLPRIVATE bool executeAction( sal_uInt16 nAction, bool bSelect, Window* pWindow );
+ SVX_DLLPRIVATE void gotoCell( const CellPos& rCell, bool bSelect, Window* pWindow, sal_uInt16 nAction = 0 );
+
+ SVX_DLLPRIVATE void StartSelection( const CellPos& rPos );
+ SVX_DLLPRIVATE void UpdateSelection( const CellPos& rPos );
+ SVX_DLLPRIVATE void RemoveSelection();
+ SVX_DLLPRIVATE void updateSelectionOverlay();
+ SVX_DLLPRIVATE void destroySelectionOverlay();
+
+ SVX_DLLPRIVATE void findMergeOrigin( CellPos& rPos );
+
+ DECL_LINK( UpdateHdl, void * );
+
+ //TableModelRef mxTable;
+ rtl::Reference< TableModel > mxTable;
+
+ CellPos maCursorFirstPos;
+ CellPos maCursorLastPos;
+ bool mbCellSelectionMode;
+ CellPos maMouseDownPos;
+ bool mbLeftButtonDown;
+ ::sdr::overlay::OverlayObjectList* mpSelectionOverlay;
+
+ SdrView* mpView;
+ SdrObjectWeakRef mxTableObj;
+ SdrModel* mpModel;
+
+ ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > mxModifyListener;
+
+ sal_uLong mnUpdateEvent;
+};
+
+} }
+
+#endif // _SVX_TABLECONTROLLER_HXX_
+
diff --git a/svx/inc/svx/sidebar/ColorControl.hxx b/svx/inc/svx/sidebar/ColorControl.hxx
new file mode 100644
index 000000000000..de84aab91723
--- /dev/null
+++ b/svx/inc/svx/sidebar/ColorControl.hxx
@@ -0,0 +1,86 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#include "svx/sidebar/PopupControl.hxx"
+
+#include <svtools/valueset.hxx>
+#include <boost/function.hpp>
+
+class Window;
+class SfxBindings;
+class RedId;
+class FloatingWindow;
+
+
+namespace svx { namespace sidebar {
+
+/** The ColorControl uses a ValueSet control for displaying all named
+ colors in a matrix.
+*/
+class SVX_DLLPUBLIC ColorControl
+ : public PopupControl
+{
+public:
+ /** Create a new ColorControl object.
+ @param rControlResId
+ The resource id for the whole color control.
+ @param rNoColorGetter
+ A functor for getting the color which will be returned when the
+ WB_NONEFIELD is used and got selected
+ @param rColorSetter
+ A functor for setting the color that is selected by the
+ user.
+ @param pNoColorStringResId
+ Resource id of an optional string for the "no color"
+ string. When a value is given then a
+ field/button is created above the color matrix for
+ selecting "no color" ie. transparent.
+ When zero is given then no such field is created.
+ */
+ ColorControl (
+ Window* pParent,
+ SfxBindings* pBindings,
+ const ResId& rControlResId,
+ const ResId& rValueSetResId,
+ const ::boost::function<Color(void)>& rNoColorGetter,
+ const ::boost::function<void(String&,Color)>& rColorSetter,
+ FloatingWindow* pFloatingWindow,
+ const ResId* pNoColorStringResId);
+ virtual ~ColorControl (void);
+
+ void GetFocus (void);
+ void SetCurColorSelect (
+ const Color aCol,
+ const bool bAvl);
+
+private:
+ SfxBindings* mpBindings;
+ ValueSet maVSColor;
+ FloatingWindow* mpFloatingWindow;
+ const String msNoColorString;
+ ::boost::function<Color(void)> maNoColorGetter;
+ ::boost::function<void(String&,Color)> maColorSetter;
+
+ void FillColors (void);
+ DECL_LINK(VSSelectHdl, void *);
+};
+
+} } // end of namespace svx::sidebar
diff --git a/svx/inc/svx/sidebar/ColorPopup.hxx b/svx/inc/svx/sidebar/ColorPopup.hxx
new file mode 100644
index 000000000000..f4c9ef4fa971
--- /dev/null
+++ b/svx/inc/svx/sidebar/ColorPopup.hxx
@@ -0,0 +1,55 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_COLOR_POPUP_HXX_
+#define _SVX_SIDEBAR_COLOR_POPUP_HXX_
+
+#include "svx/sidebar/Popup.hxx"
+
+#include <tools/color.hxx>
+
+
+namespace svx { namespace sidebar {
+
+/** Popup control that displays all named colors in a matrix.
+ The number of rows and columns of the matrix are computed from
+ the number of named colors so that both have roughly the same
+ value.
+
+ The ColorPopup uses ColorControl as control for its content.
+*/
+class SVX_DLLPUBLIC ColorPopup
+ : public Popup
+{
+public :
+ ColorPopup (
+ Window* pParent,
+ const ::boost::function<PopupControl*(PopupContainer*)>& rControlCreator);
+ virtual ~ColorPopup (void);
+
+ void SetCurrentColor (
+ const Color aCurrentColor,
+ const bool bIsColorAvailable);
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/ContextChangeEventMultiplexer.hxx b/svx/inc/svx/sidebar/ContextChangeEventMultiplexer.hxx
new file mode 100644
index 000000000000..1d661d8f0a58
--- /dev/null
+++ b/svx/inc/svx/sidebar/ContextChangeEventMultiplexer.hxx
@@ -0,0 +1,69 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_CONTEXT_CHANGE_EVENT_MULTIPLEXER_HXX_
+#define _SVX_SIDEBAR_CONTEXT_CHANGE_EVENT_MULTIPLEXER_HXX_
+
+#include "svx/svxdllapi.h"
+#include <sfx2/sidebar/EnumContext.hxx>
+#include <com/sun/star/frame/XController.hpp>
+#include <com/sun/star/frame/XFrame.hpp>
+
+namespace css = ::com::sun::star;
+namespace cssu = ::com::sun::star::uno;
+
+class SfxViewShell;
+
+/** Convenience frontend for com::sun::star::ui::ContextChangeEventMultiplexer
+*/
+class SVX_DLLPUBLIC ContextChangeEventMultiplexer
+{
+public:
+ /** Notify the activation of a context.
+ @param rxController
+ This controller is used to determine the module (ie
+ application like Writer or Calc).
+ @param eContext
+ The activated context.
+ */
+ static void NotifyContextChange (
+ const cssu::Reference<css::frame::XController>& rxController,
+ const ::sfx2::sidebar::EnumContext::Context eContext);
+
+ /** Notify the activation of a context.
+ @param pViewShell
+ This view shell is used to determine the module (ie
+ application like Writer or Calc). When <NULL/> then no
+ notification is made.
+ @param eContext
+ The activated context.
+ */
+ static void NotifyContextChange (
+ SfxViewShell* pViewShell,
+ const ::sfx2::sidebar::EnumContext::Context eContext);
+
+private:
+ static ::rtl::OUString GetModuleName (
+ const cssu::Reference<css::frame::XFrame>& rxFrame);
+};
+
+#endif
+
diff --git a/svx/inc/svx/sidebar/Popup.hxx b/svx/inc/svx/sidebar/Popup.hxx
new file mode 100644
index 000000000000..00d48af259e0
--- /dev/null
+++ b/svx/inc/svx/sidebar/Popup.hxx
@@ -0,0 +1,107 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_POPUP_HXX_
+#define _SVX_SIDEBAR_POPUP_HXX_
+
+#include "svx/svxdllapi.h"
+#include <rtl/ustring.hxx>
+#include <tools/link.hxx>
+
+#include <boost/function.hpp>
+#include <boost/scoped_ptr.hpp>
+
+class Window;
+class ToolBox;
+
+namespace svx { namespace sidebar {
+
+class PopupContainer;
+class PopupControl;
+
+/** A wrapper around a PopupContainer and a PopupControl object.
+ Usually used as drop down for a toolbox. Use Show() to start
+ drop down mode and Hide() to end it.
+*/
+class SVX_DLLPUBLIC Popup
+{
+public :
+ /** Create a Popup wrapper object.
+ @param pParent
+ Parent window of the PopupContainer, which in turn is the
+ parent of the PopupControl.
+ @param rControlCreator
+ A functor that is called to create the PopupControl object
+ (usually an instance of a class derived from
+ PopupControl).
+ */
+ Popup (
+ Window* pParent,
+ const ::boost::function<PopupControl*(PopupContainer*)>& rControlCreator,
+ const ::rtl::OUString& rsAccessibleName);
+ virtual ~Popup (void);
+
+ /** Show the popup.
+ @rToolBox
+ The tool box is used to determine the position at which
+ the popup is displayed.
+ */
+ void Show (ToolBox& rToolBox);
+
+ /** Hide the popup.
+ This method is called automatically when eg. the user clicks
+ outside the popup or when the ESC-key is pressed. The
+ application can call Hide() when the popup should be closed
+ for other, non-standard reasons.
+ */
+ void Hide (void);
+
+ /** If you want to be informed when the popup closes then add a
+ callback that is called after that.
+ */
+ void SetPopupModeEndHandler (const ::boost::function<void(void)>& rCallback);
+
+protected:
+ ::boost::scoped_ptr<PopupControl> mpControl;
+
+ /** Make sure that both PopupContainer and PopupControl objects
+ exist. Calls the maControlCreator functor if necessary.
+ */
+ void ProvideContainerAndControl (void);
+
+ /** A derived specialisation class can override this method to do
+ additional work.
+ */
+ virtual void CreateContainerAndControl (void);
+
+private:
+ Window* mpParent;
+ ::boost::function<PopupControl*(PopupContainer*)> maControlCreator;
+ ::boost::function<void(void)> maPopupModeEndCallback;
+ const ::rtl::OUString msAccessibleName;
+ ::boost::scoped_ptr<PopupContainer> mpContainer;
+
+ DECL_LINK(PopupModeEndHandler, void*);
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/PopupContainer.hxx b/svx/inc/svx/sidebar/PopupContainer.hxx
new file mode 100644
index 000000000000..99c94236fd0f
--- /dev/null
+++ b/svx/inc/svx/sidebar/PopupContainer.hxx
@@ -0,0 +1,48 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_POPUP_CONTAINER_HXX_
+#define _SVX_SIDEBAR_POPUP_CONTAINER_HXX_
+
+#include "svx/svxdllapi.h"
+#include <vcl/floatwin.hxx>
+
+namespace svx { namespace sidebar {
+
+/** Simple base class for popup container windows used by sidebar
+ related drop downs.
+ It initializes the underlying floating window with the right
+ flags and closes the drop down when appropriate.
+*/
+class SVX_DLLPUBLIC PopupContainer
+ : public FloatingWindow
+{
+public:
+ PopupContainer (Window* pParent);
+ virtual ~PopupContainer (void);
+
+ virtual long Notify (NotifyEvent& rNEvt);
+};
+
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/PopupControl.hxx b/svx/inc/svx/sidebar/PopupControl.hxx
new file mode 100644
index 000000000000..449c7c13364c
--- /dev/null
+++ b/svx/inc/svx/sidebar/PopupControl.hxx
@@ -0,0 +1,51 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_POPUP_CONTROL_HXX_
+#define _SVX_SIDEBAR_POPUP_CONTROL_HXX_
+
+#include "svx/svxdllapi.h"
+#include <vcl/ctrl.hxx>
+
+namespace svx { namespace sidebar {
+
+/** Base class for sidebar related popup controls.
+ A PopupControl is typically a child of a PopupContainer and
+ provides the actual content of a popup.
+ This base class takes care of painting the proper background and
+ border for sidebar popups.
+ Specialize by derivation.
+*/
+class SVX_DLLPUBLIC PopupControl
+ : public Control
+{
+public :
+ PopupControl (
+ Window* pParent,
+ const ResId& rResId);
+ virtual ~PopupControl (void);
+
+ virtual void Paint (const Rectangle& rect);
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/SelectionAnalyzer.hxx b/svx/inc/svx/sidebar/SelectionAnalyzer.hxx
new file mode 100644
index 000000000000..3f4fa14af8ef
--- /dev/null
+++ b/svx/inc/svx/sidebar/SelectionAnalyzer.hxx
@@ -0,0 +1,66 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_SELECTION_ANALYZER_HXX_
+#define _SVX_SIDEBAR_SELECTION_ANALYZER_HXX_
+
+#include <sfx2/sidebar/EnumContext.hxx>
+#include "svx/svxdllapi.h"
+
+class SdrMarkList;
+class SdrObject;
+
+
+namespace svx { namespace sidebar {
+
+class SVX_DLLPUBLIC SelectionAnalyzer
+{
+public :
+ static sfx2::sidebar::EnumContext::Context GetContextForSelection_SC (
+ const SdrMarkList& rMarkList);
+ static sfx2::sidebar::EnumContext::Context GetContextForSelection_SD (
+ const SdrMarkList& rMarkList,
+ const bool bIsMasterPage,
+ const bool bIsHandoutPage,
+ const bool bIsNotesPage);
+
+private:
+ static sfx2::sidebar::EnumContext::Context GetContextForObjectId_SC (
+ const sal_uInt16 nObjectId);
+ static sfx2::sidebar::EnumContext::Context GetContextForObjectId_SD (
+ const sal_uInt16 nObjectId,
+ const bool bIsHandoutPage,
+ const bool bIsNotesPage);
+ static sal_uInt32 GetInventorTypeFromMark (
+ const SdrMarkList& rMarkList);
+ static sal_uInt16 GetObjectTypeFromMark (
+ const SdrMarkList& rMarkList);
+ static sal_uInt16 GetObjectTypeFromGroup (
+ const SdrObject* pObj);
+ static bool IsShapeType (
+ const sal_uInt16 nType);
+ static bool IsTextObjType (
+ const sal_uInt16 nType);
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/SelectionChangeHandler.hxx b/svx/inc/svx/sidebar/SelectionChangeHandler.hxx
new file mode 100644
index 000000000000..1815414e4f9b
--- /dev/null
+++ b/svx/inc/svx/sidebar/SelectionChangeHandler.hxx
@@ -0,0 +1,89 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_SELECTION_CHANGE_HANDLER_HXX_
+#define _SVX_SIDEBAR_SELECTION_CHANGE_HANDLER_HXX_
+
+#include "svx/svxdllapi.h"
+#include <sfx2/sidebar/EnumContext.hxx>
+#include <com/sun/star/frame/XController.hpp>
+#include <com/sun/star/view/XSelectionSupplier.hpp>
+#include <com/sun/star/view/XSelectionChangeListener.hpp>
+
+#include <cppuhelper/compbase1.hxx>
+#include <cppuhelper/basemutex.hxx>
+
+#include <boost/noncopyable.hpp>
+#include <boost/function.hpp>
+
+namespace css = ::com::sun::star;
+namespace cssu = ::com::sun::star::uno;
+
+
+class SdrMarkView;
+
+
+namespace svx { namespace sidebar {
+
+namespace {
+ typedef ::cppu::WeakComponentImplHelper1 <
+ css::view::XSelectionChangeListener
+ > SelectionChangeHandlerInterfaceBase;
+}
+
+
+class SVX_DLLPUBLIC SelectionChangeHandler
+ : private ::boost::noncopyable,
+ private ::cppu::BaseMutex,
+ public SelectionChangeHandlerInterfaceBase
+{
+public:
+ SelectionChangeHandler (
+ const boost::function<sfx2::sidebar::EnumContext::Context(void)>& rSelectionChangeCallback,
+ const cssu::Reference<css::frame::XController>& rxController,
+ const sfx2::sidebar::EnumContext::Context eDefaultContext);
+ virtual ~SelectionChangeHandler (void);
+
+ virtual void SAL_CALL selectionChanged (const css::lang::EventObject& rEvent)
+ throw (cssu::RuntimeException);
+
+ virtual void SAL_CALL disposing (const css::lang::EventObject& rEvent)
+ throw (cssu::RuntimeException);
+
+ virtual void SAL_CALL disposing (void)
+ throw (cssu::RuntimeException);
+
+ void Connect (void);
+ void Disconnect (void);
+
+private:
+ const boost::function<sfx2::sidebar::EnumContext::Context(void)> maSelectionChangeCallback;
+ cssu::Reference<css::frame::XController> mxController;
+ const sfx2::sidebar::EnumContext::Context meDefaultContext;
+ bool mbIsConnected;
+};
+
+
+} } // end of namespace svx::sidebar
+
+
+#endif
+
diff --git a/svx/inc/svx/sidebar/SidebarDialControl.hxx b/svx/inc/svx/sidebar/SidebarDialControl.hxx
new file mode 100644
index 000000000000..49d6d5f1ee1b
--- /dev/null
+++ b/svx/inc/svx/sidebar/SidebarDialControl.hxx
@@ -0,0 +1,45 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef SVX_SIDEBAR_DIAL_CONTROL_HXX
+#define SVX_SIDEBAR_DIAL_CONTROL_HXX
+
+#include <svx/dialcontrol.hxx>
+
+namespace svx { namespace sidebar {
+
+/** Provide some improvements over the standard DialControl.
+*/
+class SVX_DLLPUBLIC SidebarDialControl : public svx::DialControl
+{
+public:
+ SidebarDialControl (Window* pParent, const ResId& rResId);
+ virtual ~SidebarDialControl (void);
+
+ virtual void MouseButtonDown (const MouseEvent& rMEvt);
+
+protected:
+ virtual void HandleMouseEvent (const Point& rPos, bool bInitial);
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/sidebar/ValueSetWithTextControl.hxx b/svx/inc/svx/sidebar/ValueSetWithTextControl.hxx
new file mode 100644
index 000000000000..03531521c5e7
--- /dev/null
+++ b/svx/inc/svx/sidebar/ValueSetWithTextControl.hxx
@@ -0,0 +1,161 @@
+/**************************************************************
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef _SVX_SIDEBAR_VALUESETWITHTEXT_CONTROL_HXX_
+#define _SVX_SIDEBAR_VALUESETWITHTEXT_CONTROL_HXX_
+
+#include "svx/svxdllapi.h"
+
+#include <svtools/valueset.hxx>
+#include <limits.h>
+#include <com/sun/star/uno/Reference.h>
+#include <com/sun/star/uno/Sequence.h>
+#include <com/sun/star/lang/Locale.hpp>
+
+#include <vcl/image.hxx>
+
+#include <vector>
+
+namespace com{namespace sun{ namespace star{
+ namespace container{
+ class XIndexAccess;
+ }
+ namespace beans{
+ struct PropertyValue;
+ }
+ namespace text{
+ class XNumberingFormatter;
+ }
+}}}
+
+namespace svx { namespace sidebar {
+
+/** Specialization of class <ValueSet>.
+ This specialization allows is a one-columned ValueSet which allow
+ items containing an image and a text or a text and a second text.
+
+ Especially, used for sidebar related controls.
+*/
+class SVX_DLLPUBLIC ValueSetWithTextControl : public ValueSet
+{
+public:
+ // control type of specialized <ValueSet>:
+ // - image + text
+ // - text + text
+ enum tControlType
+ {
+ IMAGE_TEXT,
+ TEXT_TEXT
+ };
+
+ ValueSetWithTextControl(
+ const tControlType eControlType,
+ Window* pParent,
+ const ResId& rResId);
+
+ virtual ~ValueSetWithTextControl(void);
+
+ // add item for control type IMAGE_TEXT
+ // if control type does not match IMAGE_TEXT no item is added.
+ // @param pSelectedItemImage
+ // selection item image is optional. if not provided, it is the same as the image item
+ // @param pItemHelpText
+ // help text is optional. if not provided, it is the same as the item text
+ void AddItem(
+ const Image& rItemImage,
+ const Image* pSelectedItemImage,
+ const XubString& rItemText,
+ const XubString* pItemHelpText );
+
+ // replace item images for control type IMAGE_TEXT
+ void ReplaceItemImages(
+ const sal_uInt16 nItemId,
+ const Image& rItemImage,
+ const Image* pSelectedItemImage );
+
+ // add item for control type TEXT_TEXT
+ // if control type does not match TEXT_TEXT no item is added.
+ // @param pItemHelpText
+ // help text is optional. if not provided, it is the same as the item text
+ void AddItem(
+ const XubString& rItemText,
+ const XubString& rItemText2,
+ const XubString* pItemHelpText );
+
+ virtual void UserDraw( const UserDrawEvent& rUDEvt );
+
+private:
+ struct ValueSetWithTextItem
+ {
+ Image maItemImage;
+ Image maSelectedItemImage;
+ XubString maItemText;
+ XubString maItemText2;
+ };
+
+ typedef ::std::vector< ValueSetWithTextItem > tItemList;
+
+ const tControlType meControlType;
+ tItemList maItems;
+};
+
+class SVX_DLLPUBLIC SvxNumValueSet2 : public ValueSet
+{
+ Color aLineColor;
+ Rectangle aOrgRect;
+ VirtualDevice* pVDev;
+
+ com::sun::star::uno::Reference<com::sun::star::text::XNumberingFormatter> xFormatter;
+ com::sun::star::lang::Locale aLocale;
+
+ com::sun::star::uno::Sequence<
+ com::sun::star::uno::Sequence<
+ com::sun::star::beans::PropertyValue> > aNumSettings;
+
+
+ public:
+ SvxNumValueSet2( Window* pParent, const ResId& rResId);
+ ~SvxNumValueSet2();
+
+ virtual void UserDraw( const UserDrawEvent& rUDEvt );
+
+
+ void SetNumberingSettings(
+ const com::sun::star::uno::Sequence<
+ com::sun::star::uno::Sequence<
+ com::sun::star::beans::PropertyValue> >& aNum,
+ com::sun::star::uno::Reference<com::sun::star::text::XNumberingFormatter>& xFormatter,
+ const com::sun::star::lang::Locale& rLocale );
+};
+
+class SVX_DLLPUBLIC SvxNumValueSet3 : public ValueSet
+{
+ public:
+ SvxNumValueSet3( Window* pParent, const ResId& rResId);
+ ~SvxNumValueSet3();
+
+ virtual void UserDraw( const UserDrawEvent& rUDEvt );
+
+};
+
+} } // end of namespace svx::sidebar
+
+#endif
diff --git a/svx/inc/svx/svdedtv.hxx b/svx/inc/svx/svdedtv.hxx
index 5ba95fcb25c9..879dcbd26ace 100644
--- a/svx/inc/svx/svdedtv.hxx
+++ b/svx/inc/svx/svdedtv.hxx
@@ -243,6 +243,7 @@ public:
void SetMarkedObjRect(const Rectangle& rRect, sal_Bool bCopy=sal_False);
void MoveMarkedObj(const Size& rSiz, bool bCopy=false);
void ResizeMarkedObj(const Point& rRef, const Fraction& xFact, const Fraction& yFact, bool bCopy=false);
+ void ResizeMultMarkedObj(const Point& rRef, const Fraction& xFact, const Fraction& yFact, const bool bCopy, const bool bWdh, const bool bHgt);
long GetMarkedObjRotate() const;
void RotateMarkedObj(const Point& rRef, long nWink, bool bCopy=false);
void MirrorMarkedObj(const Point& rRef1, const Point& rRef2, bool bCopy=false);
diff --git a/svx/inc/svx/svdedxv.hxx b/svx/inc/svx/svdedxv.hxx
index 6d8203b0d325..e7d6b7cbdb08 100644
--- a/svx/inc/svx/svdedxv.hxx
+++ b/svx/inc/svx/svdedxv.hxx
@@ -270,6 +270,9 @@ public:
virtual void AddWindowToPaintView(OutputDevice* pNewWin);
virtual void DeleteWindowFromPaintView(OutputDevice* pOldWin);
+ sal_uInt16 GetSelectionLevel() const;
+
+
//************************************************************************
// Object-MacroModus (z.B. Rect als Button oder sowas):
//************************************************************************
diff --git a/svx/inc/svx/svdmodel.hxx b/svx/inc/svx/svdmodel.hxx
index 05814e23330e..5418a4527ab6 100644
--- a/svx/inc/svx/svdmodel.hxx
+++ b/svx/inc/svx/svdmodel.hxx
@@ -78,16 +78,11 @@ class SfxStyleSheet;
class SfxUndoAction;
class SfxUndoManager;
class XBitmapList;
-class XBitmapTable;
-class XColorTable;
+class XColorList;
class XDashList;
-class XDashTable;
class XGradientList;
-class XGradientTable;
class XHatchList;
-class XHatchTable;
class XLineEndList;
-class XLineEndTable;
class SvxForbiddenCharactersTable;
class SvNumberFormatter;
class SotStorage;
@@ -282,7 +277,7 @@ public:
FASTBOOL mbInDestruction;
// Zeiger auf Paletten, Listen und Tabellen
- XColorTable* pColorTable;
+ XColorList* pColorTable;
XDashList* pDashList;
XLineEndList* pLineEndList;
XHatchList* pHatchList;
@@ -658,8 +653,8 @@ public:
const Link& GetIOProgressHdl() const { return aIOProgressLink; }
// Zugriffsmethoden fuer Paletten, Listen und Tabellen
- void SetColorTable(XColorTable* pTable) ;
- XColorTable* GetColorTable() const { return pColorTable; }
+ void SetColorTable(XColorList* pTable) ;
+ XColorList* GetColorTable() const { return pColorTable; }
void SetDashList(XDashList* pList) ;
XDashList* GetDashList() const { return pDashList; }
void SetLineEndList(XLineEndList* pList) ;
diff --git a/svx/inc/svx/svdobj.hxx b/svx/inc/svx/svdobj.hxx
index dd18589bc9d9..14a9301148e1 100644
--- a/svx/inc/svx/svdobj.hxx
+++ b/svx/inc/svx/svdobj.hxx
@@ -40,6 +40,7 @@
#include <svx/sdrobjectuser.hxx>
#include "svx/svxdllapi.h"
#include "svx/shapeproperty.hxx"
+#include <svl/poolitem.hxx>
//************************************************************
// Vorausdeklarationen
@@ -855,6 +856,9 @@ protected:
void SetObjectItemSet(const SfxItemSet& rSet);
const SfxPoolItem& GetObjectItem(const sal_uInt16 nWhich) const;
+ // get SfxMapUnit the object is using
+ SfxMapUnit GetObjectMapUnit() const;
+
public:
// syntactical sugar for ItemSet accesses
void SetMergedItemSetAndBroadcast(const SfxItemSet& rSet, sal_Bool bClearAllItems = sal_False);
diff --git a/svx/inc/svx/svdogrp.hxx b/svx/inc/svx/svdogrp.hxx
index b32c44096ef9..3b70be0218f9 100644
--- a/svx/inc/svx/svdogrp.hxx
+++ b/svx/inc/svx/svdogrp.hxx
@@ -48,9 +48,6 @@ protected:
virtual sdr::properties::BaseProperties* CreateObjectSpecificProperties();
SdrObjList* pSub; // Subliste (Kinder)
- long nDrehWink;
- long nShearWink;
-
Point aRefPoint; // Referenzpunkt innerhalb der Objektgruppe
FASTBOOL bRefPoint; // Ist ein RefPoint gesetzt?
diff --git a/svx/inc/svx/svdstr.hrc b/svx/inc/svx/svdstr.hrc
index 60225090efc4..a78cf826b4b9 100644
--- a/svx/inc/svx/svdstr.hrc
+++ b/svx/inc/svx/svdstr.hrc
@@ -785,8 +785,11 @@
#define SIP_SA_CROP_MARKERS (SIP_Begin + 276)
#define SIP_SA_CROP_FINE_MARKERS (SIP_Begin + 277)
#define SIP_SA_ACCESSIBILITY_CROP_MARKERS (SIP_Begin + 278)
+#define IMG_DIACONTROL_NORMAL (SIP_Begin + 279)
+#define IMG_DIACONTROL_H (SIP_Begin + 280)
-#define SIP_End (SIP_SA_ACCESSIBILITY_CROP_MARKERS)
+
+#define SIP_End (IMG_DIACONTROL_H)
#define SDR_ResourceEnd (SIP_End)
diff --git a/svx/inc/svx/svxids.hrc b/svx/inc/svx/svxids.hrc
index 3a31540fcfe2..a864e41381da 100755
--- a/svx/inc/svx/svxids.hrc
+++ b/svx/inc/svx/svxids.hrc
@@ -373,6 +373,8 @@
#define FN_NUM_BULLET_OFF (FN_EDIT + 37) /* Numerierung aus */
#define FN_NUM_BULLET_ON (FN_EDIT + 38) /* Numerierung mit Bullets an */
#define FN_NUM_NUMBERING_ON (FN_EDIT + 44) /* Numerierung an */
+#define FN_BUL_NUM_RULE_INDEX (FN_EDIT + 120) /* Achieving num rule index */
+#define FN_NUM_NUM_RULE_INDEX (FN_EDIT + 121)
#define FN_INSERT (SID_SW_START + 300)
#define FN_DELETE_BOOKMARK (FN_INSERT + 1)
@@ -682,6 +684,9 @@
#define SID_TWAIN_TRANSFER ( SID_SVX_START + 332 )
#define SID_CONTOUR_DLG ( SID_SVX_START + 334 )
#define SID_CONTOUR_EXEC ( SID_SVX_START + 335 )
+
+//#define SID_SIDEBAR ( SID_SVX_START + 336 ) -> sfxsids.hrc
+
#define SID_BORDER_OBJECT ( SID_SVX_START + 340 )
#define SID_BORDER_LEFTLINE ( SID_SVX_START + 341 )
#define SID_BORDER_RIGHTLINE ( SID_SVX_START + 342 )
@@ -748,6 +753,8 @@
#define SID_ATTR_3D_AMBIENTCOLOR ( SID_SVX_START + 411 )
#define SID_IMPORT_GRAPH_LINK ( SID_SVX_START + 412 )
+//#define SID_ATTR_PARA_REGISTER ( SID_SVX_START + 413 ) -> editids.hrc
+
//! moved to sfx2, still in use:
//#define SID_HTML_MODE ( SID_SVX_START + 414 )
@@ -1257,8 +1264,26 @@
#define SID_TRANSLITERATE_TITLE_CASE (SID_SVX_START+1103)
#define SID_TRANSLITERATE_TOGGLE_CASE (SID_SVX_START+1104)
+// new slots for panels
+#define SID_ATTR_FILL_TRANSPARENCE (SID_SVX_START+1105)
+#define SID_ATTR_FILL_FLOATTRANSPARENCE (SID_SVX_START+1106)
+#define SID_ATTR_LINE_TRANSPARENCE (SID_SVX_START+1107)
+#define SID_FLIP_HORIZONTAL (SID_SVX_START+1108)
+#define SID_FLIP_VERTICAL (SID_SVX_START+1109)
+#define SID_ATTR_LINE_JOINT (SID_SVX_START+1110)
+#define SID_ATTR_LINE_CAP (SID_SVX_START+1111)
+#define SID_ATTR_TRANSFORM_MATRIX (SID_SVX_START+1112)
+
+#define SID_CELL_FORMAT_BORDER (SID_SVX_START+1113)
+#define SID_CHAR_DLG_EFFECT (SID_SVX_START+1114)
+#define SID_ATTR_PARA_LEFT (SID_SVX_START + 1115)
+#define SID_ATTR_PARA_RIGHT (SID_SVX_START + 1116)
+
+#define FN_SVX_SET_NUMBER (SID_SVX_START + 1117)
+#define FN_SVX_SET_BULLET (SID_SVX_START + 1118)
+
// IMPORTANT NOTE: adjust SID_SVX_FIRSTFREE, when adding new slot id
-#define SID_SVX_FIRSTFREE (SID_TRANSLITERATE_TOGGLE_CASE + 1)
+#define SID_SVX_FIRSTFREE (FN_SVX_SET_BULLET + 1)
// --------------------------------------------------------------------------
// Overflow check for slot IDs
diff --git a/svx/inc/svx/svxitems.hrc b/svx/inc/svx/svxitems.hrc
index d6f035c62607..f001e4107c6e 100644
--- a/svx/inc/svx/svxitems.hrc
+++ b/svx/inc/svx/svxitems.hrc
@@ -70,6 +70,9 @@
#define RID_SVXITEMS_BRUSHSTYLE_75 (RID_SVXITEMS_START + 55)
#define RID_SVXITEMS_BRUSHSTYLE_BITMAP (RID_SVXITEMS_START + 56)
+// enum ColorName -----------------------------------------------------------
+#define RID_SVXITEMS_COLOR_WHITE (RID_SVXITEMS_START + 76)
+
// enum FontFamily -------------------------------------------------------
#define RID_SVXITEMS_FONTFAMILY_BEGIN (RID_SVXITEMS_START + 100)
#define RID_SVXITEMS_FONTFAMILY_DONTKNOW (RID_SVXITEMS_START + 100)
diff --git a/svx/inc/svx/xattr.hxx b/svx/inc/svx/xattr.hxx
index 6dea0ad2cbcf..357a8c68c0e2 100644
--- a/svx/inc/svx/xattr.hxx
+++ b/svx/inc/svx/xattr.hxx
@@ -24,26 +24,12 @@
#define _XATTR_HXX
// include ---------------------------------------------------------------
-
-#ifndef _XDEF_HXX
-//#include <svx/xdef.hxx>
-#endif
-#ifndef _XENUM_HXX
-//#include <svx/xenum.hxx>
-#endif
-#ifndef _XPOLY_HXX
-//#include <svx/xpoly.hxx>
-#endif
-#ifndef _SVX_RECTENUM_HXX
-//#include <svx/rectenum.hxx>
-#endif
-
-class XColorTable;
-class XDashTable;
-class XLineEndTable;
-class XHatchTable;
-class XBitmapTable;
-class XGradientTable;
+class XColorList;
+class XDashList;
+class XLineEndList;
+class XHatchList;
+class XBitmapList;
+class XGradientList;
#include <svx/xit.hxx>
#include <svx/xcolit.hxx>
diff --git a/svx/inc/svx/xcolit.hxx b/svx/inc/svx/xcolit.hxx
index 0c6f4b843e2e..82855e350d28 100644
--- a/svx/inc/svx/xcolit.hxx
+++ b/svx/inc/svx/xcolit.hxx
@@ -29,7 +29,7 @@
#include <svx/xit.hxx>
-class XColorTable;
+class XColorList;
//-----------------
// class XColorItem
@@ -55,7 +55,7 @@ public:
virtual SfxPoolItem* Create(SvStream& rIn, sal_uInt16 nVer) const;
virtual SvStream& Store(SvStream& rOut, sal_uInt16 nItemVersion ) const;
- const Color& GetColorValue(const XColorTable* pTable = 0) const;
+ const Color& GetColorValue(const XColorList* pTable = 0) const;
void SetColorValue(const Color& rNew) { aColor = rNew; Detach(); }
};
diff --git a/svx/inc/svx/xenum.hxx b/svx/inc/svx/xenum.hxx
index f615cf78a1f9..d23302bd78d4 100644
--- a/svx/inc/svx/xenum.hxx
+++ b/svx/inc/svx/xenum.hxx
@@ -25,14 +25,6 @@
#define _XENUM_HXX
enum XLineStyle { XLINE_NONE, XLINE_SOLID, XLINE_DASH };
-enum XLineJoint
-{
- XLINEJOINT_NONE, // no rounding
- XLINEJOINT_MIDDLE, // calc middle value between joints
- XLINEJOINT_BEVEL, // join edges with line
- XLINEJOINT_MITER, // extend till cut
- XLINEJOINT_ROUND // create arc
-};
enum XDashStyle { XDASH_RECT, XDASH_ROUND, XDASH_RECTRELATIVE,
XDASH_ROUNDRELATIVE };
enum XFillStyle { XFILL_NONE, XFILL_SOLID, XFILL_GRADIENT, XFILL_HATCH,
diff --git a/svx/inc/svx/xflgrit.hxx b/svx/inc/svx/xflgrit.hxx
index a55862f94389..3f5dd828a671 100644
--- a/svx/inc/svx/xflgrit.hxx
+++ b/svx/inc/svx/xflgrit.hxx
@@ -59,7 +59,7 @@ public:
SfxMapUnit eCoreMetric,
SfxMapUnit ePresMetric,
String &rText, const IntlWrapper * = 0 ) const;
- const XGradient& GetGradientValue(const XGradientTable* pTable = 0) const; // GetValue -> GetGradientValue
+ const XGradient& GetGradientValue(const XGradientList* pTable = 0) const; // GetValue -> GetGradientValue
void SetGradientValue(const XGradient& rNew) { aGradient = rNew; Detach(); } // SetValue -> SetGradientValue
static sal_Bool CompareValueFunc( const NameOrIndex* p1, const NameOrIndex* p2 );
diff --git a/svx/inc/svx/xflhtit.hxx b/svx/inc/svx/xflhtit.hxx
index ddf367059949..b8b3e0a05bc7 100644
--- a/svx/inc/svx/xflhtit.hxx
+++ b/svx/inc/svx/xflhtit.hxx
@@ -61,7 +61,7 @@ public:
virtual FASTBOOL HasMetrics() const;
virtual FASTBOOL ScaleMetrics(long nMul, long nDiv);
- const XHatch& GetHatchValue(const XHatchTable* pTable = 0) const; // GetValue -> GetHatchValue
+ const XHatch& GetHatchValue(const XHatchList* pTable = 0) const; // GetValue -> GetHatchValue
void SetHatchValue(const XHatch& rNew) { aHatch = rNew; Detach(); } // SetValue -> SetHatchValue
static sal_Bool CompareValueFunc( const NameOrIndex* p1, const NameOrIndex* p2 );
diff --git a/svx/inc/svx/xit.hxx b/svx/inc/svx/xit.hxx
index 67580505f21a..156c88258b72 100644
--- a/svx/inc/svx/xit.hxx
+++ b/svx/inc/svx/xit.hxx
@@ -30,12 +30,12 @@
/************************************************************************/
-class XColorTable;
-class XDashTable;
-class XLineEndTable;
-class XHatchTable;
-class XBitmapTable;
-class XGradientTable;
+class XColorList;
+class XDashList;
+class XLineEndList;
+class XHatchList;
+class XBitmapList;
+class XGradientList;
class SfxItemPool;
class NameOrIndex;
class XPropertyList;
diff --git a/svx/inc/svx/xlineit.hxx b/svx/inc/svx/xlineit.hxx
index ce58730b53ef..2491bed4aa15 100644
--- a/svx/inc/svx/xlineit.hxx
+++ b/svx/inc/svx/xlineit.hxx
@@ -32,7 +32,7 @@
#include <svl/eitem.hxx>
class XDash;
-class XDashTable;
+class XDashList;
class SvStream;
#include <svx/xdash.hxx>
diff --git a/svx/inc/svx/xlinjoit.hxx b/svx/inc/svx/xlinjoit.hxx
index 7b45dbd0fd74..0a74c2740243 100644
--- a/svx/inc/svx/xlinjoit.hxx
+++ b/svx/inc/svx/xlinjoit.hxx
@@ -27,16 +27,17 @@
#include <svl/eitem.hxx>
#include <svx/xenum.hxx>
#include "svx/svxdllapi.h"
+#include <com/sun/star/drawing/LineJoint.hpp>
//---------------------
-// class LineStyleItem
+// class XLineJointItem
//---------------------
class SVX_DLLPUBLIC XLineJointItem : public SfxEnumItem
{
public:
TYPEINFO();
- XLineJointItem( XLineJoint eLineJoint = XLINEJOINT_ROUND );
+ XLineJointItem( com::sun::star::drawing::LineJoint eLineJoint = com::sun::star::drawing::LineJoint_ROUND );
XLineJointItem( SvStream& rIn );
virtual sal_uInt16 GetVersion( sal_uInt16 nFileFormatVersion ) const;
@@ -49,8 +50,8 @@ public:
SfxMapUnit eCoreMetric, SfxMapUnit ePresMetric,
String &rText, const IntlWrapper * = 0 ) const;
- virtual sal_uInt16 GetValueCount() const;
- XLineJoint GetValue() const { return (XLineJoint) SfxEnumItem::GetValue(); }
+ virtual sal_uInt16 GetValueCount() const;
+ com::sun::star::drawing::LineJoint GetValue() const { return (com::sun::star::drawing::LineJoint) SfxEnumItem::GetValue(); }
};
#endif // _SVX_XLINJOIT_HXX
diff --git a/svx/inc/svx/xlncapit.hxx b/svx/inc/svx/xlncapit.hxx
index 1949e9fda419..bccbcaf5e8b8 100644
--- a/svx/inc/svx/xlncapit.hxx
+++ b/svx/inc/svx/xlncapit.hxx
@@ -28,7 +28,7 @@
#include <com/sun/star/drawing/LineCap.hpp>
//---------------------
-// class LineStyleItem
+// class XLineCapItem
//---------------------
class SVX_DLLPUBLIC XLineCapItem : public SfxEnumItem
diff --git a/svx/inc/svx/xlndsit.hxx b/svx/inc/svx/xlndsit.hxx
index c7d83fed2396..9ef7b5a38e99 100644
--- a/svx/inc/svx/xlndsit.hxx
+++ b/svx/inc/svx/xlndsit.hxx
@@ -65,7 +65,7 @@ public:
virtual FASTBOOL HasMetrics() const;
virtual FASTBOOL ScaleMetrics(long nMul, long nDiv);
- const XDash& GetDashValue(const XDashTable* pTable = 0) const; // GetValue -> GetDashValue
+ const XDash& GetDashValue(const XDashList* pTable = 0) const; // GetValue -> GetDashValue
void SetDashValue(const XDash& rNew) { aDash = rNew; Detach(); } // SetValue -> SetDashValue
static sal_Bool CompareValueFunc( const NameOrIndex* p1, const NameOrIndex* p2 );
diff --git a/svx/inc/svx/xlnedit.hxx b/svx/inc/svx/xlnedit.hxx
index 7b50ce8446d7..f0a62713cd31 100644
--- a/svx/inc/svx/xlnedit.hxx
+++ b/svx/inc/svx/xlnedit.hxx
@@ -59,7 +59,7 @@ public:
SfxMapUnit ePresMetric,
String &rText, const IntlWrapper * = 0 ) const;
- basegfx::B2DPolyPolygon GetLineEndValue(const XLineEndTable* pTable = 0) const;
+ basegfx::B2DPolyPolygon GetLineEndValue(const XLineEndList* pTable = 0) const;
void SetLineEndValue(const basegfx::B2DPolyPolygon& rPolyPolygon) { maPolyPolygon = rPolyPolygon; Detach(); }
XLineEndItem* checkForUniqueItem( SdrModel* pModel ) const;
diff --git a/svx/inc/svx/xlnstit.hxx b/svx/inc/svx/xlnstit.hxx
index 270b0a509c44..3ab186106fa5 100644
--- a/svx/inc/svx/xlnstit.hxx
+++ b/svx/inc/svx/xlnstit.hxx
@@ -59,7 +59,7 @@ public:
SfxMapUnit ePresMetric,
String &rText, const IntlWrapper * = 0 ) const;
- basegfx::B2DPolyPolygon GetLineStartValue(const XLineEndTable* pTable = 0) const;
+ basegfx::B2DPolyPolygon GetLineStartValue(const XLineEndList* pTable = 0) const;
void SetLineStartValue(const basegfx::B2DPolyPolygon& rPolyPolygon) { maPolyPolygon = rPolyPolygon; Detach(); }
XLineStartItem* checkForUniqueItem( SdrModel* pModel ) const;
diff --git a/svx/inc/svx/xtable.hxx b/svx/inc/svx/xtable.hxx
index 5a8a7060eed8..fc6d826b9182 100644
--- a/svx/inc/svx/xtable.hxx
+++ b/svx/inc/svx/xtable.hxx
@@ -33,19 +33,16 @@
#include <tools/color.hxx>
#include <tools/string.hxx>
#include <tools/table.hxx>
-#include "svx/svxdllapi.h"
+#include <svx/svxdllapi.h>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <svtools/grfmgr.hxx>
+#include <svx/XPropertyEntry.hxx>
class Color;
class Bitmap;
class VirtualDevice;
class XOutdevItemPool;
-// Breite und Hoehe der LB-Bitmaps
-#define BITMAP_WIDTH 32
-#define BITMAP_HEIGHT 12
-
// Standard-Vergleichsstring
extern sal_Unicode __FAR_DATA pszStandard[]; // "standard"
@@ -53,24 +50,6 @@ extern sal_Unicode __FAR_DATA pszStandard[]; // "standard"
// enum COL_NAME nicht verglichen werden kann.
SVX_DLLPUBLIC Color RGB_Color( ColorData nColorName );
-// ---------------------
-// class XPropertyEntry
-// ---------------------
-
-class XPropertyEntry
-{
-protected:
- String aName;
-
- XPropertyEntry(const String& rName) : aName(rName) {}
- XPropertyEntry(const XPropertyEntry& rOther): aName(rOther.aName) {}
-public:
-
- virtual ~XPropertyEntry() {}
- void SetName(const String& rName) { aName = rName; }
- String& GetName() { return aName; }
-};
-
// ------------------
// class XColorEntry
// ------------------
@@ -206,59 +185,6 @@ public:
}
};
-// ---------------------
-// class XPropertyTable
-// ---------------------
-
-class SVX_DLLPUBLIC XPropertyTable
-{
-protected:
- String aName; // nicht persistent !
- String aPath;
- XOutdevItemPool* pXPool;
-
- Table aTable;
- Table* pBmpTable;
-
- sal_Bool bTableDirty;
- sal_Bool bBitmapsDirty;
- sal_Bool bOwnPool;
-
- XPropertyTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- XPropertyTable( SvStream& rIn );
- void Clear();
-
-public:
- virtual ~XPropertyTable();
-
- long Count() const;
-
- sal_Bool Insert(long nIndex, XPropertyEntry* pEntry);
- XPropertyEntry* Replace(long nIndex, XPropertyEntry* pEntry);
- XPropertyEntry* Remove(long nIndex, sal_uInt16 nDummy);
- XPropertyEntry* Get( long nIndex, sal_uInt16 nDummy ) const;
-
- long Get(const String& rName);
- Bitmap* GetBitmap( long nIndex ) const;
-
- const String& GetName() const { return aName; }
- void SetName( const String& rString );
- const String& GetPath() const { return aPath; }
- void SetPath( const String& rString ) { aPath = rString; }
- sal_Bool IsDirty() const { return bTableDirty && bBitmapsDirty; }
- void SetDirty( sal_Bool bDirty = sal_True )
- { bTableDirty = bDirty; bBitmapsDirty = bDirty; }
-
- virtual sal_Bool Load() = 0;
- virtual sal_Bool Save() = 0;
- virtual sal_Bool Create() = 0;
- virtual sal_Bool CreateBitmapsForUI() = 0;
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True ) = 0;
-};
-
// --------------------
// class XPropertyList
// --------------------
@@ -266,23 +192,18 @@ public:
class SVX_DLLPUBLIC XPropertyList
{
protected:
- String aName; // nicht persistent !
- String aPath;
- XOutdevItemPool* pXPool;
-
- List aList;
- List* pBmpList;
-
- sal_Bool bListDirty;
- sal_Bool bBitmapsDirty;
- sal_Bool bOwnPool;
-
- XPropertyList( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- XPropertyList( SvStream& rIn );
+ String maName; // nicht persistent !
+ String maPath;
+ XOutdevItemPool* mpXPool;
+
+ List maList;
+
+ /// bitfield
+ bool mbListDirty : 1;
+
+ XPropertyList( const String& rPath, XOutdevItemPool* pXPool = 0 );
void Clear();
+ virtual Bitmap CreateBitmapForUI( long nIndex ) = 0;
public:
virtual ~XPropertyList();
@@ -295,63 +216,35 @@ public:
XPropertyEntry* Get( long nIndex, sal_uInt16 nDummy ) const;
long Get(const String& rName);
- Bitmap* GetBitmap( long nIndex ) const;
+ Bitmap GetUiBitmap( long nIndex ) const;
- const String& GetName() const { return aName; }
+ const String& GetName() const { return maName; }
void SetName( const String& rString );
- const String& GetPath() const { return aPath; }
- void SetPath( const String& rString ) { aPath = rString; }
- sal_Bool IsDirty() const { return bListDirty && bBitmapsDirty; }
- void SetDirty( sal_Bool bDirty = sal_True )
- { bListDirty = bDirty; bBitmapsDirty = bDirty; }
+ const String& GetPath() const { return maPath; }
+ void SetPath( const String& rString ) { maPath = rString; }
+ bool IsDirty() const { return mbListDirty; }
+ void SetDirty( bool bDirty = true ) { mbListDirty = bDirty; }
virtual sal_Bool Load() = 0;
virtual sal_Bool Save() = 0;
virtual sal_Bool Create() = 0;
- virtual sal_Bool CreateBitmapsForUI() = 0;
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True ) = 0;
-};
-
-// ------------------
-// class XColorTable
-// ------------------
-
-class SVX_DLLPUBLIC XColorTable : public XPropertyTable
-{
-public:
- XColorTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XColorTable();
-
- using XPropertyTable::Replace;
- XColorEntry* Replace(long nIndex, XColorEntry* pEntry );
- using XPropertyTable::Remove;
- XColorEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XColorEntry* GetColor(long nIndex) const;
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
-
- static XColorTable* GetStdColorTable();
+ sal_uInt32 getUiBitmapWidth() const;
+ sal_uInt32 getUiBitmapHeight() const;
+ sal_uInt32 getUiBitmapLineWidth() const;
};
// -------------------
// class XColorList
// -------------------
-class XColorList : public XPropertyList
+class SVX_DLLPUBLIC XColorList : public XPropertyList
{
+protected:
+ virtual Bitmap CreateBitmapForUI( long nIndex );
+
public:
- XColorList( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
+ XColorList( const String& rPath, XOutdevItemPool* pXPool = 0 );
virtual ~XColorList();
using XPropertyList::Replace;
@@ -364,35 +257,8 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
-};
-// --------------------
-// class XLineEndTable
-// --------------------
-
-class XLineEndTable : public XPropertyTable
-{
-public:
- XLineEndTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XLineEndTable();
-
- using XPropertyTable::Replace;
- XLineEndEntry* Replace(long nIndex, XLineEndEntry* pEntry );
- using XPropertyTable::Remove;
- XLineEndEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XLineEndEntry* GetLineEnd(long nIndex) const;
-
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
+ static XColorList* GetStdColorList();
};
// -------------------
@@ -408,8 +274,11 @@ private:
void impCreate();
void impDestroy();
+protected:
+ virtual Bitmap CreateBitmapForUI(long nIndex);
+
public:
- XLineEndList(const String& rPath, XOutdevItemPool* pXPool = 0, sal_uInt16 nInitSize = 16, sal_uInt16 nReSize = 16);
+ XLineEndList(const String& rPath, XOutdevItemPool* pXPool = 0);
virtual ~XLineEndList();
using XPropertyList::Replace;
@@ -422,35 +291,6 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI(long nIndex, sal_Bool bDelete = sal_True);
-};
-
-// --------------------
-// class XDashTable
-// --------------------
-
-class XDashTable : public XPropertyTable
-{
-public:
- XDashTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XDashTable();
-
- using XPropertyTable::Replace;
- XDashEntry* Replace(long nIndex, XDashEntry* pEntry );
- using XPropertyTable::Remove;
- XDashEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XDashEntry* GetDash(long nIndex) const;
-
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
};
// -------------------
@@ -462,12 +302,19 @@ class SVX_DLLPUBLIC XDashList : public XPropertyList
{
private:
impXDashList* mpData;
+ Bitmap maBitmapSolidLine;
+ String maStringSolidLine;
+ String maStringNoLine;
void impCreate();
void impDestroy();
+protected:
+ Bitmap ImpCreateBitmapForXDash(const XDash* pDash);
+ virtual Bitmap CreateBitmapForUI(long nIndex);
+
public:
- XDashList(const String& rPath, XOutdevItemPool* pXPool = 0, sal_uInt16 nInitSize = 16, sal_uInt16 nReSize = 16);
+ XDashList(const String& rPath, XOutdevItemPool* pXPool = 0);
virtual ~XDashList();
using XPropertyList::Replace;
@@ -480,35 +327,16 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI(long nIndex, sal_Bool bDelete = sal_True);
-};
-
-// --------------------
-// class XHatchTable
-// --------------------
-class XHatchTable : public XPropertyTable
-{
-public:
- XHatchTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XHatchTable();
-
- using XPropertyTable::Replace;
- XHatchEntry* Replace(long nIndex, XHatchEntry* pEntry );
- using XPropertyTable::Remove;
- XHatchEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XHatchEntry* GetHatch(long nIndex) const;
+ // Special call to get a bitmap for the solid line representation. It
+ // creates a bitmap fitting in size and style to the ones you get by
+ // using GetUiBitmap for existing entries.
+ Bitmap GetBitmapForUISolidLine() const;
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
+ // Special calls to get the translated strings for the UI entry for no
+ // line style (XLINE_NONE) and solid line style (XLINE_SOLID) for dialogs
+ String GetStringForUiSolidLine() const;
+ String GetStringForUiNoLine() const;
};
// -------------------
@@ -524,8 +352,11 @@ private:
void impCreate();
void impDestroy();
+protected:
+ virtual Bitmap CreateBitmapForUI(long nIndex);
+
public:
- XHatchList(const String& rPath, XOutdevItemPool* pXPool = 0, sal_uInt16 nInitSize = 16, sal_uInt16 nReSize = 16);
+ XHatchList(const String& rPath, XOutdevItemPool* pXPool = 0);
~XHatchList();
using XPropertyList::Replace;
@@ -538,35 +369,6 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI(long nIndex, sal_Bool bDelete = sal_True);
-};
-
-// ---------------------
-// class XGradientTable
-// ---------------------
-
-class XGradientTable : public XPropertyTable
-{
-public:
- XGradientTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XGradientTable();
-
- using XPropertyTable::Replace;
- XGradientEntry* Replace(long nIndex, XGradientEntry* pEntry );
- using XPropertyTable::Remove;
- XGradientEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XGradientEntry* GetGradient(long nIndex) const;
-
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
};
// -------------------
@@ -582,8 +384,11 @@ private:
void impCreate();
void impDestroy();
+protected:
+ virtual Bitmap CreateBitmapForUI(long nIndex);
+
public:
- XGradientList(const String& rPath, XOutdevItemPool* pXPool = 0, sal_uInt16 nInitSize = 16, sal_uInt16 nReSize = 16);
+ XGradientList(const String& rPath, XOutdevItemPool* pXPool = 0);
virtual ~XGradientList();
using XPropertyList::Replace;
@@ -596,35 +401,6 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI(long nIndex, sal_Bool bDelete = sal_True);
-};
-
-// ---------------------
-// class XBitmapTable
-// ---------------------
-
-class XBitmapTable : public XPropertyTable
-{
-public:
- XBitmapTable( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
- virtual ~XBitmapTable();
-
- using XPropertyTable::Replace;
- XBitmapEntry* Replace(long nIndex, XBitmapEntry* pEntry );
- using XPropertyTable::Remove;
- XBitmapEntry* Remove(long nIndex);
- using XPropertyTable::Get;
- XBitmapEntry* GetBitmap(long nIndex) const;
-
- virtual sal_Bool Load();
- virtual sal_Bool Save();
- virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
};
// -------------------
@@ -633,11 +409,11 @@ public:
class SVX_DLLPUBLIC XBitmapList : public XPropertyList
{
+protected:
+ virtual Bitmap CreateBitmapForUI( long nIndex );
+
public:
- XBitmapList( const String& rPath,
- XOutdevItemPool* pXPool = NULL,
- sal_uInt16 nInitSize = 16,
- sal_uInt16 nReSize = 16 );
+ XBitmapList( const String& rPath, XOutdevItemPool* pXPool = 0);
virtual ~XBitmapList();
using XPropertyList::Replace;
@@ -650,8 +426,8 @@ public:
virtual sal_Bool Load();
virtual sal_Bool Save();
virtual sal_Bool Create();
- virtual sal_Bool CreateBitmapsForUI();
- virtual Bitmap* CreateBitmapForUI( long nIndex, sal_Bool bDelete = sal_True );
};
#endif // _XTABLE_HXX
+
+// eof