LibreOffice Module sd (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sd::slidesorter::controller::SlotManager Class Reference

This manager takes over the work of handling slot calls from the controller of the slide sorter. More...

#include <SlsSlotManager.hxx>

Collaboration diagram for sd::slidesorter::controller::SlotManager:
[legend]

Public Member Functions

 SlotManager (SlideSorter &rSlideSorter)
 Create a new slot manager that handles slot calls for the controller of a slide sorter. More...
 
void FuTemporary (SfxRequest &rRequest)
 
void FuPermanent (SfxRequest &rRequest)
 
void FuSupport (SfxRequest &rRequest)
 
void GetMenuState (SfxItemSet &rSet)
 
void GetClipboardState (SfxItemSet &rSet)
 
void GetStatusBarState (SfxItemSet &rSet)
 
void ExecCtrl (SfxRequest &rRequest)
 
void GetAttrState (SfxItemSet &rSet)
 
void ChangeSlideExclusionState (const model::SharedPageDescriptor &rpDescriptor, const bool bExcludeSlide)
 Exclude or include one slide or all selected slides. More...
 
void NotifyEditModeChange ()
 Call this after a change from normal mode to master mode or back. More...
 

Private Member Functions

void RenameSlide (const SfxRequest &rRequest)
 The implementation is a copy of the code for SID_RENAMEPAGE in drviews2.cxx. More...
 
 DECL_LINK (RenameSlideHdl, AbstractSvxNameDialog &, bool)
 
 DECL_STATIC_LINK (SlotManager, RenameSlideTooltipHdl, AbstractSvxNameDialog &, OUString)
 
bool RenameSlideFromDrawViewShell (sal_uInt16 nPageId, const OUString &rName)
 
void InsertSlide (SfxRequest &rRequest)
 Handle SID_INSERTPAGE slot calls. More...
 
void DuplicateSelectedSlides (SfxRequest &rRequest)
 
sal_Int32 GetInsertionPosition () const
 Use one of several ways to determine where to insert a new page. More...
 

Private Attributes

SlideSortermrSlideSorter
 The controller for which we manage the slot calls. More...
 

Detailed Description

This manager takes over the work of handling slot calls from the controller of the slide sorter.

Definition at line 39 of file SlsSlotManager.hxx.

Constructor & Destructor Documentation

◆ SlotManager()

sd::slidesorter::controller::SlotManager::SlotManager ( SlideSorter rSlideSorter)

Create a new slot manager that handles slot calls for the controller of a slide sorter.

Parameters
rControllerThe controller for which to handle the slot calls.

Definition at line 115 of file SlsSlotManager.cxx.

Member Function Documentation

◆ ChangeSlideExclusionState()

void sd::slidesorter::controller::SlotManager::ChangeSlideExclusionState ( const model::SharedPageDescriptor rpDescriptor,
const bool  bExcludeSlide 
)

◆ DECL_LINK()

sd::slidesorter::controller::SlotManager::DECL_LINK ( RenameSlideHdl  ,
AbstractSvxNameDialog ,
bool   
)
private

◆ DECL_STATIC_LINK()

sd::slidesorter::controller::SlotManager::DECL_STATIC_LINK ( SlotManager  ,
RenameSlideTooltipHdl  ,
AbstractSvxNameDialog ,
OUString   
)
private

◆ DuplicateSelectedSlides()

void sd::slidesorter::controller::SlotManager::DuplicateSelectedSlides ( SfxRequest rRequest)
private

◆ ExecCtrl()

void sd::slidesorter::controller::SlotManager::ExecCtrl ( SfxRequest rRequest)

◆ FuPermanent()

void sd::slidesorter::controller::SlotManager::FuPermanent ( SfxRequest rRequest)

◆ FuSupport()

void sd::slidesorter::controller::SlotManager::FuSupport ( SfxRequest rRequest)

◆ FuTemporary()

void sd::slidesorter::controller::SlotManager::FuTemporary ( SfxRequest rRequest)

Definition at line 120 of file SlsSlotManager.cxx.

References sd::slidesorter::SlideSorterViewShell::ArrangeGUIElements(), sd::ViewShell::Cancel(), ChangeSlideExclusionState(), SdAbstractDialogFactory::Create(), sd::FuCustomShowDlg::Create(), sd::FuExpandPage::Create(), sd::FuSlideShowDlg::Create(), sd::FuSummaryPage::Create(), SdAbstractDialogFactory::CreateRemoteDialog(), SdAbstractDialogFactory::CreateSdPhotoAlbumDialog(), SfxRequest::Done(), DuplicateSelectedSlides(), SdrEditView::EndTextEditAllViews(), SfxRequest::GetArg(), SfxRequest::GetArgs(), sd::slidesorter::SlideSorter::GetContentWindow(), sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::model::SlideSorterModel::GetDocument(), SfxViewFrame::GetFrame(), SfxFrame::GetFrameInterface(), vcl::Window::GetFrameWeld(), sd::slidesorter::view::SlideSorterView::GetLayouter(), sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::model::SlideSorterModel::GetPageCount(), sd::slidesorter::controller::SlideSorterController::GetPageSelector(), sd::slidesorter::controller::SlideSorterController::GetSelectionManager(), SfxRequest::GetSlot(), CntUInt16Item::GetValue(), sd::slidesorter::SlideSorter::GetView(), sd::ViewShell::GetViewFrame(), sd::slidesorter::SlideSorter::GetViewShell(), SfxRequest::Ignore(), InsertSlide(), sd::ViewShell::mpImpl, mrSlideSorter, sd::slidesorter::controller::SlideSorterController::Rearrange(), RenameSlide(), sd::slidesorter::controller::PageSelector::SelectAllPages(), sd::slidesorter::view::Layouter::SetColumnCount(), SfxViewFrame::ShowChildWindow(), sfx2::sidebar::Sidebar::ShowPanel(), sd::slideshowhelp::ShowSlideShow(), Standard, and u.

◆ GetAttrState()

void sd::slidesorter::controller::SlotManager::GetAttrState ( SfxItemSet rSet)

◆ GetClipboardState()

void sd::slidesorter::controller::SlotManager::GetClipboardState ( SfxItemSet rSet)

◆ GetInsertionPosition()

sal_Int32 sd::slidesorter::controller::SlotManager::GetInsertionPosition ( ) const
private

◆ GetMenuState()

void sd::slidesorter::controller::SlotManager::GetMenuState ( SfxItemSet rSet)

◆ GetStatusBarState()

void sd::slidesorter::controller::SlotManager::GetStatusBarState ( SfxItemSet rSet)

◆ InsertSlide()

void sd::slidesorter::controller::SlotManager::InsertSlide ( SfxRequest rRequest)
private

Handle SID_INSERTPAGE slot calls.

Insert a slide.

The insertion position depends on a) the selection and b) the mouse position when there is no selection.

When there is a selection then insertion takes place after the last slide of the selection. For this to work all but the last selected slide are deselected first.

Otherwise, when there is no selection but the insertion marker is visible the slide is inserted at that position. The slide before that marker is selected first.

When both the selection and the insertion marker are not visible–can that happen?–the new slide is inserted after the last slide.

Definition at line 1061 of file SlsSlotManager.cxx.

References sd::ViewShell::CreateOrDuplicatePage(), SdPage::CreateTitleAndLayout(), sd::slidesorter::controller::PageSelector::DeselectAllPages(), sd::slidesorter::SlideSorter::GetController(), sd::slidesorter::model::SlideSorterModel::GetDocument(), sd::slidesorter::model::SlideSorterModel::GetEditMode(), GetInsertionPosition(), SdDrawDocument::GetMasterSdPage(), sd::slidesorter::SlideSorter::GetModel(), sd::slidesorter::model::SlideSorterModel::GetPageDescriptor(), sd::slidesorter::controller::SlideSorterController::GetPageSelector(), SdrModel::getUnoModel(), sd::slidesorter::SlideSorter::GetViewShell(), mrSlideSorter, Page, sd::slidesorter::controller::PageSelector::SelectPage(), and Standard.

Referenced by FuTemporary().

◆ NotifyEditModeChange()

void sd::slidesorter::controller::SlotManager::NotifyEditModeChange ( )

Call this after a change from normal mode to master mode or back.

The affected slots are invalidated.

Definition at line 1253 of file SlsSlotManager.cxx.

References SfxViewFrame::GetBindings(), sd::ViewShell::GetViewFrame(), sd::slidesorter::SlideSorter::GetViewShell(), SfxBindings::Invalidate(), and mrSlideSorter.

◆ RenameSlide()

void sd::slidesorter::controller::SlotManager::RenameSlide ( const SfxRequest rRequest)
private

◆ RenameSlideFromDrawViewShell()

bool sd::slidesorter::controller::SlotManager::RenameSlideFromDrawViewShell ( sal_uInt16  nPageId,
const OUString &  rName 
)
private

Member Data Documentation

◆ mrSlideSorter

SlideSorter& sd::slidesorter::controller::SlotManager::mrSlideSorter
private

The documentation for this class was generated from the following files: