source: titan/mediathek/localhoster/lib/python2.7/ctypes/wintypes.py @ 40094

Last change on this file since 40094 was 40094, checked in by obi, 7 years ago

tithek add yoztube-dl support

File size: 5.2 KB
Line 
1######################################################################
2#  This file should be kept compatible with Python 2.3, see PEP 291. #
3######################################################################
4
5# The most useful windows datatypes
6from ctypes import *
7
8BYTE = c_byte
9WORD = c_ushort
10DWORD = c_ulong
11
12WCHAR = c_wchar
13UINT = c_uint
14INT = c_int
15
16DOUBLE = c_double
17FLOAT = c_float
18
19BOOLEAN = BYTE
20BOOL = c_long
21
22from ctypes import _SimpleCData
23class VARIANT_BOOL(_SimpleCData):
24    _type_ = "v"
25    def __repr__(self):
26        return "%s(%r)" % (self.__class__.__name__, self.value)
27
28ULONG = c_ulong
29LONG = c_long
30
31USHORT = c_ushort
32SHORT = c_short
33
34# in the windows header files, these are structures.
35_LARGE_INTEGER = LARGE_INTEGER = c_longlong
36_ULARGE_INTEGER = ULARGE_INTEGER = c_ulonglong
37
38LPCOLESTR = LPOLESTR = OLESTR = c_wchar_p
39LPCWSTR = LPWSTR = c_wchar_p
40LPCSTR = LPSTR = c_char_p
41LPCVOID = LPVOID = c_void_p
42
43# WPARAM is defined as UINT_PTR (unsigned type)
44# LPARAM is defined as LONG_PTR (signed type)
45if sizeof(c_long) == sizeof(c_void_p):
46    WPARAM = c_ulong
47    LPARAM = c_long
48elif sizeof(c_longlong) == sizeof(c_void_p):
49    WPARAM = c_ulonglong
50    LPARAM = c_longlong
51
52ATOM = WORD
53LANGID = WORD
54
55COLORREF = DWORD
56LGRPID = DWORD
57LCTYPE = DWORD
58
59LCID = DWORD
60
61################################################################
62# HANDLE types
63HANDLE = c_void_p # in the header files: void *
64
65HACCEL = HANDLE
66HBITMAP = HANDLE
67HBRUSH = HANDLE
68HCOLORSPACE = HANDLE
69HDC = HANDLE
70HDESK = HANDLE
71HDWP = HANDLE
72HENHMETAFILE = HANDLE
73HFONT = HANDLE
74HGDIOBJ = HANDLE
75HGLOBAL = HANDLE
76HHOOK = HANDLE
77HICON = HANDLE
78HINSTANCE = HANDLE
79HKEY = HANDLE
80HKL = HANDLE
81HLOCAL = HANDLE
82HMENU = HANDLE
83HMETAFILE = HANDLE
84HMODULE = HANDLE
85HMONITOR = HANDLE
86HPALETTE = HANDLE
87HPEN = HANDLE
88HRGN = HANDLE
89HRSRC = HANDLE
90HSTR = HANDLE
91HTASK = HANDLE
92HWINSTA = HANDLE
93HWND = HANDLE
94SC_HANDLE = HANDLE
95SERVICE_STATUS_HANDLE = HANDLE
96
97################################################################
98# Some important structure definitions
99
100class RECT(Structure):
101    _fields_ = [("left", c_long),
102                ("top", c_long),
103                ("right", c_long),
104                ("bottom", c_long)]
105tagRECT = _RECTL = RECTL = RECT
106
107class _SMALL_RECT(Structure):
108    _fields_ = [('Left', c_short),
109                ('Top', c_short),
110                ('Right', c_short),
111                ('Bottom', c_short)]
112SMALL_RECT = _SMALL_RECT
113
114class _COORD(Structure):
115    _fields_ = [('X', c_short),
116                ('Y', c_short)]
117
118class POINT(Structure):
119    _fields_ = [("x", c_long),
120                ("y", c_long)]
121tagPOINT = _POINTL = POINTL = POINT
122
123class SIZE(Structure):
124    _fields_ = [("cx", c_long),
125                ("cy", c_long)]
126tagSIZE = SIZEL = SIZE
127
128def RGB(red, green, blue):
129    return red + (green << 8) + (blue << 16)
130
131class FILETIME(Structure):
132    _fields_ = [("dwLowDateTime", DWORD),
133                ("dwHighDateTime", DWORD)]
134_FILETIME = FILETIME
135
136class MSG(Structure):
137    _fields_ = [("hWnd", HWND),
138                ("message", c_uint),
139                ("wParam", WPARAM),
140                ("lParam", LPARAM),
141                ("time", DWORD),
142                ("pt", POINT)]
143tagMSG = MSG
144MAX_PATH = 260
145
146class WIN32_FIND_DATAA(Structure):
147    _fields_ = [("dwFileAttributes", DWORD),
148                ("ftCreationTime", FILETIME),
149                ("ftLastAccessTime", FILETIME),
150                ("ftLastWriteTime", FILETIME),
151                ("nFileSizeHigh", DWORD),
152                ("nFileSizeLow", DWORD),
153                ("dwReserved0", DWORD),
154                ("dwReserved1", DWORD),
155                ("cFileName", c_char * MAX_PATH),
156                ("cAlternateFileName", c_char * 14)]
157
158class WIN32_FIND_DATAW(Structure):
159    _fields_ = [("dwFileAttributes", DWORD),
160                ("ftCreationTime", FILETIME),
161                ("ftLastAccessTime", FILETIME),
162                ("ftLastWriteTime", FILETIME),
163                ("nFileSizeHigh", DWORD),
164                ("nFileSizeLow", DWORD),
165                ("dwReserved0", DWORD),
166                ("dwReserved1", DWORD),
167                ("cFileName", c_wchar * MAX_PATH),
168                ("cAlternateFileName", c_wchar * 14)]
169
170__all__ = ['ATOM', 'BOOL', 'BOOLEAN', 'BYTE', 'COLORREF', 'DOUBLE', 'DWORD',
171           'FILETIME', 'FLOAT', 'HACCEL', 'HANDLE', 'HBITMAP', 'HBRUSH',
172           'HCOLORSPACE', 'HDC', 'HDESK', 'HDWP', 'HENHMETAFILE', 'HFONT',
173           'HGDIOBJ', 'HGLOBAL', 'HHOOK', 'HICON', 'HINSTANCE', 'HKEY',
174           'HKL', 'HLOCAL', 'HMENU', 'HMETAFILE', 'HMODULE', 'HMONITOR',
175           'HPALETTE', 'HPEN', 'HRGN', 'HRSRC', 'HSTR', 'HTASK', 'HWINSTA',
176           'HWND', 'INT', 'LANGID', 'LARGE_INTEGER', 'LCID', 'LCTYPE',
177           'LGRPID', 'LONG', 'LPARAM', 'LPCOLESTR', 'LPCSTR', 'LPCVOID',
178           'LPCWSTR', 'LPOLESTR', 'LPSTR', 'LPVOID', 'LPWSTR', 'MAX_PATH',
179           'MSG', 'OLESTR', 'POINT', 'POINTL', 'RECT', 'RECTL', 'RGB',
180           'SC_HANDLE', 'SERVICE_STATUS_HANDLE', 'SHORT', 'SIZE', 'SIZEL',
181           'SMALL_RECT', 'UINT', 'ULARGE_INTEGER', 'ULONG', 'USHORT',
182           'VARIANT_BOOL', 'WCHAR', 'WIN32_FIND_DATAA', 'WIN32_FIND_DATAW',
183           'WORD', 'WPARAM', '_COORD', '_FILETIME', '_LARGE_INTEGER',
184           '_POINTL', '_RECTL', '_SMALL_RECT', '_ULARGE_INTEGER', 'tagMSG',
185           'tagPOINT', 'tagRECT', 'tagSIZE']
Note: See TracBrowser for help on using the repository browser.