diff options
author | jp <jp@openoffice.org> | 2001-10-29 07:50:10 +0000 |
---|---|---|
committer | jp <jp@openoffice.org> | 2001-10-29 07:50:10 +0000 |
commit | 794cdab096c46e2e27b9ce6ddcaa1d9ff418371f (patch) | |
tree | 5831aff5ef89e294657953d870d0eeb040b8d09e /sw/source/ui/dochdl | |
parent | 07cd60595666fc7d8d36ba8bbe981c18142bec8b (diff) |
Bug #93743#: PasteData - need flag if it is called for paste XSelection
Diffstat (limited to 'sw/source/ui/dochdl')
-rw-r--r-- | sw/source/ui/dochdl/swdtflvr.cxx | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/sw/source/ui/dochdl/swdtflvr.cxx b/sw/source/ui/dochdl/swdtflvr.cxx index cbf68de580eb..1c194cac3a2c 100644 --- a/sw/source/ui/dochdl/swdtflvr.cxx +++ b/sw/source/ui/dochdl/swdtflvr.cxx @@ -2,9 +2,9 @@ * * $RCSfile: swdtflvr.cxx,v $ * - * $Revision: 1.47 $ + * $Revision: 1.48 $ * - * last change: $Author: jp $ $Date: 2001-10-26 11:14:16 $ + * last change: $Author: jp $ $Date: 2001-10-29 08:50:10 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -1125,7 +1125,8 @@ int SwTransferable::PasteData( TransferableDataHelper& rData, SwWrtShell& rSh, USHORT nAction, ULONG nFormat, USHORT nDestination, BOOL bIsPasteFmt, sal_Bool bIsDefault, - const Point* pPt, sal_Int8 nDropAction ) + const Point* pPt, sal_Int8 nDropAction, + BOOL bPasteSelection ) { SwWait aWait( *rSh.GetView().GetDocShell(), FALSE ); SwTrnsfrActionAndUndo* pAction = 0; @@ -1136,7 +1137,7 @@ int SwTransferable::PasteData( TransferableDataHelper& rData, if( pPt ) { // external Drop - if( !pMod->pDragDrop && !pMod->pXSelection ) + if( bPasteSelection ? !pMod->pXSelection : !pMod->pDragDrop ) { switch( nDestination ) { @@ -1187,12 +1188,12 @@ int SwTransferable::PasteData( TransferableDataHelper& rData, } SwTransferable* pTrans; - if( pPt && (0 != ( pTrans = pMod->pDragDrop) || - 0 != ( pTrans = pMod->pXSelection ))) + if( pPt && ( bPasteSelection ? 0 != ( pTrans = pMod->pXSelection ) + : 0 != ( pTrans = pMod->pDragDrop) )) { // then internal Drag & Drop or XSelection nRet = pTrans->PrivateDrop( rSh, *pPt, DND_ACTION_MOVE == nDropAction, - pTrans == pMod->pXSelection ); + bPasteSelection ); } else if( !pPt && 0 != ( pTrans = pMod->pClipboard ) && EXCHG_OUT_ACTION_INSERT_PRIVATE == nAction ) @@ -1448,7 +1449,7 @@ ASSERT( pPt, "EXCHG_OUT_ACTION_MOVE_PRIVATE: was soll hier passieren?" ); } } - if( !pMod->pXSelection && rSh.IsFrmSelected() ) + if( !bPasteSelection && rSh.IsFrmSelected() ) rSh.EnterSelFrmMode(); if( pAction ) |