diff options
Diffstat (limited to 'svx/source/svdraw/svdedxv.cxx')
-rw-r--r-- | svx/source/svdraw/svdedxv.cxx | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx index d026a1b98ad7..2e0097ae4dd7 100644 --- a/svx/source/svdraw/svdedxv.cxx +++ b/svx/source/svdraw/svdedxv.cxx @@ -2,9 +2,9 @@ * * $RCSfile: svdedxv.cxx,v $ * - * $Revision: 1.1.1.1 $ + * $Revision: 1.2 $ * - * last change: $Author: hr $ $Date: 2000-09-18 17:01:24 $ + * last change: $Author: aw $ $Date: 2000-10-30 11:11:36 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -405,9 +405,9 @@ Color SdrObjEditView::ImpGetTextEditBackgroundColor() const SdrTextObj* pText=PTR_CAST(SdrTextObj,pTextEditObj); if (pText!=NULL && pText->IsClosedObj()) { - SfxItemSet aSet(pMod->GetItemPool()); - pText->TakeAttributes(aSet,FALSE,FALSE); - bFound=GetDraftFillColor(aSet,aBackground); +//-/ SfxItemSet aSet(pMod->GetItemPool()); +//-/ pText->TakeAttributes(aSet,FALSE,FALSE); + bFound=GetDraftFillColor(pText->GetItemSet(),aBackground); } if (!bFound && pTextEditPV!=NULL && pTextEditObj!=NULL) { @@ -1279,7 +1279,9 @@ BOOL SdrObjEditView::GetAttributes(SfxItemSet& rTargetSet, BOOL bOnlyHardAttr) c { DBG_ASSERT(pTextEditOutlinerView!=NULL,"SdrObjEditView::GetAttributes(): pTextEditOutlinerView=NULL"); DBG_ASSERT(pTextEditOutliner!=NULL,"SdrObjEditView::GetAttributes(): pTextEditOutliner=NULL"); - pTextEditObj->TakeAttributes(rTargetSet, TRUE, bOnlyHardAttr); + +//-/ pTextEditObj->TakeAttributes(rTargetSet, TRUE, bOnlyHardAttr); + rTargetSet.Put(pTextEditObj->GetItemSet()); if(pTextEditOutlinerView) { @@ -1344,7 +1346,14 @@ BOOL SdrObjEditView::SetAttributes(const SfxItemSet& rSet, BOOL bReplaceAll) AddUndo(new SdrUndoGeoObj(*pTextEditObj)); AddUndo(new SdrUndoAttrObj(*pTextEditObj,FALSE,!bNoEEItems)); EndUndo(); - pTextEditObj->SetAttributes(*pSet,bReplaceAll); + +//-/ pTextEditObj->SetAttributes(*pSet,bReplaceAll); + SdrBroadcastItemChange aItemChange(*pTextEditObj); + if(bReplaceAll) + pTextEditObj->ClearItem(); + pTextEditObj->SetItemSet(*pSet); + pTextEditObj->BroadcastItemChange(aItemChange); + FlushComeBackTimer(); // Damit ModeHasChanged sofort kommt bRet=TRUE; } else if (!bOnlyEEItems) { // sonst Set ggf. splitten @@ -1367,7 +1376,14 @@ BOOL SdrObjEditView::SetAttributes(const SfxItemSet& rSet, BOOL bReplaceAll) AddUndo(new SdrUndoGeoObj(*pTextEditObj)); AddUndo(new SdrUndoAttrObj(*pTextEditObj,FALSE,FALSE)); EndUndo(); - pTextEditObj->SetAttributes(aSet,bReplaceAll); + +//-/ pTextEditObj->SetAttributes(aSet,bReplaceAll); + SdrBroadcastItemChange aItemChange(*pTextEditObj); + if(bReplaceAll) + pTextEditObj->ClearItem(); + pTextEditObj->SetItemSet(aSet); + pTextEditObj->BroadcastItemChange(aItemChange); + if (aMark.GetMarkCount()==1 && aMark.GetMark(0)->GetObj()==pTextEditObj) { SetNotPersistAttrToMarked(aSet,bReplaceAll); } |