diff options
| author | FluorescentCIAAfricanAmerican <[email protected]> | 2020-04-22 12:56:21 -0400 |
|---|---|---|
| committer | FluorescentCIAAfricanAmerican <[email protected]> | 2020-04-22 12:56:21 -0400 |
| commit | 3bf9df6b2785fa6d951086978a3e66f49427166a (patch) | |
| tree | 2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /common/quicktime_win32/FontPanel.h | |
| download | archived-source-engine-2018-hl2-src-master.tar.xz archived-source-engine-2018-hl2-src-master.zip | |
Diffstat (limited to 'common/quicktime_win32/FontPanel.h')
| -rw-r--r-- | common/quicktime_win32/FontPanel.h | 274 |
1 files changed, 274 insertions, 0 deletions
diff --git a/common/quicktime_win32/FontPanel.h b/common/quicktime_win32/FontPanel.h new file mode 100644 index 0000000..a7acc08 --- /dev/null +++ b/common/quicktime_win32/FontPanel.h @@ -0,0 +1,274 @@ +/* + File: FontPanel.h + + Contains: Carbon Font Panel package Interfaces. + + Version: QuickTime 7.3 + + Copyright: (c) 2007 (C) 2002 by Apple Computer, Inc., all rights reserved + + Bugs?: For bug reports, consult the following page on + the World Wide Web: + + http://developer.apple.com/bugreporter/ + +*/ +#ifndef __FONTPANEL__ +#define __FONTPANEL__ + +#ifndef __ATSTYPES__ +#include <ATSTypes.h> +#endif + +#ifndef __CARBONEVENTS__ +#include <CarbonEvents.h> +#endif + +#ifndef __MACERRORS__ +#include <MacErrors.h> +#endif + +#ifndef __MACTYPES__ +#include <MacTypes.h> +#endif + +#ifndef __QUICKDRAW__ +#include <Quickdraw.h> +#endif + + + +#if PRAGMA_ONCE +#pragma once +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#if PRAGMA_IMPORT +#pragma import on +#endif + +#if PRAGMA_STRUCT_ALIGN + #pragma options align=mac68k +#elif PRAGMA_STRUCT_PACKPUSH + #pragma pack(push, 2) +#elif PRAGMA_STRUCT_PACK + #pragma pack(2) +#endif + +/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Font Panel-Related Events +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ + +/* + * Discussion: + * Event classes + */ +enum { + + /* + * Events related to font selection or handling. + */ + kEventClassFont = FOUR_CHAR_CODE('font') +}; + + +/* + * Summary: + * Common command IDs + */ +enum { + + /* + * The state of the Font Panel should be toggled, displaying it or + * hiding it as necessary. If the user closes the Font Panel directly + * from the window, the application will receive a + * kEventFontPanelClosed event. + */ + kHICommandShowHideFontPanel = FOUR_CHAR_CODE('shfp') +}; + +/* Font Events */ + +/* + * Summary: + * Font events (kEventClassFont) + * + * Discussion: + * When the user closes the Font Panel, a kEventWindowClosed event + * will be detected by the Carbon event handler installed by the + * system. The system then notifies the application that the Font + * Panel has closed by posting a Carbon Event Manager event. This + * allows the application to update any menu items or other controls + * whose state may have to change because the Font Panel has closed. + * kEventWindowClosed has no parameters. When the user selects an + * item in the Font Panel, the system will send a + * kEventFontSelection event to the event target specified when the + * application called SetFontPanelInfo(). kEventFontSelection will + * contain parameters reflecting the current Font Panel selection in + * all supported formats. Font events are available after Mac OS X + * 10.2 in the Carbon framework. + */ +enum { + + /* + * The Font Panel has been closed. The application should update its + * corresponding UI element (e.g., a menu item) accordingly. + */ + kEventFontPanelClosed = 1, + + /* + * The user has specified font settings in the Font Panel. The + * application can obtain these settings from the event, in which + * they are stored as parameters. Not all parameters are guaranteed + * to be present; the application should check for all those which it + * recognizes and apply the ones found as appropriate to the target + * text. + */ + kEventFontSelection = 2 +}; + +/* + Parameters for font events: + + kEventFontPanelClosed + None. + + kEventFontSelection + --> kEventParamATSUFontID typeATSUFontID + --> kEventParamATSUFontSize typeATSUSize + --> kEventParamFMFontFamily typeFMFontFamily + --> kEventParamFMFontSize typeFMFontSize + --> kEventParamFontColor typeFontColor +*/ +enum { + typeATSUFontID = typeUInt32, /* ATSUI font ID.*/ + typeATSUSize = typeFixed, /* ATSUI font size.*/ + typeFMFontFamily = typeSInt16, /* Font family reference.*/ + typeFMFontStyle = typeSInt16, /* Quickdraw font style*/ + typeFMFontSize = typeSInt16, /* Integer font size.*/ + typeFontColor = typeRGBColor, /* Font color spec (optional).*/ + kEventParamATSUFontID = FOUR_CHAR_CODE('auid'), /* typeATSUFontID*/ + kEventParamATSUFontSize = FOUR_CHAR_CODE('ausz'), /* typeATSUSize*/ + kEventParamFMFontFamily = FOUR_CHAR_CODE('fmfm'), /* typeFMFontFamily*/ + kEventParamFMFontStyle = FOUR_CHAR_CODE('fmst'), /* typeFMFontStyle*/ + kEventParamFMFontSize = FOUR_CHAR_CODE('fmsz'), /* typeFMFontSize*/ + kEventParamFontColor = FOUR_CHAR_CODE('fclr') /* typeFontColor*/ +}; + + +/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Other Font Panel Constants +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ +/* +Error codes (Font Panel codes in range [-8880,-8899]). +*/ +enum { + fontPanelShowErr = -8880, /* Can't display the Font Panel.*/ + fontPanelSelectionStyleErr = -8881, /* Bad font selection style info.*/ + fontPanelFontSelectionQDStyleVersionErr = -8882 /* Unsupported record version.*/ +}; + +/* +Type of font information passed in SetFontPanelInfo(). If the client is +sending ATSUI style data, it specifies kFontSelectionATSUIType; if it is +sending Quickdraw style data, it specifies kFontSelectionQDType. +*/ +enum { + kFontSelectionATSUIType = FOUR_CHAR_CODE('astl'), /* Use ATSUIStyle collection.*/ + kFontSelectionQDType = FOUR_CHAR_CODE('qstl') /* Use FontSelectionQDStyle record.*/ +}; + +/* +Supported versions of the FontSelectionQDStyle record. Clients should always set +the <version> field to one of these values. +*/ +enum { + kFontSelectionQDStyleVersionZero = 0 +}; + + +/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Font Panel Types +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ +/* +Record specifying the font information to be specified in the Font +Panel. This record is used if the client is sending Quickdraw style data +(i.e., it specified kFontSelectionQDType in SetFontPanelInfo()). +*/ +struct FontSelectionQDStyle { + UInt32 version; /* Version number of struct.*/ + FMFontFamilyInstance instance; /* Font instance data.*/ + FMFontSize size; /* Size of font in points.*/ + Boolean hasColor; /* true if color info supplied.*/ + UInt8 reserved; /* Filler byte.*/ + RGBColor color; /* Color specification for font.*/ +}; +typedef struct FontSelectionQDStyle FontSelectionQDStyle; +typedef FontSelectionQDStyle * FontSelectionQDStylePtr; +/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Font Panel Functions +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ +/* + * FPIsFontPanelVisible() + * + * Availability: + * Non-Carbon CFM: not available + * CarbonLib: not available in CarbonLib 1.x + * Mac OS X: in version 10.2 and later + */ +EXTERN_API_C( Boolean ) +FPIsFontPanelVisible(void); + + +/* + * FPShowHideFontPanel() + * + * Availability: + * Non-Carbon CFM: not available + * CarbonLib: not available in CarbonLib 1.x + * Mac OS X: in version 10.2 and later + */ +EXTERN_API_C( OSStatus ) +FPShowHideFontPanel(void); + + +/* + * SetFontInfoForSelection() + * + * Availability: + * Non-Carbon CFM: not available + * CarbonLib: not available in CarbonLib 1.x + * Mac OS X: in version 10.2 and later + */ +EXTERN_API_C( OSStatus ) +SetFontInfoForSelection( + OSType iStyleType, + UInt32 iNumStyles, + void * iStyles, + HIObjectRef iFPEventTarget); + + + +#if PRAGMA_STRUCT_ALIGN + #pragma options align=reset +#elif PRAGMA_STRUCT_PACKPUSH + #pragma pack(pop) +#elif PRAGMA_STRUCT_PACK + #pragma pack() +#endif + +#ifdef PRAGMA_IMPORT_OFF +#pragma import off +#elif PRAGMA_IMPORT +#pragma import reset +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __FONTPANEL__ */ + |