diff options
author | Rüdiger Timm <rt@openoffice.org> | 2005-01-27 08:46:41 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2005-01-27 08:46:41 +0000 |
commit | b223b8a073879eb11a1814bd3a13dae804f7469e (patch) | |
tree | c9f56b6f96c12ee9e892b69672212365466efc61 /sfx2/source/control/statcach.cxx | |
parent | 1167b58e0c807b25a7ef98c9fde139061ce57044 (diff) |
INTEGRATION: CWS cd05 (1.23.4); FILE MERGED
2005/01/24 08:50:21 cd 1.23.4.2: #i40195# Real core metric must be available for internal controllers
2005/01/21 15:30:33 cd 1.23.4.1: #i41090# Fixed assertion - dirty flag wasn't reset when there is no slot found in GetSlotServer
Diffstat (limited to 'sfx2/source/control/statcach.cxx')
-rw-r--r-- | sfx2/source/control/statcach.cxx | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sfx2/source/control/statcach.cxx b/sfx2/source/control/statcach.cxx index 205b7b86cb34..d0bd9e7165d1 100644 --- a/sfx2/source/control/statcach.cxx +++ b/sfx2/source/control/statcach.cxx @@ -2,9 +2,9 @@ * * $RCSfile: statcach.cxx,v $ * - * $Revision: 1.23 $ + * $Revision: 1.24 $ * - * last change: $Author: kz $ $Date: 2005-01-18 16:08:39 $ + * last change: $Author: rt $ $Date: 2005-01-27 09:46:41 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -331,7 +331,11 @@ const SfxSlotServer* SfxStateCache::GetSlotServer( SfxDispatcher &rDispat , cons pSlot = SFX_APP()->GetSlotPool( rDispat.GetFrame() ).GetSlot( nId ); if ( !pSlot || !pSlot->pUnoName ) + { + bSlotDirty = sal_False; + bCtrlDirty = sal_True; return aSlotServ.GetSlot()? &aSlotServ: 0; + } // create the dispatch name from the slot data ::com::sun::star::util::URL aURL; @@ -520,7 +524,7 @@ void SfxStateCache::SetState_Impl } if ( pInternalController ) - pInternalController->StateChanged( nId, eState, pState ); + ((SfxDispatchController_Impl *)pInternalController)->StateChanged( nId, eState, pState, &aSlotServ ); // neuen Wert merken if ( !IsInvalidItem(pLastItem) ) @@ -564,7 +568,7 @@ void SfxStateCache::SetCachedState( BOOL bAlways ) } if ( pInternalController ) - pInternalController->StateChanged( nId, eLastState, pLastItem ); + ((SfxDispatchController_Impl *)pInternalController)->StateChanged( nId, eLastState, pLastItem, &aSlotServ ); // Controller sind jetzt ok bCtrlDirty = sal_True; |