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 78 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, Timer::SetInvokeHandler(), Timer::SetTimeout(), and Single.
SelectionEngine::~SelectionEngine | ( | ) |
Definition at line 51 of file seleng.cxx.
References aWTimer, and Task::Stop().
|
delete |
|
delete |
|
inline |
Definition at line 198 of file seleng.hxx.
References ADD_ALW, and nFlags.
Referenced by SvImpLBox::KeyInput(), SvImpLBox::SetSelectionMode(), and SvImpLBox::SetStyle().
void SelectionEngine::CaptureMouse | ( | ) |
Definition at line 306 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 368 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 SvImpLBox::KeyInput(), and IconViewImpl::KeyInput().
|
private |
|
inline |
Definition at line 190 of file seleng.hxx.
References DRG_ENAB, and nFlags.
Referenced by SvImpLBox::SetDragDropMode().
|
inline |
Definition at line 165 of file seleng.hxx.
References EXPANDONMOVE.
Referenced by SvImpLBox::SetDragDropMode(), and SvImpLBox::SvImpLBox().
|
inline |
Definition at line 141 of file seleng.hxx.
|
inline |
Definition at line 152 of file seleng.hxx.
|
inline |
Definition at line 145 of file seleng.hxx.
|
inline |
Definition at line 143 of file seleng.hxx.
References MouseEvent::GetPosPixel().
Referenced by SvImpLBox::BeginDrag().
|
inline |
Definition at line 137 of file seleng.hxx.
Referenced by SvImpLBox::EntrySelected(), SvImpLBox::MakePointVisible(), SvImpLBox::MouseButtonDown(), SvImpLBox::MouseButtonUp(), SvImpLBox::MouseMove(), SvImpLBox::Paint(), IconViewImpl::Paint(), SvImpLBox::SetCurEntry(), SvImpLBox::SetCursor(), and SvImpLBox::SetStyle().
|
inline |
Definition at line 148 of file seleng.hxx.
|
inline |
Definition at line 222 of file seleng.hxx.
|
inline |
Definition at line 174 of file seleng.hxx.
References ADD_ALW, IN_ADD, and nFlags.
Referenced by CursorPosChanging(), SvImpLBox::KeyInput(), SelMouseButtonDown(), and SvImpLBox::SetCursor().
|
inline |
Definition at line 206 of file seleng.hxx.
References ADD_ALW, and nFlags.
Referenced by SvImpLBox::KeyInput(), SvImpLBox::MouseButtonDown(), and SelMouseButtonUp().
|
inline |
Definition at line 214 of file seleng.hxx.
|
inline |
Definition at line 150 of file seleng.hxx.
|
delete |
|
delete |
void SelectionEngine::ReleaseMouse | ( | ) |
Definition at line 299 of file seleng.cxx.
References vcl::Window::IsMouseCaptured(), pWin, and vcl::Window::ReleaseMouse().
Referenced by Reset(), SelMouseButtonDown(), SelMouseButtonUp(), and SetWindow().
void SelectionEngine::Reset | ( | void | ) |
Definition at line 359 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, ReleaseMouse(), FunctionSet::SetCursorAtPoint(), Single, and WAIT_UPEVT.
Referenced by SvImpLBox::MouseButtonDown().
bool SelectionEngine::SelMouseButtonUp | ( | const MouseEvent & | rMEvt | ) |
Definition at line 247 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 313 of file seleng.cxx.
References aArea, aLastMove, aWTimer, CMDEVT, tools::Rectangle::Contains(), FunctionSet::CreateAnchor(), eSelMode, EXPANDONMOVE, MouseEvent::GetPosPixel(), HAS_ANCH, IN_SEL, comphelper::LibreOfficeKit::isActive(), Task::IsActive(), nFlags, nUpdateInterval, pFunctionSet, FunctionSet::SetCursorAtPoint(), Timer::SetTimeout(), Single, Timer::Start(), and WAIT_UPEVT.
Referenced by SvImpLBox::MouseMove().
|
inline |
Definition at line 182 of file seleng.hxx.
|
inline |
Definition at line 230 of file seleng.hxx.
|
inline |
Definition at line 139 of file seleng.hxx.
Referenced by SvImpLBox::SvImpLBox().
void SelectionEngine::SetSelectionMode | ( | SelectionMode | eMode | ) |
Definition at line 62 of file seleng.cxx.
References eMode, and eSelMode.
Referenced by SvImpLBox::SetSelectionMode().
void SelectionEngine::SetUpdateInterval | ( | sal_uLong | nInterval | ) |
Definition at line 398 of file seleng.cxx.
References aWTimer, Task::IsActive(), nUpdateInterval, SELENG_AUTOREPEAT_INTERVAL_MIN, Timer::SetTimeout(), Timer::Start(), and Task::Stop().
|
inline |
Definition at line 125 of file seleng.hxx.
Referenced by SvImpLBox::AdjustScrollBars(), and IconViewImpl::AdjustScrollBars().
void SelectionEngine::SetWindow | ( | vcl::Window * | pNewWin | ) |
Definition at line 347 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 83 of file seleng.hxx.
Referenced by SelMouseMove().
|
private |
Definition at line 85 of file seleng.hxx.
Referenced by Command(), SelMouseButtonDown(), SelMouseButtonUp(), and SelMouseMove().
|
private |
Definition at line 84 of file seleng.hxx.
Referenced by Command(), Reset(), SelectionEngine(), SelMouseButtonUp(), SelMouseMove(), SetUpdateInterval(), and ~SelectionEngine().
|
private |
Definition at line 86 of file seleng.hxx.
Referenced by CursorPosChanging(), SelectionEngine(), SelMouseButtonDown(), SelMouseButtonUp(), SelMouseMove(), SetSelectionMode(), and ShouldDeselect().
|
private |
Definition at line 89 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 88 of file seleng.hxx.
Referenced by Reset(), SelectionEngine(), SelMouseButtonDown(), and SelMouseButtonUp().
|
private |
Definition at line 87 of file seleng.hxx.
Referenced by SelectionEngine(), SelMouseMove(), and SetUpdateInterval().
|
private |
Definition at line 81 of file seleng.hxx.
Referenced by Command(), CursorPosChanging(), SelectionEngine(), SelMouseButtonDown(), SelMouseButtonUp(), and SelMouseMove().
|
private |
Definition at line 82 of file seleng.hxx.
Referenced by CaptureMouse(), ReleaseMouse(), and SetWindow().