bump product version to 5.0.4.1
[LibreOffice.git] / sd / source / ui / presenter / PresenterTextView.hxx
blob2927e38314999c259c636e5c45eb3af2a65aebd3
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_SD_SOURCE_UI_PRESENTER_PRESENTERTEXTVIEW_HXX
21 #define INCLUDED_SD_SOURCE_UI_PRESENTER_PRESENTERTEXTVIEW_HXX
23 #include "tools/PropertySet.hxx"
24 #include <com/sun/star/beans/XPropertySet.hpp>
25 #include <com/sun/star/lang/XInitialization.hpp>
26 #include <cppuhelper/basemutex.hxx>
27 #include <cppuhelper/implbase1.hxx>
28 #include <boost/noncopyable.hpp>
29 #include <boost/scoped_ptr.hpp>
31 namespace com { namespace sun { namespace star { namespace uno {
32 class XComponentContext;
33 } } } }
35 namespace sd { namespace presenter {
37 namespace {
38 typedef ::cppu::ImplInheritanceHelper1 <
39 tools::PropertySet,
40 css::lang::XInitialization
41 > PresenterTextViewInterfaceBase;
44 /** Render text into bitmaps. An edit engine is used to render the text.
45 This service is used by the presenter screen to render the notes view.
47 class PresenterTextView
48 : private ::boost::noncopyable,
49 public PresenterTextViewInterfaceBase
51 public:
52 explicit PresenterTextView (const css::uno::Reference<css::uno::XComponentContext>& rxContext);
53 virtual ~PresenterTextView();
55 // XInitialization
57 virtual void SAL_CALL initialize (const css::uno::Sequence<css::uno::Any>& rArguments)
58 throw (css::uno::Exception, css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
60 protected:
61 virtual void SAL_CALL disposing() SAL_OVERRIDE;
63 virtual css::uno::Any GetPropertyValue (
64 const OUString& rsPropertyName) SAL_OVERRIDE;
65 virtual css::uno::Any SetPropertyValue (
66 const OUString& rsPropertyName,
67 const css::uno::Any& rValue) SAL_OVERRIDE;
69 private:
70 class Implementation;
71 ::boost::scoped_ptr<Implementation> mpImplementation;
73 /** This method throws a DisposedException when the object has already been
74 disposed.
76 void ThrowIfDisposed() throw (css::lang::DisposedException);
79 } } // end of namespace ::sd::presenter
81 #endif
83 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */