fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / slideshow / source / inc / viewupdate.hxx
blob3bf55be657482d20447e6f7c8389f09a5ccfb4e7
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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_VIEWUPDATE_HXX
21 #define INCLUDED_SLIDESHOW_SOURCE_INC_VIEWUPDATE_HXX
23 #include "disposable.hxx"
24 #include "view.hxx"
25 #include <boost/shared_ptr.hpp>
27 /* Definition of ViewUpdate interface */
29 namespace slideshow
31 namespace internal
33 /** Interface for something that can perform view updates.
35 Use this interface for objects that perform view updates
36 from time to time, e.g. slide content. Availability of
37 updates can be queried, and subsequently performed.
39 class ViewUpdate : public Disposable
41 public:
42 /** Perform the update action on all views
44 @return true, if the update was performed
45 successfully, false otherwise.
47 virtual bool update() = 0;
49 /** Perform the update action on given view only
51 @return true, if the update was performed
52 successfully, false otherwise.
54 virtual bool update( ViewSharedPtr const& rView ) = 0;
56 /** Query whether updates are pending
58 @return true, if updates are pending. Calling update()
59 subsequently will perform the pending update then.
61 virtual bool needsUpdate() const = 0;
64 typedef ::boost::shared_ptr< ViewUpdate > ViewUpdateSharedPtr;
68 #endif // INCLUDED_SLIDESHOW_SOURCE_INC_VIEWUPDATE_HXX
70 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */