[Libreoffice-commits] .: svtools/source

Joseph Powers jpowers at kemper.freedesktop.org
Fri Jul 15 05:43:45 PDT 2011


 svtools/source/contnr/imivctl.hxx  |  997 ++++++++++++++++++++-----------------
 svtools/source/contnr/imivctl1.cxx |  195 +++----
 svtools/source/contnr/imivctl2.cxx |   38 -
 3 files changed, 662 insertions(+), 568 deletions(-)

New commits:
commit 593060f913a253b5a1998c7791e7ed87e7f49c97
Author: Joseph Powers <jpowers27 at cox.net>
Date:   Fri Jul 15 05:41:00 2011 -0700

    Replace List with std::vector< SvxIconChoiceCtrlEntry* >

diff --git a/svtools/source/contnr/imivctl.hxx b/svtools/source/contnr/imivctl.hxx
index a2646b5..ced1856 100644
--- a/svtools/source/contnr/imivctl.hxx
+++ b/svtools/source/contnr/imivctl.hxx
@@ -2,7 +2,7 @@
 /*************************************************************************
  *
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- * 
+ *
  * Copyright 2000, 2010 Oracle and/or its affiliates.
  *
  * OpenOffice.org - a multi-platform office productivity suite
@@ -51,42 +51,42 @@ class IcnGridMap_Impl;
 //
 // some defines
 //
-#define PAINTFLAG_HOR_CENTERED	0x0001
-#define PAINTFLAG_VER_CENTERED	0x0002
-
-#define F_VER_SBARSIZE_WITH_HBAR		0x0001
-#define F_HOR_SBARSIZE_WITH_VBAR		0x0002
-#define F_PAINTED						0x0004	// sal_True nach erstem Paint
-#define F_ADD_MODE						0x0008
-#define F_SELECTING_RECT				0x0020
-#define F_DOWN_CTRL						0x0080
-#define F_DOWN_DESELECT					0x0100
-#define F_START_EDITTIMER_IN_MOUSEUP	0x0400
-#define F_MOVED_ENTRIES					0x0800
-#define F_ENTRYLISTPOS_VALID			0x1000
-#define F_CLEARING_SELECTION			0x2000
-#define F_ARRANGING						0x4000
+#define PAINTFLAG_HOR_CENTERED  0x0001
+#define PAINTFLAG_VER_CENTERED  0x0002
+
+#define F_VER_SBARSIZE_WITH_HBAR        0x0001
+#define F_HOR_SBARSIZE_WITH_VBAR        0x0002
+#define F_PAINTED                       0x0004  // sal_True nach erstem Paint
+#define F_ADD_MODE                      0x0008
+#define F_SELECTING_RECT                0x0020
+#define F_DOWN_CTRL                     0x0080
+#define F_DOWN_DESELECT                 0x0100
+#define F_START_EDITTIMER_IN_MOUSEUP    0x0400
+#define F_MOVED_ENTRIES                 0x0800
+#define F_ENTRYLISTPOS_VALID            0x1000
+#define F_CLEARING_SELECTION            0x2000
+#define F_ARRANGING                     0x4000
 
 // alle Angaben in Pixel
 // Abstaende von Fensterraendern
-#define LROFFS_WINBORDER			4
-#define TBOFFS_WINBORDER			4
+#define LROFFS_WINBORDER            4
+#define TBOFFS_WINBORDER            4
 // fuer das Bounding-Rectangle
-#define LROFFS_BOUND				2
-#define TBOFFS_BOUND				2
+#define LROFFS_BOUND                2
+#define TBOFFS_BOUND                2
 // Abstand Fokusrechteck - Icon
-#define LROFFS_ICON					2
-#define TBOFFS_ICON					2
+#define LROFFS_ICON                 2
+#define TBOFFS_ICON                 2
 // Abstaende Icon - Text
-#define HOR_DIST_BMP_STRING			3
-#define VER_DIST_BMP_STRING			3
+#define HOR_DIST_BMP_STRING         3
+#define VER_DIST_BMP_STRING         3
 // Breitenoffset Highlight-Rect bei Text
-#define LROFFS_TEXT					2
+#define LROFFS_TEXT                 2
 
-#define DEFAULT_MAX_VIRT_WIDTH	200
-#define DEFAULT_MAX_VIRT_HEIGHT	200
+#define DEFAULT_MAX_VIRT_WIDTH      200
+#define DEFAULT_MAX_VIRT_HEIGHT     200
 
-#define VIEWMODE_MASK	(WB_ICON | WB_SMALLICON | WB_DETAILS)
+#define VIEWMODE_MASK   (WB_ICON | WB_SMALLICON | WB_DETAILS)
 
 ///////////////////////////////////////////////////////////////////////////////
 //
@@ -105,9 +105,9 @@ enum IcnViewFieldType
 //
 struct LocalFocus
 {
-    sal_Bool		bOn;
-    Rectangle	aRect;
-    Color		aPenColor;
+    sal_Bool    bOn;
+    Rectangle   aRect;
+    Color       aPenColor;
 
     LocalFocus() { bOn = sal_False; }
 };
@@ -116,32 +116,47 @@ struct LocalFocus
 //
 // Entry-List
 //
-class EntryList_Impl : public List
+typedef ::std::vector< SvxIconChoiceCtrlEntry* > SvxIconChoiceCtrlEntryList_impl;
+
+class EntryList_Impl
 {
 private:
+    SvxIconChoiceCtrlEntryList_impl maIconChoiceCtrlEntryList;
+    SvxIconChoiceCtrl_Impl*         _pOwner;
 
-    using List::Replace;
-
-    SvxIconChoiceCtrl_Impl*			_pOwner;
-
-    void 					Removed_Impl( SvxIconChoiceCtrlEntry* pEntry );
+    void                    Removed_Impl( SvxIconChoiceCtrlEntry* pEntry );
 
 public:
-                            EntryList_Impl(
-                                SvxIconChoiceCtrl_Impl*,
-                                sal_uInt16 _nInitSize = 1024,
-                                sal_uInt16 _nReSize = 1024 );
-                            EntryList_Impl(
-                                SvxIconChoiceCtrl_Impl*,
-                                sal_uInt16 _nBlockSize,
-                                sal_uInt16 _nInitSize,
-                                sal_uInt16 _nReSize );
+                            EntryList_Impl( SvxIconChoiceCtrl_Impl* );
                             ~EntryList_Impl();
 
-    void 					Clear();
-    void 					Insert( SvxIconChoiceCtrlEntry* pEntry, sal_uLong nPos );
-    SvxIconChoiceCtrlEntry*			Remove( sal_uLong nPos );
-    void					Remove( SvxIconChoiceCtrlEntry* pEntry );
+    void                    clear();
+
+    SvxIconChoiceCtrlEntry* remove( size_t nPos );
+    void                    remove( SvxIconChoiceCtrlEntry* pEntry );
+
+    size_t                  size()
+                            {
+                                return maIconChoiceCtrlEntryList.size();
+                            }
+    size_t                  size() const
+                            {
+                                return maIconChoiceCtrlEntryList.size();
+                            }
+
+    SvxIconChoiceCtrlEntry* operator[]( size_t nPos )
+                            {
+                                return  ( nPos < maIconChoiceCtrlEntryList.size() )
+                                        ? maIconChoiceCtrlEntryList[ nPos ]
+                                        : NULL;
+                            }
+    SvxIconChoiceCtrlEntry* operator[]( size_t nPos ) const
+                            {
+                                return  ( nPos < maIconChoiceCtrlEntryList.size() )
+                                        ? maIconChoiceCtrlEntryList[ nPos ]
+                                        : NULL;
+                            }
+    void                    insert( size_t nPos, SvxIconChoiceCtrlEntry* pEntry );
 };
 
 
@@ -155,417 +170,490 @@ class SvxIconChoiceCtrl_Impl
     friend class EntryList_Impl;
     friend class IcnGridMap_Impl;
 
-    sal_Bool			bChooseWithCursor;
-    EntryList_Impl	aEntries;
-    ScrollBar   	aVerSBar;
-    ScrollBar   	aHorSBar;
-    ScrollBarBox	aScrBarBox;
-    Rectangle		aCurSelectionRect;
-    SvPtrarr		aSelectedRectList;
-    Timer			aEditTimer;  				// fuer Inplace-Editieren
-    Timer			aAutoArrangeTimer;
-    Timer			aDocRectChangedTimer;
-    Timer			aVisRectChangedTimer;
-    Timer			aCallSelectHdlTimer;
-    Size			aVirtOutputSize;
-    Size			aImageSize;
-    Size			aDefaultTextSize;
-    Size			aOutputSize; // Pixel
-    Point			aDDLastEntryPos;
-    Point			aDDLastRectPos;
-    Point 			aDDPaintOffs;
-    Point			aDDStartPos;
-    SvtIconChoiceCtrl*		pView;
-    IcnCursor_Impl*	pImpCursor;
-    IcnGridMap_Impl* pGridMap;
-    long			nMaxVirtWidth;	// max. Breite aVirtOutputSize bei ALIGN_TOP
-    long			nMaxVirtHeight; // max. Hoehe aVirtOutputSize bei ALIGN_LEFT
-    List*			pZOrderList;
-    SvPtrarr*		pColumns;
-    IcnViewEdit_Impl* pEdit;
-    WinBits			nWinBits;
-    long			nMaxBoundHeight; 			// Hoehe des hoechsten BoundRects
-    sal_uInt16			nFlags;
-    sal_uInt16			nCurTextDrawFlags;
-    sal_uLong			nUserEventAdjustScrBars;
-    sal_uLong			nUserEventShowCursor;
-    SvxIconChoiceCtrlEntry*	pCurHighlightFrame;
-    sal_Bool			bHighlightFramePressed;
-    SvxIconChoiceCtrlEntry*	pHead;						// Eintrag oben links
+    sal_Bool                bChooseWithCursor;
+    EntryList_Impl          aEntries;
+    ScrollBar               aVerSBar;
+    ScrollBar               aHorSBar;
+    ScrollBarBox            aScrBarBox;
+    Rectangle               aCurSelectionRect;
+    SvPtrarr                aSelectedRectList;
+    Timer                   aEditTimer;                 // fuer Inplace-Editieren
+    Timer                   aAutoArrangeTimer;
+    Timer                   aDocRectChangedTimer;
+    Timer                   aVisRectChangedTimer;
+    Timer                   aCallSelectHdlTimer;
+    Size                    aVirtOutputSize;
+    Size                    aImageSize;
+    Size                    aDefaultTextSize;
+    Size                    aOutputSize; // Pixel
+    Point                   aDDLastEntryPos;
+    Point                   aDDLastRectPos;
+    Point                   aDDPaintOffs;
+    Point                   aDDStartPos;
+    SvtIconChoiceCtrl*      pView;
+    IcnCursor_Impl*         pImpCursor;
+    IcnGridMap_Impl*        pGridMap;
+    long                    nMaxVirtWidth;  // max. Breite aVirtOutputSize bei ALIGN_TOP
+    long                    nMaxVirtHeight; // max. Hoehe aVirtOutputSize bei ALIGN_LEFT
+    List*                   pZOrderList;
+    SvPtrarr*               pColumns;
+    IcnViewEdit_Impl*       pEdit;
+    WinBits                 nWinBits;
+    long                    nMaxBoundHeight;            // Hoehe des hoechsten BoundRects
+    sal_uInt16              nFlags;
+    sal_uInt16              nCurTextDrawFlags;
+    sal_uLong               nUserEventAdjustScrBars;
+    sal_uLong               nUserEventShowCursor;
+    SvxIconChoiceCtrlEntry* pCurHighlightFrame;
+    sal_Bool                bHighlightFramePressed;
+    SvxIconChoiceCtrlEntry* pHead;                      // Eintrag oben links
     SvxIconChoiceCtrlEntry* pCursor;
-    SvxIconChoiceCtrlEntry*	pPrevDropTarget;
-    SvxIconChoiceCtrlEntry*	pHdlEntry;
-    SvxIconChoiceCtrlEntry*	pDDRefEntry;
-    VirtualDevice*	pDDDev;
-    VirtualDevice*	pDDBufDev;
-    VirtualDevice*  pDDTempDev;
-    VirtualDevice*	pEntryPaintDev;
-    SvxIconChoiceCtrlEntry* pAnchor;					// fuer Selektion
-    LocalFocus		aFocus;								// Data for focusrect
+    SvxIconChoiceCtrlEntry* pPrevDropTarget;
+    SvxIconChoiceCtrlEntry* pHdlEntry;
+    SvxIconChoiceCtrlEntry* pDDRefEntry;
+    VirtualDevice*          pDDDev;
+    VirtualDevice*          pDDBufDev;
+    VirtualDevice*          pDDTempDev;
+    VirtualDevice*          pEntryPaintDev;
+    SvxIconChoiceCtrlEntry* pAnchor;                    // fuer Selektion
+    LocalFocus              aFocus;                             // Data for focusrect
     ::svt::AccessibleFactoryAccess aAccFactory;
 
-    List*			pDraggedSelection;
-    SvxIconChoiceCtrlEntry*	pCurEditedEntry;
+    List*                   pDraggedSelection;
+    SvxIconChoiceCtrlEntry* pCurEditedEntry;
     SvxIconChoiceCtrlTextMode eTextMode;
-    SelectionMode	eSelectionMode;
-    sal_uLong			nSelectionCount;
+    SelectionMode           eSelectionMode;
+    sal_uLong               nSelectionCount;
     SvxIconChoiceCtrlPositionMode ePositionMode;
-    sal_Bool			bBoundRectsDirty;
-    sal_Bool			bUpdateMode;
-    sal_Bool			bEntryEditingEnabled;
-    sal_Bool			bInDragDrop;
-
-    void 			ShowCursor( sal_Bool bShow );
-
-    void			ImpArrange( sal_Bool bKeepPredecessors = sal_False );
-    void			AdjustVirtSize( const Rectangle& );
-    void			ResetVirtSize();
-    void			CheckScrollBars();
-
-                    DECL_LINK( ScrollUpDownHdl, ScrollBar * );
-                    DECL_LINK( ScrollLeftRightHdl, ScrollBar * );
-                    DECL_LINK( EditTimeoutHdl, Timer* );
-                    DECL_LINK( UserEventHdl, void* );
-                    DECL_LINK( EndScrollHdl, void* );
-                    DECL_LINK( AutoArrangeHdl, void* );
-                    DECL_LINK( DocRectChangedHdl, void* );
-                    DECL_LINK( VisRectChangedHdl, void* );
-                    DECL_LINK( CallSelectHdlHdl, void* );
-
-    void			AdjustScrollBars( sal_Bool bVirtSizeGrowedOnly = sal_False);
-    void			PositionScrollBars( long nRealWidth, long nRealHeight );
-    long			GetScrollBarPageSize( long nVisibleRange ) const { return ((nVisibleRange*75)/100); }
-    long			GetScrollBarLineSize() const { return nMaxBoundHeight / 2; }
-    sal_Bool 			HandleScrollCommand( const CommandEvent& rCmd );
-    void			ToDocPos( Point& rPosPixel ) { rPosPixel -= pView->GetMapMode().GetOrigin(); }
-    void			InitScrollBarBox();
-    SvxIconChoiceCtrlEntry*	FindNewCursor();
-    void			ToggleSelection( SvxIconChoiceCtrlEntry* );
-    void			DeselectAllBut( SvxIconChoiceCtrlEntry*, sal_Bool bPaintSync=sal_False );
-    void			Center( SvxIconChoiceCtrlEntry* pEntry ) const;
-    void			StopEditTimer() { aEditTimer.Stop(); }
-    void			StartEditTimer() { aEditTimer.Start(); }
-    void 			ImpHideDDIcon();
-    void			CallSelectHandler( SvxIconChoiceCtrlEntry* );
-    void			SelectRect(
-                        SvxIconChoiceCtrlEntry* pEntry1,
-                        SvxIconChoiceCtrlEntry* pEntry2,
-                        sal_Bool bAdd = sal_True,
-                        SvPtrarr* pOtherRects = 0 );
-
-    void			SelectRange(
-                        SvxIconChoiceCtrlEntry* pStart,
-                        SvxIconChoiceCtrlEntry* pEnd,
-                        sal_Bool bAdd = sal_True );
-
-    void			AddSelectedRect( const Rectangle& );
-    void			AddSelectedRect(
-                        SvxIconChoiceCtrlEntry* pEntry1,
-                        SvxIconChoiceCtrlEntry* pEntry2 );
-
-    void			ClearSelectedRectList();
-    void			ClearColumnList();
-    Rectangle		CalcMaxTextRect( const SvxIconChoiceCtrlEntry* pEntry ) const;
-
-    void			ClipAtVirtOutRect( Rectangle& rRect ) const;
-    void 			AdjustAtGrid( const SvPtrarr& rRow, SvxIconChoiceCtrlEntry* pStart=0 );
-    Point			AdjustAtGrid(
-                        const Rectangle& rCenterRect, // "Schwerpunkt" des Objekts (typ. Bmp-Rect)
-                        const Rectangle& rBoundRect ) const;
-    sal_uLong			GetPredecessorGrid( const Point& rDocPos) const;
-
-    void			InitPredecessors();
-    void			ClearPredecessors();
-
-    sal_Bool			CheckVerScrollBar();
-    sal_Bool			CheckHorScrollBar();
-    void 			CancelUserEvents();
-    void			EntrySelected( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bSelect,
-                        sal_Bool bSyncPaint );
-    void			SaveSelection( List** );
-    void			RepaintEntries( sal_uInt16 nEntryFlagsMask );
-    void			SetListPositions();
-    void			SetDefaultTextSize();
-    sal_Bool			IsAutoArrange() const {
-                        return (sal_Bool)(ePositionMode == IcnViewPositionModeAutoArrange); }
-    sal_Bool			IsAutoAdjust() const {
-                        return (sal_Bool)(ePositionMode == IcnViewPositionModeAutoAdjust); }
-    void			DocRectChanged() { aDocRectChangedTimer.Start(); }
-    void			VisRectChanged() { aVisRectChangedTimer.Start(); }
-    void			SetOrigin( const Point&, sal_Bool bDoNotUpdateWallpaper = sal_False );
-
-                    DECL_LINK( TextEditEndedHdl, IcnViewEdit_Impl* );
-
-    void ShowFocus ( Rectangle& rRect );
-    void HideFocus ();
-    void DrawFocusRect ( OutputDevice* pOut );
-
-    sal_Bool			IsMnemonicChar( sal_Unicode cChar, sal_uLong& rPos ) const;
+    sal_Bool                bBoundRectsDirty;
+    sal_Bool                bUpdateMode;
+    sal_Bool                bEntryEditingEnabled;
+    sal_Bool                bInDragDrop;
+
+    void                ShowCursor( sal_Bool bShow );
+
+    void                ImpArrange( sal_Bool bKeepPredecessors = sal_False );
+    void                AdjustVirtSize( const Rectangle& );
+    void                ResetVirtSize();
+    void                CheckScrollBars();
+
+                        DECL_LINK( ScrollUpDownHdl, ScrollBar * );
+                        DECL_LINK( ScrollLeftRightHdl, ScrollBar * );
+                        DECL_LINK( EditTimeoutHdl, Timer* );
+                        DECL_LINK( UserEventHdl, void* );
+                        DECL_LINK( EndScrollHdl, void* );
+                        DECL_LINK( AutoArrangeHdl, void* );
+                        DECL_LINK( DocRectChangedHdl, void* );
+                        DECL_LINK( VisRectChangedHdl, void* );
+                        DECL_LINK( CallSelectHdlHdl, void* );
+
+    void                AdjustScrollBars( sal_Bool bVirtSizeGrowedOnly = sal_False);
+    void                PositionScrollBars( long nRealWidth, long nRealHeight );
+    long                GetScrollBarPageSize( long nVisibleRange ) const
+                        {
+                            return ((nVisibleRange*75)/100);
+                        }
+    long                GetScrollBarLineSize() const
+                        {
+                            return nMaxBoundHeight / 2;
+                        }
+    sal_Bool            HandleScrollCommand( const CommandEvent& rCmd );
+    void                ToDocPos( Point& rPosPixel )
+                        {
+                            rPosPixel -= pView->GetMapMode().GetOrigin();
+                        }
+    void                InitScrollBarBox();
+    SvxIconChoiceCtrlEntry* FindNewCursor();
+    void                ToggleSelection( SvxIconChoiceCtrlEntry* );
+    void                DeselectAllBut( SvxIconChoiceCtrlEntry*, sal_Bool bPaintSync=sal_False );
+    void                Center( SvxIconChoiceCtrlEntry* pEntry ) const;
+    void                StopEditTimer() { aEditTimer.Stop(); }
+    void                StartEditTimer() { aEditTimer.Start(); }
+    void                ImpHideDDIcon();
+    void                CallSelectHandler( SvxIconChoiceCtrlEntry* );
+    void                SelectRect(
+                            SvxIconChoiceCtrlEntry* pEntry1,
+                            SvxIconChoiceCtrlEntry* pEntry2,
+                            sal_Bool bAdd = sal_True,
+                            SvPtrarr* pOtherRects = 0
+                        );
+
+    void                SelectRange(
+                            SvxIconChoiceCtrlEntry* pStart,
+                            SvxIconChoiceCtrlEntry* pEnd,
+                            sal_Bool bAdd = sal_True
+                        );
+
+    void                AddSelectedRect( const Rectangle& );
+    void                AddSelectedRect(
+                            SvxIconChoiceCtrlEntry* pEntry1,
+                            SvxIconChoiceCtrlEntry* pEntry2
+                        );
+
+    void                ClearSelectedRectList();
+    void                ClearColumnList();
+    Rectangle           CalcMaxTextRect( const SvxIconChoiceCtrlEntry* pEntry ) const;
+
+    void                ClipAtVirtOutRect( Rectangle& rRect ) const;
+    void                AdjustAtGrid( const SvPtrarr& rRow, SvxIconChoiceCtrlEntry* pStart=0 );
+    Point               AdjustAtGrid(
+                            const Rectangle& rCenterRect, // "Schwerpunkt" des Objekts (typ. Bmp-Rect)
+                            const Rectangle& rBoundRect
+                        ) const;
+    sal_uLong           GetPredecessorGrid( const Point& rDocPos) const;
+
+    void                InitPredecessors();
+    void                ClearPredecessors();
+
+    sal_Bool            CheckVerScrollBar();
+    sal_Bool            CheckHorScrollBar();
+    void                CancelUserEvents();
+    void                EntrySelected(
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            sal_Bool bSelect,
+                            sal_Bool bSyncPaint
+                        );
+    void                SaveSelection( List** );
+    void                RepaintEntries( sal_uInt16 nEntryFlagsMask );
+    void                SetListPositions();
+    void                SetDefaultTextSize();
+    sal_Bool            IsAutoArrange() const
+                        {
+                            return (sal_Bool)(ePositionMode == IcnViewPositionModeAutoArrange);
+                        }
+    sal_Bool            IsAutoAdjust() const
+                        {
+                            return (sal_Bool)(ePositionMode == IcnViewPositionModeAutoAdjust);
+                        }
+    void                DocRectChanged() { aDocRectChangedTimer.Start(); }
+    void                VisRectChanged() { aVisRectChangedTimer.Start(); }
+    void                SetOrigin( const Point&, sal_Bool bDoNotUpdateWallpaper = sal_False );
+
+                        DECL_LINK( TextEditEndedHdl, IcnViewEdit_Impl* );
+
+    void                ShowFocus ( Rectangle& rRect );
+    void                HideFocus ();
+    void                DrawFocusRect ( OutputDevice* pOut );
+
+    sal_Bool            IsMnemonicChar( sal_Unicode cChar, sal_uLong& rPos ) const;
 
 public:
 
-    long			nGridDX,
-                    nGridDY;
-    long			nHorSBarHeight,
-                    nVerSBarWidth;
-
-                    SvxIconChoiceCtrl_Impl( SvtIconChoiceCtrl* pView, WinBits nWinStyle );
-                    ~SvxIconChoiceCtrl_Impl();
-
-    sal_Bool			SetChoiceWithCursor ( sal_Bool bDo = sal_True ) { sal_Bool bOld=bChooseWithCursor; bChooseWithCursor = bDo; return bOld; }
-    void 			Clear( sal_Bool bInCtor = sal_False );
-    void 			SetStyle( WinBits nWinStyle );
-    WinBits			GetStyle() const { return nWinBits; }
-    void 			InsertEntry( SvxIconChoiceCtrlEntry*, sal_uLong nPos, const Point* pPos=0 );
-    void			CreateAutoMnemonics( MnemonicGenerator* _pGenerator = NULL );
-    void 			RemoveEntry( SvxIconChoiceCtrlEntry* pEntry );
-    void 			FontModified();
-    void			SelectAll( sal_Bool bSelect = sal_True, sal_Bool bPaint = sal_True );
-    void 			SelectEntry(
-                        SvxIconChoiceCtrlEntry*,
-                        sal_Bool bSelect,
-                        sal_Bool bCallHdl = sal_True,
-                        sal_Bool bAddToSelection = sal_False,
-                        sal_Bool bSyncPaint = sal_False );
-    void 			Paint( const Rectangle& rRect );
-    sal_Bool 			MouseButtonDown( const MouseEvent& );
-    sal_Bool 			MouseButtonUp( const MouseEvent& );
-    sal_Bool 			MouseMove( const MouseEvent&);
-    sal_Bool 			RequestHelp( const HelpEvent& rHEvt );
-    void 			SetCursor_Impl(
-                        SvxIconChoiceCtrlEntry* pOldCursor,
-                        SvxIconChoiceCtrlEntry* pNewCursor,
-                        sal_Bool bMod1,
-                        sal_Bool bShift,
-                        sal_Bool bPaintSync = sal_False);
-    sal_Bool 			KeyInput( const KeyEvent& );
-    void 			Resize();
-    void 			GetFocus();
-    void 			LoseFocus();
-    void 			SetUpdateMode( sal_Bool bUpdate );
-    sal_Bool			GetUpdateMode() const { return bUpdateMode; }
-    void 			PaintEntry( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bIsBackgroundPainted=sal_False );
-    void 			PaintEntry(
-                        SvxIconChoiceCtrlEntry*,
-                        const Point&,
-                        OutputDevice* pOut = 0,
-                        sal_Bool bIsBackgroundPainted = sal_False);
-    void 			PaintEntryVirtOutDev( SvxIconChoiceCtrlEntry* );
-
-    void 			SetEntryPos(
-                        SvxIconChoiceCtrlEntry* pEntry,
-                        const Point& rPos,
-                        sal_Bool bAdjustRow = sal_False,
-                        sal_Bool bCheckScrollBars = sal_False,
-                        sal_Bool bKeepGridMap = sal_False );
-
-    void 			InvalidateEntry( SvxIconChoiceCtrlEntry* );
-    IcnViewFieldType 	GetItem( SvxIconChoiceCtrlEntry*, const Point& rAbsPos );
-
-    void 			SetNoSelection();
+    long                nGridDX;
+    long                nGridDY;
+    long                nHorSBarHeight;
+    long                nVerSBarWidth;
+
+                        SvxIconChoiceCtrl_Impl( SvtIconChoiceCtrl* pView, WinBits nWinStyle );
+                        ~SvxIconChoiceCtrl_Impl();
+
+    sal_Bool            SetChoiceWithCursor ( sal_Bool bDo = sal_True ) { sal_Bool bOld=bChooseWithCursor; bChooseWithCursor = bDo; return bOld; }
+    void                Clear( sal_Bool bInCtor = sal_False );
+    void                SetStyle( WinBits nWinStyle );
+    WinBits             GetStyle() const { return nWinBits; }
+    void                InsertEntry( SvxIconChoiceCtrlEntry*, sal_uLong nPos, const Point* pPos=0 );
+    void                CreateAutoMnemonics( MnemonicGenerator* _pGenerator = NULL );
+    void                RemoveEntry( SvxIconChoiceCtrlEntry* pEntry );
+    void                FontModified();
+    void                SelectAll( sal_Bool bSelect = sal_True, sal_Bool bPaint = sal_True );
+    void                SelectEntry(
+                            SvxIconChoiceCtrlEntry*,
+                            sal_Bool bSelect,
+                            sal_Bool bCallHdl = sal_True,
+                            sal_Bool bAddToSelection = sal_False,
+                            sal_Bool bSyncPaint = sal_False
+                        );
+    void                Paint( const Rectangle& rRect );
+    sal_Bool            MouseButtonDown( const MouseEvent& );
+    sal_Bool            MouseButtonUp( const MouseEvent& );
+    sal_Bool            MouseMove( const MouseEvent&);
+    sal_Bool            RequestHelp( const HelpEvent& rHEvt );
+    void                SetCursor_Impl(
+                            SvxIconChoiceCtrlEntry* pOldCursor,
+                            SvxIconChoiceCtrlEntry* pNewCursor,
+                            sal_Bool bMod1,
+                            sal_Bool bShift,
+                            sal_Bool bPaintSync = sal_False
+                        );
+    sal_Bool            KeyInput( const KeyEvent& );
+    void                Resize();
+    void                GetFocus();
+    void                LoseFocus();
+    void                SetUpdateMode( sal_Bool bUpdate );
+    sal_Bool            GetUpdateMode() const { return bUpdateMode; }
+    void                PaintEntry(
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            sal_Bool bIsBackgroundPainted=sal_False
+                        );
+    void                PaintEntry(
+                            SvxIconChoiceCtrlEntry*,
+                            const Point&,
+                            OutputDevice* pOut = 0,
+                            sal_Bool bIsBackgroundPainted = sal_False
+                        );
+    void                PaintEntryVirtOutDev( SvxIconChoiceCtrlEntry* );
+
+    void                SetEntryPos(
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            const Point& rPos,
+                            sal_Bool bAdjustRow = sal_False,
+                            sal_Bool bCheckScrollBars = sal_False,
+                            sal_Bool bKeepGridMap = sal_False
+                        );
+
+    void                InvalidateEntry( SvxIconChoiceCtrlEntry* );
+    IcnViewFieldType    GetItem( SvxIconChoiceCtrlEntry*, const Point& rAbsPos );
+
+    void                SetNoSelection();
 
     SvxIconChoiceCtrlEntry* GetCurEntry() const { return pCursor; }
-    void 			SetCursor(
-                        SvxIconChoiceCtrlEntry*,
-                        // sal_True == bei Single-Selection die Sel. mitfuehren
-                        sal_Bool bSyncSingleSelection = sal_True,
-                        sal_Bool bShowFocusAsync = sal_False );
+    void                SetCursor(
+                            SvxIconChoiceCtrlEntry*,
+                            // sal_True == bei Single-Selection die Sel. mitfuehren
+                            sal_Bool bSyncSingleSelection = sal_True,
+                            sal_Bool bShowFocusAsync = sal_False
+                        );
 
     SvxIconChoiceCtrlEntry* GetEntry( const Point& rDocPos, sal_Bool bHit = sal_False );
-    SvxIconChoiceCtrlEntry*	GetNextEntry( const Point& rDocPos, SvxIconChoiceCtrlEntry* pCurEntry );
-    SvxIconChoiceCtrlEntry*	GetPrevEntry( const Point& rDocPos, SvxIconChoiceCtrlEntry* pCurEntry  );
-
-    Point 			GetEntryPos( SvxIconChoiceCtrlEntry* );
-    void 			MakeEntryVisible( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bBound = sal_True );
-
-    void			Arrange(sal_Bool bKeepPredecessors = sal_False, long nSetMaxVirtWidth =0, long nSetMaxVirtHeight =0 );
-
-    Rectangle		CalcFocusRect( SvxIconChoiceCtrlEntry* );
-    Rectangle		CalcBmpRect( SvxIconChoiceCtrlEntry*, const Point* pPos = 0 );
-    Rectangle		CalcTextRect(
-                        SvxIconChoiceCtrlEntry*,
-                        const Point* pPos = 0,
-                        sal_Bool bForInplaceEdit = sal_False,
-                        const String* pStr = 0 );
-
-    long			CalcBoundingWidth( SvxIconChoiceCtrlEntry* ) const;
-    long			CalcBoundingHeight( SvxIconChoiceCtrlEntry* ) const;
-    Size			CalcBoundingSize( SvxIconChoiceCtrlEntry* ) const;
-    void			FindBoundingRect( SvxIconChoiceCtrlEntry* pEntry );
-    void 			SetBoundingRect_Impl(
-                        SvxIconChoiceCtrlEntry* pEntry,
-                        const Point& rPos,
-                        const Size& rBoundingSize );
+    SvxIconChoiceCtrlEntry* GetNextEntry( const Point& rDocPos, SvxIconChoiceCtrlEntry* pCurEntry );
+    SvxIconChoiceCtrlEntry* GetPrevEntry( const Point& rDocPos, SvxIconChoiceCtrlEntry* pCurEntry  );
+
+    Point               GetEntryPos( SvxIconChoiceCtrlEntry* );
+    void                MakeEntryVisible( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bBound = sal_True );
+
+    void                Arrange(
+                            sal_Bool bKeepPredecessors = sal_False,
+                            long nSetMaxVirtWidth =0,
+                            long nSetMaxVirtHeight =0
+                        );
+
+    Rectangle           CalcFocusRect( SvxIconChoiceCtrlEntry* );
+    Rectangle           CalcBmpRect( SvxIconChoiceCtrlEntry*, const Point* pPos = 0 );
+    Rectangle           CalcTextRect(
+                            SvxIconChoiceCtrlEntry*,
+                            const Point* pPos = 0,
+                            sal_Bool bForInplaceEdit = sal_False,
+                            const String* pStr = 0
+                        );
+
+    long                CalcBoundingWidth( SvxIconChoiceCtrlEntry* ) const;
+    long                CalcBoundingHeight( SvxIconChoiceCtrlEntry* ) const;
+    Size                CalcBoundingSize( SvxIconChoiceCtrlEntry* ) const;
+    void                FindBoundingRect( SvxIconChoiceCtrlEntry* pEntry );
+    void                SetBoundingRect_Impl(
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            const Point& rPos,
+                            const Size& rBoundingSize
+                        );
     // berechnet alle BoundRects neu
-    void			RecalcAllBoundingRects();
+    void                RecalcAllBoundingRects();
     // berechnet alle ungueltigen BoundRects neu
-    void			RecalcAllBoundingRectsSmart();
-    const Rectangle&  GetEntryBoundRect( SvxIconChoiceCtrlEntry* );
-    void			InvalidateBoundingRect( SvxIconChoiceCtrlEntry* );
-    void			InvalidateBoundingRect( Rectangle& rRect ) { rRect.Right() = LONG_MAX; bBoundRectsDirty = sal_True; }
-    sal_Bool			IsBoundingRectValid( const Rectangle& rRect ) const { return (sal_Bool)( rRect.Right() != LONG_MAX ); }
-
-    void 			PaintEmphasis(
-                        const Rectangle& rRect1,
-                        const Rectangle& rRect2,
-                        sal_Bool bSelected,
-                        sal_Bool bDropTarget,
-                        sal_Bool bCursored,
-                        OutputDevice* pOut,
-                        sal_Bool bIsBackgroundPainted = sal_False);
-
-    void 			PaintItem(
-                        const Rectangle& rRect,
-                        IcnViewFieldType eItem,
-                        SvxIconChoiceCtrlEntry* pEntry,
-                        sal_uInt16 nPaintFlags,
-                        OutputDevice* pOut,
-                        const String* pStr = 0,
-                        ::vcl::ControlLayoutData* _pLayoutData = NULL );
+    void                RecalcAllBoundingRectsSmart();
+    const Rectangle&    GetEntryBoundRect( SvxIconChoiceCtrlEntry* );
+    void                InvalidateBoundingRect( SvxIconChoiceCtrlEntry* );
+    void                InvalidateBoundingRect( Rectangle& rRect ) { rRect.Right() = LONG_MAX; bBoundRectsDirty = sal_True; }
+    sal_Bool            IsBoundingRectValid( const Rectangle& rRect ) const { return (sal_Bool)( rRect.Right() != LONG_MAX ); }
+
+    void                PaintEmphasis(
+                            const Rectangle& rRect1,
+                            const Rectangle& rRect2,
+                            sal_Bool bSelected,
+                            sal_Bool bDropTarget,
+                            sal_Bool bCursored,
+                            OutputDevice* pOut,
+                            sal_Bool bIsBackgroundPainted = sal_False
+                        );
+
+    void                PaintItem(
+                            const Rectangle& rRect,
+                            IcnViewFieldType eItem,
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            sal_uInt16 nPaintFlags,
+                            OutputDevice* pOut,
+                            const String* pStr = 0,
+                            ::vcl::ControlLayoutData* _pLayoutData = NULL
+                        );
 
     // berechnet alle BoundingRects neu, wenn bMustRecalcBoundingRects == sal_True
-    void			CheckBoundingRects() { if (bBoundRectsDirty) RecalcAllBoundingRectsSmart(); }
+    void                CheckBoundingRects() { if (bBoundRectsDirty) RecalcAllBoundingRectsSmart(); }
     // berechnet alle invalidierten BoundingRects neu
-    void			UpdateBoundingRects();
-    void			ShowTargetEmphasis( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bShow );
-    void			PrepareCommandEvent( const CommandEvent& );
-    void			Command( const CommandEvent& rCEvt );
-    void			ToTop( SvxIconChoiceCtrlEntry* );
-
-    sal_uLong			GetSelectionCount() const;
-    void			SetGrid( const Size& );
-    Size 			GetMinGrid() const;
-    sal_uLong			GetGridCount(
+    void                UpdateBoundingRects();
+    void                ShowTargetEmphasis( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bShow );
+    void                PrepareCommandEvent( const CommandEvent& );
+    void                Command( const CommandEvent& rCEvt );
+    void                ToTop( SvxIconChoiceCtrlEntry* );
+
+    sal_uLong           GetSelectionCount() const;
+    void                SetGrid( const Size& );
+    Size                GetMinGrid() const;
+    sal_uLong           GetGridCount(
                         const Size& rSize,
                         sal_Bool bCheckScrBars,
                         sal_Bool bSmartScrBar ) const;
-    void			Scroll( long nDeltaX, long nDeltaY, sal_Bool bScrollBar = sal_False );
-    const Size&		GetItemSize( SvxIconChoiceCtrlEntry*, IcnViewFieldType ) const;
-
-    void 			HideDDIcon();
-    void 			ShowDDIcon( SvxIconChoiceCtrlEntry* pRefEntry, const Point& rPos );
-    void			HideShowDDIcon(
-                        SvxIconChoiceCtrlEntry* pRefEntry,
-                        const Point& rPos );
-
-    sal_Bool			IsOver(
-                        SvPtrarr* pSelectedRectList,
-                        const Rectangle& rEntryBoundRect ) const;
-
-    void			SelectRect(
-                        const Rectangle&,
-                        sal_Bool bAdd = sal_True,
-                        SvPtrarr* pOtherRects = 0 );
-
-    void			CalcScrollOffsets(
-                        const Point& rRefPosPixel,
-                        long& rX,
-                        long& rY,
-                        sal_Bool bDragDrop = sal_False,
-                        sal_uInt16 nBorderWidth = 10 );
-
-    sal_Bool			IsTextHit( SvxIconChoiceCtrlEntry* pEntry, const Point& rDocPos );
-    void			MakeVisible(
-                        const Rectangle& rDocPos,
-                        sal_Bool bInScrollBarEvent=sal_False,
-                        sal_Bool bCallRectChangedHdl = sal_True );
-
-    void			AdjustEntryAtGrid( SvxIconChoiceCtrlEntry* pStart = 0 );
-    void			SetEntryTextMode( SvxIconChoiceCtrlTextMode, SvxIconChoiceCtrlEntry* pEntry = 0 );
+    void                Scroll( long nDeltaX, long nDeltaY, sal_Bool bScrollBar = sal_False );
+    const Size&         GetItemSize( SvxIconChoiceCtrlEntry*, IcnViewFieldType ) const;
+
+    void                HideDDIcon();
+    void                ShowDDIcon( SvxIconChoiceCtrlEntry* pRefEntry, const Point& rPos );
+    void                HideShowDDIcon(
+                            SvxIconChoiceCtrlEntry* pRefEntry,
+                            const Point& rPos
+                        );
+
+    sal_Bool            IsOver(
+                            SvPtrarr* pSelectedRectList,
+                            const Rectangle& rEntryBoundRect
+                        ) const;
+
+    void                SelectRect(
+                            const Rectangle&,
+                            sal_Bool bAdd = sal_True,
+                            SvPtrarr* pOtherRects = 0
+                        );
+
+    void                CalcScrollOffsets(
+                            const Point& rRefPosPixel,
+                            long& rX,
+                            long& rY,
+                            sal_Bool bDragDrop = sal_False,
+                            sal_uInt16 nBorderWidth = 10
+                        );
+
+    sal_Bool            IsTextHit( SvxIconChoiceCtrlEntry* pEntry, const Point& rDocPos );
+    void                MakeVisible(
+                            const Rectangle& rDocPos,
+                            sal_Bool bInScrollBarEvent=sal_False,
+                            sal_Bool bCallRectChangedHdl = sal_True
+                        );
+
+    void                AdjustEntryAtGrid( SvxIconChoiceCtrlEntry* pStart = 0 );
+    void                SetEntryTextMode(
+                            SvxIconChoiceCtrlTextMode,
+                            SvxIconChoiceCtrlEntry* pEntry = 0
+                        );
     SvxIconChoiceCtrlTextMode GetTextMode( const SvxIconChoiceCtrlEntry* pEntry = 0 ) const;
-    void			ShowEntryFocusRect( const SvxIconChoiceCtrlEntry* pEntry );
-    void			EnableEntryEditing( sal_Bool bEnable ) { bEntryEditingEnabled = bEnable; }
-    sal_Bool			IsEntryEditingEnabled() const { return bEntryEditingEnabled; }
-    sal_Bool 			IsEntryEditing() const { return (sal_Bool)(pCurEditedEntry!=0); }
-    void			EditEntry( SvxIconChoiceCtrlEntry* pEntry );
-    void			StopEntryEditing( sal_Bool bCancel );
-    void			LockEntryPos( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bLock );
-    sal_uLong			GetEntryCount() const { return aEntries.Count(); }
-    SvxIconChoiceCtrlEntry*	GetEntry( sal_uLong nPos ) const { return (SvxIconChoiceCtrlEntry*)aEntries.GetObject(nPos); }
-    SvxIconChoiceCtrlEntry*	GetFirstSelectedEntry( sal_uLong& ) const;
-    SvxIconChoiceCtrlEntry*	GetNextSelectedEntry( sal_uLong& ) const;
+    void                ShowEntryFocusRect( const SvxIconChoiceCtrlEntry* pEntry );
+    void                EnableEntryEditing( sal_Bool bEnable ) { bEntryEditingEnabled = bEnable; }
+    sal_Bool            IsEntryEditingEnabled() const { return bEntryEditingEnabled; }
+    sal_Bool            IsEntryEditing() const { return (sal_Bool)(pCurEditedEntry!=0); }
+    void                EditEntry( SvxIconChoiceCtrlEntry* pEntry );
+    void                StopEntryEditing( sal_Bool bCancel );
+    void                LockEntryPos( SvxIconChoiceCtrlEntry* pEntry, sal_Bool bLock );
+    size_t              GetEntryCount() const { return aEntries.size(); }
+    SvxIconChoiceCtrlEntry* GetEntry( size_t nPos )
+                            {
+                                return aEntries[ nPos ];
+                            }
+    SvxIconChoiceCtrlEntry* GetEntry( size_t nPos ) const
+                            {
+                                return aEntries[ nPos ];
+                            }
+    SvxIconChoiceCtrlEntry* GetFirstSelectedEntry( sal_uLong& ) const;
+    SvxIconChoiceCtrlEntry* GetNextSelectedEntry( sal_uLong& ) const;
     SvxIconChoiceCtrlEntry* GetHdlEntry() const { return pHdlEntry; }
-    void 			SetHdlEntry( SvxIconChoiceCtrlEntry* pEntry ) { pHdlEntry = pEntry; }
+    void                SetHdlEntry( SvxIconChoiceCtrlEntry* pEntry ) { pHdlEntry = pEntry; }
 
     SvxIconChoiceCtrlTextMode GetEntryTextModeSmart( const SvxIconChoiceCtrlEntry* pEntry ) const;
-    void			SetSelectionMode( SelectionMode eMode ) { eSelectionMode=eMode; }
-    SelectionMode	GetSelectionMode() const { return eSelectionMode; }
-    sal_Bool			AreEntriesMoved() const { return (sal_Bool)((nFlags & F_MOVED_ENTRIES)!=0); }
-    void			SetEntriesMoved( sal_Bool bMoved )
-                    {
-                        if( bMoved ) nFlags |= F_MOVED_ENTRIES;
-                        else nFlags &= ~(F_MOVED_ENTRIES);
-                    }
-    sal_uLong			GetEntryListPos( SvxIconChoiceCtrlEntry* ) const;
-    void 			SetEntryListPos( SvxIconChoiceCtrlEntry* pEntry, sal_uLong nNewPos );
-    void			SetEntryImageSize( const Size& rSize ) { aImageSize = rSize; }
-    void			SetEntryFlags( SvxIconChoiceCtrlEntry* pEntry, sal_uInt16 nFlags );
+    void                SetSelectionMode( SelectionMode eMode ) { eSelectionMode=eMode; }
+    SelectionMode       GetSelectionMode() const { return eSelectionMode; }
+    sal_Bool            AreEntriesMoved() const { return (sal_Bool)((nFlags & F_MOVED_ENTRIES)!=0); }
+    void                SetEntriesMoved( sal_Bool bMoved )
+                        {
+                            if( bMoved )
+                                nFlags |= F_MOVED_ENTRIES;
+                            else
+                                nFlags &= ~(F_MOVED_ENTRIES);
+                        }
+    sal_uLong           GetEntryListPos( SvxIconChoiceCtrlEntry* ) const;
+    void                SetEntryListPos( SvxIconChoiceCtrlEntry* pEntry, sal_uLong nNewPos );
+    void                SetEntryImageSize( const Size& rSize ) { aImageSize = rSize; }
+    void                SetEntryFlags( SvxIconChoiceCtrlEntry* pEntry, sal_uInt16 nFlags );
     SvxIconChoiceCtrlEntry* GoLeftRight( SvxIconChoiceCtrlEntry*, sal_Bool bRight );
     SvxIconChoiceCtrlEntry* GoUpDown( SvxIconChoiceCtrlEntry*, sal_Bool bDown );
-    void 			InitSettings();
-    Rectangle		GetOutputRect() const;
+    void                InitSettings();
+    Rectangle           GetOutputRect() const;
 
-    sal_Bool			ArePredecessorsSet() const { return (sal_Bool)(pHead != 0); }
+    sal_Bool            ArePredecessorsSet() const { return (sal_Bool)(pHead != 0); }
     SvxIconChoiceCtrlEntry* GetPredecessorHead() const { return pHead; }
-    void			SetEntryPredecessor(SvxIconChoiceCtrlEntry* pEntry,SvxIconChoiceCtrlEntry* pPredecessor);
-    sal_Bool			GetEntryPredecessor(SvxIconChoiceCtrlEntry* pEntry,SvxIconChoiceCtrlEntry** ppPredecessor);
+    void                SetEntryPredecessor(SvxIconChoiceCtrlEntry* pEntry,SvxIconChoiceCtrlEntry* pPredecessor);
+    sal_Bool            GetEntryPredecessor(SvxIconChoiceCtrlEntry* pEntry,SvxIconChoiceCtrlEntry** ppPredecessor);
     // liefert gueltige Ergebnisse nur im AutoArrange-Modus!
-    SvxIconChoiceCtrlEntry*	FindEntryPredecessor( SvxIconChoiceCtrlEntry* pEntry, const Point& );
+    SvxIconChoiceCtrlEntry* FindEntryPredecessor( SvxIconChoiceCtrlEntry* pEntry, const Point& );
 
-    void			SetPositionMode( SvxIconChoiceCtrlPositionMode );
+    void                SetPositionMode( SvxIconChoiceCtrlPositionMode );
     SvxIconChoiceCtrlPositionMode GetPositionMode() const { return ePositionMode;}
 
-    void			Flush();
-    void			SetColumn( sal_uInt16 nIndex, const SvxIconChoiceCtrlColumnInfo& );
+    void                Flush();
+    void                SetColumn( sal_uInt16 nIndex, const SvxIconChoiceCtrlColumnInfo& );
     const SvxIconChoiceCtrlColumnInfo* GetColumn( sal_uInt16 nIndex ) const;
     const SvxIconChoiceCtrlColumnInfo* GetItemColumn( sal_uInt16 nSubItem, long& rLeft ) const;
 
-    Rectangle 		GetDocumentRect() const { return Rectangle( Point(), aVirtOutputSize ); }
-    Rectangle		GetVisibleRect() const { return GetOutputRect(); }
-
-    void			SetEntryHighlightFrame( SvxIconChoiceCtrlEntry* pEntry,sal_Bool bKeepHighlightFlags=sal_False );
-    void			HideEntryHighlightFrame();
-    void 			DrawHighlightFrame( OutputDevice* pOut,
-                        const Rectangle& rBmpRect, sal_Bool bHide );
-    void			StopSelectTimer() { aCallSelectHdlTimer.Stop(); }
-    void 			Tracking( const TrackingEvent& rTEvt );
-    Point			GetPopupMenuPosPixel() const;
-
-    sal_Bool			HandleShortCutKey( const KeyEvent& rKeyEvent );
-
-    void			CallEventListeners( sal_uLong nEvent, void* pData = NULL );
-
-    inline ::svt::IAccessibleFactory&
-        GetAccessibleFactory() { return aAccFactory.getFactory(); }
+    Rectangle           GetDocumentRect() const { return Rectangle( Point(), aVirtOutputSize ); }
+    Rectangle           GetVisibleRect() const { return GetOutputRect(); }
+
+    void                SetEntryHighlightFrame(
+                            SvxIconChoiceCtrlEntry* pEntry,
+                            sal_Bool bKeepHighlightFlags=sal_False
+                        );
+    void                HideEntryHighlightFrame();
+    void                DrawHighlightFrame(
+                            OutputDevice* pOut,
+                            const Rectangle& rBmpRect,
+                            sal_Bool bHide
+                        );
+    void                StopSelectTimer() { aCallSelectHdlTimer.Stop(); }
+    void                Tracking( const TrackingEvent& rTEvt );
+    Point               GetPopupMenuPosPixel() const;
+
+    sal_Bool            HandleShortCutKey( const KeyEvent& rKeyEvent );
+
+    void                CallEventListeners( sal_uLong nEvent, void* pData = NULL );
+
+    inline ::svt::IAccessibleFactory& GetAccessibleFactory()
+                        {
+                            return aAccFactory.getFactory();
+                        }
 };
 
 // ----------------------------------------------------------------------------------------------
 
 class IcnCursor_Impl
 {
-    SvxIconChoiceCtrl_Impl*	pView;
-    SvPtrarr* 		pColumns;
-    SvPtrarr* 		pRows;
-    long			nCols;
-    long			nRows;
-    short 			nDeltaWidth;
-    short 			nDeltaHeight;
+    SvxIconChoiceCtrl_Impl* pView;
+    SvPtrarr*               pColumns;
+    SvPtrarr*               pRows;
+    long                    nCols;
+    long                    nRows;
+    short                   nDeltaWidth;
+    short                   nDeltaHeight;
     SvxIconChoiceCtrlEntry* pCurEntry;
-    void 			SetDeltas();
-    void 			ImplCreate();
-    void 			Create() {	if( !pColumns )	ImplCreate(); }
-
-    sal_uInt16 			GetSortListPos( SvPtrarr* pList, long nValue, int bVertical);
-    SvxIconChoiceCtrlEntry* SearchCol(sal_uInt16 nCol,sal_uInt16 nTop,sal_uInt16 nBottom,sal_uInt16 nPref,
-                        sal_Bool bDown, sal_Bool bSimple );
-
-    SvxIconChoiceCtrlEntry* SearchRow(sal_uInt16 nRow,sal_uInt16 nRight,sal_uInt16 nLeft,sal_uInt16 nPref,
-                        sal_Bool bRight, sal_Bool bSimple );
+    void                    SetDeltas();
+    void                    ImplCreate();
+    void                    Create() {  if( !pColumns ) ImplCreate(); }
+
+    sal_uInt16              GetSortListPos( SvPtrarr* pList, long nValue, int bVertical);
+    SvxIconChoiceCtrlEntry* SearchCol(
+                                sal_uInt16 nCol,
+                                sal_uInt16 nTop,
+                                sal_uInt16 nBottom,
+                                sal_uInt16 nPref,
+                                sal_Bool bDown,
+                                sal_Bool bSimple
+                            );
+
+    SvxIconChoiceCtrlEntry* SearchRow(
+                                sal_uInt16 nRow,
+                                sal_uInt16 nRight,
+                                sal_uInt16 nLeft,
+                                sal_uInt16 nPref,
+                                sal_Bool bRight,
+                                sal_Bool bSimple
+                            );
 
 public:
-                    IcnCursor_Impl( SvxIconChoiceCtrl_Impl* pOwner );
-                    ~IcnCursor_Impl();
-    void 			Clear();
+                            IcnCursor_Impl( SvxIconChoiceCtrl_Impl* pOwner );
+                            ~IcnCursor_Impl();
+    void                    Clear();
 
     // fuer Cursortravelling usw.
     SvxIconChoiceCtrlEntry* GoLeftRight( SvxIconChoiceCtrlEntry*, sal_Bool bRight );
@@ -576,59 +664,58 @@ public:
     // sortierte Liste der Eintraege, die in ihr stehen. Eine Liste kann
     // leer sein. Die Listen gehen in das Eigentum des Rufenden ueber und
     // muessen mit DestroyGridAdjustData geloescht werden
-    void			CreateGridAjustData( SvPtrarr& pLists, SvxIconChoiceCtrlEntry* pRow=0);
-    static void 	DestroyGridAdjustData( SvPtrarr& rLists );
+    void                    CreateGridAjustData( SvPtrarr& pLists, SvxIconChoiceCtrlEntry* pRow=0);
+    static void             DestroyGridAdjustData( SvPtrarr& rLists );
 };
 
 // ----------------------------------------------------------------------------------------------
 
 typedef sal_uLong GridId;
 
-#define GRID_NOT_FOUND	((GridId)ULONG_MAX)
+#define GRID_NOT_FOUND  ((GridId)ULONG_MAX)
 
 class IcnGridMap_Impl
 {
-    Rectangle		_aLastOccupiedGrid;
-    SvxIconChoiceCtrl_Impl*	_pView;
-    sal_Bool*			_pGridMap;
-    sal_uInt16			_nGridCols, _nGridRows;
+    Rectangle               _aLastOccupiedGrid;
+    SvxIconChoiceCtrl_Impl* _pView;
+    sal_Bool*               _pGridMap;
+    sal_uInt16              _nGridCols, _nGridRows;
 
-    void			Expand();
-    void			Create_Impl();
-    void			Create() { if(!_pGridMap) Create_Impl(); }
+    void                Expand();
+    void                Create_Impl();
+    void                Create() { if(!_pGridMap) Create_Impl(); }
 
-    void			GetMinMapSize( sal_uInt16& rDX, sal_uInt16& rDY ) const;
+    void                GetMinMapSize( sal_uInt16& rDX, sal_uInt16& rDY ) const;
 
 public:
-                    IcnGridMap_Impl(SvxIconChoiceCtrl_Impl*	pView);
-                    ~IcnGridMap_Impl();
-
-    void			Clear();
-
-    GridId	 		GetGrid( const Point& rDocPos, sal_Bool* pbClipped = 0 );
-    GridId			GetGrid( sal_uInt16 nGridX, sal_uInt16 nGridY );
-    GridId			GetUnoccupiedGrid( sal_Bool bOccupyFound=sal_True );
-
-    void			OccupyGrids( const SvxIconChoiceCtrlEntry*, sal_Bool bOccupy = sal_True );
-    void			OccupyGrid( GridId nId, sal_Bool bOccupy = sal_True )
-                    {
-                        DBG_ASSERT(!_pGridMap || nId<(sal_uLong)(_nGridCols*_nGridRows),"OccupyGrid: Bad GridId");
-                        if(_pGridMap && nId < (sal_uLong)(_nGridCols *_nGridRows) )
-                            _pGridMap[ nId ] = bOccupy;
-                    }
-
-    Rectangle		GetGridRect( GridId );
-    void			GetGridCoord( GridId, sal_uInt16& rGridX, sal_uInt16& rGridY );
-    static sal_uLong 	GetGridCount( const Size& rSizePixel, sal_uInt16 nGridWidth, sal_uInt16 nGridHeight );
-
-    void			OutputSizeChanged();
+                        IcnGridMap_Impl(SvxIconChoiceCtrl_Impl* pView);
+                        ~IcnGridMap_Impl();
+
+    void                Clear();
+
+    GridId              GetGrid( const Point& rDocPos, sal_Bool* pbClipped = 0 );
+    GridId              GetGrid( sal_uInt16 nGridX, sal_uInt16 nGridY );
+    GridId              GetUnoccupiedGrid( sal_Bool bOccupyFound=sal_True );
+
+    void                OccupyGrids( const SvxIconChoiceCtrlEntry*, sal_Bool bOccupy = sal_True );
+    void                OccupyGrid( GridId nId, sal_Bool bOccupy = sal_True )
+                        {
+                            DBG_ASSERT(!_pGridMap || nId<(sal_uLong)(_nGridCols*_nGridRows),"OccupyGrid: Bad GridId");
+                            if(_pGridMap && nId < (sal_uLong)(_nGridCols *_nGridRows) )
+                                _pGridMap[ nId ] = bOccupy;
+                        }
+
+    Rectangle           GetGridRect( GridId );
+    void                GetGridCoord( GridId, sal_uInt16& rGridX, sal_uInt16& rGridY );
+    static sal_uLong    GetGridCount(
+                            const Size& rSizePixel,
+                            sal_uInt16 nGridWidth,
+                            sal_uInt16 nGridHeight
+                        );
+
+    void                OutputSizeChanged();
 };
 
-
-
-
-
 #endif
 
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/svtools/source/contnr/imivctl1.cxx b/svtools/source/contnr/imivctl1.cxx
index 86b8e04..a406b3e 100644
--- a/svtools/source/contnr/imivctl1.cxx
+++ b/svtools/source/contnr/imivctl1.cxx
@@ -2,7 +2,7 @@
 /*************************************************************************
  *
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- * 
+ *
  * Copyright 2000, 2010 Oracle and/or its affiliates.
  *
  * OpenOffice.org - a multi-platform office productivity suite
@@ -224,13 +224,13 @@ void SvxIconChoiceCtrl_Impl::Clear( sal_Bool bInCtor )
             pView->Invalidate(INVALIDATE_NOCHILDREN);
     }
     AdjustScrollBars();
-    sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pCur = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pCur = aEntries[ nCur ];
         delete pCur;
     }
-    aEntries.Clear();
+    aEntries.clear();
     DocRectChanged();
     VisRectChanged();
 }
@@ -292,19 +292,18 @@ void SvxIconChoiceCtrl_Impl::FontModified()
     ShowCursor( sal_True );
 }
 
-void SvxIconChoiceCtrl_Impl::InsertEntry( SvxIconChoiceCtrlEntry* pEntry, sal_uLong nPos,
+void SvxIconChoiceCtrl_Impl::InsertEntry( SvxIconChoiceCtrlEntry* pEntry, size_t nPos,
     const Point* pPos )
 {
     StopEditTimer();
-    aEntries.Insert( pEntry, nPos );
-    if( (nFlags & F_ENTRYLISTPOS_VALID) && nPos >= aEntries.Count() - 1 )
-        pEntry->nPos = aEntries.Count() - 1;
+    aEntries.insert( nPos, pEntry );
+    if( (nFlags & F_ENTRYLISTPOS_VALID) && nPos >= aEntries.size() - 1 )
+        pEntry->nPos = aEntries.size() - 1;
     else
         nFlags &= ~F_ENTRYLISTPOS_VALID;
 
     pZOrderList->Insert( (void*)pEntry, LIST_APPEND ); //pZOrderList->Count() );
     pImpCursor->Clear();
-//	pGridMap->Clear();
     if( pPos )
     {
         Size aSize( CalcBoundingSize( pEntry ) );
@@ -376,10 +375,10 @@ void SvxIconChoiceCtrl_Impl::SetListPositions()
     if( nFlags & F_ENTRYLISTPOS_VALID )
         return;
 
-    sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
         pEntry->nPos = nCur;
     }
     nFlags |= F_ENTRYLISTPOS_VALID;
@@ -408,7 +407,7 @@ void SvxIconChoiceCtrl_Impl::RemoveEntry( SvxIconChoiceCtrlEntry* pEntry )
     if( pEntry->IsSelected() )
         CallSelectHandler( 0 );
 
-    if( aEntries.Count() == 1 && aEntries.GetObject(0) == pEntry )
+    if( aEntries.size() == 1 && aEntries[ 0 ] == pEntry )
     {
         Clear();
         return;
@@ -435,21 +434,21 @@ void SvxIconChoiceCtrl_Impl::RemoveEntry( SvxIconChoiceCtrlEntry* pEntry )
     }
 
     sal_Bool bCurEntryPosValid = (nFlags & F_ENTRYLISTPOS_VALID) ? sal_True : sal_False;
-    if( bCurEntryPosValid && aEntries.GetObject(aEntries.Count()-1) != pEntry )
+    if( bCurEntryPosValid && aEntries[ aEntries.size()-1 ] != pEntry )
         nFlags &= ~F_ENTRYLISTPOS_VALID;
     sal_uLong nPos = pZOrderList->GetPos( (void*)pEntry );
     pZOrderList->Remove( nPos );
     if( bCurEntryPosValid )
     {
         DBG_ASSERT(aEntries.GetObject(pEntry->nPos)==pEntry,"RemoveEntry: Wrong nPos in entry");
-        aEntries.Remove( pEntry->nPos );
+        aEntries.remove( pEntry->nPos );
     }
     else
-        aEntries.Remove( pEntry );
+        aEntries.remove( pEntry );
     pImpCursor->Clear();
     pGridMap->Clear();
     delete pEntry;
-    if( IsAutoArrange() && aEntries.Count() )
+    if( IsAutoArrange() && aEntries.size() )
         aAutoArrangeTimer.Start();
     if( bSetNewCursor )
     {
@@ -544,10 +543,10 @@ void SvxIconChoiceCtrl_Impl::ResetVirtSize()
     StopEditTimer();
     aVirtOutputSize.Width() = 0;
     aVirtOutputSize.Height() = 0;
-    const sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    const size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pCur = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pCur = aEntries[ nCur ];
         pCur->ClearFlags( ICNVIEW_FLAG_POS_MOVED );
         if( pCur->IsPosLocked() )
         {
@@ -616,25 +615,25 @@ void SvxIconChoiceCtrl_Impl::AdjustVirtSize( const Rectangle& rRect )
 void SvxIconChoiceCtrl_Impl::InitPredecessors()
 {
     DBG_ASSERT(!pHead,"SvxIconChoiceCtrl_Impl::InitPredecessors() >> Already initialized");
-    sal_uLong nCount = aEntries.Count();
+    size_t nCount = aEntries.size();
     if( nCount )
     {
-        SvxIconChoiceCtrlEntry* pPrev = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( 0 );
-        for( sal_uLong nCur = 1; nCur <= nCount; nCur++ )
+        SvxIconChoiceCtrlEntry* pPrev = aEntries[ 0 ];
+        for( size_t nCur = 1; nCur <= nCount; nCur++ )
         {
             pPrev->ClearFlags( ICNVIEW_FLAG_POS_LOCKED | ICNVIEW_FLAG_POS_MOVED |
                                 ICNVIEW_FLAG_PRED_SET);
 
             SvxIconChoiceCtrlEntry* pNext;
             if( nCur == nCount )
-                pNext = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( 0 );
+                pNext = aEntries[ 0 ];
             else
-                pNext = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+                pNext = aEntries[ nCur ];
             pPrev->pflink = pNext;
             pNext->pblink = pPrev;
             pPrev = pNext;
         }
-        pHead = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( 0 );
+        pHead = aEntries[ 0 ];
     }
     else
         pHead = 0;
@@ -645,10 +644,10 @@ void SvxIconChoiceCtrl_Impl::ClearPredecessors()
 {
     if( pHead )
     {
-        sal_uLong nCount = aEntries.Count();
-        for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+        size_t nCount = aEntries.size();
+        for( size_t nCur = 0; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pCur = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pCur = aEntries[ nCur ];
             pCur->pflink = 0;
             pCur->pblink = 0;
             pCur->ClearFlags( ICNVIEW_FLAG_PRED_SET );
@@ -750,7 +749,7 @@ void SvxIconChoiceCtrl_Impl::Paint( const Rectangle& rRect )
 #endif
     nFlags |= F_PAINTED;
 
-    if( !aEntries.Count() )
+    if( !aEntries.size() )
         return;
     if( !pCursor )
     {
@@ -767,7 +766,7 @@ void SvxIconChoiceCtrl_Impl::Paint( const Rectangle& rRect )
         }
 
         if( !bfound )
-            pCursor = (SvxIconChoiceCtrlEntry*)aEntries.First();
+            pCursor = aEntries[ 0 ];
     }
 
     // Show Focus at Init-Time
@@ -786,8 +785,8 @@ void SvxIconChoiceCtrl_Impl::Paint( const Rectangle& rRect )
         pView->SetClipRegion( aOutputArea );
     }
 
-    const sal_uInt16 nListInitSize = aEntries.Count() > USHRT_MAX ?
-        USHRT_MAX : (sal_uInt16)aEntries.Count();
+    const sal_uInt16 nListInitSize = aEntries.size() > USHRT_MAX ?
+        USHRT_MAX : (sal_uInt16)aEntries.size();
     List* pNewZOrderList = new List( nListInitSize );
     List* pPaintedEntries = new List( nListInitSize );
 
@@ -1379,7 +1378,7 @@ sal_Bool SvxIconChoiceCtrl_Impl::KeyInput( const KeyEvent& rKEvt )
         case KEY_END:
             if( pCursor )
             {
-                pNewCursor = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( aEntries.Count() - 1 );
+                pNewCursor = aEntries[ aEntries.size() - 1 ];
                 SetCursor_Impl( pOldCursor, pNewCursor, bMod1, bShift, sal_True );
             }
             break;
@@ -1387,7 +1386,7 @@ sal_Bool SvxIconChoiceCtrl_Impl::KeyInput( const KeyEvent& rKEvt )
         case KEY_HOME:
             if( pCursor )
             {
-                pNewCursor = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( 0 );
+                pNewCursor = aEntries[ 0 ];
                 SetCursor_Impl( pOldCursor, pNewCursor, bMod1, bShift, sal_True );
             }
             break;
@@ -2345,15 +2344,15 @@ void SvxIconChoiceCtrl_Impl::RecalcAllBoundingRects()
 {
     nMaxBoundHeight	= 0;
     pZOrderList->Clear();
-    sal_uLong nCount = aEntries.Count();
-    sal_uLong nCur;
+    size_t nCount = aEntries.size();
+    size_t nCur;
     SvxIconChoiceCtrlEntry* pEntry;
 
     if( !IsAutoArrange() || !pHead )
     {
         for( nCur = 0; nCur < nCount; nCur++ )
         {
-            pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            pEntry = aEntries[ nCur ];
             FindBoundingRect( pEntry );
             pZOrderList->Insert( pEntry, LIST_APPEND );
         }
@@ -2379,15 +2378,15 @@ void SvxIconChoiceCtrl_Impl::RecalcAllBoundingRectsSmart()
 {
     nMaxBoundHeight	= 0;
     pZOrderList->Clear();
-    sal_uLong nCur;
+    size_t nCur;
     SvxIconChoiceCtrlEntry* pEntry;
-    const sal_uLong nCount = aEntries.Count();
+    const size_t nCount = aEntries.size();
 
     if( !IsAutoArrange() || !pHead )
     {
         for( nCur = 0; nCur < nCount; nCur++ )
         {
-            pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            pEntry = aEntries[ nCur ];
             if( IsBoundingRectValid( pEntry->aRect ))
             {
                 Size aBoundSize( pEntry->aRect.GetSize() );
@@ -2424,10 +2423,10 @@ void SvxIconChoiceCtrl_Impl::RecalcAllBoundingRectsSmart()
 
 void SvxIconChoiceCtrl_Impl::UpdateBoundingRects()
 {
-    const sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    const size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
         GetEntryBoundRect( pEntry );
     }
 }
@@ -2906,7 +2905,7 @@ SvxIconChoiceCtrlEntry* SvxIconChoiceCtrl_Impl::FindNewCursor()
         }
     }
     else
-        pNewCursor = (SvxIconChoiceCtrlEntry*)aEntries.First();
+        pNewCursor = aEntries[ 0 ];
     DBG_ASSERT(!pNewCursor|| (pCursor&&pCursor!=pNewCursor),"FindNewCursor failed");
     return pNewCursor;
 }
@@ -2935,10 +2934,10 @@ void SvxIconChoiceCtrl_Impl::DeselectAllBut( SvxIconChoiceCtrlEntry* pThisEntryN
     //
     // !!!!!!! Todo: Evtl. Z-Orderlist abarbeiten !!!!!!!
     //
-    sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
         if( pEntry != pThisEntryNot && pEntry->IsSelected() )
             SelectEntry( pEntry, sal_False, sal_True, sal_True, bPaintSync );
     }
@@ -3605,8 +3604,8 @@ sal_Bool SvxIconChoiceCtrl_Impl::IsMnemonicChar( sal_Unicode cChar, sal_uLong& r
 {
     sal_Bool bRet = sal_False;
     const vcl::I18nHelper& rI18nHelper = Application::GetSettings().GetUILocaleI18nHelper();
-    sal_uLong nEntryCount = GetEntryCount();
-    for ( sal_uLong i = 0; i < nEntryCount; ++i )
+    size_t nEntryCount = GetEntryCount();
+    for ( size_t i = 0; i < nEntryCount; ++i )
     {
         if ( rI18nHelper.MatchMnemonic( GetEntry( i )->GetText(), cChar ) )
         {
@@ -3751,12 +3750,12 @@ SvxIconChoiceCtrlEntry* SvxIconChoiceCtrl_Impl::GetFirstSelectedEntry( sal_uLong
         return pCurHighlightFrame;
     }
 
-    sal_uLong nCount = aEntries.Count();
+    size_t nCount = aEntries.size();
     if( !pHead )
     {
-        for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+        for( size_t nCur = 0; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
             if( pEntry->IsSelected() )
             {
                 rPos = nCur;
@@ -3788,14 +3787,14 @@ SvxIconChoiceCtrlEntry* SvxIconChoiceCtrl_Impl::GetFirstSelectedEntry( sal_uLong
 // kein Round Robin!
 SvxIconChoiceCtrlEntry* SvxIconChoiceCtrl_Impl::GetNextSelectedEntry( sal_uLong& rStartPos ) const
 {
-    sal_uLong nCount = aEntries.Count();
+    size_t nCount = aEntries.size();
     if( rStartPos > nCount || !GetSelectionCount() )
         return 0;
     if( !pHead )
     {
-        for( sal_uLong nCur = rStartPos+1; nCur < nCount; nCur++ )
+        for( size_t nCur = rStartPos+1; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
             if( pEntry->IsSelected() )
             {
                 rStartPos = nCur;
@@ -3805,7 +3804,7 @@ SvxIconChoiceCtrlEntry* SvxIconChoiceCtrl_Impl::GetNextSelectedEntry( sal_uLong&
     }
     else
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( rStartPos );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ rStartPos ];
         pEntry = pEntry->pflink;
         while( pEntry != pHead )
         {
@@ -3826,10 +3825,10 @@ void SvxIconChoiceCtrl_Impl::SelectAll( sal_Bool bSelect, sal_Bool bPaint )
 {
     bPaint = sal_True;
 
-    sal_uLong nCount = aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount && (bSelect || GetSelectionCount() ); nCur++ )
+    size_t nCount = aEntries.size();
+    for( size_t nCur = 0; nCur < nCount && (bSelect || GetSelectionCount() ); nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
         SelectEntry( pEntry, bSelect, sal_True, sal_True, bPaint );
     }
     nFlags &= (~F_ADD_MODE);
@@ -3986,13 +3985,13 @@ sal_uLong SvxIconChoiceCtrl_Impl::GetEntryListPos( SvxIconChoiceCtrlEntry* pEntr
 
 void SvxIconChoiceCtrl_Impl::SetEntryListPos( SvxIconChoiceCtrlEntry* pListEntry, sal_uLong nNewPos )
 {
-    sal_uLong nCurPos = GetEntryListPos( pListEntry );
+    size_t nCurPos = GetEntryListPos( pListEntry );
     if( nCurPos == nNewPos )
         return;
-    aEntries.List::Remove( nCurPos );
-    aEntries.List::Insert( (void*)pListEntry, nNewPos );
+    aEntries.remove( nCurPos );
+    aEntries.insert( nNewPos, pListEntry );
     // Eintragspositionen anpassen
-    sal_uLong nStart, nEnd;
+    size_t nStart, nEnd;
     if( nNewPos < nCurPos )
     {
         nStart = nNewPos;
@@ -4005,7 +4004,7 @@ void SvxIconChoiceCtrl_Impl::SetEntryListPos( SvxIconChoiceCtrlEntry* pListEntry
     }
     for( ; nStart <= nEnd; nStart++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nStart );
+        SvxIconChoiceCtrlEntry* pEntry = aEntries[ nStart ];
         pEntry->nPos = nStart;
     }
 }
@@ -4073,15 +4072,7 @@ void SvxIconChoiceCtrl_Impl::InitSettings()
     }
 }
 
-EntryList_Impl::EntryList_Impl( SvxIconChoiceCtrl_Impl* pOwner, sal_uInt16 _nInitSize , sal_uInt16 _nReSize ) :
-    List( _nInitSize, _nReSize ),
-    _pOwner( pOwner )
-{
-    _pOwner->pHead = 0;
-}
-
-EntryList_Impl::EntryList_Impl( SvxIconChoiceCtrl_Impl* pOwner, sal_uInt16 _nBlockSize, sal_uInt16 _nInitSize, sal_uInt16 _nReSize ) :
-    List( _nBlockSize, _nInitSize, _nReSize ),
+EntryList_Impl::EntryList_Impl( SvxIconChoiceCtrl_Impl* pOwner ) :
     _pOwner( pOwner )
 {
     _pOwner->pHead = 0;
@@ -4092,31 +4083,47 @@ EntryList_Impl::~EntryList_Impl()
     _pOwner->pHead = 0;
 }
 
-void EntryList_Impl::Clear()
+void EntryList_Impl::clear()
 {
     _pOwner->pHead = 0;
-    List::Clear();
+    maIconChoiceCtrlEntryList.clear();
 }
 
-void EntryList_Impl::Insert( SvxIconChoiceCtrlEntry* pEntry, sal_uLong nPos )
+void EntryList_Impl::insert( size_t nPos, SvxIconChoiceCtrlEntry* pEntry )
 {
-    List::Insert( pEntry, nPos );
+    if ( nPos < maIconChoiceCtrlEntryList.size() ) {
+        maIconChoiceCtrlEntryList.insert( maIconChoiceCtrlEntryList.begin() + nPos, pEntry );
+    } else {
+        maIconChoiceCtrlEntryList.push_back( pEntry );
+    }
     if( _pOwner->pHead )
         pEntry->SetBacklink( _pOwner->pHead->pblink );
 }
 
-SvxIconChoiceCtrlEntry* EntryList_Impl::Remove( sal_uLong nPos )
+SvxIconChoiceCtrlEntry* EntryList_Impl::remove( size_t nPos )
 {
-    SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)List::Remove( nPos );
-    DBG_ASSERT(pEntry,"EntryList_Impl::Remove > Entry not found");
-    Removed_Impl( pEntry );
+    SvxIconChoiceCtrlEntry* pEntry = NULL;
+    if ( nPos < maIconChoiceCtrlEntryList.size() ) {
+        pEntry = maIconChoiceCtrlEntryList[ nPos ];
+        maIconChoiceCtrlEntryList.erase( maIconChoiceCtrlEntryList.begin() + nPos );
+        Removed_Impl( pEntry );
+    }
     return pEntry;
 }
 
-void EntryList_Impl::Remove( SvxIconChoiceCtrlEntry* pEntry )
+void EntryList_Impl::remove( SvxIconChoiceCtrlEntry* pEntry )
 {
-    List::Remove( (void*)pEntry );
-    Removed_Impl( pEntry );
+    for (
+        SvxIconChoiceCtrlEntryList_impl::iterator it = maIconChoiceCtrlEntryList.begin();
+        it < maIconChoiceCtrlEntryList.end();
+        ++it
+    ) {
+        if ( *it == pEntry ) {
+            maIconChoiceCtrlEntryList.erase( it );
+            Removed_Impl( pEntry );
+            break;
+        }
+    }
 }
 
 void EntryList_Impl::Removed_Impl( SvxIconChoiceCtrlEntry* pEntry )
@@ -4139,14 +4146,14 @@ void EntryList_Impl::Removed_Impl( SvxIconChoiceCtrlEntry* pEntry )
 
 void SvxIconChoiceCtrl_Impl::SetPositionMode( SvxIconChoiceCtrlPositionMode eMode )
 {
-    sal_uLong nCur;
+    size_t nCur;
 
     if( eMode == ePositionMode )
         return;
 
     SvxIconChoiceCtrlPositionMode eOldMode = ePositionMode;
     ePositionMode = eMode;
-    sal_uLong nCount = aEntries.Count();
+    size_t nCount = aEntries.size();
 
     if( eOldMode == IcnViewPositionModeAutoArrange )
     {
@@ -4154,7 +4161,7 @@ void SvxIconChoiceCtrl_Impl::SetPositionMode( SvxIconChoiceCtrlPositionMode eMod
         // mit ungewollten Ueberlappungen, da diese Eintrage im Arrange
         // nicht beruecksichtigt werden.
 #if 1
-        if( aEntries.Count() )
+        if( aEntries.size() )
             aAutoArrangeTimer.Start();
 #else
         if( pHead )
@@ -4181,7 +4188,7 @@ void SvxIconChoiceCtrl_Impl::SetPositionMode( SvxIconChoiceCtrlPositionMode eMod
         List aMovedEntries;
         for( nCur = 0; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pEntry = aEntries[ nCur ];
             if( pEntry->GetFlags() & (ICNVIEW_FLAG_POS_LOCKED | ICNVIEW_FLAG_POS_MOVED))
             {
                 SvxIconChoiceCtrlEntry_Impl* pE = new SvxIconChoiceCtrlEntry_Impl(
@@ -4197,7 +4204,7 @@ void SvxIconChoiceCtrl_Impl::SetPositionMode( SvxIconChoiceCtrlPositionMode eMod
         }
         for( nCur = 0; nCur < nCount; nCur++ )
             delete (SvxIconChoiceCtrlEntry_Impl*)aMovedEntries.GetObject( nCur );
-        if( aEntries.Count() )
+        if( aEntries.size() )
             aAutoArrangeTimer.Start();
     }
     else if( ePositionMode == IcnViewPositionModeAutoAdjust )
@@ -4267,7 +4274,7 @@ sal_Bool SvxIconChoiceCtrl_Impl::GetEntryPredecessor( SvxIconChoiceCtrlEntry* pE
 
     if( pEntry == pHead )
     {
-        SvxIconChoiceCtrlEntry* pFirst = (SvxIconChoiceCtrlEntry*)aEntries.GetObject(0);
+        SvxIconChoiceCtrlEntry* pFirst = aEntries[ 0 ];
         if( pFirst != pEntry )
             return sal_True;
         return sal_False;
@@ -4286,13 +4293,13 @@ SvxIconChoiceCtrlEntry*	SvxIconChoiceCtrl_Impl::FindEntryPredecessor( SvxIconCho
     Rectangle aCenterRect( CalcBmpRect( pEntry, &aPos ));
     Point aNewPos( aCenterRect.Center() );
     sal_uLong nGrid = GetPredecessorGrid( aNewPos );
-    sal_uLong nCount = aEntries.Count();
+    size_t nCount = aEntries.size();
     if( nGrid == ULONG_MAX )
         return 0;
     if( nGrid >= nCount )
         nGrid = nCount - 1;
     if( !pHead )
-        return (SvxIconChoiceCtrlEntry*)aEntries.GetObject( nGrid );
+        return aEntries[ nGrid ];
 
     SvxIconChoiceCtrlEntry* pCur = pHead; // Grid 0
     // todo: Liste von hinten aufrollen wenn nGrid > nCount/2
diff --git a/svtools/source/contnr/imivctl2.cxx b/svtools/source/contnr/imivctl2.cxx
index 3acbbf9..3edf086 100644
--- a/svtools/source/contnr/imivctl2.cxx
+++ b/svtools/source/contnr/imivctl2.cxx
@@ -2,7 +2,7 @@
 /*************************************************************************
  *
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- * 
+ *
  * Copyright 2000, 2010 Oracle and/or its affiliates.
  *
  * OpenOffice.org - a multi-platform office productivity suite
@@ -85,10 +85,10 @@ void IcnCursor_Impl::ImplCreate()
     pColumns = new SvPtrarr[ nCols ];
     pRows = new SvPtrarr[ nRows ];
 
-    sal_uLong nCount = pView->aEntries.Count();
-    for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+    size_t nCount = pView->aEntries.size();
+    for( size_t nCur = 0; nCur < nCount; nCur++ )
     {
-        SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( nCur );
+        SvxIconChoiceCtrlEntry* pEntry = pView->aEntries[ nCur ];
         // const Rectangle& rRect = pView->GetEntryBoundRect( pEntry );
         Rectangle rRect( pView->CalcBmpRect( pEntry,0 ) );
         short nY = (short)( ((rRect.Top()+rRect.Bottom())/2) / nDeltaHeight );
@@ -357,8 +357,8 @@ SvxIconChoiceCtrlEntry* IcnCursor_Impl::GoPageUpDown( SvxIconChoiceCtrlEntry* pS
         if( bDown )
         {
             nNewPos += nEntriesInView;
-            if( nNewPos >= (long)pView->aEntries.Count() )
-                nNewPos = pView->aEntries.Count() - 1;
+            if( nNewPos >= (long)pView->aEntries.size() )
+                nNewPos = pView->aEntries.size() - 1;
         }
         else
         {
@@ -367,7 +367,7 @@ SvxIconChoiceCtrlEntry* IcnCursor_Impl::GoPageUpDown( SvxIconChoiceCtrlEntry* pS
                 nNewPos = 0;
         }
         if( nPos != nNewPos )
-            return (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( (sal_uLong)nNewPos );
+            return pView->aEntries[ (size_t)nNewPos ];
         return 0;
     }
     long nOpt = pView->GetEntryBoundRect( pStart ).Top();
@@ -410,10 +410,10 @@ SvxIconChoiceCtrlEntry* IcnCursor_Impl::GoUpDown( SvxIconChoiceCtrlEntry* pCtrlE
     if(	pView->IsAutoArrange() && !(pView->nWinBits & WB_ALIGN_TOP) )
     {
         sal_uLong nPos = pView->GetEntryListPos( pCtrlEntry );
-        if( bDown && nPos < (pView->aEntries.Count() - 1) )
-            return (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( nPos + 1 );
+        if( bDown && nPos < (pView->aEntries.size() - 1) )
+            return pView->aEntries[ nPos + 1 ];
         else if( !bDown && nPos > 0 )
-            return (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( nPos - 1 );
+            return pView->aEntries[ nPos - 1 ];
         return 0;
     }
 
@@ -504,10 +504,10 @@ void IcnCursor_Impl::CreateGridAjustData( SvPtrarr& rLists, SvxIconChoiceCtrlEnt
             SvPtrarr* pRow = new SvPtrarr;
             rLists.Insert( (void*)pRow, nCurList );
         }
-        const sal_uLong nCount = pView->aEntries.Count();
-        for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+        const size_t nCount = pView->aEntries.size();
+        for( size_t nCur = 0; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pEntry = pView->aEntries[ nCur ];
             const Rectangle& rRect = pView->GetEntryBoundRect( pEntry );
             short nY = (short)( ((rRect.Top()+rRect.Bottom())/2) / pView->nGridDY );
             sal_uInt16 nIns = GetSortListPos((SvPtrarr*)rLists[nY],rRect.Left(),sal_False);
@@ -523,10 +523,10 @@ void IcnCursor_Impl::CreateGridAjustData( SvPtrarr& rLists, SvxIconChoiceCtrlEnt
         short nRefRow = (short)( ((rRefRect.Top()+rRefRect.Bottom())/2) / pView->nGridDY );
         SvPtrarr* pRow = new SvPtrarr;
         rLists.Insert( (void*)pRow, 0 );
-        sal_uLong nCount = pView->aEntries.Count();
-        for( sal_uLong nCur = 0; nCur < nCount; nCur++ )
+        size_t nCount = pView->aEntries.size();
+        for( size_t nCur = 0; nCur < nCount; nCur++ )
         {
-            SvxIconChoiceCtrlEntry* pEntry = (SvxIconChoiceCtrlEntry*)pView->aEntries.GetObject( nCur );
+            SvxIconChoiceCtrlEntry* pEntry = pView->aEntries[ nCur ];
             Rectangle rRect( pView->CalcBmpRect(pEntry) );
             //const Rectangle& rRect = pView->GetEntryBoundRect( pEntry );
             short nY = (short)( ((rRect.Top()+rRect.Bottom())/2) / pView->nGridDY );
@@ -601,9 +601,9 @@ void IcnGridMap_Impl::Create_Impl()
     _pGridMap = new sal_Bool[ _nGridRows * _nGridCols];
     memset( (void*)_pGridMap, 0, _nGridRows * _nGridCols );
 
-    const sal_uLong nCount = _pView->aEntries.Count();
-    for( sal_uLong nCur=0; nCur < nCount; nCur++ )
-        OccupyGrids( (SvxIconChoiceCtrlEntry*)_pView->aEntries.GetObject( nCur ));
+    const size_t nCount = _pView->aEntries.size();
+    for( size_t nCur=0; nCur < nCount; nCur++ )
+        OccupyGrids( _pView->aEntries[ nCur ] );
 }
 
 void IcnGridMap_Impl::GetMinMapSize( sal_uInt16& rDX, sal_uInt16& rDY ) const


More information about the Libreoffice-commits mailing list