LibreOffice Module sd (master) 1
SlsSlotManager.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19#pragma once
20
22#include <tools/link.hxx>
23#include <rtl/ustring.hxx>
24
26class SfxItemSet;
27class SfxRequest;
28
29namespace sd::slidesorter
30{
31class SlideSorter;
32}
33
35{
40{
41public:
47 SlotManager(SlideSorter& rSlideSorter);
48
49 void FuTemporary(SfxRequest& rRequest);
50 void FuPermanent(SfxRequest& rRequest);
51 void FuSupport(SfxRequest& rRequest);
55 void ExecCtrl(SfxRequest& rRequest);
57
65 const bool bExcludeSlide);
66
71
72private:
75
79 void RenameSlide(const SfxRequest& rRequest);
80 DECL_LINK(RenameSlideHdl, AbstractSvxNameDialog&, bool);
81 DECL_STATIC_LINK(SlotManager, RenameSlideTooltipHdl, AbstractSvxNameDialog&, OUString);
82 bool RenameSlideFromDrawViewShell(sal_uInt16 nPageId, const OUString& rName);
83
86 void InsertSlide(SfxRequest& rRequest);
87
88 void DuplicateSelectedSlides(SfxRequest& rRequest);
89
93 sal_Int32 GetInsertionPosition() const;
94};
95
96} // end of namespace ::sd::slidesorter::controller
97
98/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Show previews for all the slides in a document and allow the user to insert or delete slides and modi...
Definition: SlideSorter.hxx:62
This manager takes over the work of handling slot calls from the controller of the slide sorter.
void NotifyEditModeChange()
Call this after a change from normal mode to master mode or back.
DECL_LINK(RenameSlideHdl, AbstractSvxNameDialog &, bool)
SlideSorter & mrSlideSorter
The controller for which we manage the slot calls.
void DuplicateSelectedSlides(SfxRequest &rRequest)
void InsertSlide(SfxRequest &rRequest)
Handle SID_INSERTPAGE slot calls.
void RenameSlide(const SfxRequest &rRequest)
The implementation is a copy of the code for SID_RENAMEPAGE in drviews2.cxx.
sal_Int32 GetInsertionPosition() const
Use one of several ways to determine where to insert a new page.
bool RenameSlideFromDrawViewShell(sal_uInt16 nPageId, const OUString &rName)
SlotManager(SlideSorter &rSlideSorter)
Create a new slot manager that handles slot calls for the controller of a slide sorter.
void FuPermanent(SfxRequest &rRequest)
void FuTemporary(SfxRequest &rRequest)
DECL_STATIC_LINK(SlotManager, RenameSlideTooltipHdl, AbstractSvxNameDialog &, OUString)
void ChangeSlideExclusionState(const model::SharedPageDescriptor &rpDescriptor, const bool bExcludeSlide)
Exclude or include one slide or all selected slides.
std::shared_ptr< PageDescriptor > SharedPageDescriptor
static SfxItemSet & rSet