LibreOffice Module sd (master) 1
|
Inner implementation class of the AccessibleSlideSorterView. More...
Public Member Functions | |
Implementation (AccessibleSlideSorterView &rAccessibleSlideSorter, ::sd::slidesorter::SlideSorter &rSlideSorter, vcl::Window *pWindow) | |
virtual | ~Implementation () override |
void | RequestUpdateChildren () |
void | Clear () |
sal_Int32 | GetVisibleChildCount () const |
AccessibleSlideSorterObject * | GetAccessibleChild (sal_Int32 nIndex) |
AccessibleSlideSorterObject * | GetVisibleChild (sal_Int32 nIndex) |
void | ConnectListeners () |
void | ReleaseListeners () |
void | Notify (SfxBroadcaster &rBroadcaster, const SfxHint &rHint) override |
DECL_LINK (WindowEventListener, VclWindowEvent &, void) | |
DECL_LINK (SelectionChangeListener, LinkParamNone *, void) | |
DECL_LINK (BroadcastSelectionChange, void *, void) | |
DECL_LINK (FocusChangeListener, LinkParamNone *, void) | |
DECL_LINK (VisibilityChangeListener, LinkParamNone *, void) | |
DECL_LINK (UpdateChildrenCallback, void *, void) | |
void | Activated () |
![]() | |
SfxListener () | |
SfxListener (const SfxListener &rCopy) | |
virtual | ~SfxListener () COVERITY_NOEXCEPT_FALSE |
void | StartListening (SfxBroadcaster &rBroadcaster, DuplicateHandling eDuplicateHanding=DuplicateHandling::Unexpected) |
void | EndListening (SfxBroadcaster &rBroadcaster, bool bRemoveAllDuplicates=false) |
void | EndListeningAll () |
bool | IsListening (SfxBroadcaster &rBroadcaster) const |
sal_uInt16 | GetBroadcasterCount () const |
SfxBroadcaster * | GetBroadcasterJOE (sal_uInt16 nNo) const |
virtual void | Notify (SfxBroadcaster &rBC, const SfxHint &rHint) |
void | RemoveBroadcaster_Impl (SfxBroadcaster &rBC) |
virtual bool | IsSdrView () const |
Private Types | |
typedef ::std::vector< rtl::Reference< AccessibleSlideSorterObject > > | PageObjectList |
Private Member Functions | |
void | UpdateChildren () |
Private Attributes | |
AccessibleSlideSorterView & | mrAccessibleSlideSorter |
::sd::slidesorter::SlideSorter & | mrSlideSorter |
PageObjectList | maPageObjects |
sal_Int32 | mnFirstVisibleChild |
sal_Int32 | mnLastVisibleChild |
bool | mbListeningToDocument |
VclPtr< vcl::Window > | mpWindow |
sal_Int32 | mnFocusedIndex |
bool | mbModelChangeLocked |
ImplSVEvent * | mnUpdateChildrenUserEventId |
ImplSVEvent * | mnSelectionChangeUserEventId |
Inner implementation class of the AccessibleSlideSorterView.
Note that some event broadcasting is done asynchronously because otherwise it could lead to deadlocks on (at least) some Solaris machines. Probably (but unverified) this can happen on all GTK based systems. The asynchronous broadcasting is just a workaround for a poorly understood problem.
Definition at line 67 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 97 of file AccessibleSlideSorterView.cxx.
accessibility::AccessibleSlideSorterView::Implementation::Implementation | ( | AccessibleSlideSorterView & | rAccessibleSlideSorter, |
::sd::slidesorter::SlideSorter & | rSlideSorter, | ||
vcl::Window * | pWindow | ||
) |
Definition at line 636 of file AccessibleSlideSorterView.cxx.
References ConnectListeners(), mpWindow, and UpdateChildren().
|
overridevirtual |
Definition at line 655 of file AccessibleSlideSorterView.cxx.
References Clear(), and Application::RemoveUserEvent().
void accessibility::AccessibleSlideSorterView::Implementation::Activated | ( | ) |
Definition at line 863 of file AccessibleSlideSorterView.cxx.
References sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::controller::SlideSorterController::GetFocusManager(), accessibility::AccessibleSlideSorterView::mrSlideSorter, and sd::slidesorter::controller::FocusManager::ShowFocus().
void accessibility::AccessibleSlideSorterView::Implementation::Clear | ( | ) |
Definition at line 705 of file AccessibleSlideSorterView.cxx.
References Any.
void accessibility::AccessibleSlideSorterView::Implementation::ConnectListeners | ( | ) |
Definition at line 775 of file AccessibleSlideSorterView.cxx.
References sd::slidesorter::controller::FocusManager::AddFocusChangeListener(), sd::slidesorter::view::SlideSorterView::AddVisibilityChangeListener(), sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::model::SlideSorterModel::GetDocument(), sd::slidesorter::controller::SlideSorterController::GetFocusManager(), sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::controller::SlideSorterController::GetSelectionManager(), sd::slidesorter::SlideSorter::GetView(), sd::slidesorter::SlideSorter::GetViewShell(), LINK, mpWindow, accessibility::AccessibleSlideSorterView::mrSlideSorter, and StartListening.
Referenced by Implementation().
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | BroadcastSelectionChange | , |
void * | , | ||
void | |||
) |
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | FocusChangeListener | , |
LinkParamNone * | , | ||
void | |||
) |
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | SelectionChangeListener | , |
LinkParamNone * | , | ||
void | |||
) |
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | UpdateChildrenCallback | , |
void * | , | ||
void | |||
) |
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | VisibilityChangeListener | , |
LinkParamNone * | , | ||
void | |||
) |
accessibility::AccessibleSlideSorterView::Implementation::DECL_LINK | ( | WindowEventListener | , |
VclWindowEvent & | , | ||
void | |||
) |
AccessibleSlideSorterObject * accessibility::AccessibleSlideSorterView::Implementation::GetAccessibleChild | ( | sal_Int32 | nIndex | ) |
Definition at line 739 of file AccessibleSlideSorterView.cxx.
References Any, sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::model::SlideSorterModel::GetPageDescriptor(), o3tl::make_unsigned(), accessibility::AccessibleSlideSorterView::mrSlideSorter, and nIndex.
AccessibleSlideSorterObject * accessibility::AccessibleSlideSorterView::Implementation::GetVisibleChild | ( | sal_Int32 | nIndex | ) |
Definition at line 731 of file AccessibleSlideSorterView.cxx.
References nIndex.
sal_Int32 accessibility::AccessibleSlideSorterView::Implementation::GetVisibleChildCount | ( | ) | const |
Definition at line 723 of file AccessibleSlideSorterView.cxx.
|
overridevirtual |
Reimplemented from SfxListener.
Definition at line 819 of file AccessibleSlideSorterView.cxx.
References SfxHint::GetId(), SdrHint::GetKind(), sd::ViewShellHint::HINT_COMPLEX_MODEL_CHANGE_END, and sd::ViewShellHint::HINT_COMPLEX_MODEL_CHANGE_START.
void accessibility::AccessibleSlideSorterView::Implementation::ReleaseListeners | ( | ) |
Definition at line 794 of file AccessibleSlideSorterView.cxx.
References sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::model::SlideSorterModel::GetDocument(), sd::slidesorter::controller::SlideSorterController::GetFocusManager(), sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::controller::SlideSorterController::GetSelectionManager(), sd::slidesorter::SlideSorter::GetView(), sd::slidesorter::SlideSorter::GetViewShell(), LINK, mpWindow, accessibility::AccessibleSlideSorterView::mrSlideSorter, sd::slidesorter::controller::FocusManager::RemoveFocusChangeListener(), sd::slidesorter::view::SlideSorterView::RemoveVisibilityChangeListener(), and StartListening.
void accessibility::AccessibleSlideSorterView::Implementation::RequestUpdateChildren | ( | ) |
Definition at line 665 of file AccessibleSlideSorterView.cxx.
References LINK, and Application::PostUserEvent().
|
private |
Definition at line 673 of file AccessibleSlideSorterView.cxx.
References Clear(), sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::model::SlideSorterModel::GetPageCount(), sd::slidesorter::SlideSorter::GetView(), sd::slidesorter::view::SlideSorterView::GetVisiblePageRange(), Range::Max(), Range::Min(), accessibility::AccessibleSlideSorterView::mrSlideSorter, and nIndex.
Referenced by Implementation().
|
private |
Definition at line 98 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 101 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 104 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 99 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 103 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 100 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 106 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 105 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 102 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 95 of file AccessibleSlideSorterView.cxx.
|
private |
Definition at line 96 of file AccessibleSlideSorterView.cxx.