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