include/svtools/treelist.hxx | 47 +++++++++++++++-------------- include/svtools/treelistbox.hxx | 2 - svtools/source/contnr/treelist.cxx | 54 +++++++++++++++++----------------- svtools/source/contnr/treelistbox.cxx | 14 +++++--- 4 files changed, 61 insertions(+), 56 deletions(-)
New commits: commit fa6ac05beaaf1160c205e40099b99f0ed0efb131 Author: Noel Grandin <n...@peralex.com> Date: Mon Oct 13 20:42:24 2014 +0200 fdo#84938 - replace LIST_ACTION constants with enum Change-Id: I21c05ada0a793b1e3ddf87481e66b60b83529767 diff --git a/include/svtools/treelist.hxx b/include/svtools/treelist.hxx index e0984d7..cf20872 100644 --- a/include/svtools/treelist.hxx +++ b/include/svtools/treelist.hxx @@ -32,17 +32,20 @@ #include <vector> #include <boost/ptr_container/ptr_map.hpp> -#define LISTACTION_INSERTED 1 -#define LISTACTION_REMOVING 2 -#define LISTACTION_REMOVED 3 -#define LISTACTION_MOVING 4 -#define LISTACTION_MOVED 5 -#define LISTACTION_CLEARING 6 -#define LISTACTION_INSERTED_TREE 7 -#define LISTACTION_INVALIDATE_ENTRY 8 -#define LISTACTION_RESORTING 9 -#define LISTACTION_RESORTED 10 -#define LISTACTION_CLEARED 11 +enum class SvListAction +{ + INSERTED = 1, + REMOVING = 2, + REMOVED = 3, + MOVING = 4, + MOVED = 5, + CLEARING = 6, + INSERTED_TREE = 7, + INVALIDATE_ENTRY = 8, + RESORTING = 9, + RESORTED = 10, + CLEARED = 11 +}; class SvTreeListEntry; class SvListView; @@ -142,27 +145,27 @@ public: { return ( nPos < aViewList.size() ) ? aViewList[ nPos ] : NULL; } void Broadcast( - sal_uInt16 nActionId, + SvListAction nActionId, SvTreeListEntry* pEntry1=0, SvTreeListEntry* pEntry2=0, sal_uLong nPos=0 ); - void EnableInvalidate( bool bEnable ); + void EnableInvalidate( bool bEnable ); // Notify all Listeners void InvalidateEntry( SvTreeListEntry* ); sal_uLong GetEntryCount() const { return nEntryCount; } - SvTreeListEntry* First() const; - SvTreeListEntry* Next( SvTreeListEntry* pEntry, sal_uInt16* pDepth=0 ) const; - SvTreeListEntry* Prev( SvTreeListEntry* pEntry, sal_uInt16* pDepth=0 ) const; - SvTreeListEntry* Last() const; + SvTreeListEntry* First() const; + SvTreeListEntry* Next( SvTreeListEntry* pEntry, sal_uInt16* pDepth=0 ) const; + SvTreeListEntry* Prev( SvTreeListEntry* pEntry, sal_uInt16* pDepth=0 ) const; + SvTreeListEntry* Last() const; - SvTreeListEntry* FirstChild( SvTreeListEntry* pParent ) const; - SvTreeListEntry* NextSibling( SvTreeListEntry* pEntry ) const; - SvTreeListEntry* PrevSibling( SvTreeListEntry* pEntry ) const; - SvTreeListEntry* LastSibling( SvTreeListEntry* pEntry ) const; + SvTreeListEntry* FirstChild( SvTreeListEntry* pParent ) const; + SvTreeListEntry* NextSibling( SvTreeListEntry* pEntry ) const; + SvTreeListEntry* PrevSibling( SvTreeListEntry* pEntry ) const; + SvTreeListEntry* LastSibling( SvTreeListEntry* pEntry ) const; sal_uLong Insert( SvTreeListEntry* pEntry,SvTreeListEntry* pPar,sal_uLong nPos = TREELIST_APPEND); sal_uLong Insert( SvTreeListEntry* pEntry,sal_uLong nRootPos = TREELIST_APPEND ) @@ -273,7 +276,7 @@ public: void Clear(); virtual void SetModel( SvTreeList* ); virtual void ModelNotification( - sal_uInt16 nActionId, + SvListAction nActionId, SvTreeListEntry* pEntry1, SvTreeListEntry* pEntry2, sal_uLong nPos diff --git a/include/svtools/treelistbox.hxx b/include/svtools/treelistbox.hxx index fb69656..733d4a2 100644 --- a/include/svtools/treelistbox.hxx +++ b/include/svtools/treelistbox.hxx @@ -752,7 +752,7 @@ public: void RemoveParentKeepChildren( SvTreeListEntry* pParent ); DECL_LINK( DefaultCompare, SvSortData* ); - virtual void ModelNotification( sal_uInt16 nActionId, SvTreeListEntry* pEntry1, + virtual void ModelNotification( SvListAction nActionId, SvTreeListEntry* pEntry1, SvTreeListEntry* pEntry2, sal_uLong nPos ) SAL_OVERRIDE; void EndSelection(); diff --git a/svtools/source/contnr/treelist.cxx b/svtools/source/contnr/treelist.cxx index 087496c..27eebd4 100644 --- a/svtools/source/contnr/treelist.cxx +++ b/svtools/source/contnr/treelist.cxx @@ -44,7 +44,7 @@ SvTreeList::~SvTreeList() } void SvTreeList::Broadcast( - sal_uInt16 nActionId, + SvListAction nActionId, SvTreeListEntry* pEntry1, SvTreeListEntry* pEntry2, sal_uLong nPos @@ -119,10 +119,10 @@ bool SvTreeList::IsAtRootDepth( const SvTreeListEntry* pEntry ) const void SvTreeList::Clear() { - Broadcast( LISTACTION_CLEARING ); + Broadcast( SvListAction::CLEARING ); pRootItem->ClearChildren(); nEntryCount = 0; - Broadcast( LISTACTION_CLEARED ); + Broadcast( SvListAction::CLEARED ); } bool SvTreeList::IsChild(const SvTreeListEntry* pParent, const SvTreeListEntry* pChild) const @@ -182,7 +182,7 @@ sal_uLong SvTreeList::Move(SvTreeListEntry* pSrcEntry,SvTreeListEntry* pTargetPa pTargetParent = pRootItem; DBG_ASSERT(pSrcEntry!=pTargetParent,"Move:Source=Target"); - Broadcast( LISTACTION_MOVING, pSrcEntry, pTargetParent, nListPos ); + Broadcast( SvListAction::MOVING, pSrcEntry, pTargetParent, nListPos ); if ( pSrcEntry == pTargetParent ) // You can't move an entry onto itself as the parent. Just return its @@ -260,7 +260,7 @@ sal_uLong SvTreeList::Move(SvTreeListEntry* pSrcEntry,SvTreeListEntry* pTargetPa sal_uLong nRetVal = findEntryPosition(rDst, pSrcEntry); OSL_ENSURE(nRetVal == pSrcEntry->GetChildListPos(), "ListPos not valid"); - Broadcast( LISTACTION_MOVED,pSrcEntry,pTargetParent,nRetVal); + Broadcast( SvListAction::MOVED,pSrcEntry,pTargetParent,nRetVal); return nRetVal; } @@ -292,7 +292,7 @@ sal_uLong SvTreeList::Copy(SvTreeListEntry* pSrcEntry,SvTreeListEntry* pTargetPa SetListPositions(rDst); // correct list position in target list - Broadcast( LISTACTION_INSERTED_TREE, pClonedEntry ); + Broadcast( SvListAction::INSERTED_TREE, pClonedEntry ); sal_uLong nRetVal = findEntryPosition(rDst, pClonedEntry); return nRetVal; } @@ -347,7 +347,7 @@ void SvTreeList::InsertTree(SvTreeListEntry* pSrcEntry, nEntryCount += GetChildCount( pSrcEntry ); nEntryCount++; // the parent is new, too - Broadcast(LISTACTION_INSERTED_TREE, pSrcEntry ); + Broadcast(SvListAction::INSERTED_TREE, pSrcEntry ); } SvTreeListEntry* SvTreeList::CloneEntry( SvTreeListEntry* pSource ) const @@ -904,7 +904,7 @@ sal_uLong SvTreeList::Insert( SvTreeListEntry* pEntry,SvTreeListEntry* pParent,s else pEntry->nListPos = rList.size()-1; - Broadcast( LISTACTION_INSERTED, pEntry ); + Broadcast( SvListAction::INSERTED, pEntry ); return nPos; // pEntry->nListPos; } @@ -1011,7 +1011,7 @@ bool SvTreeList::Remove( const SvTreeListEntry* pEntry ) return false; } - Broadcast(LISTACTION_REMOVING, const_cast<SvTreeListEntry*>(pEntry)); + Broadcast(SvListAction::REMOVING, const_cast<SvTreeListEntry*>(pEntry)); sal_uLong nRemoved = 1 + GetChildCount(pEntry); bAbsPositionsValid = false; @@ -1043,7 +1043,7 @@ bool SvTreeList::Remove( const SvTreeListEntry* pEntry ) SetListPositions(rList); nEntryCount -= nRemoved; - Broadcast(LISTACTION_REMOVED, const_cast<SvTreeListEntry*>(pEntry)); + Broadcast(SvListAction::REMOVED, const_cast<SvTreeListEntry*>(pEntry)); delete pEntry; return true; @@ -1109,7 +1109,7 @@ void SvTreeList::InvalidateEntry( SvTreeListEntry* pEntry ) if (!mbEnableInvalidate) return; - Broadcast( LISTACTION_INVALIDATE_ENTRY, pEntry ); + Broadcast( SvListAction::INVALIDATE_ENTRY, pEntry ); } SvTreeListEntry* SvTreeList::GetRootLevelParent( SvTreeListEntry* pEntry ) const @@ -1225,7 +1225,7 @@ void SvListView::SetModel( SvTreeList* pNewModel ) { pModel->RemoveView( this ); bBroadcastCleared = true; - ModelNotification( LISTACTION_CLEARING,0,0,0 ); + ModelNotification( SvListAction::CLEARING,0,0,0 ); if ( pModel->GetRefCount() == 0 ) delete pModel; } @@ -1233,7 +1233,7 @@ void SvListView::SetModel( SvTreeList* pNewModel ) InitTable(); pNewModel->InsertView( this ); if( bBroadcastCleared ) - ModelNotification( LISTACTION_CLEARED,0,0,0 ); + ModelNotification( SvListAction::CLEARED,0,0,0 ); } @@ -1394,49 +1394,49 @@ void SvListView::ActionClear() Clear(); } -void SvListView::ModelNotification( sal_uInt16 nActionId, SvTreeListEntry* pEntry1, +void SvListView::ModelNotification( SvListAction nActionId, SvTreeListEntry* pEntry1, SvTreeListEntry* pEntry2, sal_uLong nPos ) { switch( nActionId ) { - case LISTACTION_INSERTED: + case SvListAction::INSERTED: ActionInserted( pEntry1 ); ModelHasInserted( pEntry1 ); break; - case LISTACTION_INSERTED_TREE: + case SvListAction::INSERTED_TREE: ActionInsertedTree( pEntry1 ); ModelHasInsertedTree( pEntry1 ); break; - case LISTACTION_REMOVING: + case SvListAction::REMOVING: ModelIsRemoving( pEntry1 ); ActionRemoving( pEntry1 ); break; - case LISTACTION_REMOVED: + case SvListAction::REMOVED: ActionRemoved( pEntry1 ); ModelHasRemoved( pEntry1 ); break; - case LISTACTION_MOVING: + case SvListAction::MOVING: ModelIsMoving( pEntry1, pEntry2, nPos ); ActionMoving( pEntry1, pEntry2, nPos ); break; - case LISTACTION_MOVED: + case SvListAction::MOVED: ActionMoved( pEntry1, pEntry2, nPos ); ModelHasMoved( pEntry1 ); break; - case LISTACTION_CLEARING: + case SvListAction::CLEARING: ActionClear(); ModelHasCleared(); // sic! for compatibility reasons! break; - case LISTACTION_CLEARED: + case SvListAction::CLEARED: break; - case LISTACTION_INVALIDATE_ENTRY: + case SvListAction::INVALIDATE_ENTRY: // no action for the base class ModelHasEntryInvalidated( pEntry1 ); break; - case LISTACTION_RESORTED: + case SvListAction::RESORTED: bVisPositionsValid = false; break; - case LISTACTION_RESORTING: + case SvListAction::RESORTING: break; default: OSL_FAIL("unknown ActionId"); @@ -1503,10 +1503,10 @@ sal_Int32 SvTreeList::Compare(const SvTreeListEntry* pLeft, const SvTreeListEntr void SvTreeList::Resort() { - Broadcast( LISTACTION_RESORTING ); + Broadcast( SvListAction::RESORTING ); bAbsPositionsValid = false; ResortChildren( pRootItem ); - Broadcast( LISTACTION_RESORTED ); + Broadcast( SvListAction::RESORTED ); } namespace { diff --git a/svtools/source/contnr/treelistbox.cxx b/svtools/source/contnr/treelistbox.cxx index 59c18fd..13c5d4b 100644 --- a/svtools/source/contnr/treelistbox.cxx +++ b/svtools/source/contnr/treelistbox.cxx @@ -3644,18 +3644,18 @@ IMPL_LINK( SvTreeListBox, DefaultCompare, SvSortData*, pData ) return pImp->m_pStringSorter->compare(aLeft, aRight); } -void SvTreeListBox::ModelNotification( sal_uInt16 nActionId, SvTreeListEntry* pEntry1, +void SvTreeListBox::ModelNotification( SvListAction nActionId, SvTreeListEntry* pEntry1, SvTreeListEntry* pEntry2, sal_uLong nPos ) { SolarMutexGuard aSolarGuard; - if( nActionId == LISTACTION_CLEARING ) + if( nActionId == SvListAction::CLEARING ) CancelTextEditing(); SvListView::ModelNotification( nActionId, pEntry1, pEntry2, nPos ); switch( nActionId ) { - case LISTACTION_INSERTED: + case SvListAction::INSERTED: { SvTreeListEntry* pEntry( dynamic_cast< SvTreeListEntry* >( pEntry1 ) ); if ( !pEntry ) @@ -3681,20 +3681,22 @@ void SvTreeListBox::ModelNotification( sal_uInt16 nActionId, SvTreeListEntry* pE } break; - case LISTACTION_RESORTING: + case SvListAction::RESORTING: SetUpdateMode( false ); break; - case LISTACTION_RESORTED: + case SvListAction::RESORTED: // after a selection: show first entry and also keep the selection MakeVisible( (SvTreeListEntry*)pModel->First(), true ); SetUpdateMode( true ); break; - case LISTACTION_CLEARED: + case SvListAction::CLEARED: if( IsUpdateMode() ) Update(); break; + + default: break; } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits