LibreOffice Module vcl (master) 1
|
#include <iconviewimpl.hxx>
Classes | |
struct | EntryAreaInfo |
Public Member Functions | |
IconViewImpl (SvTreeListBox *pTreeListBox, SvTreeList *pTreeList, WinBits nWinStyle) | |
void | KeyDown (bool bPageDown) override |
void | KeyUp (bool bPageUp) override |
Point | GetEntryPosition (const SvTreeListEntry *pEntry) const override |
SvTreeListEntry * | GetClickedEntry (const Point &rPoint) const override |
bool | IsEntryInView (SvTreeListEntry *pEntry) const override |
void | Paint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override |
SvTreeListEntry * | GetEntry (const Point &rPoint) const override |
void | UpdateAll () override |
bool | KeyInput (const KeyEvent &) override |
void | InvalidateEntry (tools::Long nId) const override |
Public Member Functions inherited from SvImpLBox | |
SvImpLBox (SvTreeListBox *pView, SvTreeList *, WinBits nWinStyle) | |
virtual | ~SvImpLBox () |
void | Clear () |
void | SetStyle (WinBits i_nWinStyle) |
void | SetNoAutoCurEntry (bool b) |
void | SetModel (SvTreeList *pModel) |
void | EntryInserted (SvTreeListEntry *) |
void | RemovingEntry (SvTreeListEntry *pEntry) |
void | EntryRemoved () |
void | MovingEntry (SvTreeListEntry *pEntry) |
void | EntryMoved (SvTreeListEntry *pEntry) |
void | TreeInserted (SvTreeListEntry *pEntry) |
void | EntryExpanded (SvTreeListEntry *pEntry) |
void | EntryCollapsed (SvTreeListEntry *pEntry) |
void | CollapsingEntry (SvTreeListEntry *pEntry) |
void | EntrySelected (SvTreeListEntry *pEntry, bool bSelect) |
virtual void | Paint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) |
void | MouseButtonDown (const MouseEvent &) |
void | MouseButtonUp (const MouseEvent &) |
void | MouseMove (const MouseEvent &) |
virtual bool | KeyInput (const KeyEvent &) |
void | Resize () |
void | GetFocus () |
void | LoseFocus () |
virtual void | UpdateAll () |
void | SetEntryHeight () |
void | InvalidateEntry (SvTreeListEntry *) |
void | RecalcFocusRect () |
void | SelectEntry (SvTreeListEntry *pEntry, bool bSelect) |
void | SetDragDropMode (DragDropMode eDDMode) |
void | SetSelectionMode (SelectionMode eSelMode) |
virtual bool | IsEntryInView (SvTreeListEntry *pEntry) const |
virtual SvTreeListEntry * | GetEntry (const Point &rPos) const |
virtual SvTreeListEntry * | GetClickedEntry (const Point &) const |
SvTreeListEntry * | GetCurEntry () const |
void | SetCurEntry (SvTreeListEntry *) |
virtual Point | GetEntryPosition (const SvTreeListEntry *) const |
void | MakeVisible (SvTreeListEntry *pEntry, bool bMoveToTop=false) |
void | ScrollToAbsPos (tools::Long nPos) |
void | PaintDDCursor (SvTreeListEntry *pEntry, bool bShow) |
Image & | implGetImageLocation (const ImageType _eType) |
void | SetExpandedNodeBmp (const Image &_rImg) |
void | SetCollapsedNodeBmp (const Image &_rImg) |
const Image & | GetExpandedNodeBmp () |
const Image & | GetCollapsedNodeBmp () |
void | SetDefaultEntryExpBmp (const Image &_rImg) |
void | SetDefaultEntryColBmp (const Image &_rImg) |
const Image & | GetDefaultEntryExpBmp () |
const Image & | GetDefaultEntryColBmp () |
const Size & | GetOutputSize () const |
virtual void | KeyUp (bool bPageUp) |
virtual void | KeyDown (bool bPageDown) |
void | Command (const CommandEvent &rCEvt) |
void | Invalidate () |
void | DestroyAnchor () |
void | SelAllDestrAnch (bool bSelect, bool bDestroyAnchor=true, bool bSingleSelToo=false) |
void | ShowCursor (bool bShow) |
bool | RequestHelp (const HelpEvent &rHEvt) |
bool | IsNodeButton (const Point &rPosPixel, const SvTreeListEntry *pEntry) const |
void | SetUpdateMode (bool bMode) |
bool | GetUpdateMode () const |
tools::Rectangle | GetClipRegionRect () const |
bool | HasHorScrollBar () const |
void | CallEventListeners (VclEventId nEvent, void *pData=nullptr) |
bool | IsSelectable (const SvTreeListEntry *pEntry) const |
void | SetForceMakeVisible (bool bEnable) |
bool | IsCaptureOnButtonActive () const |
Protected Member Functions | |
tools::Long | GetEntryLine (const SvTreeListEntry *pEntry) const override |
void | CursorUp () override |
void | CursorDown () override |
void | PageDown (sal_uInt16 nDelta) override |
void | PageUp (sal_uInt16 nDelta) override |
void | SyncVerThumb () override |
void | AdjustScrollBars (Size &rSize) override |
Protected Member Functions inherited from SvImpLBox | |
virtual tools::Long | GetEntryLine (const SvTreeListEntry *pEntry) const |
virtual void | CursorDown () |
virtual void | CursorUp () |
virtual void | PageDown (sal_uInt16 nDelta) |
virtual void | PageUp (sal_uInt16 nDelta) |
virtual void | SyncVerThumb () |
virtual void | AdjustScrollBars (Size &rSize) |
virtual void | InvalidateEntry (tools::Long nY) const |
tools::Rectangle | GetVisibleArea () const |
void | SetCursor (SvTreeListEntry *pEntry, bool bForceNoSelect=false) |
void | PositionScrollBars (Size &rOSize, sal_uInt16 nMask) |
void | FindMostRight () |
void | FillView () |
void | ShowVerSBar () |
void | StopUserEvent () |
DECL_LINK (MyUserEvent, void *, void) | |
Private Types | |
enum class | CallbackResult { Continue , Stop } |
using | IterateEntriesFunc = std::function< CallbackResult(const EntryAreaInfo &)> |
Private Member Functions | |
void | IterateVisibleEntryAreas (const IterateEntriesFunc &f, bool fromStartEntry=false) const |
Size | GetEntrySize (const SvTreeListEntry &entry) const |
SvTreeListEntry * | GoToPrevRow (SvTreeListEntry *pEntry, int n) const |
SvTreeListEntry * | GoToNextRow (SvTreeListEntry *pEntry, int n) const |
tools::Long | GetEntryRow (const SvTreeListEntry *entry) const |
void | SetStartEntry (SvTreeListEntry *entry) |
void | ScrollTo (SvTreeListEntry *entry) |
Additional Inherited Members | |
Static Public Member Functions inherited from SvImpLBox | |
static const Image & | GetDefaultExpandedNodeImage () |
static const Image & | GetDefaultCollapsedNodeImage () |
Protected Attributes inherited from SvImpLBox | |
VclPtr< SvTreeListBox > | m_pView |
VclPtr< ScrollBar > | m_aHorSBar |
VclPtr< ScrollBar > | m_aVerSBar |
SvTreeListEntry * | m_pCursor |
SvTreeListEntry * | m_pCursorOld |
SvTreeListEntry * | m_pStartEntry |
ImplSVEvent * | m_nCurUserEvent |
Size | m_aOutputSize |
LBoxFlags | m_nFlags |
WinBits | m_nStyle |
bool | mbNoAutoCurEntry |
SelectionEngine | m_aSelEng |
sal_uLong | m_nVisibleCount |
bool | m_bInVScrollHdl: 1 |
bool | m_bSimpleTravel: 1 |
tools::Long | m_nNextVerVisSize |
tools::Long | m_nNodeBmpTabDistance |
Definition at line 27 of file iconviewimpl.hxx.
|
private |
Definition at line 76 of file iconviewimpl.hxx.
|
strongprivate |
Enumerator | |
---|---|
Continue | |
Stop |
Definition at line 65 of file iconviewimpl.hxx.
IconViewImpl::IconViewImpl | ( | SvTreeListBox * | pTreeListBox, |
SvTreeList * | pTreeList, | ||
WinBits | nWinStyle | ||
) |
Definition at line 26 of file iconviewimpl.cxx.
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 357 of file iconviewimpl.cxx.
References Continue, EndScrollSetVisSize, SvTreeListBox::GetColumnsCount(), SvTreeListBox::GetEntryHeight(), SvTreeListBox::GetEntryWidth(), vcl::Window::GetStyle(), Size::Height(), vcl::Window::Hide(), IsSeparator(), IterateVisibleEntryAreas(), SvImpLBox::m_aHorSBar, SvImpLBox::m_aSelEng, SvImpLBox::m_aVerSBar, SvImpLBox::m_bInVScrollHdl, SvImpLBox::m_nFlags, SvImpLBox::m_nVisibleCount, SvImpLBox::m_pView, SvImpLBox::PositionScrollBars(), ScrollBar::SetPageSize(), ScrollBar::SetRange(), tools::Rectangle::SetSize(), SelectionEngine::SetVisibleArea(), ScrollBar::SetVisibleSize(), vcl::Window::Show(), WB_HSCROLL, WB_VSCROLL, and Size::Width().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 192 of file iconviewimpl.cxx.
References Filling, GoToNextRow(), SvImpLBox::m_nFlags, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, SvTreeListBox::NotifyScrolled(), SetStartEntry(), and SvImpLBox::ShowCursor().
Referenced by KeyDown().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 178 of file iconviewimpl.cxx.
References Filling, GoToPrevRow(), SvImpLBox::m_nFlags, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, SvTreeListBox::NotifyScrolled(), SetStartEntry(), and SvImpLBox::ShowCursor().
Referenced by KeyUp().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 309 of file iconviewimpl.cxx.
References Continue, DBG_ASSERT, SvTreeListBox::GetEntryCount(), SvTreeListBox::GetEntryHeight(), SvTreeListBox::GetEntryWidth(), SvTreeListBox::GetModel(), IterateVisibleEntryAreas(), SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, Stop, and Point::Y().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 435 of file iconviewimpl.cxx.
References Continue, SvTreeListBox::GetEntryCount(), SvTreeListBox::GetEntryHeight(), SvTreeListBox::GetEntryWidth(), Size::Height(), IterateVisibleEntryAreas(), SvImpLBox::m_aOutputSize, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, Stop, and Point::Y().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 283 of file iconviewimpl.cxx.
References GetEntryPosition(), SvImpLBox::m_pStartEntry, and Point::Y().
Referenced by IsEntryInView().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 291 of file iconviewimpl.cxx.
References Continue, SvTreeListBox::GetEntryHeight(), SvTreeListBox::GetEntryWidth(), IterateVisibleEntryAreas(), SvImpLBox::m_pView, result, and Stop.
Referenced by GetEntryLine().
|
private |
Definition at line 67 of file iconviewimpl.cxx.
References Continue, IsSeparator(), IterateVisibleEntryAreas(), and Stop.
Referenced by ScrollTo(), and SyncVerThumb().
|
private |
Definition at line 36 of file iconviewimpl.cxx.
References VclPtr< reference_type >::get(), GetEntrySize(), and SvImpLBox::m_pView.
Referenced by GetEntrySize(), IsEntryInView(), and IterateVisibleEntryAreas().
|
private |
Definition at line 153 of file iconviewimpl.cxx.
References Continue, IsSeparator(), IterateVisibleEntryAreas(), and Stop.
Referenced by CursorDown(), KeyInput(), PageDown(), and ScrollTo().
|
private |
Definition at line 122 of file iconviewimpl.cxx.
References Continue, i, IsSeparator(), IterateVisibleEntryAreas(), SvImpLBox::m_pView, SvListView::NextVisible(), and Stop.
Referenced by CursorUp(), KeyInput(), and PageUp().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 534 of file iconviewimpl.cxx.
References tools::Rectangle::Bottom(), SvImpLBox::GetVisibleArea(), InPaint, vcl::Window::Invalidate(), SvImpLBox::m_nFlags, SvImpLBox::m_pView, nId, and tools::Rectangle::SetTop().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 340 of file iconviewimpl.cxx.
References GetEntryLine(), GetEntrySize(), Size::Height(), SvListView::IsEntryVisible(), SvImpLBox::m_aOutputSize, and SvImpLBox::m_pView.
Referenced by KeyInput().
|
private |
Definition at line 41 of file iconviewimpl.cxx.
References SvListView::FirstVisible(), SvTreeListBox::GetColumnsCount(), GetEntrySize(), SvTreeListBox::GetEntryWidth(), Size::Height(), IsSeparator(), SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, SvListView::NextVisible(), result, Stop, Size::Width(), x, and y.
Referenced by AdjustScrollBars(), GetClickedEntry(), GetEntry(), GetEntryPosition(), GetEntryRow(), GoToNextRow(), GoToPrevRow(), Paint(), and SetStartEntry().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 242 of file iconviewimpl.cxx.
References CursorDown(), Filling, ScrollBar::GetPageSize(), vcl::Window::IsVisible(), SvImpLBox::m_aVerSBar, SvImpLBox::m_nFlags, and PageDown().
Referenced by KeyInput().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 549 of file iconviewimpl.cxx.
References SvTreeListBox::aDoubleClickHdl, Link< typename Arg, typename Ret >::Call(), SelectionEngine::CursorPosChanging(), Filling, vcl::KeyCode::GetCode(), KeyEvent::GetKeyCode(), SvTreeListBox::GetModel(), ScrollBar::GetPageSize(), GoToNextRow(), GoToPrevRow(), IsEntryInView(), vcl::KeyCode::IsMod1(), vcl::KeyCode::IsMod2(), SvImpLBox::IsSelectable(), vcl::KeyCode::IsShift(), KEY_DOWN, KEY_END, KEY_LEFT, KEY_PAGEDOWN, KEY_PAGEUP, KEY_RETURN, KEY_RIGHT, KEY_SPACE, KEY_UP, KeyDown(), SvImpLBox::KeyInput(), KeyUp(), SvTreeList::Last(), SvImpLBox::m_aSelEng, SvImpLBox::m_aVerSBar, SvImpLBox::m_nFlags, SvImpLBox::m_pCursor, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, SvImpLBox::MakeVisible(), SvListView::NextVisible(), SvListView::PrevVisible(), ScrollTo(), SvTreeListBox::Select(), SvImpLBox::SetCursor(), and SetStartEntry().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 264 of file iconviewimpl.cxx.
References CursorUp(), Filling, ScrollBar::GetPageSize(), vcl::Window::IsVisible(), SvImpLBox::m_aVerSBar, SvImpLBox::m_nFlags, and PageUp().
Referenced by KeyInput().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 206 of file iconviewimpl.cxx.
References Filling, GoToNextRow(), SvImpLBox::m_nFlags, SvImpLBox::m_pStartEntry, SetStartEntry(), and SvImpLBox::ShowCursor().
Referenced by KeyDown().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 224 of file iconviewimpl.cxx.
References Filling, GoToPrevRow(), SvImpLBox::m_nFlags, SvImpLBox::m_pStartEntry, SetStartEntry(), and SvImpLBox::ShowCursor().
Referenced by KeyUp().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 479 of file iconviewimpl.cxx.
References IconViewImpl::EntryAreaInfo::area, tools::Rectangle::Bottom(), Continue, DeselectAll, IconViewImpl::EntryAreaInfo::entry, Filling, SvTreeListBox::First(), VclPtr< reference_type >::get(), tools::Rectangle::GetIntersection(), SelectionEngine::GetSelectionMode(), SvListView::GetVisibleCount(), InPaint, tools::Rectangle::IsEmpty(), IterateVisibleEntryAreas(), tools::Rectangle::Left(), LINK, SvImpLBox::m_aSelEng, SvImpLBox::m_aVerSBar, SvImpLBox::m_nCurUserEvent, SvImpLBox::m_nFlags, SvImpLBox::m_nStyle, SvImpLBox::m_pCursor, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, SvImpLBox::mbNoAutoCurEntry, Multiple, Application::PostUserEvent(), OutputDevice::SetClipRegion(), SvImpLBox::SetCursor(), ScrollBar::SetThumbPos(), SvImpLBox::ShowCursor(), Stop, SvImpLBox::StopUserEvent(), tools::Rectangle::Top(), and WB_NOINITIALSELECTION.
|
private |
Definition at line 108 of file iconviewimpl.cxx.
References GetEntryRow(), ScrollBar::GetThumbPos(), ScrollBar::GetVisibleSize(), GoToNextRow(), vcl::Window::IsVisible(), SvImpLBox::m_aVerSBar, SvImpLBox::m_pStartEntry, and SetStartEntry().
Referenced by KeyInput().
|
private |
Definition at line 83 of file iconviewimpl.cxx.
References Continue, ScrollBar::GetRangeMax(), SvImpLBox::GetVisibleArea(), ScrollBar::GetVisibleSize(), vcl::Window::Invalidate(), IsSeparator(), IterateVisibleEntryAreas(), SvImpLBox::m_aVerSBar, SvImpLBox::m_pStartEntry, SvImpLBox::m_pView, max, ScrollBar::SetThumbPos(), and Stop.
Referenced by CursorDown(), CursorUp(), KeyInput(), PageDown(), PageUp(), and ScrollTo().
|
overrideprotectedvirtual |
Reimplemented from SvImpLBox.
Definition at line 462 of file iconviewimpl.cxx.
References GetEntryRow(), SvImpLBox::m_aVerSBar, SvImpLBox::m_pStartEntry, and ScrollBar::SetThumbPos().
Referenced by UpdateAll().
|
overridevirtual |
Reimplemented from SvImpLBox.
Definition at line 467 of file iconviewimpl.cxx.
References SvImpLBox::FillView(), SvImpLBox::FindMostRight(), SvImpLBox::GetVisibleArea(), vcl::Window::HasFocus(), vcl::Window::Invalidate(), SvImpLBox::m_bSimpleTravel, SvImpLBox::m_pCursor, SvImpLBox::m_pView, SvTreeListBox::Select(), SvImpLBox::ShowCursor(), SvImpLBox::ShowVerSBar(), and SyncVerThumb().