User: hr Date: 2007-08-03 12:46:19+0000 Modified: dba/reportdesign/source/ui/report/dlgedfunc.cxx
Log: INTEGRATION: CWS rpt23fix02 (1.2.4); FILE MERGED 2007/07/31 12:51:15 oj 1.2.4.5: compile error 2007/07/30 05:36:12 oj 1.2.4.4: #80161# apply gcc3 patch for strings 2007/07/25 14:07:02 oj 1.2.4.3: #i77721# #i79958# dnd and selection across sections impl 2007/07/24 12:48:07 oj 1.2.4.2: merge from rpt23fix01 2007/07/23 12:01:00 oj 1.2.4.1: #i77721# solve scroll problem File Changes: Directory: /dba/reportdesign/source/ui/report/ ============================================== File [changed]: dlgedfunc.cxx Url: http://dba.openoffice.org/source/browse/dba/reportdesign/source/ui/report/dlgedfunc.cxx?r1=1.3&r2=1.4 Delta lines: +152 -344 ----------------------- --- dlgedfunc.cxx 2007-08-02 14:41:30+0000 1.3 +++ dlgedfunc.cxx 2007-08-03 12:46:17+0000 1.4 @@ -127,27 +127,27 @@ Rectangle aOutRect( pScrollWindow->getScrollOffset(), aOut ); aOutRect = pParent->PixelToLogic( aOutRect ); //Rectangle aWorkArea = pParent->getView()->GetWorkArea(); - Rectangle aWorkArea(Point(),pScrollWindow->getTotalSize()); + Point aGcc3WorkaroundTemporary; + Rectangle aWorkArea(aGcc3WorkaroundTemporary,pScrollWindow->getTotalSize()); aWorkArea.Right() -= REPORT_STARTMARKER_WIDTH; aWorkArea = pScrollWindow->PixelToLogic( aWorkArea ); if( !aOutRect.IsInside( rPos ) && aWorkArea.IsInside( rPos ) ) { ScrollBar* pHScroll = pScrollWindow->GetHScroll(); ScrollBar* pVScroll = pScrollWindow->GetVScroll(); - long nDeltaX = pHScroll->GetLineSize(); - long nDeltaY = pVScroll->GetLineSize(); - + ScrollType eH = SCROLL_LINEDOWN,eV = SCROLL_LINEDOWN; if( rPos.X() < aOutRect.Left() ) - nDeltaX = -nDeltaX; + eH = SCROLL_LINEUP; else if( rPos.X() <= aOutRect.Right() ) - nDeltaX = 0; + eH = SCROLL_DONTKNOW; if( rPos.Y() < aOutRect.Top() ) - nDeltaY = -nDeltaY; + eV = SCROLL_LINEUP; else if( rPos.Y() <= aOutRect.Bottom() ) - nDeltaY = 0; + eV = SCROLL_DONTKNOW; - pScrollWindow->EndScroll(nDeltaX,nDeltaY); + pHScroll->DoScrollAction(eH); + pVScroll->DoScrollAction(eV); } aScrollTimer.Start(); @@ -157,12 +157,14 @@ DlgEdFunc::DlgEdFunc( OReportSection* _pParent ) :pParent(_pParent), + pView(_pParent->getView()), m_xOverlappingObj(NULL), m_pOverlappingObj(NULL), m_bSelectionMode(false) { // pParent = _pParent; aScrollTimer.SetTimeoutHdl( LINK( this, DlgEdFunc, ScrollTimeout ) ); + pView->SetActualWin( pParent); aScrollTimer.SetTimeout( SELENG_AUTOREPEAT_INTERVAL ); } @@ -218,7 +220,9 @@ m_aMDPos = pParent->PixelToLogic( rMEvt.GetPosPixel() ); pParent->GrabFocus(); BOOL bHandled = FALSE; - if ( rMEvt.IsLeft() && rMEvt.GetClicks() == 2 ) + if ( rMEvt.IsLeft() ) + { + if ( rMEvt.GetClicks() > 1 ) { // show property browser if ( pParent->GetMode() != RPTUI_READONLY ) @@ -228,12 +232,30 @@ aArgs[0].Value <<= sal_True; pParent->getViewsWindow()->getView()->getReportView()->getController()->executeUnChecked(SID_SHOW_PROPERTYBROWSER,aArgs); pParent->getViewsWindow()->getView()->getReportView()->UpdatePropertyBrowserDelayed(pParent->getView()); + // TODO character in shapes + // SdrViewEvent aVEvt; + // pView->PickAnything(rMEvt, SDRMOUSEBUTTONDOWN, aVEvt); + // if ( aVEvt.pRootObj && aVEvt.pRootObj->ISA(SdrTextObj) ) + // SetInEditMode(static_cast<SdrTextObj *>(aVEvt.pRootObj),rMEvt, FALSE); bHandled = TRUE; } } + else + { + SdrHdl* pHdl = pView->PickHandle(m_aMDPos); + //pParent->getViewsWindow()->unmarkAllObjects(pView); + + // if selected object was hit, drag object + if ( pHdl!=NULL || pView->IsMarkedHit(m_aMDPos) ) + { + bHandled = TRUE; + pParent->CaptureMouse(); + pParent->getViewsWindow()->BegDragObj(m_aMDPos, pHdl,pView); + } + } + } else if ( rMEvt.IsRight() && !rMEvt.IsLeft() && rMEvt.GetClicks() == 1 ) // mark object when context menu was selected { - OSectionView* pView = pParent->getView(); SdrPageView* pPV = pView->GetSdrPageView(); SdrViewEvent aVEvt; if ( pView->PickAnything(rMEvt, SDRMOUSEBUTTONDOWN, aVEvt) != SDRHIT_MARKEDOBJECT && !rMEvt.IsShift() ) @@ -245,6 +267,10 @@ bHandled = TRUE; } + else if( !rMEvt.IsLeft() ) + bHandled = TRUE; + if ( !bHandled ) + pParent->CaptureMouse(); return bHandled; } @@ -252,24 +278,29 @@ BOOL DlgEdFunc::MouseButtonUp( const MouseEvent& /*rMEvt*/ ) { + BOOL bHandled = FALSE; + pParent->getViewsWindow()->stopScrollTimer(); + return bHandled; +} +// ----------------------------------------------------------------------------- +void DlgEdFunc::stopScrollTimer() +{ unColorizeOverlappedObj(); aScrollTimer.Stop(); - return TRUE; + if ( pParent->IsMouseCaptured() ) + pParent->ReleaseMouse(); } - //---------------------------------------------------------------------------- BOOL DlgEdFunc::MouseMove( const MouseEvent& /*rMEvt*/ ) { - return TRUE; + return FALSE; } //------------------------------------------------------------------------------ sal_Bool DlgEdFunc::handleKeyEvent(const KeyEvent& _rEvent) { BOOL bReturn = FALSE; - OSectionView* pView = pParent->getView(); - const KeyCode& rCode = _rEvent.GetKeyCode(); USHORT nCode = rCode.GetCode(); @@ -277,9 +308,9 @@ { case KEY_ESCAPE: { - if ( pView->IsAction() ) + if ( pParent->getViewsWindow()->IsAction() ) { - pView->BrkAction(); + pParent->getViewsWindow()->BrkAction(); bReturn = TRUE; } else if ( pView->AreObjectsMarked() ) @@ -289,7 +320,8 @@ if ( pHdl ) ((SdrHdlList&)rHdlList).ResetFocusHdl(); else - pView->UnmarkAll(); + pParent->getViewsWindow()->unmarkAllObjects(NULL); + //pView->UnmarkAll(); bReturn = FALSE; } @@ -312,7 +344,7 @@ bReturn = TRUE; } - else if ( rCode.IsMod1() ) + else if ( rCode.IsMod1() && rCode.IsMod2()) { // selected handle const SdrHdlList& rHdlList = pView->GetHdlList(); @@ -336,163 +368,7 @@ case KEY_LEFT: case KEY_RIGHT: { - long nX = 0; - long nY = 0; - - if ( nCode == KEY_UP ) - nY = -1; - else if ( nCode == KEY_DOWN ) - nY = 1; - else if ( nCode == KEY_LEFT ) - nX = -1; - else if ( nCode == KEY_RIGHT ) - nX = 1; - - if ( pView->AreObjectsMarked() && !rCode.IsMod1() ) - { - if ( rCode.IsMod2() ) - { - // move in 1 pixel distance - const Size aPixelSize = pParent? pParent->PixelToLogic( Size( 1, 1 ) ) : Size( DEFAUL_MOVE_SIZE, DEFAUL_MOVE_SIZE ); - nX *= aPixelSize.Width(); - nY *= aPixelSize.Height(); - } - else - { - // move in 1 mm distance - nX *= DEFAUL_MOVE_SIZE; - nY *= DEFAUL_MOVE_SIZE; - } - - const SdrHdlList& rHdlList = pView->GetHdlList(); - SdrHdl* pHdl = rHdlList.GetFocusHdl(); - - if ( pHdl == 0 ) - { - // no handle selected - if ( pView->IsMoveAllowed() ) - { - // restrict movement to work area - const Rectangle& rWorkArea = pView->GetWorkArea(); - - if ( !rWorkArea.IsEmpty() ) - { - Rectangle aMarkRect( pView->GetMarkedObjRect() ); - aMarkRect.Move( nX, nY ); - - if ( !rWorkArea.IsInside( aMarkRect ) ) - { - if ( aMarkRect.Left() < rWorkArea.Left() ) - nX += rWorkArea.Left() - aMarkRect.Left(); - - if ( aMarkRect.Right() > rWorkArea.Right() ) - nX -= aMarkRect.Right() - rWorkArea.Right(); - - if ( aMarkRect.Top() < rWorkArea.Top() ) - nY += rWorkArea.Top() - aMarkRect.Top(); - - if ( aMarkRect.Bottom() > rWorkArea.Bottom() ) - nY -= aMarkRect.Bottom() - rWorkArea.Bottom(); - } - bool bCheck = false; - const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); - for (sal_uInt32 i = 0; !bCheck && i < rMarkList.GetMarkCount();++i ) - { - SdrMark* pMark = rMarkList.GetMark(i); - bCheck = dynamic_cast<OUnoObject*>(pMark->GetMarkedSdrObj()) != NULL; - } - - if ( bCheck && isOver(aMarkRect,*pParent->getPage(),*pView) ) - break; - } - - if ( nX != 0 || nY != 0 ) - { - pView->MoveAllMarked( Size( nX, nY ) ); - pView->MakeVisible( pView->GetAllMarkedRect(), *pParent); - } - } - } - else - { - // move the handle - if ( pHdl && ( nX || nY ) ) - { - const Point aStartPoint( pHdl->GetPos() ); - const Point aEndPoint( pHdl->GetPos() + Point( nX, nY ) ); - const SdrDragStat& rDragStat = pView->GetDragStat(); - - // start dragging - pView->BegDragObj( aStartPoint, 0, pHdl, 0 ); - - if ( pView->IsDragObj() ) - { - const FASTBOOL bWasNoSnap = rDragStat.IsNoSnap(); - const BOOL bWasSnapEnabled = pView->IsSnapEnabled(); - - // switch snapping off - if ( !bWasNoSnap ) - ((SdrDragStat&)rDragStat).SetNoSnap( TRUE ); - if ( bWasSnapEnabled ) - pView->SetSnapEnabled( FALSE ); - - Rectangle aNewRect; - bool bCheck = false; - const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); - for (sal_uInt32 i = 0; !bCheck && i < rMarkList.GetMarkCount();++i ) - { - SdrMark* pMark = rMarkList.GetMark(i); - bCheck = dynamic_cast<OUnoObject*>(pMark->GetMarkedSdrObj()) != NULL; - if ( bCheck ) - aNewRect.Union(pMark->GetMarkedSdrObj()->GetLastBoundRect()); - } - - switch(pHdl->GetKind()) - { - case HDL_LEFT: - case HDL_UPLFT: - case HDL_LWLFT: - case HDL_UPPER: - aNewRect.Left() += nX; - aNewRect.Top() += nY; - break; - case HDL_UPRGT: - case HDL_RIGHT: - case HDL_LWRGT: - case HDL_LOWER: - aNewRect.setWidth(aNewRect.getWidth() + nX); - aNewRect.setHeight(aNewRect.getHeight() + nY); - break; - default: - break; - } - if ( !(bCheck && isOver(aNewRect,*pParent->getPage(),*pView)) ) - pView->MovAction( aEndPoint ); - pView->EndDragObj(); - - // restore snap - if ( !bWasNoSnap ) - ((SdrDragStat&)rDragStat).SetNoSnap( bWasNoSnap ); - if ( bWasSnapEnabled ) - pView->SetSnapEnabled( bWasSnapEnabled ); - } - - // make moved handle visible - const Rectangle aVisRect( aEndPoint - Point( DEFAUL_MOVE_SIZE, DEFAUL_MOVE_SIZE ), Size( 200, 200 ) ); - pView->MakeVisible( aVisRect, *pParent); - } - } - pView->AdjustMarkHdl(); - } - else - { - // scroll page - OScrollWindowHelper* pScrollWindow = pParent->getViewsWindow()->getView()->getScrollWindow(); - ScrollBar* pScrollBar = ( nX != 0 ) ? pScrollWindow->GetHScroll() : pScrollWindow->GetVScroll(); - if ( pScrollBar && pScrollBar->IsVisible() ) - pScrollBar->DoScrollAction(( nX < 0 || nY < 0 ) ? SCROLL_LINEUP : SCROLL_LINEDOWN ); - } - + pParent->getViewsWindow()->handleKey(rCode); bReturn = TRUE; } break; @@ -503,7 +379,7 @@ break; } - if ( bReturn ) + if ( bReturn && pParent->IsMouseCaptured() ) pParent->ReleaseMouse(); return bReturn; @@ -553,7 +429,6 @@ bool DlgEdFunc::isOverlapping(const MouseEvent& rMEvt) { bool bOverlapping = false; - OSectionView* pView = pParent->getView(); SdrViewEvent aVEvt; bOverlapping = pView->PickAnything(rMEvt, SDRMOUSEBUTTONUP, aVEvt) != SDRHIT_NONE; if (bOverlapping && aVEvt.pObj) @@ -570,21 +445,37 @@ // ----------------------------------------------------------------------------- void DlgEdFunc::checkMovementAllowed(const MouseEvent& rMEvt) { - OSectionView* pView = pParent->getView(); - if ( pView->IsDragObj() ) + if ( pParent->getViewsWindow()->IsDragObj() ) { if ( isRectangleHit(rMEvt) ) - pView->BrkAction(); + pParent->getViewsWindow()->BrkAction(); // object was dragged - pView->EndDragObj( FALSE /* rMEvt.IsMod1() */ ); // Copy by CTRL-Key not allowed at the moment. - // we create a wrong object here, with no content - // which results in a wrong report, which can't execute - // therefore no copy. LLA: 20070710 - pView->ForceMarkedToAnotherPage(); - pParent->Invalidate(); + const Point aPnt( pParent->PixelToLogic( rMEvt.GetPosPixel() ) ); + pParent->getViewsWindow()->EndDragObj( rMEvt.IsMod1() , pView,aPnt ); + pParent->getViewsWindow()->ForceMarkedToAnotherPage(); + pParent->Invalidate(INVALIDATE_CHILDREN); } - else if ( pView->IsAction() ) - pView->EndAction(); + else + pParent->getViewsWindow()->EndAction(); +} +// ----------------------------------------------------------------------------- +bool DlgEdFunc::isOnlyCustomShapeMarked() +{ + bool bReturn = true; + const SdrMarkList& rMarkList = pView->GetMarkedObjectList(); + for (sal_uInt32 i = 0; i < rMarkList.GetMarkCount();++i ) + { + SdrMark* pMark = rMarkList.GetMark(i); + // bCheck = dynamic_cast<OUnoObject*>(pMark->GetMarkedSdrObj()) != NULL; + SdrObject* pObj = pMark->GetMarkedSdrObj(); + if (pObj->GetObjIdentifier() != OBJ_CUSTOMSHAPE) + { + // we found an object in the marked objects, which is not a custom shape. + bReturn = false; + break; + } + } + return bReturn; } // ----------------------------------------------------------------------------- bool DlgEdFunc::isOnlyCustomShapeMarked() @@ -613,7 +504,6 @@ { return false; } - OSectionView* pView = pParent->getView(); SdrViewEvent aVEvt; const SdrHitKind eHit = pView->PickAnything(rMEvt, SDRMOUSEMOVE, aVEvt); @@ -640,7 +530,6 @@ nDx = -aNewRect.Left(); if ( (nDy + aNewRect.Top()) < 0 ) nDy = -aNewRect.Top(); - Point aTest; rDragStat.GetDragMethod()->MovPoint(aTest); if ( rDragStat.GetDragMethod()->IsMoveOnly() ) @@ -695,39 +584,16 @@ { if ( DlgEdFunc::MouseButtonDown(rMEvt) ) return TRUE; - if( !rMEvt.IsLeft() ) - return TRUE; - - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent); - - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - const USHORT nDrgLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - -#ifdef MAC - pParent->GrabFocus(); -#endif - pParent->CaptureMouse(); SdrViewEvent aVEvt; const SdrHitKind eHit = pView->PickAnything(rMEvt, SDRMOUSEBUTTONDOWN, aVEvt); - if ( rMEvt.IsLeft() && rMEvt.GetClicks() == 1 ) - { - SdrHdl* pHdl = pView->PickHandle(m_aMDPos); - - pParent->getViewsWindow()->unmarkAllObjects(pView); - - // if selected object was hit, drag object - if ( pHdl!=NULL || pView->IsMarkedHit(m_aMDPos, nHitLog) ) - pView->BegDragObj(m_aMDPos, (OutputDevice*) NULL, pHdl, nDrgLog); - if( eHit != SDRHIT_UNMARKEDOBJECT ) { // if no action, create object - if ( !pView->IsAction() ) + if ( !pParent->getViewsWindow()->IsAction() ) { - if ( pView->AreObjectsMarked() ) + if ( pParent->getViewsWindow()->HasSelection() ) pParent->getViewsWindow()->unmarkAllObjects(pView); pView->BegCreateObj(m_aMDPos); pParent->getViewsWindow()->createDefault(); @@ -736,10 +602,9 @@ else { if( !rMEvt.IsShift() ) - pView->UnmarkAll(); + pParent->getViewsWindow()->unmarkAllObjects(NULL); - pView->BegMarkObj( m_aMDPos ); - } + pParent->getViewsWindow()->BegMarkObj( m_aMDPos,pView ); } return TRUE; @@ -748,24 +613,19 @@ //---------------------------------------------------------------------------- BOOL DlgEdFuncInsert::MouseButtonUp( const MouseEvent& rMEvt ) { - DlgEdFunc::MouseButtonUp( rMEvt ); + if ( DlgEdFunc::MouseButtonUp( rMEvt ) ) + return TRUE; const Point aPos( pParent->PixelToLogic( rMEvt.GetPosPixel() ) ); - - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent ); - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - pParent->ReleaseMouse(); - BOOL bReturn = TRUE; // object creation active? if ( pView->IsCreateObj() ) { if ( isOver(pView->GetCreateObj(),*pParent->getPage(),*pView) ) { - pView->BrkAction(); + pParent->getViewsWindow()->BrkAction(); // BrkAction disables the create mode pView->SetCreateMode( TRUE ); return TRUE; @@ -801,32 +661,29 @@ BOOL DlgEdFuncInsert::MouseMove( const MouseEvent& rMEvt ) { + if ( DlgEdFunc::MouseMove(rMEvt ) ) + return TRUE; const Point aPos( pParent->PixelToLogic( rMEvt.GetPosPixel() ) ); - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent ); - if ( pView->IsCreateObj() ) { pView->SetOrtho(SdrObjCustomShape::doConstructOrthogonal(pView->getSectionWindow()->getViewsWindow()->getShapeType()) ? !rMEvt.IsShift() : rMEvt.IsShift()); pView->SetAngleSnapEnabled(rMEvt.IsShift()); } - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - bool bIsSetPoint = false; if ( pView->IsAction() ) { bIsSetPoint = setMovementPointer(rMEvt); ForceScroll(aPos); - pView->MovAction(aPos); + pParent->getViewsWindow()->MovAction(aPos,pView,pView->GetDragMethod() == NULL); } //if ( isOver(pView->GetCreateObj(),*pParent->getPage(),*pView) ) // pParent->SetPointer( Pointer(POINTER_NOTALLOWED)); //else if ( !bIsSetPoint ) - pParent->SetPointer( pView->GetPreferedPointer( aPos, pParent, nHitLog ) ); + pParent->SetPointer( pView->GetPreferedPointer( aPos, pParent) ); return TRUE; } @@ -834,8 +691,7 @@ //---------------------------------------------------------------------------- DlgEdFuncSelect::DlgEdFuncSelect( OReportSection* _pParent ) : - DlgEdFunc( _pParent ), - bMarkAction(FALSE) + DlgEdFunc( _pParent ) { } @@ -852,40 +708,7 @@ m_bSelectionMode = false; if ( DlgEdFunc::MouseButtonDown(rMEvt) ) return TRUE; - // get view from parent - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent); - - const USHORT nDrgLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - - if ( rMEvt.IsLeft() ) - { -#ifdef MAC - pParent->GrabFocus(); -#endif - pParent->CaptureMouse(); - SdrHdl* pHdl = pView->PickHandle(m_aMDPos); - // hit selected object? - if ( (pHdl!=NULL || pView->IsMarkedHit(m_aMDPos, nHitLog)) ) - { - if ( rMEvt.GetClicks() == 1 ) - { - pParent->getViewsWindow()->unmarkAllObjects(pView); - pView->BegDragObj(m_aMDPos, (OutputDevice*) NULL, pHdl, nDrgLog); - } - // TODO character in shapes - //else - //{ - // SdrViewEvent aVEvt; - // pView->PickAnything(rMEvt, SDRMOUSEBUTTONDOWN, aVEvt); - // if ( aVEvt.pRootObj && aVEvt.pRootObj->ISA(SdrTextObj) ) - // SetInEditMode(static_cast<SdrTextObj *>(aVEvt.pRootObj),rMEvt, FALSE); - //} - } - else - { SdrViewEvent aVEvt; const SdrHitKind eHit = pView->PickAnything(rMEvt, SDRMOUSEBUTTONDOWN, aVEvt); if( eHit == SDRHIT_UNMARKEDOBJECT ) @@ -894,17 +717,15 @@ if ( !rMEvt.IsShift() ) pParent->getViewsWindow()->unmarkAllObjects(NULL); - if ( pView->MarkObj(m_aMDPos, nHitLog) && rMEvt.IsLeft() ) + if ( pView->MarkObj(m_aMDPos) && rMEvt.IsLeft() ) { // drag object - pHdl = pView->PickHandle(m_aMDPos); - pView->BegDragObj(m_aMDPos, (OutputDevice*) NULL, pHdl, nDrgLog); + pParent->getViewsWindow()->BegDragObj(m_aMDPos, pView->PickHandle(m_aMDPos), pView); } else { // select object - pView->BegMarkObj(m_aMDPos); - bMarkAction = TRUE; + pParent->getViewsWindow()->BegMarkObj(m_aMDPos,pView); } } else @@ -916,13 +737,11 @@ if ( rMEvt.GetClicks() == 1 ) { m_bSelectionMode = true; - pView->BegMarkObj( m_aMDPos ); + pParent->getViewsWindow()->BegMarkObj( m_aMDPos ,pView); } else pView->SdrBeginTextEdit( aVEvt.pRootObj,pView->GetSdrPageView(),pParent,sal_False ); } - } - } return TRUE; } @@ -931,25 +750,17 @@ BOOL DlgEdFuncSelect::MouseButtonUp( const MouseEvent& rMEvt ) { - DlgEdFunc::MouseButtonUp( rMEvt ); + if ( DlgEdFunc::MouseButtonUp( rMEvt ) ) + return TRUE; // get view from parent const Point aPnt( pParent->PixelToLogic( rMEvt.GetPosPixel() ) ); - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent ); - - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); if ( rMEvt.IsLeft() ) checkMovementAllowed(rMEvt); - bMarkAction = FALSE; - - if ( pView && pView->IsAction() ) - pView->EndAction(); - - pParent->SetPointer( pView->GetPreferedPointer( aPnt, pParent, nHitLog ) ); - pParent->ReleaseMouse(); + pParent->getViewsWindow()->EndAction(); + pParent->SetPointer( pView->GetPreferedPointer( aPnt, pParent) ); pParent->getViewsWindow()->getView()->getReportView()->UpdatePropertyBrowserDelayed(pView); m_bSelectionMode = false; @@ -960,8 +771,8 @@ BOOL DlgEdFuncSelect::MouseMove( const MouseEvent& rMEvt ) { - OSectionView* pView = pParent->getView(); - pView->SetActualWin( pParent); + if ( DlgEdFunc::MouseMove(rMEvt ) ) + return TRUE; const Point aPnt( pParent->PixelToLogic( rMEvt.GetPosPixel() ) ); bool bIsSetPoint = false; @@ -970,13 +781,12 @@ { bIsSetPoint = setMovementPointer(rMEvt); ForceScroll(aPnt); - pView->MovAction(aPnt); + pParent->getViewsWindow()->MovAction(aPnt,pView,pView->GetDragMethod() == NULL); } if ( !bIsSetPoint ) { - const USHORT nHitLog = USHORT ( pParent->PixelToLogic(Size(3,0)).Width() ); - pParent->SetPointer( pView->GetPreferedPointer( aPnt, pParent, nHitLog ) ); + pParent->SetPointer( pView->GetPreferedPointer( aPnt, pParent) ); // restore color unColorizeOverlappedObj(); @@ -987,8 +797,6 @@ // ----------------------------------------------------------------------------- //void DlgEdFuncSelect::SetInEditMode(SdrTextObj* _pTextObj,const MouseEvent& rMEvt, BOOL bQuickDrag) //{ -// OSectionView* pView = pParent->getView(); -// pView->SetActualWin( pParent); // // SdrPageView* pPV = pView->GetSdrPageView(); // if( _pTextObj && _pTextObj->GetPage() == pPV->GetPage() ) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
