Version 4.2.0.1, tag libreoffice-4.2.0.1
[LibreOffice.git] / odk / examples / cpp / complextoolbarcontrols / MyJob.h
blobb6ac4bef0c3792a92f241331ee699ff9aeec1b49
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 _MyJob_HXX
21 #define _MyJob_HXX
23 #include <com/sun/star/task/XJob.hpp>
24 #include <com/sun/star/lang/XServiceInfo.hpp>
25 #include <cppuhelper/implbase2.hxx>
27 namespace com
29 namespace sun
31 namespace star
33 namespace frame
35 class XModel;
36 class XFrame;
38 namespace beans
40 struct NamedValue;
46 class MyJob : public cppu::WeakImplHelper2
48 com::sun::star::task::XJob,
49 com::sun::star::lang::XServiceInfo
52 private:
53 ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMSF;
55 public:
56 MyJob( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > &rxMSF)
57 : mxMSF( rxMSF ) {}
58 virtual ~MyJob() {}
60 // XJob
61 virtual ::com::sun::star::uno::Any SAL_CALL execute(
62 const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::NamedValue >& Arguments )
63 throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
65 // XServiceInfo
66 virtual ::rtl::OUString SAL_CALL getImplementationName( )
67 throw (::com::sun::star::uno::RuntimeException);
68 virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName )
69 throw (::com::sun::star::uno::RuntimeException);
70 virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames( )
71 throw (::com::sun::star::uno::RuntimeException);
74 ::rtl::OUString MyJob_getImplementationName()
75 throw ( ::com::sun::star::uno::RuntimeException );
77 sal_Bool SAL_CALL MyJob_supportsService( const ::rtl::OUString& ServiceName )
78 throw ( ::com::sun::star::uno::RuntimeException );
80 ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL MyJob_getSupportedServiceNames( )
81 throw ( ::com::sun::star::uno::RuntimeException );
83 ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
84 SAL_CALL MyJob_createInstance( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & rSMgr)
85 throw ( ::com::sun::star::uno::Exception );
87 #endif
89 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */