#ifndef FONTS_H
#define FONTS_H

#ifndef CORESERVICES_H
#include <CoreServices/CoreServices.h>
#endif

#ifndef ATSTYPES_H
#include <ATS/ATSTypes.h>
#endif

#ifndef QUICKDRAW_H
#include <QD/Quickdraw.h>
#endif


#include <HYS/QD/Fonts.h>
#include <AvailabilityMacros.h>

#if PRAGMA_ONCE
#pragma once
#endif

#ifdef __cplusplus
extern "C" {
#endif

/*System and Application Fonts

Specify the current system and application fonts.

enum {
   systemFont = 0,
   applFont = 1
};
Constants
systemFont

Specifies the current System font.

Available in Mac OS X v10.0 and later.
applFont

Specifies the current application font.

Available in Mac OS X v10.0 and later.*/

enum {
   systemFont = 0,
   applFont = 1
};

/*Font ID Constants

Specify a font. These constants are deprecated.

enum {
   kFontIDNewYork = 2,
   kFontIDGeneva = 3,
   kFontIDMonaco = 4,
   kFontIDVenice = 5,
   kFontIDLondon = 6,
   kFontIDAthens = 7,
   kFontIDSanFrancisco = 8,
   kFontIDToronto = 9,
   kFontIDCairo = 11,
   kFontIDLosAngeles = 12,
   kFontIDTimes = 20,
   kFontIDHelvetica = 21,
   kFontIDCourier = 22,
   kFontIDSymbol = 23,
   kFontIDMobile = 24
};*/
enum {
   kFontIDNewYork = 2,
   kFontIDGeneva = 3,
   kFontIDMonaco = 4,
   kFontIDVenice = 5,
   kFontIDLondon = 6,
   kFontIDAthens = 7,
   kFontIDSanFrancisco = 8,
   kFontIDToronto = 9,
   kFontIDCairo = 11,
   kFontIDLosAngeles = 12,
   kFontIDTimes = 20,
   kFontIDHelvetica = 21,
   kFontIDCourier = 22,
   kFontIDSymbol = 23,
   kFontIDMobile = 24
};


//functions

/*GetFNum

Obtains the font family ID for a specified font family name. (Deprecated in Mac OS X v10.4. Use FMGetFontFamilyFromName instead.)

Not recommended.

void GetFNum (
   ConstStr255Param name,
   SInt16 *familyID
);
Parameters
name

The font family name. 
familyID

On output, a pointer to the font family ID for the font family specified in name. If the font specified in the parameter name does not exist, the font family ID contains 0.
Special Considerations

There are several alternatives that provide better compatibility with the operating system than using QuickDraw font functions . You may want to consider the following:
For drawing and measuring text, you can use the Appearance Manager API or the ATSUI API to render text directly through a Quartz graphics context. See Appearance Manager Reference, Rendering Unicode Text With ATSUI, and ATSUI Reference.
For accessing information on fonts tracked by the operating system, use the ATS for Fonts API. See Managing Fonts: ATS and Apple Type Services for Fonts Reference.
For accessing and modifying information on fonts in a Quartz graphics context, use the Quartz API. See Quartz 2D Programming Guide and Quartz 2D Reference Collection.
Carbon Porting Notes

You should use the function FMGetFontFamilyFromName instead of the function GetFNum.
Availability
Available in Mac OS X v10.0 and later.
Deprecated in Mac OS X v10.4.
Declared In
Fonts.h*/

void GetFNum (
   ConstStr255Param name,
   SInt16 *familyID
);

/*GetFontName

Obtains the name of a font family that has a specified family ID number. (Deprecated in Mac OS X v10.4. Use FMGetFontFamilyName instead.)

Not recommended.

void GetFontName (
   SInt16 familyID,
   Str255 name
);
Parameters
familyID

The font family ID.
name

On output, this parameter contains the font family name for the font family specified in familyID. If the font specified in the familyID parameter does not exist, name contains an empty string. 
Special Considerations

There are several alternatives that provide better compatibility with the operating system than using QuickDraw font functions . You may want to consider the following:
For drawing and measuring text, you can use the Appearance Manager API or the ATSUI API to render text directly through a Quartz graphics context. See Appearance Manager Reference, Rendering Unicode Text With ATSUI, and ATSUI Reference.
For accessing information on fonts tracked by the operating system, use the ATS for Fonts API. See Managing Fonts: ATS and Apple Type Services for Fonts Reference.
For accessing and modifying information on fonts in a Quartz graphics context, use the Quartz API. See Quartz 2D Programming Guide and Quartz 2D Reference Collection.
Availability
Available in Mac OS X v10.0 and later.
Deprecated in Mac OS X v10.4.
Declared In
Fonts.h*/
void GetFontName (
   SInt16 familyID,
   Str255 name
);

#ifdef __cplusplus
}
#endif

#endif