Create the AHCI branch for Aman's work
[reactos.git] / sdk / include / psdk / inputscope.idl
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given.
5 */
6
7 import "oaidl.idl";
8 import "ocidl.idl";
9
10 typedef enum {
11 IS_DEFAULT = 0,
12 IS_URL = 1,
13 IS_FILE_FULLFILEPATH = 2,
14 IS_FILE_FILENAME = 3,
15 IS_EMAIL_USERNAME = 4,
16 IS_EMAIL_SMTPEMAILADDRESS = 5,
17 IS_LOGINNAME = 6,
18 IS_PERSONALNAME_FULLNAME = 7,
19 IS_PERSONALNAME_PREFIX = 8,
20 IS_PERSONALNAME_GIVENNAME = 9,
21 IS_PERSONALNAME_MIDDLENAME = 10,
22 IS_PERSONALNAME_SURNAME = 11,
23 IS_PERSONALNAME_SUFFIX = 12,
24 IS_ADDRESS_FULLPOSTALADDRESS = 13,
25 IS_ADDRESS_POSTALCODE = 14,
26 IS_ADDRESS_STREET = 15,
27 IS_ADDRESS_STATEORPROVINCE = 16,
28 IS_ADDRESS_CITY = 17,
29 IS_ADDRESS_COUNTRYNAME = 18,
30 IS_ADDRESS_COUNTRYSHORTNAME = 19,
31 IS_CURRENCY_AMOUNTANDSYMBOL = 20,
32 IS_CURRENCY_AMOUNT = 21,
33 IS_DATE_FULLDATE = 22,
34 IS_DATE_MONTH = 23,
35 IS_DATE_DAY = 24,
36 IS_DATE_YEAR = 25,
37 IS_DATE_MONTHNAME = 26,
38 IS_DATE_DAYNAME = 27,
39 IS_DIGITS = 28,
40 IS_NUMBER = 29,
41 IS_ONECHAR = 30,
42 IS_PASSWORD = 31,
43 IS_TELEPHONE_FULLTELEPHONENUMBER = 32,
44 IS_TELEPHONE_COUNTRYCODE = 33,
45 IS_TELEPHONE_AREACODE = 34,
46 IS_TELEPHONE_LOCALNUMBER = 35,
47 IS_TIME_FULLTIME = 36,
48 IS_TIME_HOUR = 37,
49 IS_TIME_MINORSEC = 38,
50 IS_NUMBER_FULLWIDTH = 39,
51 IS_ALPHANUMERIC_HALFWIDTH = 40,
52 IS_ALPHANUMERIC_FULLWIDTH = 41,
53 IS_CURRENCY_CHINESE = 42,
54 IS_BOPOMOFO = 43,
55 IS_HIRAGANA = 44,
56 IS_KATAKANA_HALFWIDTH = 45,
57 IS_KATAKANA_FULLWIDTH = 46,
58 IS_HANJA = 47,
59 IS_HANGUL_HALFWIDTH = 48,
60 IS_HANGUL_FULLWIDTH = 49,
61 IS_SEARCH = 50,
62 IS_FORMULA = 51,
63 IS_SEARCH_INCREMENTAL = 52,
64 IS_CHINESE_HALFWIDTH = 53,
65 IS_CHINESE_FULLWIDTH = 54,
66 IS_NATIVE_SCRIPT = 55,
67
68 IS_PHRASELIST = -1,
69 IS_REGULAREXPRESSION = -2,
70 IS_SRGS = -3,
71 IS_XML = -4,
72 IS_ENUMSTRING = -5
73 } InputScope;
74
75 cpp_quote("HRESULT WINAPI SetInputScope(HWND hwnd,InputScope inputscope);")
76 cpp_quote("HRESULT WINAPI SetInputScopes(HWND hwnd,const InputScope *pInputScopes,UINT cInputScopes,WCHAR **ppszPhraseList,UINT cPhrases,WCHAR *pszRegExp,WCHAR *pszSRGS);")
77 cpp_quote("HRESULT WINAPI SetInputScopeXML(HWND hwnd,WCHAR *pszXML);")
78
79 cpp_quote("DEFINE_GUID(GUID_PROP_INPUTSCOPE,0x1713dd5a,0x68e7,0x4a5b,0x9a,0xf6,0x59,0x2a,0x59,0x5c,0x77,0x8d);")
80
81 [
82 object,
83 uuid(fde1eaee-6924-4cdf-91e7-da38cff5559d),
84 pointer_default(unique)
85 ]
86 interface ITfInputScope : IUnknown
87 {
88 HRESULT GetInputScopes([out, size_is(,*pcCount)] InputScope **pprgInputScopes, [out] UINT *pcCount);
89 HRESULT GetPhrase([out, size_is(,*pcCount)] BSTR **ppbstrPhrases, [out] UINT *pcCount);
90 HRESULT GetRegularExpression([out] BSTR *pbstrRegExp);
91 HRESULT GetSRGS([out] BSTR *pbstrSRGS);
92 HRESULT GetXML([out] BSTR *pbstrXML);
93 }