LibreOffice Module sd (master) 1
|
Manage requests for scrolling page objects into view. More...
#include <SlsVisibleAreaManager.hxx>
Classes | |
class | TemporaryDisabler |
Temporarily disable the update of the visible area. More... | |
Public Member Functions | |
VisibleAreaManager (SlideSorter &rSlideSorter) | |
~VisibleAreaManager () | |
VisibleAreaManager (const VisibleAreaManager &)=delete | |
VisibleAreaManager & | operator= (const VisibleAreaManager &)=delete |
void | ActivateCurrentSlideTracking () |
void | DeactivateCurrentSlideTracking () |
bool | IsCurrentSlideTrackingActive () const |
void | RequestCurrentSlideVisible () |
Request the current slide to be moved into the visible area. More... | |
void | RequestVisible (const model::SharedPageDescriptor &rpDescriptor, const bool bForce=false) |
Request to make the specified page object visible. More... | |
Private Member Functions | |
void | MakeVisible () |
::std::optional< Point > | GetRequestedTopLeft () const |
Private Attributes | |
SlideSorter & | mrSlideSorter |
::std::vector<::tools::Rectangle > | maVisibleRequests |
List of rectangle that someone wants to be moved into the visible area. More... | |
Point | maRequestedVisibleTopLeft |
bool | mbIsCurrentSlideTrackingActive |
int | mnDisableCount |
Manage requests for scrolling page objects into view.
Definition at line 36 of file SlsVisibleAreaManager.hxx.
|
explicit |
Definition at line 51 of file SlsVisibleAreaManager.cxx.
sd::slidesorter::controller::VisibleAreaManager::~VisibleAreaManager | ( | ) |
Definition at line 58 of file SlsVisibleAreaManager.cxx.
|
delete |
void sd::slidesorter::controller::VisibleAreaManager::ActivateCurrentSlideTracking | ( | ) |
Definition at line 62 of file SlsVisibleAreaManager.cxx.
References mbIsCurrentSlideTrackingActive.
Referenced by RequestVisible().
void sd::slidesorter::controller::VisibleAreaManager::DeactivateCurrentSlideTracking | ( | ) |
Definition at line 67 of file SlsVisibleAreaManager.cxx.
References mbIsCurrentSlideTrackingActive.
Referenced by sd::slidesorter::controller::ScrollBarManager::Scroll().
|
private |
Definition at line 122 of file SlsVisibleAreaManager.cxx.
References VclPtr< class reference_type >::get(), sd::slidesorter::SlideSorter::GetContentWindow(), sd::slidesorter::view::SlideSorterView::GetModelArea(), vcl::Window::GetOutputSizePixel(), sd::slidesorter::SlideSorter::GetView(), maVisibleRequests, mrSlideSorter, and vcl::Window::PixelToLogic().
Referenced by MakeVisible().
|
inline |
Definition at line 46 of file SlsVisibleAreaManager.hxx.
References mbIsCurrentSlideTrackingActive.
|
private |
Definition at line 98 of file SlsVisibleAreaManager.cxx.
References VclPtr< class reference_type >::get(), sd::slidesorter::SlideSorter::GetContentWindow(), GetRequestedTopLeft(), maRequestedVisibleTopLeft, maVisibleRequests, mrSlideSorter, and vcl::Window::PixelToLogic().
Referenced by RequestVisible().
|
delete |
void sd::slidesorter::controller::VisibleAreaManager::RequestCurrentSlideVisible | ( | ) |
Request the current slide to be moved into the visible area.
This request is only obeyed when the current slide tracking is active.
Definition at line 91 of file SlsVisibleAreaManager.cxx.
References sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::controller::SlideSorterController::GetCurrentSlideManager(), mbIsCurrentSlideTrackingActive, mnDisableCount, mrSlideSorter, and RequestVisible().
Referenced by sd::slidesorter::controller::SlideSorterController::Rearrange().
void sd::slidesorter::controller::VisibleAreaManager::RequestVisible | ( | const model::SharedPageDescriptor & | rpDescriptor, |
const bool | bForce = false |
||
) |
Request to make the specified page object visible.
Definition at line 72 of file SlsVisibleAreaManager.cxx.
References ActivateCurrentSlideTracking(), sd::slidesorter::view::SlideSorterView::GetLayouter(), sd::slidesorter::view::Layouter::GetPageObjectBox(), sd::slidesorter::SlideSorter::GetView(), MakeVisible(), maVisibleRequests, mbIsCurrentSlideTrackingActive, mnDisableCount, and mrSlideSorter.
Referenced by sd::slidesorter::controller::PageSelector::GetCoreSelection(), RequestCurrentSlideVisible(), and sd::slidesorter::controller::FocusManager::ShowFocusIndicator().
|
private |
Definition at line 80 of file SlsVisibleAreaManager.hxx.
Referenced by MakeVisible().
|
private |
List of rectangle that someone wants to be moved into the visible area.
Cleared on every call to ForgetVisibleRequests() and MakeVisible().
Definition at line 78 of file SlsVisibleAreaManager.hxx.
Referenced by GetRequestedTopLeft(), MakeVisible(), and RequestVisible().
|
private |
Definition at line 81 of file SlsVisibleAreaManager.hxx.
Referenced by ActivateCurrentSlideTracking(), DeactivateCurrentSlideTracking(), IsCurrentSlideTrackingActive(), RequestCurrentSlideVisible(), and RequestVisible().
|
private |
Definition at line 82 of file SlsVisibleAreaManager.hxx.
Referenced by RequestCurrentSlideVisible(), RequestVisible(), and sd::slidesorter::controller::VisibleAreaManager::TemporaryDisabler::TemporaryDisabler().
|
private |
Definition at line 72 of file SlsVisibleAreaManager.hxx.
Referenced by GetRequestedTopLeft(), MakeVisible(), RequestCurrentSlideVisible(), and RequestVisible().