diff --git a/src/hb-aat-layout.cc b/src/hb-aat-layout.cc index 542c99ba6..351fa432b 100644 --- a/src/hb-aat-layout.cc +++ b/src/hb-aat-layout.cc @@ -354,6 +354,8 @@ hb_aat_layout_track (const hb_ot_shape_plan_t *plan, * Output = the actual number of feature types returned (may be zero) * @features: (out caller-allocates) (array length=feature_count): Array of feature types found * + * Fetches a list of the AAT feature types included in the specified face. + * * Return value: Number of all available feature types. * * Since: 2.2.0 @@ -370,9 +372,11 @@ hb_aat_layout_get_feature_types (hb_face_t *face, /** * hb_aat_layout_feature_type_get_name_id: * @face: #hb_face_t to work upon - * @feature_type: + * @feature_type: The #hb_aat_layout_feature_type_t of the requested feature type * - * Return value: Name ID index + * Fetches the name ID of the specified feature type in the face's 'name' table. + * + * Return value: Name ID index of the requested feature type * * Since: 2.2.0 */ @@ -385,18 +389,22 @@ hb_aat_layout_feature_type_get_name_id (hb_face_t *face, /** * hb_aat_layout_feature_type_get_selectors: - * @face: a face object - * @feature_type: feature id - * @start_offset: iteration's start offset - * @selector_count: (inout) (allow-none): buffer size as input, filled size as output - * @selectors: (out caller-allocates) (array length=selector_count): settings buffer - * @default_index: (out) (allow-none): index of default selector, if any + * @face: #hb_face_t to work upon + * @feature_type: The #hb_aat_layout_feature_type_t of the requested feature type + * @start_offset: offset of the first feature type to retrieve + * @selector_count: (inout) (allow-none): Input = the maximum number of selectors to return; + * Output = the actual number of selectors returned (may be zero) + * @selectors: (out caller-allocates) (array length=selector_count): A buffer pointer. + * The selectors available for the feature type queries. + * @default_index: (out) (allow-none): The index of the feature's default selector, if any + * + * Fetches a list of the selectors available for the specified feature in the given face. * * If upon return, @default_index is set to #HB_AAT_LAYOUT_NO_SELECTOR_INDEX, then * the feature type is non-exclusive. Otherwise, @default_index is the index of * the selector that is selected by default. * - * Return value: Number of all available feature selectors. + * Return value: Number of all available feature selectors * * Since: 2.2.0 */ diff --git a/src/hb-aat-layout.h b/src/hb-aat-layout.h index f89116a2a..37bd3ab8b 100644 --- a/src/hb-aat-layout.h +++ b/src/hb-aat-layout.h @@ -37,7 +37,7 @@ HB_BEGIN_DECLS /** * hb_aat_layout_feature_type_t: - * @HB_AAT_LAYOUT_FEATURE_TYPE_INVALID + * @HB_AAT_LAYOUT_FEATURE_TYPE_INVALID: 0xFFFF * @HB_AAT_LAYOUT_FEATURE_TYPE_ALL_TYPOGRAPHIC * @HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES * @HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION @@ -77,8 +77,9 @@ HB_BEGIN_DECLS * @HB_AAT_LAYOUT_FEATURE_TYPE_UPPER_CASE * @HB_AAT_LAYOUT_FEATURE_TYPE_LANGUAGE_TAG_TYPE * @HB_AAT_LAYOUT_FEATURE_TYPE_CJK_ROMAN_SPACING_TYPE + * @_HB_AAT_LAYOUT_FEATURE_TYPE_MAX_VALUE: 0x7FFFFFFFu * - * The possible features defined for AAT shaping. + * The possible feature types defined for AAT shaping. * * Since: 2.2.0 */ @@ -131,9 +132,13 @@ typedef enum /** * hb_aat_layout_feature_selector_t: - * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INVALID + * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INVALID: 0xFFFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_ALL_TYPOGRAPHIC * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_ON @@ -156,23 +161,35 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_UNCONNECTED * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PARTIALLY_CONNECTED * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CURSIVE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_LETTER_CASE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_AND_LOWER_CASE: Deprecated * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_CAPS: Deprecated * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_LOWER_CASE: Deprecated * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SMALL_CAPS: Deprecated * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS: Deprecated * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS_AND_SMALL_CAPS: Deprecated + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_SUBSTITUTION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_LINGUISTIC_REARRANGEMENT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_SPACING * @HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_NUMBERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_NUMBERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_NUMBERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_NUMBERS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_SMART_SWASH_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_ON @@ -183,19 +200,29 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_DIACRITICS_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SHOW_DIACRITICS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HIDE_DIACRITICS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DECOMPOSE_DIACRITICS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_POSITION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NORMAL_POSITION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SUPERIORS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INFERIORS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ORDINALS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SCIENTIFIC_INFERIORS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_FRACTIONS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_FRACTIONS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_VERTICAL_FRACTIONS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAGONAL_FRACTIONS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_OVERLAPPING_CHARACTERS_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_TYPOGRAPHIC_EXTRAS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_ON @@ -208,6 +235,8 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_MATHEMATICAL_EXTRAS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_ON @@ -220,6 +249,8 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_ORNAMENT_SETS_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ORNAMENTS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DINGBATS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PI_CHARACTERS @@ -227,18 +258,26 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DECORATIVE_BORDERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INTERNATIONAL_SYMBOLS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_MATH_SYMBOLS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ALTERNATES + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_DESIGN_COMPLEXITY_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL1 * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL2 * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL3 * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL4 * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL5 + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_STYLE_OPTIONS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLE_OPTIONS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DISPLAY_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ENGRAVED_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ILLUMINATED_CAPS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TITLING_CAPS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TALL_CAPS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_SHAPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_CHARACTERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SIMPLIFIED_CHARACTERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1978_CHARACTERS @@ -254,8 +293,12 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HOJO_CHARACTERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NLCCHARACTERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_NAMES_CHARACTERS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_CASE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_NUMBERS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_NUMBERS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_TEXT_SPACING * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_TEXT @@ -263,6 +306,8 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_PROPORTIONAL_TEXT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_HALF_WIDTH_TEXT + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_TRANSLITERATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_TRANSLITERATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HIRAGANA_TO_KATAKANA @@ -273,6 +318,8 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_ONE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_TWO * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_THREE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_ANNOTATION_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ANNOTATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_BOX_ANNOTATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ROUNDED_BOX_ANNOTATION @@ -284,47 +331,69 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAMOND_ANNOTATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_BOX_ANNOTATION * @HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_ROUNDED_BOX_ANNOTATION + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_KANA_SPACING_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_KANA * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_KANA + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_SPACING_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_IDEOGRAPHS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_IDEOGRAPHS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_IDEOGRAPHS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_UNICODE_DECOMPOSITION_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_RUBY_KANA * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_RUBY_KANA: Deprecated; use #HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_OFF instead * @HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA: Deprecated; use #HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_ON instead * @HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CJK_SYMBOL_ALTERNATIVES_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_SYMBOL_ALTERNATIVES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_ONE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_TWO * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_THREE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FOUR * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FIVE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_ALTERNATIVES_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_IDEOGRAPHIC_ALTERNATIVES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_ONE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_TWO * @HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_THREE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FOUR * @HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FIVE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CJK_VERTICAL_ROMAN_PLACEMENT_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_CENTERED * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_HBASELINE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_ITALIC_CJK_ROMAN * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_ITALIC_ROMAN: Deprecated; use #HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_OFF instead * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN: Deprecated; use #HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_ON instead * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CASE_SENSITIVE_LAYOUT * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_ALTERNATE_KANA * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_OFF + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_STYLISTIC_ALTERNATIVES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLISTIC_ALTERNATES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_OFF @@ -367,22 +436,32 @@ typedef enum * @HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_ON + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CONTEXTUAL_ALTERNATIVES * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_ON * @HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_OFF * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_LOWER_CASE + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_LOWER_CASE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_SMALL_CAPS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_PETITE_CAPS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_UPPER_CASE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_UPPER_CASE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_SMALL_CAPS * @HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_PETITE_CAPS + * + * Selectors for #HB_AAT_LAYOUT_FEATURE_TYPE_CJK_ROMAN_SPACING_TYPE * @HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_CJK_ROMAN * @HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_CJK_ROMAN * @HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_CJK_ROMAN * @HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_CJK_ROMAN * + * @_HB_AAT_LAYOUT_FEATURE_SELECTOR_MAX_VALUE: 0x7FFFFFFFu + * * The selectors defined for specifying AAT feature settings. * * Since: 2.2.0 @@ -739,6 +818,13 @@ typedef struct hb_aat_layout_feature_selector_info_t unsigned int reserved; } hb_aat_layout_feature_selector_info_t; +/** + * HB_AAT_LAYOUT_NO_SELECTOR_INDEX + * + * Used when getting or setting AAT feature selectors. Indicates that + * there is no selector index corresponding to the selector of interest. + * + */ #define HB_AAT_LAYOUT_NO_SELECTOR_INDEX 0xFFFFu HB_EXTERN unsigned int