xref: /aoo42x/main/sc/inc/servuno.hxx (revision 38d50f7b)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef SC_SERVUNO_HXX
25 #define SC_SERVUNO_HXX
26 
27 #include <com/sun/star/uno/XInterface.hpp>
28 #include <com/sun/star/uno/Sequence.hxx>
29 
30 class String;
31 class ScDocShell;
32 
33 
34 //!	AutoFormat wirklich hier oder besser global??????
35 
36 #define SC_SERVICE_SHEET		0
37 #define SC_SERVICE_URLFIELD		1
38 #define SC_SERVICE_PAGEFIELD	2
39 #define SC_SERVICE_PAGESFIELD	3
40 #define SC_SERVICE_DATEFIELD	4
41 #define SC_SERVICE_TIMEFIELD	5
42 #define SC_SERVICE_TITLEFIELD	6
43 #define SC_SERVICE_FILEFIELD	7
44 #define SC_SERVICE_SHEETFIELD	8
45 #define SC_SERVICE_CELLSTYLE	9
46 #define SC_SERVICE_PAGESTYLE	10
47 #define SC_SERVICE_AUTOFORMAT	11
48 #define SC_SERVICE_CELLRANGES	12
49 
50 //	drawing layer tables
51 #define SC_SERVICE_GRADTAB		13
52 #define SC_SERVICE_HATCHTAB		14
53 #define SC_SERVICE_BITMAPTAB	15
54 #define SC_SERVICE_TRGRADTAB	16
55 #define SC_SERVICE_MARKERTAB	17
56 #define SC_SERVICE_DASHTAB		18
57 #define SC_SERVICE_NUMRULES		19
58 
59 #define SC_SERVICE_DOCDEFLTS	20
60 #define SC_SERVICE_DRAWDEFLTS	21
61 
62 #define SC_SERVICE_DOCSPRSETT	22
63 #define SC_SERVICE_DOCCONF		23
64 
65 #define SC_SERVICE_IMAP_RECT	24
66 #define SC_SERVICE_IMAP_CIRC	25
67 #define SC_SERVICE_IMAP_POLY	26
68 
69 // #100263# Support creation of GraphicObjectResolver and EmbeddedObjectResolver
70 #define SC_SERVICE_EXPORT_GOR	27
71 #define SC_SERVICE_IMPORT_GOR	28
72 #define SC_SERVICE_EXPORT_EOR	29
73 #define SC_SERVICE_IMPORT_EOR	30
74 
75 #define SC_SERVICE_VALBIND		31
76 #define SC_SERVICE_LISTCELLBIND	32
77 #define SC_SERVICE_LISTSOURCE	33
78 
79 #define SC_SERVICE_CELLADDRESS  34
80 #define SC_SERVICE_RANGEADDRESS 35
81 
82 #define SC_SERVICE_SHEETDOCSET  36
83 
84 // BM
85 #define SC_SERVICE_CHDATAPROV   37
86 
87 // formula parser
88 #define SC_SERVICE_FORMULAPARS  38
89 #define SC_SERVICE_OPCODEMAPPER 39
90 
91 // VBA specific
92 #define SC_SERVICE_VBAOBJECTPROVIDER   40
93 #define SC_SERVICE_VBACODENAMEPROVIDER   41
94 #define SC_SERVICE_VBAGLOBALS	42
95 
96 #define SC_SERVICE_COUNT        43
97 #define SC_SERVICE_INVALID		USHRT_MAX
98 
99 
100 class ScServiceProvider
101 {
102 public:
103 							// pDocShell wird nicht fuer alle Services benoetigt
104 	static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >
105 							MakeInstance( sal_uInt16 nType, ScDocShell* pDocShell );
106 	static ::com::sun::star::uno::Sequence<rtl::OUString> GetAllServiceNames();
107 //UNUSED2008-05  static String           GetProviderName(sal_uInt16 nObjectType);
108 	static sal_uInt16		GetProviderType(const String& rServiceName);
109 };
110 
111 
112 
113 #endif
114 
115