LibreOffice Module vcl (master)
1
|
#include <seleng.hxx>
Private Member Functions | |
DECL_DLLPRIVATE_LINK (ImpWatchDog, Timer *, void) | |
bool | ShouldDeselect (bool bModifierKey1) const |
Private Attributes | |
FunctionSet * | pFunctionSet |
VclPtr< vcl::Window > | pWin |
tools::Rectangle | aArea |
Timer | aWTimer |
MouseEvent | aLastMove |
SelectionMode | eSelMode |
sal_uLong | nUpdateInterval |
sal_uInt16 | nLockedMods |
SelectionEngineFlags | nFlags |
Definition at line 74 of file seleng.hxx.
SelectionEngine::SelectionEngine | ( | vcl::Window * | pWindow, |
FunctionSet * | pFunctions = nullptr |
||
) |
Definition at line 37 of file seleng.cxx.
References aWTimer, eSelMode, EXPANDONMOVE, LINK, nFlags, nLockedMods, nUpdateInterval, pFunctionSet, Task::SetDebugName(), Timer::SetInvokeHandler(), Timer::SetTimeout(), and Single.
SelectionEngine::~SelectionEngine | ( | ) |
Definition at line 51 of file seleng.cxx.
References aWTimer, and Task::Stop().
|
inline |
Definition at line 187 of file seleng.hxx.
References ADD_ALW, and nFlags.
Referenced by SvImpLBox::KeyInput(), SvImpLBox::SetSelectionMode(), and SvImpLBox::SetStyle().
void SelectionEngine::CaptureMouse | ( | ) |
Definition at line 296 of file seleng.cxx.
References vcl::Window::CaptureMouse(), vcl::Window::IsMouseCaptured(), and pWin.
Referenced by SelMouseButtonDown(), and SetWindow().
bool SelectionEngine::Command | ( | const CommandEvent & | rCEvt | ) |
Definition at line 358 of file seleng.cxx.
References aLastMove, aWTimer, FunctionSet::BeginDrag(), CMDEVT, DRG_ENAB, MouseEvent::GetButtons(), MouseEvent::GetClicks(), CommandEvent::GetCommand(), MouseEvent::GetMode(), MouseEvent::GetModifier(), CommandEvent::GetMousePosPixel(), IN_SEL, Task::IsActive(), CommandEvent::IsMouseEvent(), FunctionSet::IsSelectionAtPoint(), nFlags, pFunctionSet, SAL_WARN_IF, StartDrag, Task::Stop(), and WAIT_UPEVT.
Referenced by SvImpLBox::Command().
void SelectionEngine::CursorPosChanging | ( | bool | bShift, |
bool | bMod1 | ||
) |
Definition at line 67 of file seleng.cxx.
References FunctionSet::CreateAnchor(), FunctionSet::DeselectAll(), FunctionSet::DestroyAnchor(), eSelMode, HAS_ANCH, IsAddMode(), nFlags, pFunctionSet, ShouldDeselect(), and Single.
Referenced by IconViewImpl::KeyInput(), and SvImpLBox::KeyInput().
|
inline |
Definition at line 179 of file seleng.hxx.
References DRG_ENAB, and nFlags.
Referenced by SvImpLBox::SetDragDropMode().
|
inline |
Definition at line 154 of file seleng.hxx.
References EXPANDONMOVE.
Referenced by SvImpLBox::SetDragDropMode(), and SvImpLBox::SvImpLBox().
|
inline |
Definition at line 130 of file seleng.hxx.
|
inline |
Definition at line 141 of file seleng.hxx.
|
inline |
Definition at line 134 of file seleng.hxx.
|
inline |
Definition at line 132 of file seleng.hxx.
References MouseEvent::GetPosPixel(), and Point.
Referenced by SvImpLBox::BeginDrag().
|
inline |
Definition at line 126 of file seleng.hxx.
Referenced by SvImpLBox::EntrySelected(), SvImpLBox::MakePointVisible(), SvImpLBox::MouseButtonDown(), SvImpLBox::MouseButtonUp(), SvImpLBox::MouseMove(), IconViewImpl::Paint(), SvImpLBox::Paint(), SvImpLBox::SetCurEntry(), SvImpLBox::SetCursor(), and SvImpLBox::SetStyle().
|
inline |
Definition at line 137 of file seleng.hxx.
|
inline |
Definition at line 211 of file seleng.hxx.
|
inline |
Definition at line 163 of file seleng.hxx.
References ADD_ALW, IN_ADD, and nFlags.
Referenced by CursorPosChanging(), SvImpLBox::KeyInput(), SelMouseButtonDown(), and SvImpLBox::SetCursor().
|
inline |
Definition at line 195 of file seleng.hxx.
References ADD_ALW, and nFlags.
Referenced by SvImpLBox::KeyInput(), SvImpLBox::MouseButtonDown(), and SelMouseButtonUp().
|
inline |
Definition at line 203 of file seleng.hxx.
|
inline |
Definition at line 139 of file seleng.hxx.
void SelectionEngine::ReleaseMouse | ( | ) |
Definition at line 289 of file seleng.cxx.
References vcl::Window::IsMouseCaptured(), pWin, and vcl::Window::ReleaseMouse().
Referenced by Reset(), SelMouseButtonDown(), SelMouseButtonUp(), and SetWindow().
Definition at line 349 of file seleng.cxx.
References aWTimer, HAS_ANCH, IN_SEL, nFlags, nLockedMods, ReleaseMouse(), and Task::Stop().
Referenced by SvImpLBox::DestroyAnchor().
bool SelectionEngine::SelMouseButtonDown | ( | const MouseEvent & | rMEvt | ) |
Definition at line 115 of file seleng.cxx.
References ADD_ALW, aLastMove, CaptureMouse(), CMDEVT, FunctionSet::CreateAnchor(), FunctionSet::DeselectAll(), FunctionSet::DeselectAtPoint(), FunctionSet::DestroyAnchor(), DRG_ENAB, eSelMode, MouseEvent::GetClicks(), MouseEvent::GetModifier(), MouseEvent::GetPosPixel(), HAS_ANCH, IN_ADD, IN_SEL, comphelper::LibreOfficeKit::isActive(), IsAddMode(), MouseEvent::IsRight(), FunctionSet::IsSelectionAtPoint(), KEY_MOD1, KEY_MOD2, KEY_SHIFT, Multiple, nFlags, nLockedMods, pFunctionSet, Point, ReleaseMouse(), FunctionSet::SetCursorAtPoint(), Single, and WAIT_UPEVT.
Referenced by SvImpLBox::MouseButtonDown().
bool SelectionEngine::SelMouseButtonUp | ( | const MouseEvent & | rMEvt | ) |
Definition at line 246 of file seleng.cxx.
References aLastMove, aWTimer, CMDEVT, FunctionSet::DeselectAll(), FunctionSet::DeselectAtPoint(), FunctionSet::DestroyAnchor(), eSelMode, MouseEvent::GetModifier(), MouseEvent::GetPosPixel(), HAS_ANCH, IN_SEL, IsAlwaysAdding(), MouseEvent::IsRight(), KEY_MOD1, KEY_SHIFT, nFlags, nLockedMods, pFunctionSet, ReleaseMouse(), FunctionSet::SetCursorAtPoint(), Single, Task::Stop(), and WAIT_UPEVT.
Referenced by SvImpLBox::MouseButtonUp().
bool SelectionEngine::SelMouseMove | ( | const MouseEvent & | rMEvt | ) |
Definition at line 303 of file seleng.cxx.
References aArea, aLastMove, aWTimer, CMDEVT, FunctionSet::CreateAnchor(), eSelMode, EXPANDONMOVE, MouseEvent::GetPosPixel(), HAS_ANCH, IN_SEL, comphelper::LibreOfficeKit::isActive(), Task::IsActive(), tools::Rectangle::IsInside(), nFlags, nUpdateInterval, pFunctionSet, FunctionSet::SetCursorAtPoint(), Timer::SetTimeout(), Single, Timer::Start(), and WAIT_UPEVT.
Referenced by SvImpLBox::MouseMove().
|
inline |
Definition at line 171 of file seleng.hxx.
|
inline |
Definition at line 219 of file seleng.hxx.
|
inline |
Definition at line 128 of file seleng.hxx.
Referenced by SvImpLBox::SvImpLBox().
void SelectionEngine::SetSelectionMode | ( | SelectionMode | eMode | ) |
Definition at line 62 of file seleng.cxx.
References eSelMode.
Referenced by SvImpLBox::SetSelectionMode().
Definition at line 388 of file seleng.cxx.
References aWTimer, Task::IsActive(), nUpdateInterval, SELENG_AUTOREPEAT_INTERVAL_MIN, Timer::SetTimeout(), Timer::Start(), and Task::Stop().
|
inline |
Definition at line 114 of file seleng.hxx.
Referenced by IconViewImpl::AdjustScrollBars(), and SvImpLBox::AdjustScrollBars().
void SelectionEngine::SetWindow | ( | vcl::Window * | pNewWin | ) |
Definition at line 337 of file seleng.cxx.
References CaptureMouse(), IN_SEL, nFlags, pWin, and ReleaseMouse().
|
inlineprivate |
Definition at line 30 of file seleng.cxx.
References eSelMode, and Multiple.
Referenced by CursorPosChanging().
|
private |
Definition at line 79 of file seleng.hxx.
Referenced by SelMouseMove().
|
private |
Definition at line 81 of file seleng.hxx.
Referenced by Command(), SelMouseButtonDown(), SelMouseButtonUp(), and SelMouseMove().
|
private |
Definition at line 80 of file seleng.hxx.
Referenced by Command(), Reset(), SelectionEngine(), SelMouseButtonUp(), SelMouseMove(), SetUpdateInterval(), and ~SelectionEngine().
|
private |
Definition at line 82 of file seleng.hxx.
Referenced by CursorPosChanging(), SelectionEngine(), SelMouseButtonDown(), SelMouseButtonUp(), SelMouseMove(), SetSelectionMode(), and ShouldDeselect().
|
private |
Definition at line 85 of file seleng.hxx.
Referenced by AddAlways(), Command(), CursorPosChanging(), EnableDrag(), HasAnchor(), IsAddMode(), IsAlwaysAdding(), IsInSelection(), Reset(), SelectionEngine(), SelMouseButtonDown(), SelMouseButtonUp(), SelMouseMove(), SetAddMode(), SetAnchor(), and SetWindow().
|
private |
Definition at line 84 of file seleng.hxx.
Referenced by Reset(), SelectionEngine(), SelMouseButtonDown(), and SelMouseButtonUp().
|
private |
Definition at line 83 of file seleng.hxx.
Referenced by SelectionEngine(), SelMouseMove(), and SetUpdateInterval().
|
private |
Definition at line 77 of file seleng.hxx.
Referenced by Command(), CursorPosChanging(), SelectionEngine(), SelMouseButtonDown(), SelMouseButtonUp(), and SelMouseMove().
|
private |
Definition at line 78 of file seleng.hxx.
Referenced by CaptureMouse(), ReleaseMouse(), and SetWindow().