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 .
19 #ifndef TOOLKIT_CONTROLS_TKTHROBBER_HXX
20 #define TOOLKIT_CONTROLS_TKTHROBBER_HXX
22 #include <toolkit/controls/unocontrolmodel.hxx>
23 #include <toolkit/helper/servicenames.hxx>
24 #include <toolkit/controls/unocontrolbase.hxx>
25 #include <toolkit/helper/macros.hxx>
26 #include <com/sun/star/graphic/XGraphic.hpp>
27 #include <com/sun/star/awt/XThrobber.hpp>
28 #include <comphelper/uno3.hxx>
29 #include <cppuhelper/implbase1.hxx>
31 //........................................................................
34 //........................................................................
36 //====================================================================
37 //= UnoThrobberControlModel
38 //====================================================================
39 class UnoThrobberControlModel
: public UnoControlModel
42 ::com::sun::star::uno::Any
ImplGetDefaultValue( sal_uInt16 nPropId
) const;
43 ::cppu::IPropertyArrayHelper
& SAL_CALL
getInfoHelper();
46 UnoThrobberControlModel( const ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XComponentContext
>& i_factory
);
47 UnoThrobberControlModel( const UnoThrobberControlModel
& rModel
) : UnoControlModel( rModel
) {;}
49 UnoControlModel
* Clone() const { return new UnoThrobberControlModel( *this ); }
52 ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException
);
55 OUString SAL_CALL
getServiceName() throw(::com::sun::star::uno::RuntimeException
);
58 OUString SAL_CALL
getImplementationName( ) throw(::com::sun::star::uno::RuntimeException
);
59 ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames() throw(::com::sun::star::uno::RuntimeException
);
62 //====================================================================
63 //= UnoThrobberControl
64 //====================================================================
66 typedef ::cppu::ImplHelper1
< ::com::sun::star::awt::XThrobber
67 > UnoThrobberControl_Base
;
69 class UnoThrobberControl
:public UnoControlBase
70 ,public UnoThrobberControl_Base
76 OUString
GetComponentServiceName();
78 DECLARE_UNO3_AGG_DEFAULTS( UnoThrobberControl
, UnoControlBase
);
79 ::com::sun::star::uno::Any SAL_CALL
queryAggregation( const ::com::sun::star::uno::Type
& rType
) throw(::com::sun::star::uno::RuntimeException
);
81 void SAL_CALL
createPeer( const ::com::sun::star::uno::Reference
< ::com::sun::star::awt::XToolkit
>& Toolkit
, const ::com::sun::star::uno::Reference
< ::com::sun::star::awt::XWindowPeer
>& Parent
) throw(::com::sun::star::uno::RuntimeException
);
82 void SAL_CALL
disposing( const ::com::sun::star::lang::EventObject
& Source
) throw(::com::sun::star::uno::RuntimeException
) { UnoControlBase::disposing( Source
); }
83 void SAL_CALL
dispose( ) throw(::com::sun::star::uno::RuntimeException
);
86 DECLARE_XTYPEPROVIDER()
89 virtual void SAL_CALL
start() throw (::com::sun::star::uno::RuntimeException
);
90 virtual void SAL_CALL
stop() throw (::com::sun::star::uno::RuntimeException
);
93 OUString SAL_CALL
getImplementationName( ) throw(::com::sun::star::uno::RuntimeException
);
94 ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames() throw(::com::sun::star::uno::RuntimeException
);
97 //........................................................................
99 //........................................................................
101 #endif // TOOLKIT_CONTROLS_TKTHROBBER_HXX
103 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */