summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Powers <jpowers27@cox.net>2011-07-15 05:41:00 -0700
committerJoseph Powers <jpowers27@cox.net>2011-07-15 05:43:11 -0700
commit50f1b1ff71f603040045903ee383995d29b03e75 (patch)
tree7366768a8b607d6cda130da8aadb93be705111fb
parent4dfecb62c5e595439cacec3da393c45faf093d9a (diff)
Replace List with std::vector< SvxIconChoiceCtrlEntry* >
-rw-r--r--svtools/source/contnr/imivctl.hxx823
-rw-r--r--svtools/source/contnr/imivctl1.cxx193
-rw-r--r--svtools/source/contnr/imivctl2.cxx36
3 files changed, 573 insertions, 479 deletions
diff --git a/svtools/source/contnr/imivctl.hxx b/svtools/source/contnr/imivctl.hxx
index 06d905f7a757..ced1856eeceb 100644
--- a/svtools/source/contnr/imivctl.hxx
+++ b/svtools/source/contnr/imivctl.hxx
@@ -83,8 +83,8 @@ class IcnGridMap_Impl;
// Breitenoffset Highlight-Rect bei Text
#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)
@@ -105,7 +105,7 @@ enum IcnViewFieldType
//
struct LocalFocus
{
- sal_Bool bOn;
+ sal_Bool bOn;
Rectangle aRect;
Color aPenColor;
@@ -116,32 +116,47 @@ struct LocalFocus
//
// Entry-List
//
-class EntryList_Impl : public List
+typedef ::std::vector< SvxIconChoiceCtrlEntry* > SvxIconChoiceCtrlEntryList_impl;
+
+class EntryList_Impl
{
private:
-
- using List::Replace;
-
+ SvxIconChoiceCtrlEntryList_impl maIconChoiceCtrlEntryList;
SvxIconChoiceCtrl_Impl* _pOwner;
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,388 +170,449 @@ 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;
+ 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;
+ 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;
+ sal_Bool bHighlightFramePressed;
SvxIconChoiceCtrlEntry* pHead; // Eintrag oben links
SvxIconChoiceCtrlEntry* pCursor;
SvxIconChoiceCtrlEntry* pPrevDropTarget;
SvxIconChoiceCtrlEntry* pHdlEntry;
SvxIconChoiceCtrlEntry* pDDRefEntry;
- VirtualDevice* pDDDev;
- VirtualDevice* pDDBufDev;
- VirtualDevice* pDDTempDev;
- VirtualDevice* pEntryPaintDev;
+ VirtualDevice* pDDDev;
+ VirtualDevice* pDDBufDev;
+ VirtualDevice* pDDTempDev;
+ VirtualDevice* pEntryPaintDev;
SvxIconChoiceCtrlEntry* pAnchor; // fuer Selektion
- LocalFocus aFocus; // Data for focusrect
+ LocalFocus aFocus; // Data for focusrect
::svt::AccessibleFactoryAccess aAccFactory;
- List* pDraggedSelection;
+ 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 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();
+ 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;
+ 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();
+ 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 );
+ 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;
+ long nGridDX;
+ long nGridDY;
+ long nHorSBarHeight;
+ long nVerSBarWidth;
- SvxIconChoiceCtrl_Impl( SvtIconChoiceCtrl* pView, WinBits nWinStyle );
- ~SvxIconChoiceCtrl_Impl();
+ 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 );
+ 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);
+ 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 );
+ 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* );
+ 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();
+ 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 );
+ 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; }
+ 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 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* );
+ 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;
+ 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 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 );
+ 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 );
+ 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 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; }
+ 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); }
+ 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; }
+ 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);
- }
+ 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 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); }
SvxIconChoiceCtrlEntry* GetPredecessorHead() const { return pHead; }
- void SetEntryPredecessor(SvxIconChoiceCtrlEntry* pEntry,SvxIconChoiceCtrlEntry* pPredecessor);
+ 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& );
- 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;
+ 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 );
+ void CallEventListeners( sal_uLong nEvent, void* pData = NULL );
- inline ::svt::IAccessibleFactory&
- GetAccessibleFactory() { return aAccFactory.getFactory(); }
+ inline ::svt::IAccessibleFactory& GetAccessibleFactory()
+ {
+ return aAccFactory.getFactory();
+ }
};
// ----------------------------------------------------------------------------------------------
@@ -544,28 +620,40 @@ public:
class IcnCursor_Impl
{
SvxIconChoiceCtrl_Impl* pView;
- SvPtrarr* pColumns;
- SvPtrarr* pRows;
- long nCols;
- long nRows;
- short nDeltaWidth;
- short nDeltaHeight;
+ 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,8 +664,8 @@ 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 );
};
// ----------------------------------------------------------------------------------------------
@@ -588,47 +676,46 @@ typedef sal_uLong GridId;
class IcnGridMap_Impl
{
- Rectangle _aLastOccupiedGrid;
+ Rectangle _aLastOccupiedGrid;
SvxIconChoiceCtrl_Impl* _pView;
- sal_Bool* _pGridMap;
- sal_uInt16 _nGridCols, _nGridRows;
+ 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 cdb95366d560..df9b81dab0c7 100644
--- a/svtools/source/contnr/imivctl1.cxx
+++ b/svtools/source/contnr/imivctl1.cxx
@@ -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 d21ff9139a49..1b0575fbd9bd 100644
--- a/svtools/source/contnr/imivctl2.cxx
+++ b/svtools/source/contnr/imivctl2.cxx
@@ -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