xref: /AOO41X/main/vcl/aqua/source/gdi/atslayout.hxx (revision 51747b8e4c6de14670de67a80165aadc3b976318)
1*51747b8eSHerbert Dürr /**************************************************************
2*51747b8eSHerbert Dürr  *
3*51747b8eSHerbert Dürr  * Licensed to the Apache Software Foundation (ASF) under one
4*51747b8eSHerbert Dürr  * or more contributor license agreements.  See the NOTICE file
5*51747b8eSHerbert Dürr  * distributed with this work for additional information
6*51747b8eSHerbert Dürr  * regarding copyright ownership.  The ASF licenses this file
7*51747b8eSHerbert Dürr  * to you under the Apache License, Version 2.0 (the
8*51747b8eSHerbert Dürr  * "License"); you may not use this file except in compliance
9*51747b8eSHerbert Dürr  * with the License.  You may obtain a copy of the License at
10*51747b8eSHerbert Dürr  *
11*51747b8eSHerbert Dürr  *   http://www.apache.org/licenses/LICENSE-2.0
12*51747b8eSHerbert Dürr  *
13*51747b8eSHerbert Dürr  * Unless required by applicable law or agreed to in writing,
14*51747b8eSHerbert Dürr  * software distributed under the License is distributed on an
15*51747b8eSHerbert Dürr  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*51747b8eSHerbert Dürr  * KIND, either express or implied.  See the License for the
17*51747b8eSHerbert Dürr  * specific language governing permissions and limitations
18*51747b8eSHerbert Dürr  * under the License.
19*51747b8eSHerbert Dürr  *
20*51747b8eSHerbert Dürr  *************************************************************/
21*51747b8eSHerbert Dürr 
22*51747b8eSHerbert Dürr 
23*51747b8eSHerbert Dürr 
24*51747b8eSHerbert Dürr #ifndef _SV_SALATSUIFONTUTILS_HXX
25*51747b8eSHerbert Dürr #define _SV_SALATSUIFONTUTILS_HXX
26*51747b8eSHerbert Dürr 
27*51747b8eSHerbert Dürr class ImplMacFontData;
28*51747b8eSHerbert Dürr class ImplDevFontList;
29*51747b8eSHerbert Dürr 
30*51747b8eSHerbert Dürr #include <premac.h>
31*51747b8eSHerbert Dürr #include <ApplicationServices/ApplicationServices.h>
32*51747b8eSHerbert Dürr #include <postmac.h>
33*51747b8eSHerbert Dürr 
34*51747b8eSHerbert Dürr #include <map>
35*51747b8eSHerbert Dürr 
36*51747b8eSHerbert Dürr /* This class has the responsibility of assembling a list
37*51747b8eSHerbert Dürr    of atsui compatible fonts available on the system and
38*51747b8eSHerbert Dürr    enabling access to that list.
39*51747b8eSHerbert Dürr  */
40*51747b8eSHerbert Dürr class SystemFontList
41*51747b8eSHerbert Dürr {
42*51747b8eSHerbert Dürr public:
43*51747b8eSHerbert Dürr     SystemFontList();
44*51747b8eSHerbert Dürr     ~SystemFontList();
45*51747b8eSHerbert Dürr 
46*51747b8eSHerbert Dürr     void AnnounceFonts( ImplDevFontList& ) const;
47*51747b8eSHerbert Dürr     ImplMacFontData* GetFontDataFromId( ATSUFontID ) const;
48*51747b8eSHerbert Dürr 
49*51747b8eSHerbert Dürr     ATSUFontFallbacks maFontFallbacks;
50*51747b8eSHerbert Dürr 
51*51747b8eSHerbert Dürr private:
52*51747b8eSHerbert Dürr     typedef std::hash_map<ATSUFontID,ImplMacFontData*> MacFontContainer;
53*51747b8eSHerbert Dürr     MacFontContainer maFontContainer;
54*51747b8eSHerbert Dürr 
55*51747b8eSHerbert Dürr     void InitGlyphFallbacks();
56*51747b8eSHerbert Dürr };
57*51747b8eSHerbert Dürr 
58*51747b8eSHerbert Dürr #endif	// _SV_SALATSUIFONTUTILS_HXX
59*51747b8eSHerbert Dürr 
60