diff options
Diffstat (limited to 'vendor/winapi/src/um/usp10.rs')
-rw-r--r-- | vendor/winapi/src/um/usp10.rs | 560 |
1 files changed, 0 insertions, 560 deletions
diff --git a/vendor/winapi/src/um/usp10.rs b/vendor/winapi/src/um/usp10.rs deleted file mode 100644 index b2f24be..0000000 --- a/vendor/winapi/src/um/usp10.rs +++ /dev/null @@ -1,560 +0,0 @@ -// Licensed under the Apache License, Version 2.0 -// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license -// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option. -// All files in the project carrying such notice may not be copied, modified, or distributed -// except according to those terms. -//! Unicode Complex Script processor API declarations -use ctypes::{c_int, c_long, c_void}; -use shared::minwindef::{BOOL, BYTE, DWORD, UINT, ULONG, WORD}; -use shared::ntdef::LCID; -use shared::windef::{HDC, RECT, SIZE}; -use shared::winerror::{FACILITY_ITF, SEVERITY_ERROR}; -use um::wingdi::ABC; -use um::winnt::{HRESULT, LONG, WCHAR}; -pub const SCRIPT_UNDEFINED: WORD = 0; -pub const USP_E_SCRIPT_NOT_IN_FONT: HRESULT = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_ITF, 0x200); -DECLARE_HANDLE!{SCRIPT_CACHE, SCRIPT_CACHE__} -extern "system" { - pub fn ScriptFreeCache( - psc: *mut SCRIPT_CACHE, - ) -> HRESULT; -} -STRUCT!{struct SCRIPT_CONTROL { - bit_fields: DWORD, -}} -BITFIELD!{SCRIPT_CONTROL bit_fields: DWORD [ - uDefaultLanguage set_uDefaultLanguage[0..16], - fContextDigits set_fContextDigits[16..17], - fInvertPreBoundDir set_fInvertPreBoundDir[17..18], - fInvertPostBoundDir set_fInvertPostBoundDir[18..19], - fLinkStringBefore set_fLinkStringBefore[19..20], - fLinkStringAfter set_fLinkStringAfter[20..21], - fNeutralOverride set_fNeutralOverride[21..22], - fNumericOverride set_fNumericOverride[22..23], - fLegacyBidiClass set_fLegacyBidiClass[23..24], - fMergeNeutralItems set_fMergeNeutralItems[24..25], - fReserved set_fReserved[25..32], -]} -STRUCT!{struct SCRIPT_STATE { - bit_fields: WORD, -}} -BITFIELD!{SCRIPT_STATE bit_fields: WORD [ - uBidiLevel set_uBidiLevel[0..5], - fOverrideDirection set_fOverrideDirection[5..6], - fInhibitSymSwap set_fInhibitSymSwap[6..7], - fCharShape set_fCharShape[7..8], - fDigitSubstitute set_fDigitSubstitute[8..9], - fInhibitLigate set_fInhibitLigate[9..10], - fDisplayZWG set_fDisplayZWG[10..11], - fArabicNumContext set_fArabicNumContext[11..12], - fGcpClusters set_fGcpClusters[12..13], - fReserved set_fReserved[13..14], - fEngineReserved set_fEngineReserved[14..16], -]} -STRUCT!{struct SCRIPT_ANALYSIS { - bit_fields: WORD, - s: SCRIPT_STATE, -}} -BITFIELD!{SCRIPT_ANALYSIS bit_fields: WORD [ - eScript set_eScript[0..10], - fRTL set_fRTL[10..11], - fLayoutRTL set_fLayoutRTL[11..12], - fLinkBefore set_fLinkBefore[12..13], - fLinkAfter set_fLinkAfter[13..14], - fLogicalOrder set_fLogicalOrder[14..15], - fNoGlyphIndex set_fNoGlyphIndex[15..16], -]} -STRUCT!{struct SCRIPT_ITEM { - iCharPos: c_int, - a: SCRIPT_ANALYSIS, -}} -extern "system" { - pub fn ScriptItemize( - pwcInChars: *const WCHAR, - cInChars: c_int, - cMaxItems: c_int, - psControl: *const SCRIPT_CONTROL, - psState: *const SCRIPT_STATE, - pItems: *mut SCRIPT_ITEM, - pcItems: *mut c_int, - ) -> HRESULT; - pub fn ScriptLayout( - cRuns: c_int, - pbLevel: *const BYTE, - piVisualToLogical: *mut c_int, - piLogicalToVisual: *mut c_int, - ) -> HRESULT; -} -pub const SCRIPT_JUSTIFY_NONE: WORD = 0; -pub const SCRIPT_JUSTIFY_ARABIC_BLANK: WORD = 1; -pub const SCRIPT_JUSTIFY_CHARACTER: WORD = 2; -pub const SCRIPT_JUSTIFY_RESERVED1: WORD = 3; -pub const SCRIPT_JUSTIFY_BLANK: WORD = 4; -pub const SCRIPT_JUSTIFY_RESERVED2: WORD = 5; -pub const SCRIPT_JUSTIFY_RESERVED3: WORD = 6; -pub const SCRIPT_JUSTIFY_ARABIC_NORMAL: WORD = 7; -pub const SCRIPT_JUSTIFY_ARABIC_KASHIDA: WORD = 8; -pub const SCRIPT_JUSTIFY_ARABIC_ALEF: WORD = 9; -pub const SCRIPT_JUSTIFY_ARABIC_HA: WORD = 10; -pub const SCRIPT_JUSTIFY_ARABIC_RA: WORD = 11; -pub const SCRIPT_JUSTIFY_ARABIC_BA: WORD = 12; -pub const SCRIPT_JUSTIFY_ARABIC_BARA: WORD = 13; -pub const SCRIPT_JUSTIFY_ARABIC_SEEN: WORD = 14; -pub const SCRIPT_JUSTIFY_ARABIC_SEEN_M: WORD = 15; -STRUCT!{struct SCRIPT_VISATTR { - bit_fields: WORD, -}} -BITFIELD!{SCRIPT_VISATTR bit_fields: WORD [ - uJustification set_uJustification[0..4], - fClusterStart set_fClusterStart[4..5], - fDiacritic set_fDiacritic[5..6], - fZeroWidth set_fZeroWidth[6..7], - fReserved set_fReserved[7..8], - fShapeReserved set_fShapeReserved[8..16], -]} -extern "system" { - pub fn ScriptShape( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - pwcChars: *const WCHAR, - cChars: c_int, - cMaxGlyphs: c_int, - psa: *mut SCRIPT_ANALYSIS, - pwOutGlyphs: *mut WORD, - pwLogClust: *mut WORD, - psva: *mut SCRIPT_VISATTR, - pcGlyphs: *mut c_int, - ) -> HRESULT; -} -STRUCT!{struct GOFFSET { - du: LONG, - dv: LONG, -}} -extern "system" { - pub fn ScriptPlace( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - pwGlyphs: *const WORD, - cGlyphs: c_int, - psva: *const SCRIPT_VISATTR, - psa: *mut SCRIPT_ANALYSIS, - piAdvance: *mut c_int, - pGoffset: *mut GOFFSET, - pABC: *mut ABC, - ) -> HRESULT; - pub fn ScriptTextOut( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - x: c_int, - y: c_int, - fuOptions: UINT, - lprc: *const RECT, - psa: *const SCRIPT_ANALYSIS, - pwcReserved: *const WCHAR, - iReserved: c_int, - pwGlyphs: *const WORD, - cGlyphs: c_int, - piAdvance: *const c_int, - piJustify: *const c_int, - pGoffset: *const GOFFSET, - ) -> HRESULT; - pub fn ScriptJustify( - psva: *const SCRIPT_VISATTR, - piAdvance: *const c_int, - cGlyphs: c_int, - iDx: c_int, - iMinKashida: c_int, - piJustify: *mut c_int, - ) -> HRESULT; -} -STRUCT!{struct SCRIPT_LOGATTR { - bit_fields: BYTE, -}} -BITFIELD!{SCRIPT_LOGATTR bit_fields: BYTE [ - fSoftBreak set_fSoftBreak[0..1], - fWhiteSpace set_fWhiteSpace[1..2], - fCharStop set_fCharStop[2..3], - fWordStop set_fWordStop[3..4], - fInvalid set_fInvalid[4..5], - fReserved set_fReserved[5..8], -]} -extern "system" { - pub fn ScriptBreak( - pwcChars: *const WCHAR, - cChars: c_int, - psa: *const SCRIPT_ANALYSIS, - psla: *mut SCRIPT_LOGATTR, - ) -> HRESULT; - pub fn ScriptCPtoX( - iCP: c_int, - fTrailing: BOOL, - cChars: c_int, - cGlyphs: c_int, - pwLogClust: *const WORD, - psva: *const SCRIPT_VISATTR, - piAdvance: *const c_int, - psa: *const SCRIPT_ANALYSIS, - piX: *mut c_int, - ) -> HRESULT; - pub fn ScriptXtoCP( - iX: c_int, - cChars: c_int, - cGlyphs: c_int, - pwLogClust: *const WORD, - psva: *const SCRIPT_VISATTR, - piAdvance: *const c_int, - psa: *const SCRIPT_ANALYSIS, - piCP: *mut c_int, - piTrailing: *mut c_int, - ) -> HRESULT; - pub fn ScriptGetLogicalWidths( - psa: *const SCRIPT_ANALYSIS, - cChars: c_int, - cGlyphs: c_int, - piGlyphWidth: *const c_int, - pwLogClust: *const WORD, - psva: *const SCRIPT_VISATTR, - piDx: *mut c_int, - ) -> HRESULT; - pub fn ScriptApplyLogicalWidth( - piDx: *const c_int, - cChars: c_int, - cGlyphs: c_int, - pwLogClust: *const WORD, - psva: *const SCRIPT_VISATTR, - piAdvance: *const c_int, - psa: *const SCRIPT_ANALYSIS, - pABC: *mut ABC, - piJustify: *mut c_int, - ) -> HRESULT; -} -pub const SGCM_RTL: DWORD = 0x00000001; -extern "system" { - pub fn ScriptGetCMap( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - pwcInChars: *const WCHAR, - cChars: c_int, - dwFlags: DWORD, - pwOutGlyphs: *mut WORD, - ) -> HRESULT; - pub fn ScriptGetGlyphABCWidth( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - wGlyph: WORD, - pABC: *mut ABC, - ) -> HRESULT; -} -STRUCT!{struct SCRIPT_PROPERTIES { - bit_fields1: DWORD, - bit_fields2: DWORD, -}} -BITFIELD!{SCRIPT_PROPERTIES bit_fields1: DWORD [ - langid set_langid[0..16], - fNumeric set_fNumeric[16..17], - fComplex set_fComplex[17..18], - fNeedsWordBreaking set_fNeedsWordBreaking[18..19], - fNeedsCaretInfo set_fNeedsCaretInfo[19..20], - bCharSet set_bCharSet[20..28], - fControl set_fControl[28..29], - fPrivateUseArea set_fPrivateUseArea[29..30], - fNeedsCharacterJustify set_fNeedsCharacterJustify[30..31], - fInvalidGlyph set_fInvalidGlyph[31..32], -]} -BITFIELD!{SCRIPT_PROPERTIES bit_fields2: DWORD [ - fInvalidLogAttr set_fInvalidLogAttr[0..1], - fCDM set_fCDM[1..2], - fAmbiguousCharSet set_fAmbiguousCharSet[2..3], - fClusterSizeVaries set_fClusterSizeVaries[3..4], - fRejectInvalid set_fRejectInvalid[4..5], -]} -extern "system" { - pub fn ScriptGetProperties( - ppSp: *mut *mut *const SCRIPT_PROPERTIES, - piNumScripts: *mut c_int, - ) -> HRESULT; -} -STRUCT!{struct SCRIPT_FONTPROPERTIES { - cBytes: c_int, - wgBlank: WORD, - wgDefault: WORD, - wgInvalid: WORD, - wgKashida: WORD, - iKashidaWidth: c_int, -}} -extern "system" { - pub fn ScriptGetFontProperties( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - sfp: *mut SCRIPT_FONTPROPERTIES, - ) -> HRESULT; - pub fn ScriptCacheGetHeight( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - tmHeight: *mut c_long, - ) -> HRESULT; -} -pub const SSA_PASSWORD: DWORD = 0x00000001; -pub const SSA_TAB: DWORD = 0x00000002; -pub const SSA_CLIP: DWORD = 0x00000004; -pub const SSA_FIT: DWORD = 0x00000008; -pub const SSA_DZWG: DWORD = 0x00000010; -pub const SSA_FALLBACK: DWORD = 0x00000020; -pub const SSA_BREAK: DWORD = 0x00000040; -pub const SSA_GLYPHS: DWORD = 0x00000080; -pub const SSA_RTL: DWORD = 0x00000100; -pub const SSA_GCP: DWORD = 0x00000200; -pub const SSA_HOTKEY: DWORD = 0x00000400; -pub const SSA_METAFILE: DWORD = 0x00000800; -pub const SSA_LINK: DWORD = 0x00001000; -pub const SSA_HIDEHOTKEY: DWORD = 0x00002000; -pub const SSA_HOTKEYONLY: DWORD = 0x00002400; -pub const SSA_FULLMEASURE: DWORD = 0x04000000; -pub const SSA_LPKANSIFALLBACK: DWORD = 0x08000000; -pub const SSA_PIDX: DWORD = 0x10000000; -pub const SSA_LAYOUTRTL: DWORD = 0x20000000; -pub const SSA_DONTGLYPH: DWORD = 0x40000000; -pub const SSA_NOKASHIDA: DWORD = 0x80000000; -STRUCT!{struct SCRIPT_TABDEF { - cTabStops: c_int, - iScale: c_int, - pTabStops: *mut c_int, - iTabOrigin: c_int, -}} -DECLARE_HANDLE!{SCRIPT_STRING_ANALYSIS, SCRIPT_STRING_ANALYSIS__} -extern "system" { - pub fn ScriptStringAnalyse( - hdc: HDC, - pString: *const c_void, - cString: c_int, - cGlyphs: c_int, - iCharset: c_int, - dwFlags: DWORD, - iReqWidth: c_int, - psControl: *mut SCRIPT_CONTROL, - psState: *mut SCRIPT_STATE, - piDx: *const c_int, - pTabdef: *mut SCRIPT_TABDEF, - pbInClass: *const BYTE, - pssa: *mut SCRIPT_STRING_ANALYSIS, - ) -> HRESULT; - pub fn ScriptStringFree( - pssa: *mut SCRIPT_STRING_ANALYSIS, - ) -> HRESULT; - pub fn ScriptString_pSize( - ssa: SCRIPT_STRING_ANALYSIS, - ) -> *const SIZE; - pub fn ScriptString_pcOutChars( - ssa: SCRIPT_STRING_ANALYSIS, - ) -> *const c_int; - pub fn ScriptString_pLogAttr( - ssa: SCRIPT_STRING_ANALYSIS, - ) -> *const SCRIPT_LOGATTR; - pub fn ScriptStringGetOrder( - ssa: SCRIPT_STRING_ANALYSIS, - puOrder: *mut UINT, - ) -> HRESULT; - pub fn ScriptStringCPtoX( - ssa: SCRIPT_STRING_ANALYSIS, - icp: c_int, - fTrailing: BOOL, - pX: *mut c_int, - ) -> HRESULT; - pub fn ScriptStringXtoCP( - ssa: SCRIPT_STRING_ANALYSIS, - iX: c_int, - piCh: *mut c_int, - piTrailing: *mut c_int, - ) -> HRESULT; - pub fn ScriptStringGetLogicalWidths( - ssa: SCRIPT_STRING_ANALYSIS, - dpiDx: *mut c_int, - ) -> HRESULT; - pub fn ScriptStringValidate( - ssa: SCRIPT_STRING_ANALYSIS, - ) -> HRESULT; - pub fn ScriptStringOut( - ssa: SCRIPT_STRING_ANALYSIS, - iX: c_int, - iY: c_int, - uOptions: UINT, - prc: *const RECT, - iMinSel: c_int, - iMaxSel: c_int, - fDisabled: BOOL, - ) -> HRESULT; -} -pub const SIC_COMPLEX: DWORD = 1; -pub const SIC_ASCIIDIGIT: DWORD = 2; -pub const SIC_NEUTRAL: DWORD = 4; -extern "system" { - pub fn ScriptIsComplex( - pwcInChars: *const WCHAR, - cInChars: c_int, - dwFlags: DWORD, - ) -> HRESULT; -} -STRUCT!{struct SCRIPT_DIGITSUBSTITUTE { - bit_fields1: DWORD, - bit_fields2: DWORD, - dwReserved: DWORD, -}} -BITFIELD!{SCRIPT_DIGITSUBSTITUTE bit_fields1: DWORD [ - NationalDigitLanguage set_NationalDigitLanguage[0..16], - TraditionalDigitLanguage set_TraditionalDigitLanguage[16..32], -]} -BITFIELD!{SCRIPT_DIGITSUBSTITUTE bit_fields2: DWORD [ - DigitSubstitute set_DigitSubstitute[0..8], -]} -extern "system" { - pub fn ScriptRecordDigitSubstitution( - Locale: LCID, - psds: *mut SCRIPT_DIGITSUBSTITUTE, - ) -> HRESULT; -} -pub const SCRIPT_DIGITSUBSTITUTE_CONTEXT: BYTE = 0; -pub const SCRIPT_DIGITSUBSTITUTE_NONE: BYTE = 1; -pub const SCRIPT_DIGITSUBSTITUTE_NATIONAL: BYTE = 2; -pub const SCRIPT_DIGITSUBSTITUTE_TRADITIONAL: BYTE = 3; -extern "system" { - pub fn ScriptApplyDigitSubstitution( - psds: *const SCRIPT_DIGITSUBSTITUTE, - psc: *mut SCRIPT_CONTROL, - pss: *mut SCRIPT_STATE, - ) -> HRESULT; -} -pub type OPENTYPE_TAG = ULONG; -pub const SCRIPT_TAG_UNKNOWN: OPENTYPE_TAG = 0x00000000; -STRUCT!{struct OPENTYPE_FEATURE_RECORD { - tagFeature: OPENTYPE_TAG, - lParameter: LONG, -}} -STRUCT!{struct TEXTRANGE_PROPERTIES { - potfRecords: *mut OPENTYPE_FEATURE_RECORD, - cotfRecords: c_int, -}} -STRUCT!{struct SCRIPT_CHARPROP { - bit_fields: WORD, -}} -BITFIELD!{SCRIPT_CHARPROP bit_fields: WORD [ - fCanGlyphAlone set_fCanGlyphAlone[0..1], - reserved set_reserved[1..16], -]} -STRUCT!{struct SCRIPT_GLYPHPROP { - sva: SCRIPT_VISATTR, - reserved: WORD, -}} -extern "system" { - pub fn ScriptShapeOpenType( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - rcRangeChars: *mut c_int, - rpRangeProperties: *mut *mut TEXTRANGE_PROPERTIES, - cRanges: c_int, - pwcChars: *const WCHAR, - cChars: c_int, - cMaxGlyphs: c_int, - pwLogClust: *mut WORD, - pCharProps: *mut SCRIPT_CHARPROP, - pwOutGlyphs: *mut WORD, - pOutGlyphProps: *mut SCRIPT_GLYPHPROP, - pcGlyphs: *mut c_int, - ) -> HRESULT; - pub fn ScriptPlaceOpenType( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - rcRangeChars: *mut c_int, - rpRangeProperties: *mut *mut TEXTRANGE_PROPERTIES, - cRanges: c_int, - pwcChars: *const WCHAR, - pwLogClust: *mut WORD, - pCharProps: *mut SCRIPT_CHARPROP, - cChars: c_int, - pwGlyphs: *const WORD, - pGlyphProps: *const SCRIPT_GLYPHPROP, - cGlyphs: c_int, - piAdvance: *mut c_int, - pGoffset: *mut GOFFSET, - pABC: *mut ABC, - ) -> HRESULT; - pub fn ScriptItemizeOpenType( - pwcInChars: *const WCHAR, - cInChars: c_int, - cMaxItems: c_int, - psControl: *const SCRIPT_CONTROL, - psState: *const SCRIPT_STATE, - pItems: *mut SCRIPT_ITEM, - pScriptTags: *mut OPENTYPE_TAG, - pcItems: *mut c_int, - ) -> HRESULT; - pub fn ScriptGetFontScriptTags( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - cMaxTags: c_int, - pScriptTags: *mut OPENTYPE_TAG, - pcTags: *mut c_int, - ) -> HRESULT; - pub fn ScriptGetFontLanguageTags( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - cMaxTags: c_int, - pLangsysTags: *mut OPENTYPE_TAG, - pcTags: *mut c_int, - ) -> HRESULT; - pub fn ScriptGetFontFeatureTags( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - cMaxTags: c_int, - pFeatureTags: *mut OPENTYPE_TAG, - pcTags: *mut c_int, - ) -> HRESULT; - pub fn ScriptGetFontAlternateGlyphs( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - tagFeature: OPENTYPE_TAG, - wGlyphId: WORD, - cMaxAlternates: c_int, - pAlternateGlyphs: *mut WORD, - pcAlternates: *mut c_int, - ) -> HRESULT; - pub fn ScriptSubstituteSingleGlyph( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - tagFeature: OPENTYPE_TAG, - lParameter: LONG, - wGlyphId: WORD, - pwOutGlyphId: *mut WORD, - ) -> HRESULT; - pub fn ScriptPositionSingleGlyph( - hdc: HDC, - psc: *mut SCRIPT_CACHE, - psa: *mut SCRIPT_ANALYSIS, - tagScript: OPENTYPE_TAG, - tagLangSys: OPENTYPE_TAG, - tagFeature: OPENTYPE_TAG, - lParameter: LONG, - wGlyphId: WORD, - iAdvance: c_int, - GOffset: GOFFSET, - piOutAdvance: *mut c_int, - pOutGoffset: *mut GOFFSET, - ) -> HRESULT; -} |