1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
20 #ifndef INCLUDED_SLIDESHOW_SOURCE_INC_PAUSEEVENTHANDLER_HXX
21 #define INCLUDED_SLIDESHOW_SOURCE_INC_PAUSEEVENTHANDLER_HXX
26 /* Definition of PauseHandler interface */
28 namespace slideshow::internal
31 /** Interface for handling pause events.
33 Classes implementing this interface can be added to an
34 EventMultiplexer object, and are called from there to
37 class PauseEventHandler
43 When true, the show is paused. When false, the show is
46 @return true, if this handler has successfully
47 processed the pause event. When this method returns
48 false, possibly other, less prioritized handlers are
51 virtual bool handlePause( bool bPauseShow
) = 0;
54 ~PauseEventHandler() {}
57 typedef ::std::shared_ptr
< PauseEventHandler
> PauseEventHandlerSharedPtr
;
61 #endif // INCLUDED_SLIDESHOW_SOURCE_INC_PAUSEEVENTHANDLER_HXX
63 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */