LibreOffice Module sd (master) 1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
sd::FuSelection Class Referencefinal

#include <fusel.hxx>

Inheritance diagram for sd::FuSelection:
[legend]
Collaboration diagram for sd::FuSelection:
[legend]

Public Member Functions

virtual void DoExecute (SfxRequest &rReq) override
 
virtual bool KeyInput (const KeyEvent &rKEvt) override
 Process keyboard input. More...
 
virtual bool MouseMove (const MouseEvent &rMEvt) override
 
virtual bool MouseButtonUp (const MouseEvent &rMEvt) override
 
virtual bool MouseButtonDown (const MouseEvent &rMEvt) override
 
virtual void Activate () override
 activates the function More...
 
virtual void SelectionHasChanged () override
 
void SetEditMode (sal_uInt16 nMode)
 Set current bezier edit mode. More...
 
sal_uInt16 GetEditMode () const
 
bool HandleImageMapClick (const SdrObject *pObj, const Point &rPos)
 Execute ImageMap interaction. More...
 
virtual bool cancel () override
 is called when the current function should be aborted. More...
 
virtual void ForcePointer (const MouseEvent *pMEvt=nullptr) override
 Toggle mouse-pointer. More...
 
- Public Member Functions inherited from sd::FuDraw
virtual bool KeyInput (const KeyEvent &rKEvt) override
 Process keyboard input. More...
 
virtual bool MouseMove (const MouseEvent &rMEvt) override
 
virtual bool MouseButtonUp (const MouseEvent &rMEvt) override
 
virtual bool MouseButtonDown (const MouseEvent &rMEvt) override
 
virtual bool RequestHelp (const HelpEvent &rHEvt) override
 
virtual void Activate () override
 activates the function More...
 
virtual void ForcePointer (const MouseEvent *pMEvt=nullptr)
 Toggle mouse-pointer. More...
 
virtual void DoubleClick (const MouseEvent &rMEvt)
 Response of doubleclick. More...
 
bool SetPointer (const SdrObject *pObj, const Point &rPos)
 Set cursor to pointer when in clickable area of an ImageMap. More...
 
bool SetHelpText (const SdrObject *pObj, const Point &rPos, const SdrViewEvent &rVEvt)
 
void SetPermanent (bool bSet)
 
virtual bool cancel () override
 is called when the current function should be aborted. More...
 
- Public Member Functions inherited from sd::FuPoor
virtual void DoExecute (SfxRequest &rReq)
 
void SetMouseButtonCode (sal_uInt16 nNew)
 
sal_uInt16 GetMouseButtonCode () const
 
DrawDocShellGetDocSh ()
 
virtual void DoCut ()
 Cut object to clipboard. More...
 
virtual void DoCopy ()
 Copy object to clipboard. More...
 
virtual void DoPaste ()
 Paste object from clipboard. More...
 
virtual void DoPasteUnformatted ()
 Paste unformatted text from clipboard. More...
 
virtual bool KeyInput (const KeyEvent &rKEvt)
 handle keyboard events More...
 
virtual bool MouseMove (const MouseEvent &)
 
virtual bool MouseButtonUp (const MouseEvent &rMEvt)
 
virtual bool MouseButtonDown (const MouseEvent &rMEvt)
 
virtual bool Command (const CommandEvent &rCEvt)
 
virtual bool RequestHelp (const HelpEvent &rHEvt)
 
virtual void ReceiveRequest (SfxRequest &rReq)
 
virtual void Activate ()
 activates the function More...
 
virtual void Deactivate ()
 deactivates the function More...
 
void SetWindow (::sd::Window *pWin)
 
virtual void SelectionHasChanged ()
 
sal_uInt16 GetSlotID () const
 
void StartDelayToScrollTimer ()
 
virtual rtl::Reference< SdrObjectCreateDefaultObject (const sal_uInt16 nID, const ::tools::Rectangle &rRectangle)
 
virtual bool cancel ()
 is called when the current function should be aborted. More...
 
virtual bool doConstructOrthogonal () const
 Decide if the object to be created should be created orthogonal. More...
 
- Public Member Functions inherited from sd::SimpleReferenceComponent
 SimpleReferenceComponent ()
 
void acquire ()
 @ATTENTION The results are undefined if, for any individual instance of SimpleReferenceComponent, the total number of calls to acquire() exceeds the total number of calls to release() by a platform dependent amount (which, hopefully, is quite large). More...
 
void release ()
 
void Dispose ()
 
bool isDisposed () const
 

Static Public Member Functions

static rtl::Reference< FuPoorCreate (ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
 

Private Member Functions

 FuSelection (ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
 
virtual ~FuSelection () override
 
SdrObjectpickObject (const Point &rTestPoint)
 Find the object under the given test point without selecting it. More...
 

Private Attributes

bool bTempRotation
 
bool bSelectionChanged
 
SdrHdlpHdl
 
bool bSuppressChangesOfSelection
 
bool bMirrorSide0
 
sal_uInt16 nEditMode
 
SdrObjectpWaterCanCandidate
 This pointer stores a candidate for assigning a style in the water can mode between mouse button down and mouse button up. More...
 
bool bBeginInsertPoint
 
Point oldPoint
 
bool bMovedToCenterPoint
 

Additional Inherited Members

- Static Public Attributes inherited from sd::FuPoor
static const int HITPIX = 2
 
static const int HITLOG = 53
 
static const int DRGLOG = 53
 
- Protected Member Functions inherited from sd::FuDraw
 FuDraw (ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
 Base-class for all drawmodul-specific functions. More...
 
virtual ~FuDraw () override
 
- Protected Member Functions inherited from sd::FuPoor
 FuPoor (ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
 
virtual ~FuPoor () override
 
 DECL_LINK (DelayHdl, Timer *, void)
 
void SwitchLayer (sal_Int32 nOffset)
 Switch to another layer. More...
 
 DECL_LINK (ScrollHdl, Timer *, void)
 
void ForceScroll (const Point &aPixPos)
 scroll when approached the border of the window; is called by MouseMove More...
 
 DECL_LINK (DragHdl, Timer *, void)
 
- Protected Member Functions inherited from sd::SimpleReferenceComponent
virtual void disposing ()
 
virtual ~SimpleReferenceComponent ()
 
- Static Protected Member Functions inherited from sd::FuPoor
static void ImpForceQuadratic (::tools::Rectangle &rRect)
 
- Protected Attributes inherited from sd::FuDraw
PointerStyle aNewPointer
 
PointerStyle aOldPointer
 
bool bMBDown
 
bool bDragHelpLine
 
sal_uInt16 nHelpLine
 
bool bPermanent
 
- Protected Attributes inherited from sd::FuPoor
::sd::ViewmpView
 
ViewShellmpViewShell
 
VclPtr< ::sd::WindowmpWindow
 
DrawDocShellmpDocSh
 
SdDrawDocumentmpDoc
 
sal_uInt16 nSlotId
 
Timer aScrollTimer
 for auto-scrolling More...
 
Timer aDragTimer
 for Drag&Drop More...
 
bool bIsInDragMode
 
Point aMDPos
 position of MouseButtonDown More...
 
bool bNoScrollUntilInside
 Flag to prevent auto-scrolling until one drags from outside into the window. More...
 
Timer aDelayToScrollTimer
 timer to delay scrolling (~ 1 sec) when dragging out of the window More...
 
bool bScrollable
 
bool bDelayActive
 
bool bFirstMouseMove
 

Detailed Description

Definition at line 31 of file fusel.hxx.

Constructor & Destructor Documentation

◆ FuSelection()

FuSelection::FuSelection ( ViewShell pViewSh,
::sd::Window pWin,
::sd::View pView,
SdDrawDocument pDoc,
SfxRequest rReq 
)
private

Definition at line 67 of file fusel.cxx.

Referenced by Create().

◆ ~FuSelection()

FuSelection::~FuSelection ( )
overrideprivatevirtual

Member Function Documentation

◆ Activate()

void FuSelection::Activate ( )
overridevirtual

◆ cancel()

bool FuSelection::cancel ( )
overridevirtual

is called when the current function should be aborted.

This is used when a function gets a KEY_ESCAPE but can also be called directly.

Returns
true if an active function was aborted

Reimplemented from sd::FuDraw.

Definition at line 1294 of file fusel.cxx.

References SfxDispatcher::Execute(), SfxViewFrame::GetDispatcher(), sd::ViewShell::GetViewFrame(), E3dView::Is3DRotationCreationActive(), sd::FuPoor::mpView, sd::FuPoor::mpViewShell, and E3dView::ResetCreationActive().

Referenced by KeyInput().

◆ Create()

rtl::Reference< FuPoor > FuSelection::Create ( ViewShell pViewSh,
::sd::Window pWin,
::sd::View pView,
SdDrawDocument pDoc,
SfxRequest rReq 
)
static

Definition at line 89 of file fusel.cxx.

References FuSelection().

Referenced by sd::DrawViewShell::FuPermanent(), and sd::DrawViewShell::FuTemporary().

◆ DoExecute()

void FuSelection::DoExecute ( SfxRequest rReq)
overridevirtual

Reimplemented from sd::FuPoor.

Definition at line 96 of file fusel.cxx.

References sd::FuPoor::DoExecute(), and SelectionHasChanged().

◆ ForcePointer()

void FuSelection::ForcePointer ( const MouseEvent pMEvt = nullptr)
overridevirtual

◆ GetEditMode()

sal_uInt16 sd::FuSelection::GetEditMode ( ) const
inline

Definition at line 50 of file fusel.hxx.

References nEditMode.

◆ HandleImageMapClick()

bool FuSelection::HandleImageMapClick ( const SdrObject pObj,
const Point rPos 
)

◆ KeyInput()

bool FuSelection::KeyInput ( const KeyEvent rKEvt)
overridevirtual

◆ MouseButtonDown()

bool FuSelection::MouseButtonDown ( const MouseEvent rMEvt)
overridevirtual

Reimplemented from sd::FuDraw.

Definition at line 125 of file fusel.cxx.

References Activate(), sd::FuPoor::aDragTimer, sd::FuPoor::aMDPos, SdrMarkView::AreObjectsMarked(), SdrCreateView::BckAction(), E3dView::BegDragObj(), SdrDragView::BegInsObjPoint(), SdrObjEditView::BegMacroObj(), SdrMarkView::BegMarkObj(), SdrMarkView::BegMarkPoints(), sd::FuPoor::bFirstMouseMove, sd::FuPoor::bIsInDragMode, sd::FuDraw::bMBDown, bMirrorSide0, bReadOnly, bSelectionChanged, bSuppressChangesOfSelection, bTempRotation, sd::FuPoor::DRGLOG, DynCastE3dScene(), E3dView::End3DCreation(), SdrPageView::EnterGroup(), SfxDispatcher::ExecuteList(), ForcePointer(), GetAngle(), MouseEvent::GetClicks(), SfxViewFrame::GetDispatcher(), SdrDragView::GetDragMethod(), SdrDragView::GetDragThresholdPixels(), sd::ViewShell::GetFrameView(), SdrPaintView::getHitTolLog(), SfxViewShell::GetIPClient(), SdrHdl::GetKind(), SdrMarkList::GetMarkCount(), SdrMarkView::GetMarkedObjectList(), SfxObjectShell::GetMedium(), SfxMedium::GetName(), SdrObject::GetObjIdentifier(), SdrObject::GetObjInventor(), SdrPageView::GetPage(), SdrMarkView::GetRef1(), SdrObject::getSdrPageFromSdrObject(), SfxObjectShell::GetSignPDFCertificate(), SvxURLField::GetURL(), sd::ViewShell::GetViewFrame(), SfxShell::GetViewShell(), sd::ViewShell::GetViewShellBase(), HandleImageMapClick(), sd::View::HasMarkablePoints(), sd::FuPoor::HITLOG, sd::FuPoor::HITPIX, E3dView::Is3DRotationCreationActive(), SdrCreateView::IsAction(), comphelper::LibreOfficeKit::isActive(), SdrObject::IsEmptyPresObj(), SdrMarkView::IsFrameDragSingles(), SdrPaintView::IsGroupEntered(), MouseEvent::IsLeft(), SdrMarkView::IsMarkedHit(), SdrPage::IsMasterPage(), MouseEvent::IsMod1(), MouseEvent::IsMod2(), SfxInPlaceClient::IsObjectInPlaceActive(), SdrMarkView::IsPointMarked(), sd::FrameView::IsQuickEdit(), SfxObjectShell::IsReadOnly(), MouseEvent::IsRight(), MouseEvent::IsShift(), SdrPaintView::LeaveOneGroup(), SfxViewShell::libreOfficeKitViewCallback(), SdrMarkView::MarkNextObj(), SdrMarkView::MarkObj(), sd::View::MarkPoint(), SdrViewEvent::meEvent, sd::FuDraw::MouseButtonDown(), sd::FuPoor::mpDocSh, SdrViewEvent::mpHdl, SdrViewEvent::mpObj, SdrViewEvent::mpURLField, sd::FuPoor::mpView, sd::FuPoor::mpViewShell, sd::FuPoor::mpWindow, nEditMode, NormAngle36000(), sd::FuPoor::nSlotId, pHdl, SdrView::PickAnything(), SdrMarkView::PickHandle(), SdrMarkView::PickObj(), pickObject(), pWaterCanCandidate, E3dView::ResetCreationActive(), SD_MOD, SdrDragMethod::SetShiftPressed(), Timer::Start(), SdrView::UnmarkAll(), SdrMarkView::UnmarkAllObj(), SdrMarkView::UnmarkAllPoints(), SdrMarkView::UnmarkPoint(), and Width.

Referenced by KeyInput().

◆ MouseButtonUp()

bool FuSelection::MouseButtonUp ( const MouseEvent rMEvt)
overridevirtual

Reimplemented from sd::FuDraw.

Definition at line 641 of file fusel.cxx.

References Activate(), SdrEditView::AddUndo(), sd::FuPoor::aDragTimer, sd::FuPoor::aMDPos, SdrEditView::BegUndo(), sd::FuPoor::bIsInDragMode, sd::FuDraw::bMBDown, bMirrorSide0, bSelectionChanged, bSuppressChangesOfSelection, bTempRotation, svx::diagram::DiagramFrameHdl::clicked(), SdrUndoFactory::CreateUndoAttrObject(), SdrUndoFactory::CreateUndoGeoObject(), sd::FuDraw::DoubleClick(), E3dView::End3DCreation(), SdrCreateView::EndAction(), SdrDragView::EndDragObj(), SdrDragView::EndInsObjPoint(), SdrEditView::EndUndo(), SfxDispatcher::Execute(), SdrEditView::ForceMarkedToAnotherPage(), ForcePointer(), SdStyleSheetPool::GetActualStyleSheet(), GetAngle(), MouseEvent::GetClicks(), SfxViewFrame::GetDispatcher(), SdrMarkView::GetDragMode(), SdrDragView::GetDragThresholdPixels(), sd::ViewShell::GetFrameView(), SdrPaintView::getHitTolLog(), SdrHdl::GetKind(), SdrMarkList::GetMark(), SdrMarkList::GetMarkCount(), SdrMarkView::GetMarkedObjectList(), SdrMark::GetMarkedSdrObj(), SdrObject::GetObjIdentifier(), SdrObject::GetObjInventor(), MouseEvent::GetPosPixel(), SdrMarkView::GetRef1(), SdrModel::GetSdrUndoFactory(), sd::DrawDocShell::GetStyleSheetPool(), sd::ViewShell::GetViewFrame(), sd::View::HasMarkablePoints(), sd::FuPoor::HITPIX, E3dView::Is3DRotationCreationActive(), SdrCreateView::IsAction(), comphelper::LibreOfficeKit::isActive(), Task::IsActive(), sd::FrameView::IsClickChangeRotation(), SdrEditView::IsCrookAllowed(), SdrSnapView::IsCrookNoContortion(), SdrObject::isDiagram(), SdrEditView::IsDistortAllowed(), SdrDragView::IsDragObj(), SdrDragView::IsDragWithCopy(), SdrMarkView::IsFrameDragSingles(), SdrDragView::IsInsObjPoint(), MouseEvent::IsLeft(), MouseEvent::IsMod1(), MouseEvent::IsMod2(), SdrPageView::IsObjMarkable(), sd::View::IsPresObjSelected(), MouseEvent::IsRight(), SdrEditView::IsRotateAllowed(), SdrEditView::IsShearAllowed(), MouseEvent::IsShift(), SdrEditView::IsUndoEnabled(), SdrMarkView::MarkObj(), sd::FuDraw::MouseButtonUp(), sd::FuPoor::mpDoc, sd::FuPoor::mpDocSh, sd::FuPoor::mpView, sd::FuPoor::mpViewShell, sd::FuPoor::mpWindow, NormAngle36000(), sd::FuPoor::nSlotId, pHdl, SdrView::PickAnything(), SdrMarkView::PickObj(), pickObject(), pWaterCanCandidate, SD_MOD, SdrDragView::SetDragWithCopy(), SdrObject::SetStyleSheet(), E3dView::Start3DCreation(), Task::Stop(), SdrMarkView::UnmarkAllObj(), Width, Point::X(), and Point::Y().

Referenced by KeyInput().

◆ MouseMove()

bool FuSelection::MouseMove ( const MouseEvent rMEvt)
overridevirtual

◆ pickObject()

SdrObject * FuSelection::pickObject ( const Point rTestPoint)
private

Find the object under the given test point without selecting it.

Parameters
rTestPointThe coordinates at which to search for a shape.
Returns
The shape at the test point. When there is no shape at this position then NULL is returned.

Definition at line 1308 of file fusel.cxx.

References sd::FuPoor::HITPIX, sd::FuPoor::mpView, sd::FuPoor::mpWindow, SdrMarkView::PickObj(), and Width.

Referenced by MouseButtonDown(), and MouseButtonUp().

◆ SelectionHasChanged()

void FuSelection::SelectionHasChanged ( )
overridevirtual

◆ SetEditMode()

void FuSelection::SetEditMode ( sal_uInt16  nMode)

Member Data Documentation

◆ bBeginInsertPoint

bool sd::FuSelection::bBeginInsertPoint
private

Definition at line 96 of file fusel.hxx.

Referenced by ForcePointer(), and KeyInput().

◆ bMirrorSide0

bool sd::FuSelection::bMirrorSide0
private

Definition at line 78 of file fusel.hxx.

Referenced by MouseButtonDown(), and MouseButtonUp().

◆ bMovedToCenterPoint

bool sd::FuSelection::bMovedToCenterPoint
private

Definition at line 99 of file fusel.hxx.

Referenced by ForcePointer(), and KeyInput().

◆ bSelectionChanged

bool sd::FuSelection::bSelectionChanged
private

Definition at line 75 of file fusel.hxx.

Referenced by MouseButtonDown(), MouseButtonUp(), and SelectionHasChanged().

◆ bSuppressChangesOfSelection

bool sd::FuSelection::bSuppressChangesOfSelection
private

Definition at line 77 of file fusel.hxx.

Referenced by Activate(), MouseButtonDown(), MouseButtonUp(), and SelectionHasChanged().

◆ bTempRotation

bool sd::FuSelection::bTempRotation
private

Definition at line 74 of file fusel.hxx.

Referenced by Activate(), MouseButtonDown(), and MouseButtonUp().

◆ nEditMode

sal_uInt16 sd::FuSelection::nEditMode
private

Definition at line 79 of file fusel.hxx.

Referenced by GetEditMode(), KeyInput(), MouseButtonDown(), and SetEditMode().

◆ oldPoint

Point sd::FuSelection::oldPoint
private

Definition at line 97 of file fusel.hxx.

Referenced by KeyInput().

◆ pHdl

SdrHdl* sd::FuSelection::pHdl
private

Definition at line 76 of file fusel.hxx.

Referenced by MouseButtonDown(), and MouseButtonUp().

◆ pWaterCanCandidate

SdrObject* sd::FuSelection::pWaterCanCandidate
private

This pointer stores a candidate for assigning a style in the water can mode between mouse button down and mouse button up.

Definition at line 84 of file fusel.hxx.

Referenced by MouseButtonDown(), and MouseButtonUp().


The documentation for this class was generated from the following files: