├── .vim └── coc-settings.json ├── example └── x11 │ ├── Makefile │ ├── xlib.ts │ └── include │ └── Xlib.h ├── deno.json ├── .github └── workflows │ └── publish.yml ├── README.md ├── deno.lock ├── LICENSE └── ffigen.ts /.vim/coc-settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "deno.enable": true, 3 | "deno.lint": false, 4 | "deno.unstable": true 5 | } -------------------------------------------------------------------------------- /example/x11/Makefile: -------------------------------------------------------------------------------- 1 | xlib.ts: Xlib.json 2 | cat Xlib.json | deno run ../../ffigen.ts -l libX11.so > xlib.ts 3 | -------------------------------------------------------------------------------- /deno.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@divy/ffigen", 3 | "version": "0.1.0", 4 | "license": "MIT", 5 | "exports": "./ffigen.ts" 6 | } 7 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish 2 | on: 3 | push: 4 | branches: 5 | - main 6 | 7 | jobs: 8 | publish: 9 | runs-on: ubuntu-latest 10 | 11 | permissions: 12 | contents: read 13 | id-token: write 14 | 15 | steps: 16 | - uses: actions/checkout@v4 17 | 18 | - name: Publish package 19 | run: npx jsr publish 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ffigen 2 | 3 | C header binding generator for modern JS environments. It works in combination with `c2ffi`. 4 | 5 | ## Usage 6 | 7 | ``` 8 | deno install jsr:@divy/ffigen 9 | ``` 10 | 11 | Install [`c2ffi`](https://github.com/rpav/c2ffi) 12 | 13 | ``` 14 | $ c2ffi ./include/Xlib.h | ffigen -l libXlib.so 15 | 16 | $ deno run --allow-ffi ./Xlib.ts 17 | ``` 18 | 19 | Sample logs: 20 | 21 | ![image](https://github.com/user-attachments/assets/66eb5f35-7b57-4760-863f-9ad60d7049d7) 22 | -------------------------------------------------------------------------------- /deno.lock: -------------------------------------------------------------------------------- 1 | { 2 | "version": "3", 3 | "packages": { 4 | "specifiers": { 5 | "jsr:@std/assert@^0.224.0": "jsr:@std/assert@0.224.0", 6 | "jsr:@std/bytes@^1.0.2": "jsr:@std/bytes@1.0.2", 7 | "jsr:@std/flags@0.224.0": "jsr:@std/flags@0.224.0", 8 | "jsr:@std/io@0.224.6": "jsr:@std/io@0.224.6" 9 | }, 10 | "jsr": { 11 | "@std/assert@0.224.0": { 12 | "integrity": "8643233ec7aec38a940a8264a6e3eed9bfa44e7a71cc6b3c8874213ff401967f" 13 | }, 14 | "@std/bytes@1.0.2": { 15 | "integrity": "fbdee322bbd8c599a6af186a1603b3355e59a5fb1baa139f8f4c3c9a1b3e3d57" 16 | }, 17 | "@std/flags@0.224.0": { 18 | "integrity": "d40eaf58c356b2e1313c6d4e62dc28b614aad2ddae6f5ff72a969e0b1f5ad689", 19 | "dependencies": [ 20 | "jsr:@std/assert@^0.224.0" 21 | ] 22 | }, 23 | "@std/io@0.224.6": { 24 | "integrity": "eefe034a370be34daf066c8634dd645635d099bb21eccf110f0bdc28d9040891", 25 | "dependencies": [ 26 | "jsr:@std/bytes@^1.0.2" 27 | ] 28 | } 29 | } 30 | }, 31 | "remote": {} 32 | } 33 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright 2024 Divy Srivastava 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /ffigen.ts: -------------------------------------------------------------------------------- 1 | /* MIT License. Copyright 2024 Divy Srivastava */ 2 | 3 | import { readAll } from "jsr:@std/io@0.224.6/read-all"; 4 | import { parse } from "jsr:@std/flags@0.224.0"; 5 | 6 | const args = parse(Deno.args, { 7 | string: ["lib", "l"], 8 | }); 9 | 10 | if (!args.lib && !args.l) { 11 | console.error("missing -l argument"); 12 | Deno.exit(1); 13 | } 14 | 15 | const lib = args.lib || args.l; 16 | 17 | const inp = await readAll(Deno.stdin); 18 | const str = new TextDecoder().decode(inp); 19 | 20 | const symbols = JSON.parse(str) as Definition[]; 21 | 22 | type Definition = { 23 | tag: "typedef" | "struct"; 24 | ns: number; 25 | name: string; 26 | location: string; 27 | type: Type; 28 | } | { 29 | tag: "function"; 30 | name: string; 31 | location: string; 32 | variadic?: boolean; 33 | inline?: boolean; 34 | "storage-class"?: "static" | "extern"; 35 | ns: number; 36 | parameters: Parameter[]; 37 | "return-type": Type; 38 | }; 39 | 40 | type Parameter = { 41 | tag: string; 42 | name: string; 43 | type: Type; 44 | }; 45 | 46 | function denoFFIParameter(p: Parameter): Deno.NativeType | null { 47 | if (p.tag !== "parameter") { 48 | throw new Error(`unexpected parameter tag ${p.tag}`); 49 | } 50 | 51 | const ty = denoFFIType(p.type); 52 | if (ty == "void") { 53 | throw new Error(`unexpected void parameter ${p.name}`); 54 | } 55 | 56 | return ty; 57 | } 58 | 59 | type Type = { 60 | tag: string; 61 | 62 | "bit-size"?: number; 63 | "bit-alignment"?: number; 64 | 65 | /* struct */ 66 | fields?: Type[]; 67 | type?: Type; 68 | }; 69 | 70 | const tagMapping: Record = { 71 | "__uint16_t": "u16", 72 | "__uint32_t": "u32", 73 | "__uint64_t": "u64", 74 | "__uint8_t": "u8", 75 | "__int16_t": "i16", 76 | "__int32_t": "i32", 77 | "__int64_t": "i64", 78 | "__int8_t": "i8", 79 | ":int": "i32", 80 | ":unsigned-int": "u32", 81 | ":long": "i64", 82 | ":long-long": "i64", 83 | ":long-double": "f64", 84 | ":short": "i16", 85 | ":unsigned": "u32", 86 | ":unsigned-long": "u64", 87 | ":unsigned-short": "u16", 88 | ":unsigned-char": "u8", 89 | ":char": "u8", 90 | ":pointer": "pointer", 91 | ":function-pointer": "pointer", 92 | ":void": "void", 93 | }; 94 | 95 | function denoFFIType(t: Type, hint?: string): Deno.NativeResultType | null { 96 | if (t.tag === ":struct" || t.tag === "struct") { 97 | if (t.fields === undefined) { 98 | return null; 99 | } 100 | // @ts-ignore 101 | const fields = t.fields!.map((f) => denoFFIType(f.type)); 102 | if (fields.includes(null)) { 103 | const missing = fields.indexOf(null); 104 | console.error( 105 | `skipping ${hint || "struct"}. reason: field ${ 106 | JSON.stringify(t.fields![missing]) 107 | } has no mapping`, 108 | ); 109 | return null; 110 | } 111 | 112 | return { 113 | struct: fields as Deno.NativeType[], 114 | }; 115 | } 116 | return tagMapping[t.tag] ?? (resolvedTypeDefs.get(t.tag) ?? null); 117 | } 118 | 119 | const resolvedTypeDefs = new Map(); 120 | 121 | const symbolSource: Record = {}; 122 | 123 | let total = 0, generated = 0; 124 | let totalTypeDefs = 0, generatedTypeDefs = 0; 125 | const unknowns = new Map(); 126 | 127 | for (const x of symbols) { 128 | switch (x.tag) { 129 | case "struct": { 130 | /* Pass it on as a typedef */ 131 | x.type = x; 132 | } 133 | case "typedef": { 134 | totalTypeDefs++; 135 | let result = denoFFIType(x.type, x.name); 136 | if (!result) { 137 | // Maybe we have not yet resolved the type. Do another pass. 138 | for (const y of symbols) { 139 | if (y.tag === "typedef" && y.name === x.type.tag) { 140 | result = denoFFIType(y.type, x.name); 141 | if (result === null) { 142 | continue; 143 | } 144 | 145 | resolvedTypeDefs.set(x.name, result); 146 | } 147 | } 148 | } 149 | 150 | if (result === null) { 151 | continue; 152 | } 153 | resolvedTypeDefs.set(x.name, result); 154 | generatedTypeDefs++; 155 | break; 156 | } 157 | case "function": { 158 | total++; 159 | if (x.inline || x.variadic) { 160 | // skip 161 | console.error( 162 | `skipping ${x.name}. reason: ${x.inline ? "inline" : "variadic"}`, 163 | ); 164 | continue; 165 | } 166 | 167 | const parameters = x.parameters.map(denoFFIParameter); 168 | if (parameters.includes(null)) { 169 | const missing = parameters.indexOf(null); 170 | console.error( 171 | `skipping ${x.name}. reason: parameter ${ 172 | JSON.stringify(x.parameters[missing]) 173 | } has no mapping`, 174 | ); 175 | continue; 176 | } 177 | const result = denoFFIType(x["return-type"]); 178 | if (result === null) { 179 | console.error( 180 | `skipping ${x.name}. reason: return type ${ 181 | JSON.stringify(x["return-type"]) 182 | } has no mapping`, 183 | ); 184 | continue; 185 | } 186 | symbolSource[x.name] = { 187 | parameters: parameters as Deno.NativeType[], 188 | result, 189 | doc: `${x.name} @ ${x.location}`, 190 | }; 191 | generated++; 192 | break; 193 | } 194 | default: { 195 | const tag = (x as any).tag; 196 | unknowns.set(tag, (unknowns.get(tag) ?? 0) + 1); 197 | console.error(`unknown tag ${tag}`); 198 | break; 199 | } 200 | } 201 | } 202 | 203 | console.error("=== GENERATED ==="); 204 | console.error( 205 | `unknowns => ${Array.from(unknowns.entries()).map(([k, v]) => `${k}: ${v}`).join(", ")}`, 206 | ); 207 | console.error( 208 | `functions => total: ${total}, generated: ${generated}, skipped: ${ 209 | total - generated 210 | }`, 211 | ); 212 | console.error( 213 | `typedefs => total: ${totalTypeDefs}, generated: ${generatedTypeDefs}, skipped: ${ 214 | totalTypeDefs - generatedTypeDefs 215 | }`, 216 | ); 217 | 218 | const source = `// Generated by littledivy/ffigen 219 | const _ = { 220 | ${ 221 | Object.entries(symbolSource).map(([name, { parameters, result, doc }]) => { 222 | return ` // ${doc} 223 | ${name}: { 224 | parameters: ${JSON.stringify(parameters)}, 225 | result: "${result}", 226 | }`; 227 | }).join(",\n") 228 | } 229 | } as const; 230 | 231 | const { symbols } = Deno.dlopen(${JSON.stringify(lib)}, _); 232 | 233 | export default symbols; 234 | `; 235 | 236 | console.log(source); 237 | -------------------------------------------------------------------------------- /example/x11/xlib.ts: -------------------------------------------------------------------------------- 1 | // Generated by littledivy/ffigen 2 | const _ = { 3 | // select @ /usr/include/sys/select.h:102:12 4 | select: { 5 | parameters: ["i32","pointer","pointer","pointer","pointer"], 6 | result: "i32", 7 | }, 8 | // pselect @ /usr/include/sys/select.h:127:12 9 | pselect: { 10 | parameters: ["i32","pointer","pointer","pointer","pointer","pointer"], 11 | result: "i32", 12 | }, 13 | // _Xmblen @ include/Xlib.h:63:1 14 | _Xmblen: { 15 | parameters: ["pointer","i32"], 16 | result: "i32", 17 | }, 18 | // XLoadQueryFont @ include/Xlib.h:1394:21 19 | XLoadQueryFont: { 20 | parameters: ["pointer","pointer"], 21 | result: "pointer", 22 | }, 23 | // XQueryFont @ include/Xlib.h:1399:21 24 | XQueryFont: { 25 | parameters: ["pointer","u64"], 26 | result: "pointer", 27 | }, 28 | // XGetMotionEvents @ include/Xlib.h:1405:20 29 | XGetMotionEvents: { 30 | parameters: ["pointer","u64","u64","u64","pointer"], 31 | result: "pointer", 32 | }, 33 | // XDeleteModifiermapEntry @ include/Xlib.h:1413:25 34 | XDeleteModifiermapEntry: { 35 | parameters: ["pointer","u8","i32"], 36 | result: "pointer", 37 | }, 38 | // XGetModifierMapping @ include/Xlib.h:1423:25 39 | XGetModifierMapping: { 40 | parameters: ["pointer"], 41 | result: "pointer", 42 | }, 43 | // XInsertModifiermapEntry @ include/Xlib.h:1427:25 44 | XInsertModifiermapEntry: { 45 | parameters: ["pointer","u8","i32"], 46 | result: "pointer", 47 | }, 48 | // XNewModifiermap @ include/Xlib.h:1437:25 49 | XNewModifiermap: { 50 | parameters: ["i32"], 51 | result: "pointer", 52 | }, 53 | // XCreateImage @ include/Xlib.h:1441:16 54 | XCreateImage: { 55 | parameters: ["pointer","pointer","u32","i32","i32","pointer","u32","u32","i32","i32"], 56 | result: "pointer", 57 | }, 58 | // XInitImage @ include/Xlib.h:1453:15 59 | XInitImage: { 60 | parameters: ["pointer"], 61 | result: "i32", 62 | }, 63 | // XGetImage @ include/Xlib.h:1456:16 64 | XGetImage: { 65 | parameters: ["pointer","u64","i32","i32","u32","u32","u64","i32"], 66 | result: "pointer", 67 | }, 68 | // XGetSubImage @ include/Xlib.h:1466:16 69 | XGetSubImage: { 70 | parameters: ["pointer","u64","i32","i32","u32","u32","u64","i32","pointer","i32","i32"], 71 | result: "pointer", 72 | }, 73 | // XOpenDisplay @ include/Xlib.h:1483:17 74 | XOpenDisplay: { 75 | parameters: ["pointer"], 76 | result: "pointer", 77 | }, 78 | // XrmInitialize @ include/Xlib.h:1487:13 79 | XrmInitialize: { 80 | parameters: [], 81 | result: "void", 82 | }, 83 | // XFetchBytes @ include/Xlib.h:1491:14 84 | XFetchBytes: { 85 | parameters: ["pointer","pointer"], 86 | result: "pointer", 87 | }, 88 | // XFetchBuffer @ include/Xlib.h:1495:14 89 | XFetchBuffer: { 90 | parameters: ["pointer","pointer","i32"], 91 | result: "pointer", 92 | }, 93 | // XGetAtomName @ include/Xlib.h:1500:14 94 | XGetAtomName: { 95 | parameters: ["pointer","u64"], 96 | result: "pointer", 97 | }, 98 | // XGetAtomNames @ include/Xlib.h:1504:15 99 | XGetAtomNames: { 100 | parameters: ["pointer","pointer","i32","pointer"], 101 | result: "i32", 102 | }, 103 | // XGetDefault @ include/Xlib.h:1510:14 104 | XGetDefault: { 105 | parameters: ["pointer","pointer","pointer"], 106 | result: "pointer", 107 | }, 108 | // XDisplayName @ include/Xlib.h:1515:14 109 | XDisplayName: { 110 | parameters: ["pointer"], 111 | result: "pointer", 112 | }, 113 | // XKeysymToString @ include/Xlib.h:1518:14 114 | XKeysymToString: { 115 | parameters: ["u64"], 116 | result: "pointer", 117 | }, 118 | // XSynchronize @ include/Xlib.h:1522:14 119 | XSynchronize: { 120 | parameters: ["pointer","i32"], 121 | result: "pointer", 122 | }, 123 | // XSetAfterFunction @ include/Xlib.h:1528:14 124 | XSetAfterFunction: { 125 | parameters: ["pointer","pointer"], 126 | result: "pointer", 127 | }, 128 | // XInternAtom @ include/Xlib.h:1536:13 129 | XInternAtom: { 130 | parameters: ["pointer","pointer","i32"], 131 | result: "u64", 132 | }, 133 | // XInternAtoms @ include/Xlib.h:1541:15 134 | XInternAtoms: { 135 | parameters: ["pointer","pointer","i32","i32","pointer"], 136 | result: "i32", 137 | }, 138 | // XCopyColormapAndFree @ include/Xlib.h:1548:17 139 | XCopyColormapAndFree: { 140 | parameters: ["pointer","u64"], 141 | result: "u64", 142 | }, 143 | // XCreateColormap @ include/Xlib.h:1552:17 144 | XCreateColormap: { 145 | parameters: ["pointer","u64","pointer","i32"], 146 | result: "u64", 147 | }, 148 | // XCreatePixmapCursor @ include/Xlib.h:1558:15 149 | XCreatePixmapCursor: { 150 | parameters: ["pointer","u64","u64","pointer","pointer","u32","u32"], 151 | result: "u64", 152 | }, 153 | // XCreateGlyphCursor @ include/Xlib.h:1567:15 154 | XCreateGlyphCursor: { 155 | parameters: ["pointer","u64","u64","u32","u32","pointer","pointer"], 156 | result: "u64", 157 | }, 158 | // XCreateFontCursor @ include/Xlib.h:1576:15 159 | XCreateFontCursor: { 160 | parameters: ["pointer","u32"], 161 | result: "u64", 162 | }, 163 | // XLoadFont @ include/Xlib.h:1580:13 164 | XLoadFont: { 165 | parameters: ["pointer","pointer"], 166 | result: "u64", 167 | }, 168 | // XCreateGC @ include/Xlib.h:1584:11 169 | XCreateGC: { 170 | parameters: ["pointer","u64","u64","pointer"], 171 | result: "pointer", 172 | }, 173 | // XGContextFromGC @ include/Xlib.h:1590:17 174 | XGContextFromGC: { 175 | parameters: ["pointer"], 176 | result: "u64", 177 | }, 178 | // XFlushGC @ include/Xlib.h:1593:13 179 | XFlushGC: { 180 | parameters: ["pointer","pointer"], 181 | result: "void", 182 | }, 183 | // XCreatePixmap @ include/Xlib.h:1597:15 184 | XCreatePixmap: { 185 | parameters: ["pointer","u64","u32","u32","u32"], 186 | result: "u64", 187 | }, 188 | // XCreateBitmapFromData @ include/Xlib.h:1604:15 189 | XCreateBitmapFromData: { 190 | parameters: ["pointer","u64","pointer","u32","u32"], 191 | result: "u64", 192 | }, 193 | // XCreatePixmapFromBitmapData @ include/Xlib.h:1611:15 194 | XCreatePixmapFromBitmapData: { 195 | parameters: ["pointer","u64","pointer","u32","u32","u64","u64","u32"], 196 | result: "u64", 197 | }, 198 | // XCreateSimpleWindow @ include/Xlib.h:1621:15 199 | XCreateSimpleWindow: { 200 | parameters: ["pointer","u64","i32","i32","u32","u32","u32","u64","u64"], 201 | result: "u64", 202 | }, 203 | // XGetSelectionOwner @ include/Xlib.h:1632:15 204 | XGetSelectionOwner: { 205 | parameters: ["pointer","u64"], 206 | result: "u64", 207 | }, 208 | // XCreateWindow @ include/Xlib.h:1636:15 209 | XCreateWindow: { 210 | parameters: ["pointer","u64","i32","i32","u32","u32","u32","i32","u32","pointer","u64","pointer"], 211 | result: "u64", 212 | }, 213 | // XListInstalledColormaps @ include/Xlib.h:1650:18 214 | XListInstalledColormaps: { 215 | parameters: ["pointer","u64","pointer"], 216 | result: "pointer", 217 | }, 218 | // XListFonts @ include/Xlib.h:1655:15 219 | XListFonts: { 220 | parameters: ["pointer","pointer","i32","pointer"], 221 | result: "pointer", 222 | }, 223 | // XListFontsWithInfo @ include/Xlib.h:1661:15 224 | XListFontsWithInfo: { 225 | parameters: ["pointer","pointer","i32","pointer","pointer"], 226 | result: "pointer", 227 | }, 228 | // XGetFontPath @ include/Xlib.h:1668:15 229 | XGetFontPath: { 230 | parameters: ["pointer","pointer"], 231 | result: "pointer", 232 | }, 233 | // XListExtensions @ include/Xlib.h:1672:15 234 | XListExtensions: { 235 | parameters: ["pointer","pointer"], 236 | result: "pointer", 237 | }, 238 | // XListProperties @ include/Xlib.h:1676:14 239 | XListProperties: { 240 | parameters: ["pointer","u64","pointer"], 241 | result: "pointer", 242 | }, 243 | // XListHosts @ include/Xlib.h:1681:22 244 | XListHosts: { 245 | parameters: ["pointer","pointer","pointer"], 246 | result: "pointer", 247 | }, 248 | // XKeycodeToKeysym @ include/Xlib.h:1687:15 249 | XKeycodeToKeysym: { 250 | parameters: ["pointer","u8","i32"], 251 | result: "u64", 252 | }, 253 | // XLookupKeysym @ include/Xlib.h:1696:15 254 | XLookupKeysym: { 255 | parameters: ["pointer","i32"], 256 | result: "u64", 257 | }, 258 | // XGetKeyboardMapping @ include/Xlib.h:1700:16 259 | XGetKeyboardMapping: { 260 | parameters: ["pointer","u8","i32","pointer"], 261 | result: "pointer", 262 | }, 263 | // XStringToKeysym @ include/Xlib.h:1710:15 264 | XStringToKeysym: { 265 | parameters: ["pointer"], 266 | result: "u64", 267 | }, 268 | // XMaxRequestSize @ include/Xlib.h:1713:13 269 | XMaxRequestSize: { 270 | parameters: ["pointer"], 271 | result: "i64", 272 | }, 273 | // XExtendedMaxRequestSize @ include/Xlib.h:1716:13 274 | XExtendedMaxRequestSize: { 275 | parameters: ["pointer"], 276 | result: "i64", 277 | }, 278 | // XResourceManagerString @ include/Xlib.h:1719:14 279 | XResourceManagerString: { 280 | parameters: ["pointer"], 281 | result: "pointer", 282 | }, 283 | // XScreenResourceString @ include/Xlib.h:1722:14 284 | XScreenResourceString: { 285 | parameters: ["pointer"], 286 | result: "pointer", 287 | }, 288 | // XDisplayMotionBufferSize @ include/Xlib.h:1725:22 289 | XDisplayMotionBufferSize: { 290 | parameters: ["pointer"], 291 | result: "u64", 292 | }, 293 | // XVisualIDFromVisual @ include/Xlib.h:1728:17 294 | XVisualIDFromVisual: { 295 | parameters: ["pointer"], 296 | result: "u64", 297 | }, 298 | // XInitThreads @ include/Xlib.h:1734:15 299 | XInitThreads: { 300 | parameters: [], 301 | result: "i32", 302 | }, 303 | // XFreeThreads @ include/Xlib.h:1738:15 304 | XFreeThreads: { 305 | parameters: [], 306 | result: "i32", 307 | }, 308 | // XLockDisplay @ include/Xlib.h:1742:13 309 | XLockDisplay: { 310 | parameters: ["pointer"], 311 | result: "void", 312 | }, 313 | // XUnlockDisplay @ include/Xlib.h:1746:13 314 | XUnlockDisplay: { 315 | parameters: ["pointer"], 316 | result: "void", 317 | }, 318 | // XInitExtension @ include/Xlib.h:1752:19 319 | XInitExtension: { 320 | parameters: ["pointer","pointer"], 321 | result: "pointer", 322 | }, 323 | // XAddExtension @ include/Xlib.h:1757:19 324 | XAddExtension: { 325 | parameters: ["pointer"], 326 | result: "pointer", 327 | }, 328 | // XFindOnExtensionList @ include/Xlib.h:1760:18 329 | XFindOnExtensionList: { 330 | parameters: ["pointer","i32"], 331 | result: "pointer", 332 | }, 333 | // XRootWindow @ include/Xlib.h:1769:15 334 | XRootWindow: { 335 | parameters: ["pointer","i32"], 336 | result: "u64", 337 | }, 338 | // XDefaultRootWindow @ include/Xlib.h:1773:15 339 | XDefaultRootWindow: { 340 | parameters: ["pointer"], 341 | result: "u64", 342 | }, 343 | // XRootWindowOfScreen @ include/Xlib.h:1776:15 344 | XRootWindowOfScreen: { 345 | parameters: ["pointer"], 346 | result: "u64", 347 | }, 348 | // XDefaultVisual @ include/Xlib.h:1779:16 349 | XDefaultVisual: { 350 | parameters: ["pointer","i32"], 351 | result: "pointer", 352 | }, 353 | // XDefaultVisualOfScreen @ include/Xlib.h:1783:16 354 | XDefaultVisualOfScreen: { 355 | parameters: ["pointer"], 356 | result: "pointer", 357 | }, 358 | // XDefaultGC @ include/Xlib.h:1786:11 359 | XDefaultGC: { 360 | parameters: ["pointer","i32"], 361 | result: "pointer", 362 | }, 363 | // XDefaultGCOfScreen @ include/Xlib.h:1790:11 364 | XDefaultGCOfScreen: { 365 | parameters: ["pointer"], 366 | result: "pointer", 367 | }, 368 | // XBlackPixel @ include/Xlib.h:1793:22 369 | XBlackPixel: { 370 | parameters: ["pointer","i32"], 371 | result: "u64", 372 | }, 373 | // XWhitePixel @ include/Xlib.h:1797:22 374 | XWhitePixel: { 375 | parameters: ["pointer","i32"], 376 | result: "u64", 377 | }, 378 | // XAllPlanes @ include/Xlib.h:1801:22 379 | XAllPlanes: { 380 | parameters: [], 381 | result: "u64", 382 | }, 383 | // XBlackPixelOfScreen @ include/Xlib.h:1804:22 384 | XBlackPixelOfScreen: { 385 | parameters: ["pointer"], 386 | result: "u64", 387 | }, 388 | // XWhitePixelOfScreen @ include/Xlib.h:1807:22 389 | XWhitePixelOfScreen: { 390 | parameters: ["pointer"], 391 | result: "u64", 392 | }, 393 | // XNextRequest @ include/Xlib.h:1810:22 394 | XNextRequest: { 395 | parameters: ["pointer"], 396 | result: "u64", 397 | }, 398 | // XLastKnownRequestProcessed @ include/Xlib.h:1813:22 399 | XLastKnownRequestProcessed: { 400 | parameters: ["pointer"], 401 | result: "u64", 402 | }, 403 | // XServerVendor @ include/Xlib.h:1816:14 404 | XServerVendor: { 405 | parameters: ["pointer"], 406 | result: "pointer", 407 | }, 408 | // XDisplayString @ include/Xlib.h:1819:14 409 | XDisplayString: { 410 | parameters: ["pointer"], 411 | result: "pointer", 412 | }, 413 | // XDefaultColormap @ include/Xlib.h:1822:17 414 | XDefaultColormap: { 415 | parameters: ["pointer","i32"], 416 | result: "u64", 417 | }, 418 | // XDefaultColormapOfScreen @ include/Xlib.h:1826:17 419 | XDefaultColormapOfScreen: { 420 | parameters: ["pointer"], 421 | result: "u64", 422 | }, 423 | // XDisplayOfScreen @ include/Xlib.h:1829:17 424 | XDisplayOfScreen: { 425 | parameters: ["pointer"], 426 | result: "pointer", 427 | }, 428 | // XScreenOfDisplay @ include/Xlib.h:1832:16 429 | XScreenOfDisplay: { 430 | parameters: ["pointer","i32"], 431 | result: "pointer", 432 | }, 433 | // XDefaultScreenOfDisplay @ include/Xlib.h:1836:16 434 | XDefaultScreenOfDisplay: { 435 | parameters: ["pointer"], 436 | result: "pointer", 437 | }, 438 | // XEventMaskOfScreen @ include/Xlib.h:1839:13 439 | XEventMaskOfScreen: { 440 | parameters: ["pointer"], 441 | result: "i64", 442 | }, 443 | // XScreenNumberOfScreen @ include/Xlib.h:1843:12 444 | XScreenNumberOfScreen: { 445 | parameters: ["pointer"], 446 | result: "i32", 447 | }, 448 | // XSetErrorHandler @ include/Xlib.h:1852:22 449 | XSetErrorHandler: { 450 | parameters: ["pointer"], 451 | result: "pointer", 452 | }, 453 | // XSetIOErrorHandler @ include/Xlib.h:1861:24 454 | XSetIOErrorHandler: { 455 | parameters: ["pointer"], 456 | result: "pointer", 457 | }, 458 | // XSetIOErrorExitHandler @ include/Xlib.h:1870:13 459 | XSetIOErrorExitHandler: { 460 | parameters: ["pointer","pointer","pointer"], 461 | result: "void", 462 | }, 463 | // XListPixmapFormats @ include/Xlib.h:1876:29 464 | XListPixmapFormats: { 465 | parameters: ["pointer","pointer"], 466 | result: "pointer", 467 | }, 468 | // XListDepths @ include/Xlib.h:1880:13 469 | XListDepths: { 470 | parameters: ["pointer","i32","pointer"], 471 | result: "pointer", 472 | }, 473 | // XReconfigureWMWindow @ include/Xlib.h:1888:15 474 | XReconfigureWMWindow: { 475 | parameters: ["pointer","u64","i32","u32","pointer"], 476 | result: "i32", 477 | }, 478 | // XGetWMProtocols @ include/Xlib.h:1896:15 479 | XGetWMProtocols: { 480 | parameters: ["pointer","u64","pointer","pointer"], 481 | result: "i32", 482 | }, 483 | // XSetWMProtocols @ include/Xlib.h:1902:15 484 | XSetWMProtocols: { 485 | parameters: ["pointer","u64","pointer","i32"], 486 | result: "i32", 487 | }, 488 | // XIconifyWindow @ include/Xlib.h:1908:15 489 | XIconifyWindow: { 490 | parameters: ["pointer","u64","i32"], 491 | result: "i32", 492 | }, 493 | // XWithdrawWindow @ include/Xlib.h:1913:15 494 | XWithdrawWindow: { 495 | parameters: ["pointer","u64","i32"], 496 | result: "i32", 497 | }, 498 | // XGetCommand @ include/Xlib.h:1918:15 499 | XGetCommand: { 500 | parameters: ["pointer","u64","pointer","pointer"], 501 | result: "i32", 502 | }, 503 | // XGetWMColormapWindows @ include/Xlib.h:1924:15 504 | XGetWMColormapWindows: { 505 | parameters: ["pointer","u64","pointer","pointer"], 506 | result: "i32", 507 | }, 508 | // XSetWMColormapWindows @ include/Xlib.h:1930:15 509 | XSetWMColormapWindows: { 510 | parameters: ["pointer","u64","pointer","i32"], 511 | result: "i32", 512 | }, 513 | // XFreeStringList @ include/Xlib.h:1936:13 514 | XFreeStringList: { 515 | parameters: ["pointer"], 516 | result: "void", 517 | }, 518 | // XSetTransientForHint @ include/Xlib.h:1939:12 519 | XSetTransientForHint: { 520 | parameters: ["pointer","u64","u64"], 521 | result: "i32", 522 | }, 523 | // XActivateScreenSaver @ include/Xlib.h:1947:12 524 | XActivateScreenSaver: { 525 | parameters: ["pointer"], 526 | result: "i32", 527 | }, 528 | // XAddHost @ include/Xlib.h:1951:12 529 | XAddHost: { 530 | parameters: ["pointer","pointer"], 531 | result: "i32", 532 | }, 533 | // XAddHosts @ include/Xlib.h:1956:12 534 | XAddHosts: { 535 | parameters: ["pointer","pointer","i32"], 536 | result: "i32", 537 | }, 538 | // XAddToExtensionList @ include/Xlib.h:1962:12 539 | XAddToExtensionList: { 540 | parameters: ["pointer","pointer"], 541 | result: "i32", 542 | }, 543 | // XAddToSaveSet @ include/Xlib.h:1967:12 544 | XAddToSaveSet: { 545 | parameters: ["pointer","u64"], 546 | result: "i32", 547 | }, 548 | // XAllocColor @ include/Xlib.h:1972:15 549 | XAllocColor: { 550 | parameters: ["pointer","u64","pointer"], 551 | result: "i32", 552 | }, 553 | // XAllocColorCells @ include/Xlib.h:1978:15 554 | XAllocColorCells: { 555 | parameters: ["pointer","u64","i32","pointer","u32","pointer","u32"], 556 | result: "i32", 557 | }, 558 | // XAllocColorPlanes @ include/Xlib.h:1988:15 559 | XAllocColorPlanes: { 560 | parameters: ["pointer","u64","i32","pointer","i32","i32","i32","i32","pointer","pointer","pointer"], 561 | result: "i32", 562 | }, 563 | // XAllocNamedColor @ include/Xlib.h:2002:15 564 | XAllocNamedColor: { 565 | parameters: ["pointer","u64","pointer","pointer","pointer"], 566 | result: "i32", 567 | }, 568 | // XAllowEvents @ include/Xlib.h:2010:12 569 | XAllowEvents: { 570 | parameters: ["pointer","i32","u64"], 571 | result: "i32", 572 | }, 573 | // XAutoRepeatOff @ include/Xlib.h:2016:12 574 | XAutoRepeatOff: { 575 | parameters: ["pointer"], 576 | result: "i32", 577 | }, 578 | // XAutoRepeatOn @ include/Xlib.h:2020:12 579 | XAutoRepeatOn: { 580 | parameters: ["pointer"], 581 | result: "i32", 582 | }, 583 | // XBell @ include/Xlib.h:2024:12 584 | XBell: { 585 | parameters: ["pointer","i32"], 586 | result: "i32", 587 | }, 588 | // XBitmapBitOrder @ include/Xlib.h:2029:12 589 | XBitmapBitOrder: { 590 | parameters: ["pointer"], 591 | result: "i32", 592 | }, 593 | // XBitmapPad @ include/Xlib.h:2033:12 594 | XBitmapPad: { 595 | parameters: ["pointer"], 596 | result: "i32", 597 | }, 598 | // XBitmapUnit @ include/Xlib.h:2037:12 599 | XBitmapUnit: { 600 | parameters: ["pointer"], 601 | result: "i32", 602 | }, 603 | // XCellsOfScreen @ include/Xlib.h:2041:12 604 | XCellsOfScreen: { 605 | parameters: ["pointer"], 606 | result: "i32", 607 | }, 608 | // XChangeActivePointerGrab @ include/Xlib.h:2045:12 609 | XChangeActivePointerGrab: { 610 | parameters: ["pointer","u32","u64","u64"], 611 | result: "i32", 612 | }, 613 | // XChangeGC @ include/Xlib.h:2052:12 614 | XChangeGC: { 615 | parameters: ["pointer","pointer","u64","pointer"], 616 | result: "i32", 617 | }, 618 | // XChangeKeyboardControl @ include/Xlib.h:2059:12 619 | XChangeKeyboardControl: { 620 | parameters: ["pointer","u64","pointer"], 621 | result: "i32", 622 | }, 623 | // XChangeKeyboardMapping @ include/Xlib.h:2065:12 624 | XChangeKeyboardMapping: { 625 | parameters: ["pointer","i32","i32","pointer","i32"], 626 | result: "i32", 627 | }, 628 | // XChangePointerControl @ include/Xlib.h:2073:12 629 | XChangePointerControl: { 630 | parameters: ["pointer","i32","i32","i32","i32","i32"], 631 | result: "i32", 632 | }, 633 | // XChangeProperty @ include/Xlib.h:2082:12 634 | XChangeProperty: { 635 | parameters: ["pointer","u64","u64","u64","i32","i32","pointer","i32"], 636 | result: "i32", 637 | }, 638 | // XChangeSaveSet @ include/Xlib.h:2093:12 639 | XChangeSaveSet: { 640 | parameters: ["pointer","u64","i32"], 641 | result: "i32", 642 | }, 643 | // XChangeWindowAttributes @ include/Xlib.h:2099:12 644 | XChangeWindowAttributes: { 645 | parameters: ["pointer","u64","u64","pointer"], 646 | result: "i32", 647 | }, 648 | // XCheckIfEvent @ include/Xlib.h:2106:13 649 | XCheckIfEvent: { 650 | parameters: ["pointer","pointer","pointer","pointer"], 651 | result: "i32", 652 | }, 653 | // XCheckMaskEvent @ include/Xlib.h:2117:13 654 | XCheckMaskEvent: { 655 | parameters: ["pointer","i64","pointer"], 656 | result: "i32", 657 | }, 658 | // XCheckTypedEvent @ include/Xlib.h:2123:13 659 | XCheckTypedEvent: { 660 | parameters: ["pointer","i32","pointer"], 661 | result: "i32", 662 | }, 663 | // XCheckTypedWindowEvent @ include/Xlib.h:2129:13 664 | XCheckTypedWindowEvent: { 665 | parameters: ["pointer","u64","i32","pointer"], 666 | result: "i32", 667 | }, 668 | // XCheckWindowEvent @ include/Xlib.h:2136:13 669 | XCheckWindowEvent: { 670 | parameters: ["pointer","u64","i64","pointer"], 671 | result: "i32", 672 | }, 673 | // XCirculateSubwindows @ include/Xlib.h:2143:12 674 | XCirculateSubwindows: { 675 | parameters: ["pointer","u64","i32"], 676 | result: "i32", 677 | }, 678 | // XCirculateSubwindowsDown @ include/Xlib.h:2149:12 679 | XCirculateSubwindowsDown: { 680 | parameters: ["pointer","u64"], 681 | result: "i32", 682 | }, 683 | // XCirculateSubwindowsUp @ include/Xlib.h:2154:12 684 | XCirculateSubwindowsUp: { 685 | parameters: ["pointer","u64"], 686 | result: "i32", 687 | }, 688 | // XClearArea @ include/Xlib.h:2159:12 689 | XClearArea: { 690 | parameters: ["pointer","u64","i32","i32","u32","u32","i32"], 691 | result: "i32", 692 | }, 693 | // XClearWindow @ include/Xlib.h:2169:12 694 | XClearWindow: { 695 | parameters: ["pointer","u64"], 696 | result: "i32", 697 | }, 698 | // XCloseDisplay @ include/Xlib.h:2174:12 699 | XCloseDisplay: { 700 | parameters: ["pointer"], 701 | result: "i32", 702 | }, 703 | // XConfigureWindow @ include/Xlib.h:2178:12 704 | XConfigureWindow: { 705 | parameters: ["pointer","u64","u32","pointer"], 706 | result: "i32", 707 | }, 708 | // XConnectionNumber @ include/Xlib.h:2185:12 709 | XConnectionNumber: { 710 | parameters: ["pointer"], 711 | result: "i32", 712 | }, 713 | // XConvertSelection @ include/Xlib.h:2189:12 714 | XConvertSelection: { 715 | parameters: ["pointer","u64","u64","u64","u64","u64"], 716 | result: "i32", 717 | }, 718 | // XCopyArea @ include/Xlib.h:2198:12 719 | XCopyArea: { 720 | parameters: ["pointer","u64","u64","pointer","i32","i32","u32","u32","i32","i32"], 721 | result: "i32", 722 | }, 723 | // XCopyGC @ include/Xlib.h:2211:12 724 | XCopyGC: { 725 | parameters: ["pointer","pointer","u64","pointer"], 726 | result: "i32", 727 | }, 728 | // XCopyPlane @ include/Xlib.h:2218:12 729 | XCopyPlane: { 730 | parameters: ["pointer","u64","u64","pointer","i32","i32","u32","u32","i32","i32","u64"], 731 | result: "i32", 732 | }, 733 | // XDefaultDepth @ include/Xlib.h:2232:12 734 | XDefaultDepth: { 735 | parameters: ["pointer","i32"], 736 | result: "i32", 737 | }, 738 | // XDefaultDepthOfScreen @ include/Xlib.h:2237:12 739 | XDefaultDepthOfScreen: { 740 | parameters: ["pointer"], 741 | result: "i32", 742 | }, 743 | // XDefaultScreen @ include/Xlib.h:2241:12 744 | XDefaultScreen: { 745 | parameters: ["pointer"], 746 | result: "i32", 747 | }, 748 | // XDefineCursor @ include/Xlib.h:2245:12 749 | XDefineCursor: { 750 | parameters: ["pointer","u64","u64"], 751 | result: "i32", 752 | }, 753 | // XDeleteProperty @ include/Xlib.h:2251:12 754 | XDeleteProperty: { 755 | parameters: ["pointer","u64","u64"], 756 | result: "i32", 757 | }, 758 | // XDestroyWindow @ include/Xlib.h:2257:12 759 | XDestroyWindow: { 760 | parameters: ["pointer","u64"], 761 | result: "i32", 762 | }, 763 | // XDestroySubwindows @ include/Xlib.h:2262:12 764 | XDestroySubwindows: { 765 | parameters: ["pointer","u64"], 766 | result: "i32", 767 | }, 768 | // XDoesBackingStore @ include/Xlib.h:2267:12 769 | XDoesBackingStore: { 770 | parameters: ["pointer"], 771 | result: "i32", 772 | }, 773 | // XDoesSaveUnders @ include/Xlib.h:2271:13 774 | XDoesSaveUnders: { 775 | parameters: ["pointer"], 776 | result: "i32", 777 | }, 778 | // XDisableAccessControl @ include/Xlib.h:2275:12 779 | XDisableAccessControl: { 780 | parameters: ["pointer"], 781 | result: "i32", 782 | }, 783 | // XDisplayCells @ include/Xlib.h:2280:12 784 | XDisplayCells: { 785 | parameters: ["pointer","i32"], 786 | result: "i32", 787 | }, 788 | // XDisplayHeight @ include/Xlib.h:2285:12 789 | XDisplayHeight: { 790 | parameters: ["pointer","i32"], 791 | result: "i32", 792 | }, 793 | // XDisplayHeightMM @ include/Xlib.h:2290:12 794 | XDisplayHeightMM: { 795 | parameters: ["pointer","i32"], 796 | result: "i32", 797 | }, 798 | // XDisplayKeycodes @ include/Xlib.h:2295:12 799 | XDisplayKeycodes: { 800 | parameters: ["pointer","pointer","pointer"], 801 | result: "i32", 802 | }, 803 | // XDisplayPlanes @ include/Xlib.h:2301:12 804 | XDisplayPlanes: { 805 | parameters: ["pointer","i32"], 806 | result: "i32", 807 | }, 808 | // XDisplayWidth @ include/Xlib.h:2306:12 809 | XDisplayWidth: { 810 | parameters: ["pointer","i32"], 811 | result: "i32", 812 | }, 813 | // XDisplayWidthMM @ include/Xlib.h:2311:12 814 | XDisplayWidthMM: { 815 | parameters: ["pointer","i32"], 816 | result: "i32", 817 | }, 818 | // XDrawArc @ include/Xlib.h:2316:12 819 | XDrawArc: { 820 | parameters: ["pointer","u64","pointer","i32","i32","u32","u32","i32","i32"], 821 | result: "i32", 822 | }, 823 | // XDrawArcs @ include/Xlib.h:2328:12 824 | XDrawArcs: { 825 | parameters: ["pointer","u64","pointer","pointer","i32"], 826 | result: "i32", 827 | }, 828 | // XDrawImageString @ include/Xlib.h:2336:12 829 | XDrawImageString: { 830 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 831 | result: "i32", 832 | }, 833 | // XDrawImageString16 @ include/Xlib.h:2346:12 834 | XDrawImageString16: { 835 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 836 | result: "i32", 837 | }, 838 | // XDrawLine @ include/Xlib.h:2356:12 839 | XDrawLine: { 840 | parameters: ["pointer","u64","pointer","i32","i32","i32","i32"], 841 | result: "i32", 842 | }, 843 | // XDrawLines @ include/Xlib.h:2366:12 844 | XDrawLines: { 845 | parameters: ["pointer","u64","pointer","pointer","i32","i32"], 846 | result: "i32", 847 | }, 848 | // XDrawPoint @ include/Xlib.h:2375:12 849 | XDrawPoint: { 850 | parameters: ["pointer","u64","pointer","i32","i32"], 851 | result: "i32", 852 | }, 853 | // XDrawPoints @ include/Xlib.h:2383:12 854 | XDrawPoints: { 855 | parameters: ["pointer","u64","pointer","pointer","i32","i32"], 856 | result: "i32", 857 | }, 858 | // XDrawRectangle @ include/Xlib.h:2392:12 859 | XDrawRectangle: { 860 | parameters: ["pointer","u64","pointer","i32","i32","u32","u32"], 861 | result: "i32", 862 | }, 863 | // XDrawRectangles @ include/Xlib.h:2402:12 864 | XDrawRectangles: { 865 | parameters: ["pointer","u64","pointer","pointer","i32"], 866 | result: "i32", 867 | }, 868 | // XDrawSegments @ include/Xlib.h:2410:12 869 | XDrawSegments: { 870 | parameters: ["pointer","u64","pointer","pointer","i32"], 871 | result: "i32", 872 | }, 873 | // XDrawString @ include/Xlib.h:2418:12 874 | XDrawString: { 875 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 876 | result: "i32", 877 | }, 878 | // XDrawString16 @ include/Xlib.h:2428:12 879 | XDrawString16: { 880 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 881 | result: "i32", 882 | }, 883 | // XDrawText @ include/Xlib.h:2438:12 884 | XDrawText: { 885 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 886 | result: "i32", 887 | }, 888 | // XDrawText16 @ include/Xlib.h:2448:12 889 | XDrawText16: { 890 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 891 | result: "i32", 892 | }, 893 | // XEnableAccessControl @ include/Xlib.h:2458:12 894 | XEnableAccessControl: { 895 | parameters: ["pointer"], 896 | result: "i32", 897 | }, 898 | // XEventsQueued @ include/Xlib.h:2462:12 899 | XEventsQueued: { 900 | parameters: ["pointer","i32"], 901 | result: "i32", 902 | }, 903 | // XFetchName @ include/Xlib.h:2467:15 904 | XFetchName: { 905 | parameters: ["pointer","u64","pointer"], 906 | result: "i32", 907 | }, 908 | // XFillArc @ include/Xlib.h:2473:12 909 | XFillArc: { 910 | parameters: ["pointer","u64","pointer","i32","i32","u32","u32","i32","i32"], 911 | result: "i32", 912 | }, 913 | // XFillArcs @ include/Xlib.h:2485:12 914 | XFillArcs: { 915 | parameters: ["pointer","u64","pointer","pointer","i32"], 916 | result: "i32", 917 | }, 918 | // XFillPolygon @ include/Xlib.h:2493:12 919 | XFillPolygon: { 920 | parameters: ["pointer","u64","pointer","pointer","i32","i32","i32"], 921 | result: "i32", 922 | }, 923 | // XFillRectangle @ include/Xlib.h:2503:12 924 | XFillRectangle: { 925 | parameters: ["pointer","u64","pointer","i32","i32","u32","u32"], 926 | result: "i32", 927 | }, 928 | // XFillRectangles @ include/Xlib.h:2513:12 929 | XFillRectangles: { 930 | parameters: ["pointer","u64","pointer","pointer","i32"], 931 | result: "i32", 932 | }, 933 | // XFlush @ include/Xlib.h:2521:12 934 | XFlush: { 935 | parameters: ["pointer"], 936 | result: "i32", 937 | }, 938 | // XForceScreenSaver @ include/Xlib.h:2525:12 939 | XForceScreenSaver: { 940 | parameters: ["pointer","i32"], 941 | result: "i32", 942 | }, 943 | // XFree @ include/Xlib.h:2530:12 944 | XFree: { 945 | parameters: ["pointer"], 946 | result: "i32", 947 | }, 948 | // XFreeColormap @ include/Xlib.h:2534:12 949 | XFreeColormap: { 950 | parameters: ["pointer","u64"], 951 | result: "i32", 952 | }, 953 | // XFreeColors @ include/Xlib.h:2539:12 954 | XFreeColors: { 955 | parameters: ["pointer","u64","pointer","i32","u64"], 956 | result: "i32", 957 | }, 958 | // XFreeCursor @ include/Xlib.h:2547:12 959 | XFreeCursor: { 960 | parameters: ["pointer","u64"], 961 | result: "i32", 962 | }, 963 | // XFreeExtensionList @ include/Xlib.h:2552:12 964 | XFreeExtensionList: { 965 | parameters: ["pointer"], 966 | result: "i32", 967 | }, 968 | // XFreeFont @ include/Xlib.h:2556:12 969 | XFreeFont: { 970 | parameters: ["pointer","pointer"], 971 | result: "i32", 972 | }, 973 | // XFreeFontInfo @ include/Xlib.h:2561:12 974 | XFreeFontInfo: { 975 | parameters: ["pointer","pointer","i32"], 976 | result: "i32", 977 | }, 978 | // XFreeFontNames @ include/Xlib.h:2567:12 979 | XFreeFontNames: { 980 | parameters: ["pointer"], 981 | result: "i32", 982 | }, 983 | // XFreeFontPath @ include/Xlib.h:2571:12 984 | XFreeFontPath: { 985 | parameters: ["pointer"], 986 | result: "i32", 987 | }, 988 | // XFreeGC @ include/Xlib.h:2575:12 989 | XFreeGC: { 990 | parameters: ["pointer","pointer"], 991 | result: "i32", 992 | }, 993 | // XFreeModifiermap @ include/Xlib.h:2580:12 994 | XFreeModifiermap: { 995 | parameters: ["pointer"], 996 | result: "i32", 997 | }, 998 | // XFreePixmap @ include/Xlib.h:2584:12 999 | XFreePixmap: { 1000 | parameters: ["pointer","u64"], 1001 | result: "i32", 1002 | }, 1003 | // XGeometry @ include/Xlib.h:2589:12 1004 | XGeometry: { 1005 | parameters: ["pointer","i32","pointer","pointer","u32","u32","u32","i32","i32","pointer","pointer","pointer","pointer"], 1006 | result: "i32", 1007 | }, 1008 | // XGetErrorDatabaseText @ include/Xlib.h:2605:12 1009 | XGetErrorDatabaseText: { 1010 | parameters: ["pointer","pointer","pointer","pointer","pointer","i32"], 1011 | result: "i32", 1012 | }, 1013 | // XGetErrorText @ include/Xlib.h:2614:12 1014 | XGetErrorText: { 1015 | parameters: ["pointer","i32","pointer","i32"], 1016 | result: "i32", 1017 | }, 1018 | // XGetFontProperty @ include/Xlib.h:2621:13 1019 | XGetFontProperty: { 1020 | parameters: ["pointer","u64","pointer"], 1021 | result: "i32", 1022 | }, 1023 | // XGetGCValues @ include/Xlib.h:2627:15 1024 | XGetGCValues: { 1025 | parameters: ["pointer","pointer","u64","pointer"], 1026 | result: "i32", 1027 | }, 1028 | // XGetGeometry @ include/Xlib.h:2634:15 1029 | XGetGeometry: { 1030 | parameters: ["pointer","u64","pointer","pointer","pointer","pointer","pointer","pointer","pointer"], 1031 | result: "i32", 1032 | }, 1033 | // XGetIconName @ include/Xlib.h:2646:15 1034 | XGetIconName: { 1035 | parameters: ["pointer","u64","pointer"], 1036 | result: "i32", 1037 | }, 1038 | // XGetInputFocus @ include/Xlib.h:2652:12 1039 | XGetInputFocus: { 1040 | parameters: ["pointer","pointer","pointer"], 1041 | result: "i32", 1042 | }, 1043 | // XGetKeyboardControl @ include/Xlib.h:2658:12 1044 | XGetKeyboardControl: { 1045 | parameters: ["pointer","pointer"], 1046 | result: "i32", 1047 | }, 1048 | // XGetPointerControl @ include/Xlib.h:2663:12 1049 | XGetPointerControl: { 1050 | parameters: ["pointer","pointer","pointer","pointer"], 1051 | result: "i32", 1052 | }, 1053 | // XGetPointerMapping @ include/Xlib.h:2670:12 1054 | XGetPointerMapping: { 1055 | parameters: ["pointer","pointer","i32"], 1056 | result: "i32", 1057 | }, 1058 | // XGetScreenSaver @ include/Xlib.h:2676:12 1059 | XGetScreenSaver: { 1060 | parameters: ["pointer","pointer","pointer","pointer","pointer"], 1061 | result: "i32", 1062 | }, 1063 | // XGetTransientForHint @ include/Xlib.h:2684:15 1064 | XGetTransientForHint: { 1065 | parameters: ["pointer","u64","pointer"], 1066 | result: "i32", 1067 | }, 1068 | // XGetWindowProperty @ include/Xlib.h:2690:12 1069 | XGetWindowProperty: { 1070 | parameters: ["pointer","u64","u64","i64","i64","i32","u64","pointer","pointer","pointer","pointer","pointer"], 1071 | result: "i32", 1072 | }, 1073 | // XGetWindowAttributes @ include/Xlib.h:2705:15 1074 | XGetWindowAttributes: { 1075 | parameters: ["pointer","u64","pointer"], 1076 | result: "i32", 1077 | }, 1078 | // XGrabButton @ include/Xlib.h:2711:12 1079 | XGrabButton: { 1080 | parameters: ["pointer","u32","u32","u64","i32","u32","i32","i32","u64","u64"], 1081 | result: "i32", 1082 | }, 1083 | // XGrabKey @ include/Xlib.h:2724:12 1084 | XGrabKey: { 1085 | parameters: ["pointer","i32","u32","u64","i32","i32","i32"], 1086 | result: "i32", 1087 | }, 1088 | // XGrabKeyboard @ include/Xlib.h:2734:12 1089 | XGrabKeyboard: { 1090 | parameters: ["pointer","u64","i32","i32","i32","u64"], 1091 | result: "i32", 1092 | }, 1093 | // XGrabPointer @ include/Xlib.h:2743:12 1094 | XGrabPointer: { 1095 | parameters: ["pointer","u64","i32","u32","i32","i32","u64","u64","u64"], 1096 | result: "i32", 1097 | }, 1098 | // XGrabServer @ include/Xlib.h:2755:12 1099 | XGrabServer: { 1100 | parameters: ["pointer"], 1101 | result: "i32", 1102 | }, 1103 | // XHeightMMOfScreen @ include/Xlib.h:2759:12 1104 | XHeightMMOfScreen: { 1105 | parameters: ["pointer"], 1106 | result: "i32", 1107 | }, 1108 | // XHeightOfScreen @ include/Xlib.h:2763:12 1109 | XHeightOfScreen: { 1110 | parameters: ["pointer"], 1111 | result: "i32", 1112 | }, 1113 | // XIfEvent @ include/Xlib.h:2767:12 1114 | XIfEvent: { 1115 | parameters: ["pointer","pointer","pointer","pointer"], 1116 | result: "i32", 1117 | }, 1118 | // XImageByteOrder @ include/Xlib.h:2778:12 1119 | XImageByteOrder: { 1120 | parameters: ["pointer"], 1121 | result: "i32", 1122 | }, 1123 | // XInstallColormap @ include/Xlib.h:2782:12 1124 | XInstallColormap: { 1125 | parameters: ["pointer","u64"], 1126 | result: "i32", 1127 | }, 1128 | // XKeysymToKeycode @ include/Xlib.h:2787:16 1129 | XKeysymToKeycode: { 1130 | parameters: ["pointer","u64"], 1131 | result: "u8", 1132 | }, 1133 | // XKillClient @ include/Xlib.h:2792:12 1134 | XKillClient: { 1135 | parameters: ["pointer","u64"], 1136 | result: "i32", 1137 | }, 1138 | // XLookupColor @ include/Xlib.h:2797:15 1139 | XLookupColor: { 1140 | parameters: ["pointer","u64","pointer","pointer","pointer"], 1141 | result: "i32", 1142 | }, 1143 | // XLowerWindow @ include/Xlib.h:2805:12 1144 | XLowerWindow: { 1145 | parameters: ["pointer","u64"], 1146 | result: "i32", 1147 | }, 1148 | // XMapRaised @ include/Xlib.h:2810:12 1149 | XMapRaised: { 1150 | parameters: ["pointer","u64"], 1151 | result: "i32", 1152 | }, 1153 | // XMapSubwindows @ include/Xlib.h:2815:12 1154 | XMapSubwindows: { 1155 | parameters: ["pointer","u64"], 1156 | result: "i32", 1157 | }, 1158 | // XMapWindow @ include/Xlib.h:2820:12 1159 | XMapWindow: { 1160 | parameters: ["pointer","u64"], 1161 | result: "i32", 1162 | }, 1163 | // XMaskEvent @ include/Xlib.h:2825:12 1164 | XMaskEvent: { 1165 | parameters: ["pointer","i64","pointer"], 1166 | result: "i32", 1167 | }, 1168 | // XMaxCmapsOfScreen @ include/Xlib.h:2831:12 1169 | XMaxCmapsOfScreen: { 1170 | parameters: ["pointer"], 1171 | result: "i32", 1172 | }, 1173 | // XMinCmapsOfScreen @ include/Xlib.h:2835:12 1174 | XMinCmapsOfScreen: { 1175 | parameters: ["pointer"], 1176 | result: "i32", 1177 | }, 1178 | // XMoveResizeWindow @ include/Xlib.h:2839:12 1179 | XMoveResizeWindow: { 1180 | parameters: ["pointer","u64","i32","i32","u32","u32"], 1181 | result: "i32", 1182 | }, 1183 | // XMoveWindow @ include/Xlib.h:2848:12 1184 | XMoveWindow: { 1185 | parameters: ["pointer","u64","i32","i32"], 1186 | result: "i32", 1187 | }, 1188 | // XNextEvent @ include/Xlib.h:2855:12 1189 | XNextEvent: { 1190 | parameters: ["pointer","pointer"], 1191 | result: "i32", 1192 | }, 1193 | // XNoOp @ include/Xlib.h:2860:12 1194 | XNoOp: { 1195 | parameters: ["pointer"], 1196 | result: "i32", 1197 | }, 1198 | // XParseColor @ include/Xlib.h:2864:15 1199 | XParseColor: { 1200 | parameters: ["pointer","u64","pointer","pointer"], 1201 | result: "i32", 1202 | }, 1203 | // XParseGeometry @ include/Xlib.h:2871:12 1204 | XParseGeometry: { 1205 | parameters: ["pointer","pointer","pointer","pointer","pointer"], 1206 | result: "i32", 1207 | }, 1208 | // XPeekEvent @ include/Xlib.h:2879:12 1209 | XPeekEvent: { 1210 | parameters: ["pointer","pointer"], 1211 | result: "i32", 1212 | }, 1213 | // XPeekIfEvent @ include/Xlib.h:2884:12 1214 | XPeekIfEvent: { 1215 | parameters: ["pointer","pointer","pointer","pointer"], 1216 | result: "i32", 1217 | }, 1218 | // XPending @ include/Xlib.h:2895:12 1219 | XPending: { 1220 | parameters: ["pointer"], 1221 | result: "i32", 1222 | }, 1223 | // XPlanesOfScreen @ include/Xlib.h:2899:12 1224 | XPlanesOfScreen: { 1225 | parameters: ["pointer"], 1226 | result: "i32", 1227 | }, 1228 | // XProtocolRevision @ include/Xlib.h:2903:12 1229 | XProtocolRevision: { 1230 | parameters: ["pointer"], 1231 | result: "i32", 1232 | }, 1233 | // XProtocolVersion @ include/Xlib.h:2907:12 1234 | XProtocolVersion: { 1235 | parameters: ["pointer"], 1236 | result: "i32", 1237 | }, 1238 | // XPutBackEvent @ include/Xlib.h:2912:12 1239 | XPutBackEvent: { 1240 | parameters: ["pointer","pointer"], 1241 | result: "i32", 1242 | }, 1243 | // XPutImage @ include/Xlib.h:2917:12 1244 | XPutImage: { 1245 | parameters: ["pointer","u64","pointer","pointer","i32","i32","i32","i32","u32","u32"], 1246 | result: "i32", 1247 | }, 1248 | // XQLength @ include/Xlib.h:2930:12 1249 | XQLength: { 1250 | parameters: ["pointer"], 1251 | result: "i32", 1252 | }, 1253 | // XQueryBestCursor @ include/Xlib.h:2934:15 1254 | XQueryBestCursor: { 1255 | parameters: ["pointer","u64","u32","u32","pointer","pointer"], 1256 | result: "i32", 1257 | }, 1258 | // XQueryBestSize @ include/Xlib.h:2943:15 1259 | XQueryBestSize: { 1260 | parameters: ["pointer","i32","u64","u32","u32","pointer","pointer"], 1261 | result: "i32", 1262 | }, 1263 | // XQueryBestStipple @ include/Xlib.h:2953:15 1264 | XQueryBestStipple: { 1265 | parameters: ["pointer","u64","u32","u32","pointer","pointer"], 1266 | result: "i32", 1267 | }, 1268 | // XQueryBestTile @ include/Xlib.h:2962:15 1269 | XQueryBestTile: { 1270 | parameters: ["pointer","u64","u32","u32","pointer","pointer"], 1271 | result: "i32", 1272 | }, 1273 | // XQueryColor @ include/Xlib.h:2971:12 1274 | XQueryColor: { 1275 | parameters: ["pointer","u64","pointer"], 1276 | result: "i32", 1277 | }, 1278 | // XQueryColors @ include/Xlib.h:2977:12 1279 | XQueryColors: { 1280 | parameters: ["pointer","u64","pointer","i32"], 1281 | result: "i32", 1282 | }, 1283 | // XQueryExtension @ include/Xlib.h:2984:13 1284 | XQueryExtension: { 1285 | parameters: ["pointer","pointer","pointer","pointer","pointer"], 1286 | result: "i32", 1287 | }, 1288 | // XQueryPointer @ include/Xlib.h:2997:13 1289 | XQueryPointer: { 1290 | parameters: ["pointer","u64","pointer","pointer","pointer","pointer","pointer","pointer","pointer"], 1291 | result: "i32", 1292 | }, 1293 | // XQueryTextExtents @ include/Xlib.h:3009:12 1294 | XQueryTextExtents: { 1295 | parameters: ["pointer","u64","pointer","i32","pointer","pointer","pointer","pointer"], 1296 | result: "i32", 1297 | }, 1298 | // XQueryTextExtents16 @ include/Xlib.h:3020:12 1299 | XQueryTextExtents16: { 1300 | parameters: ["pointer","u64","pointer","i32","pointer","pointer","pointer","pointer"], 1301 | result: "i32", 1302 | }, 1303 | // XQueryTree @ include/Xlib.h:3031:15 1304 | XQueryTree: { 1305 | parameters: ["pointer","u64","pointer","pointer","pointer","pointer"], 1306 | result: "i32", 1307 | }, 1308 | // XRaiseWindow @ include/Xlib.h:3040:12 1309 | XRaiseWindow: { 1310 | parameters: ["pointer","u64"], 1311 | result: "i32", 1312 | }, 1313 | // XReadBitmapFile @ include/Xlib.h:3045:12 1314 | XReadBitmapFile: { 1315 | parameters: ["pointer","u64","pointer","pointer","pointer","pointer","pointer","pointer"], 1316 | result: "i32", 1317 | }, 1318 | // XReadBitmapFileData @ include/Xlib.h:3056:12 1319 | XReadBitmapFileData: { 1320 | parameters: ["pointer","pointer","pointer","pointer","pointer","pointer"], 1321 | result: "i32", 1322 | }, 1323 | // XRebindKeysym @ include/Xlib.h:3065:12 1324 | XRebindKeysym: { 1325 | parameters: ["pointer","u64","pointer","i32","pointer","i32"], 1326 | result: "i32", 1327 | }, 1328 | // XRecolorCursor @ include/Xlib.h:3074:12 1329 | XRecolorCursor: { 1330 | parameters: ["pointer","u64","pointer","pointer"], 1331 | result: "i32", 1332 | }, 1333 | // XRefreshKeyboardMapping @ include/Xlib.h:3081:12 1334 | XRefreshKeyboardMapping: { 1335 | parameters: ["pointer"], 1336 | result: "i32", 1337 | }, 1338 | // XRemoveFromSaveSet @ include/Xlib.h:3085:12 1339 | XRemoveFromSaveSet: { 1340 | parameters: ["pointer","u64"], 1341 | result: "i32", 1342 | }, 1343 | // XRemoveHost @ include/Xlib.h:3090:12 1344 | XRemoveHost: { 1345 | parameters: ["pointer","pointer"], 1346 | result: "i32", 1347 | }, 1348 | // XRemoveHosts @ include/Xlib.h:3095:12 1349 | XRemoveHosts: { 1350 | parameters: ["pointer","pointer","i32"], 1351 | result: "i32", 1352 | }, 1353 | // XReparentWindow @ include/Xlib.h:3101:12 1354 | XReparentWindow: { 1355 | parameters: ["pointer","u64","u64","i32","i32"], 1356 | result: "i32", 1357 | }, 1358 | // XResetScreenSaver @ include/Xlib.h:3109:12 1359 | XResetScreenSaver: { 1360 | parameters: ["pointer"], 1361 | result: "i32", 1362 | }, 1363 | // XResizeWindow @ include/Xlib.h:3113:12 1364 | XResizeWindow: { 1365 | parameters: ["pointer","u64","u32","u32"], 1366 | result: "i32", 1367 | }, 1368 | // XRestackWindows @ include/Xlib.h:3120:12 1369 | XRestackWindows: { 1370 | parameters: ["pointer","pointer","i32"], 1371 | result: "i32", 1372 | }, 1373 | // XRotateBuffers @ include/Xlib.h:3126:12 1374 | XRotateBuffers: { 1375 | parameters: ["pointer","i32"], 1376 | result: "i32", 1377 | }, 1378 | // XRotateWindowProperties @ include/Xlib.h:3131:12 1379 | XRotateWindowProperties: { 1380 | parameters: ["pointer","u64","pointer","i32","i32"], 1381 | result: "i32", 1382 | }, 1383 | // XScreenCount @ include/Xlib.h:3139:12 1384 | XScreenCount: { 1385 | parameters: ["pointer"], 1386 | result: "i32", 1387 | }, 1388 | // XSelectInput @ include/Xlib.h:3143:12 1389 | XSelectInput: { 1390 | parameters: ["pointer","u64","i64"], 1391 | result: "i32", 1392 | }, 1393 | // XSendEvent @ include/Xlib.h:3149:15 1394 | XSendEvent: { 1395 | parameters: ["pointer","u64","i32","i64","pointer"], 1396 | result: "i32", 1397 | }, 1398 | // XSetAccessControl @ include/Xlib.h:3157:12 1399 | XSetAccessControl: { 1400 | parameters: ["pointer","i32"], 1401 | result: "i32", 1402 | }, 1403 | // XSetArcMode @ include/Xlib.h:3162:12 1404 | XSetArcMode: { 1405 | parameters: ["pointer","pointer","i32"], 1406 | result: "i32", 1407 | }, 1408 | // XSetBackground @ include/Xlib.h:3168:12 1409 | XSetBackground: { 1410 | parameters: ["pointer","pointer","u64"], 1411 | result: "i32", 1412 | }, 1413 | // XSetClipMask @ include/Xlib.h:3174:12 1414 | XSetClipMask: { 1415 | parameters: ["pointer","pointer","u64"], 1416 | result: "i32", 1417 | }, 1418 | // XSetClipOrigin @ include/Xlib.h:3180:12 1419 | XSetClipOrigin: { 1420 | parameters: ["pointer","pointer","i32","i32"], 1421 | result: "i32", 1422 | }, 1423 | // XSetClipRectangles @ include/Xlib.h:3187:12 1424 | XSetClipRectangles: { 1425 | parameters: ["pointer","pointer","i32","i32","pointer","i32","i32"], 1426 | result: "i32", 1427 | }, 1428 | // XSetCloseDownMode @ include/Xlib.h:3197:12 1429 | XSetCloseDownMode: { 1430 | parameters: ["pointer","i32"], 1431 | result: "i32", 1432 | }, 1433 | // XSetCommand @ include/Xlib.h:3202:12 1434 | XSetCommand: { 1435 | parameters: ["pointer","u64","pointer","i32"], 1436 | result: "i32", 1437 | }, 1438 | // XSetDashes @ include/Xlib.h:3209:12 1439 | XSetDashes: { 1440 | parameters: ["pointer","pointer","i32","pointer","i32"], 1441 | result: "i32", 1442 | }, 1443 | // XSetFillRule @ include/Xlib.h:3217:12 1444 | XSetFillRule: { 1445 | parameters: ["pointer","pointer","i32"], 1446 | result: "i32", 1447 | }, 1448 | // XSetFillStyle @ include/Xlib.h:3223:12 1449 | XSetFillStyle: { 1450 | parameters: ["pointer","pointer","i32"], 1451 | result: "i32", 1452 | }, 1453 | // XSetFont @ include/Xlib.h:3229:12 1454 | XSetFont: { 1455 | parameters: ["pointer","pointer","u64"], 1456 | result: "i32", 1457 | }, 1458 | // XSetFontPath @ include/Xlib.h:3235:12 1459 | XSetFontPath: { 1460 | parameters: ["pointer","pointer","i32"], 1461 | result: "i32", 1462 | }, 1463 | // XSetForeground @ include/Xlib.h:3241:12 1464 | XSetForeground: { 1465 | parameters: ["pointer","pointer","u64"], 1466 | result: "i32", 1467 | }, 1468 | // XSetFunction @ include/Xlib.h:3247:12 1469 | XSetFunction: { 1470 | parameters: ["pointer","pointer","i32"], 1471 | result: "i32", 1472 | }, 1473 | // XSetGraphicsExposures @ include/Xlib.h:3253:12 1474 | XSetGraphicsExposures: { 1475 | parameters: ["pointer","pointer","i32"], 1476 | result: "i32", 1477 | }, 1478 | // XSetIconName @ include/Xlib.h:3259:12 1479 | XSetIconName: { 1480 | parameters: ["pointer","u64","pointer"], 1481 | result: "i32", 1482 | }, 1483 | // XSetInputFocus @ include/Xlib.h:3265:12 1484 | XSetInputFocus: { 1485 | parameters: ["pointer","u64","i32","u64"], 1486 | result: "i32", 1487 | }, 1488 | // XSetLineAttributes @ include/Xlib.h:3272:12 1489 | XSetLineAttributes: { 1490 | parameters: ["pointer","pointer","u32","i32","i32","i32"], 1491 | result: "i32", 1492 | }, 1493 | // XSetModifierMapping @ include/Xlib.h:3281:12 1494 | XSetModifierMapping: { 1495 | parameters: ["pointer","pointer"], 1496 | result: "i32", 1497 | }, 1498 | // XSetPlaneMask @ include/Xlib.h:3286:12 1499 | XSetPlaneMask: { 1500 | parameters: ["pointer","pointer","u64"], 1501 | result: "i32", 1502 | }, 1503 | // XSetPointerMapping @ include/Xlib.h:3292:12 1504 | XSetPointerMapping: { 1505 | parameters: ["pointer","pointer","i32"], 1506 | result: "i32", 1507 | }, 1508 | // XSetScreenSaver @ include/Xlib.h:3298:12 1509 | XSetScreenSaver: { 1510 | parameters: ["pointer","i32","i32","i32","i32"], 1511 | result: "i32", 1512 | }, 1513 | // XSetSelectionOwner @ include/Xlib.h:3306:12 1514 | XSetSelectionOwner: { 1515 | parameters: ["pointer","u64","u64","u64"], 1516 | result: "i32", 1517 | }, 1518 | // XSetState @ include/Xlib.h:3313:12 1519 | XSetState: { 1520 | parameters: ["pointer","pointer","u64","u64","i32","u64"], 1521 | result: "i32", 1522 | }, 1523 | // XSetStipple @ include/Xlib.h:3322:12 1524 | XSetStipple: { 1525 | parameters: ["pointer","pointer","u64"], 1526 | result: "i32", 1527 | }, 1528 | // XSetSubwindowMode @ include/Xlib.h:3328:12 1529 | XSetSubwindowMode: { 1530 | parameters: ["pointer","pointer","i32"], 1531 | result: "i32", 1532 | }, 1533 | // XSetTSOrigin @ include/Xlib.h:3334:12 1534 | XSetTSOrigin: { 1535 | parameters: ["pointer","pointer","i32","i32"], 1536 | result: "i32", 1537 | }, 1538 | // XSetTile @ include/Xlib.h:3341:12 1539 | XSetTile: { 1540 | parameters: ["pointer","pointer","u64"], 1541 | result: "i32", 1542 | }, 1543 | // XSetWindowBackground @ include/Xlib.h:3347:12 1544 | XSetWindowBackground: { 1545 | parameters: ["pointer","u64","u64"], 1546 | result: "i32", 1547 | }, 1548 | // XSetWindowBackgroundPixmap @ include/Xlib.h:3353:12 1549 | XSetWindowBackgroundPixmap: { 1550 | parameters: ["pointer","u64","u64"], 1551 | result: "i32", 1552 | }, 1553 | // XSetWindowBorder @ include/Xlib.h:3359:12 1554 | XSetWindowBorder: { 1555 | parameters: ["pointer","u64","u64"], 1556 | result: "i32", 1557 | }, 1558 | // XSetWindowBorderPixmap @ include/Xlib.h:3365:12 1559 | XSetWindowBorderPixmap: { 1560 | parameters: ["pointer","u64","u64"], 1561 | result: "i32", 1562 | }, 1563 | // XSetWindowBorderWidth @ include/Xlib.h:3371:12 1564 | XSetWindowBorderWidth: { 1565 | parameters: ["pointer","u64","u32"], 1566 | result: "i32", 1567 | }, 1568 | // XSetWindowColormap @ include/Xlib.h:3377:12 1569 | XSetWindowColormap: { 1570 | parameters: ["pointer","u64","u64"], 1571 | result: "i32", 1572 | }, 1573 | // XStoreBuffer @ include/Xlib.h:3383:12 1574 | XStoreBuffer: { 1575 | parameters: ["pointer","pointer","i32","i32"], 1576 | result: "i32", 1577 | }, 1578 | // XStoreBytes @ include/Xlib.h:3390:12 1579 | XStoreBytes: { 1580 | parameters: ["pointer","pointer","i32"], 1581 | result: "i32", 1582 | }, 1583 | // XStoreColor @ include/Xlib.h:3396:12 1584 | XStoreColor: { 1585 | parameters: ["pointer","u64","pointer"], 1586 | result: "i32", 1587 | }, 1588 | // XStoreColors @ include/Xlib.h:3402:12 1589 | XStoreColors: { 1590 | parameters: ["pointer","u64","pointer","i32"], 1591 | result: "i32", 1592 | }, 1593 | // XStoreName @ include/Xlib.h:3409:12 1594 | XStoreName: { 1595 | parameters: ["pointer","u64","pointer"], 1596 | result: "i32", 1597 | }, 1598 | // XStoreNamedColor @ include/Xlib.h:3415:12 1599 | XStoreNamedColor: { 1600 | parameters: ["pointer","u64","pointer","u64","i32"], 1601 | result: "i32", 1602 | }, 1603 | // XSync @ include/Xlib.h:3423:12 1604 | XSync: { 1605 | parameters: ["pointer","i32"], 1606 | result: "i32", 1607 | }, 1608 | // XTextExtents @ include/Xlib.h:3428:12 1609 | XTextExtents: { 1610 | parameters: ["pointer","pointer","i32","pointer","pointer","pointer","pointer"], 1611 | result: "i32", 1612 | }, 1613 | // XTextExtents16 @ include/Xlib.h:3438:12 1614 | XTextExtents16: { 1615 | parameters: ["pointer","pointer","i32","pointer","pointer","pointer","pointer"], 1616 | result: "i32", 1617 | }, 1618 | // XTextWidth @ include/Xlib.h:3448:12 1619 | XTextWidth: { 1620 | parameters: ["pointer","pointer","i32"], 1621 | result: "i32", 1622 | }, 1623 | // XTextWidth16 @ include/Xlib.h:3454:12 1624 | XTextWidth16: { 1625 | parameters: ["pointer","pointer","i32"], 1626 | result: "i32", 1627 | }, 1628 | // XTranslateCoordinates @ include/Xlib.h:3460:13 1629 | XTranslateCoordinates: { 1630 | parameters: ["pointer","u64","u64","i32","i32","pointer","pointer","pointer"], 1631 | result: "i32", 1632 | }, 1633 | // XUndefineCursor @ include/Xlib.h:3471:12 1634 | XUndefineCursor: { 1635 | parameters: ["pointer","u64"], 1636 | result: "i32", 1637 | }, 1638 | // XUngrabButton @ include/Xlib.h:3476:12 1639 | XUngrabButton: { 1640 | parameters: ["pointer","u32","u32","u64"], 1641 | result: "i32", 1642 | }, 1643 | // XUngrabKey @ include/Xlib.h:3483:12 1644 | XUngrabKey: { 1645 | parameters: ["pointer","i32","u32","u64"], 1646 | result: "i32", 1647 | }, 1648 | // XUngrabKeyboard @ include/Xlib.h:3490:12 1649 | XUngrabKeyboard: { 1650 | parameters: ["pointer","u64"], 1651 | result: "i32", 1652 | }, 1653 | // XUngrabPointer @ include/Xlib.h:3495:12 1654 | XUngrabPointer: { 1655 | parameters: ["pointer","u64"], 1656 | result: "i32", 1657 | }, 1658 | // XUngrabServer @ include/Xlib.h:3500:12 1659 | XUngrabServer: { 1660 | parameters: ["pointer"], 1661 | result: "i32", 1662 | }, 1663 | // XUninstallColormap @ include/Xlib.h:3504:12 1664 | XUninstallColormap: { 1665 | parameters: ["pointer","u64"], 1666 | result: "i32", 1667 | }, 1668 | // XUnloadFont @ include/Xlib.h:3509:12 1669 | XUnloadFont: { 1670 | parameters: ["pointer","u64"], 1671 | result: "i32", 1672 | }, 1673 | // XUnmapSubwindows @ include/Xlib.h:3514:12 1674 | XUnmapSubwindows: { 1675 | parameters: ["pointer","u64"], 1676 | result: "i32", 1677 | }, 1678 | // XUnmapWindow @ include/Xlib.h:3519:12 1679 | XUnmapWindow: { 1680 | parameters: ["pointer","u64"], 1681 | result: "i32", 1682 | }, 1683 | // XVendorRelease @ include/Xlib.h:3524:12 1684 | XVendorRelease: { 1685 | parameters: ["pointer"], 1686 | result: "i32", 1687 | }, 1688 | // XWarpPointer @ include/Xlib.h:3528:12 1689 | XWarpPointer: { 1690 | parameters: ["pointer","u64","u64","i32","i32","u32","u32","i32","i32"], 1691 | result: "i32", 1692 | }, 1693 | // XWidthMMOfScreen @ include/Xlib.h:3540:12 1694 | XWidthMMOfScreen: { 1695 | parameters: ["pointer"], 1696 | result: "i32", 1697 | }, 1698 | // XWidthOfScreen @ include/Xlib.h:3544:12 1699 | XWidthOfScreen: { 1700 | parameters: ["pointer"], 1701 | result: "i32", 1702 | }, 1703 | // XWindowEvent @ include/Xlib.h:3548:12 1704 | XWindowEvent: { 1705 | parameters: ["pointer","u64","i64","pointer"], 1706 | result: "i32", 1707 | }, 1708 | // XWriteBitmapFile @ include/Xlib.h:3555:12 1709 | XWriteBitmapFile: { 1710 | parameters: ["pointer","pointer","u64","u32","u32","i32","i32"], 1711 | result: "i32", 1712 | }, 1713 | // XSupportsLocale @ include/Xlib.h:3565:13 1714 | XSupportsLocale: { 1715 | parameters: [], 1716 | result: "i32", 1717 | }, 1718 | // XSetLocaleModifiers @ include/Xlib.h:3567:14 1719 | XSetLocaleModifiers: { 1720 | parameters: ["pointer"], 1721 | result: "pointer", 1722 | }, 1723 | // XOpenOM @ include/Xlib.h:3571:12 1724 | XOpenOM: { 1725 | parameters: ["pointer","pointer","pointer","pointer"], 1726 | result: "pointer", 1727 | }, 1728 | // XCloseOM @ include/Xlib.h:3578:15 1729 | XCloseOM: { 1730 | parameters: ["pointer"], 1731 | result: "i32", 1732 | }, 1733 | // XDisplayOfOM @ include/Xlib.h:3592:17 1734 | XDisplayOfOM: { 1735 | parameters: ["pointer"], 1736 | result: "pointer", 1737 | }, 1738 | // XLocaleOfOM @ include/Xlib.h:3596:14 1739 | XLocaleOfOM: { 1740 | parameters: ["pointer"], 1741 | result: "pointer", 1742 | }, 1743 | // XDestroyOC @ include/Xlib.h:3605:13 1744 | XDestroyOC: { 1745 | parameters: ["pointer"], 1746 | result: "void", 1747 | }, 1748 | // XOMOfOC @ include/Xlib.h:3609:12 1749 | XOMOfOC: { 1750 | parameters: ["pointer"], 1751 | result: "pointer", 1752 | }, 1753 | // XCreateFontSet @ include/Xlib.h:3623:17 1754 | XCreateFontSet: { 1755 | parameters: ["pointer","pointer","pointer","pointer","pointer"], 1756 | result: "pointer", 1757 | }, 1758 | // XFreeFontSet @ include/Xlib.h:3631:13 1759 | XFreeFontSet: { 1760 | parameters: ["pointer","pointer"], 1761 | result: "void", 1762 | }, 1763 | // XFontsOfFontSet @ include/Xlib.h:3636:12 1764 | XFontsOfFontSet: { 1765 | parameters: ["pointer","pointer","pointer"], 1766 | result: "i32", 1767 | }, 1768 | // XBaseFontNameListOfFontSet @ include/Xlib.h:3642:14 1769 | XBaseFontNameListOfFontSet: { 1770 | parameters: ["pointer"], 1771 | result: "pointer", 1772 | }, 1773 | // XLocaleOfFontSet @ include/Xlib.h:3646:14 1774 | XLocaleOfFontSet: { 1775 | parameters: ["pointer"], 1776 | result: "pointer", 1777 | }, 1778 | // XContextDependentDrawing @ include/Xlib.h:3650:13 1779 | XContextDependentDrawing: { 1780 | parameters: ["pointer"], 1781 | result: "i32", 1782 | }, 1783 | // XDirectionalDependentDrawing @ include/Xlib.h:3654:13 1784 | XDirectionalDependentDrawing: { 1785 | parameters: ["pointer"], 1786 | result: "i32", 1787 | }, 1788 | // XContextualDrawing @ include/Xlib.h:3658:13 1789 | XContextualDrawing: { 1790 | parameters: ["pointer"], 1791 | result: "i32", 1792 | }, 1793 | // XExtentsOfFontSet @ include/Xlib.h:3662:25 1794 | XExtentsOfFontSet: { 1795 | parameters: ["pointer"], 1796 | result: "pointer", 1797 | }, 1798 | // XmbTextEscapement @ include/Xlib.h:3666:12 1799 | XmbTextEscapement: { 1800 | parameters: ["pointer","pointer","i32"], 1801 | result: "i32", 1802 | }, 1803 | // XwcTextEscapement @ include/Xlib.h:3672:12 1804 | XwcTextEscapement: { 1805 | parameters: ["pointer","pointer","i32"], 1806 | result: "i32", 1807 | }, 1808 | // Xutf8TextEscapement @ include/Xlib.h:3678:12 1809 | Xutf8TextEscapement: { 1810 | parameters: ["pointer","pointer","i32"], 1811 | result: "i32", 1812 | }, 1813 | // XmbTextExtents @ include/Xlib.h:3684:12 1814 | XmbTextExtents: { 1815 | parameters: ["pointer","pointer","i32","pointer","pointer"], 1816 | result: "i32", 1817 | }, 1818 | // XwcTextExtents @ include/Xlib.h:3692:12 1819 | XwcTextExtents: { 1820 | parameters: ["pointer","pointer","i32","pointer","pointer"], 1821 | result: "i32", 1822 | }, 1823 | // Xutf8TextExtents @ include/Xlib.h:3700:12 1824 | Xutf8TextExtents: { 1825 | parameters: ["pointer","pointer","i32","pointer","pointer"], 1826 | result: "i32", 1827 | }, 1828 | // XmbTextPerCharExtents @ include/Xlib.h:3708:15 1829 | XmbTextPerCharExtents: { 1830 | parameters: ["pointer","pointer","i32","pointer","pointer","i32","pointer","pointer","pointer"], 1831 | result: "i32", 1832 | }, 1833 | // XwcTextPerCharExtents @ include/Xlib.h:3720:15 1834 | XwcTextPerCharExtents: { 1835 | parameters: ["pointer","pointer","i32","pointer","pointer","i32","pointer","pointer","pointer"], 1836 | result: "i32", 1837 | }, 1838 | // Xutf8TextPerCharExtents @ include/Xlib.h:3732:15 1839 | Xutf8TextPerCharExtents: { 1840 | parameters: ["pointer","pointer","i32","pointer","pointer","i32","pointer","pointer","pointer"], 1841 | result: "i32", 1842 | }, 1843 | // XmbDrawText @ include/Xlib.h:3744:13 1844 | XmbDrawText: { 1845 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 1846 | result: "void", 1847 | }, 1848 | // XwcDrawText @ include/Xlib.h:3754:13 1849 | XwcDrawText: { 1850 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 1851 | result: "void", 1852 | }, 1853 | // Xutf8DrawText @ include/Xlib.h:3764:13 1854 | Xutf8DrawText: { 1855 | parameters: ["pointer","u64","pointer","i32","i32","pointer","i32"], 1856 | result: "void", 1857 | }, 1858 | // XmbDrawString @ include/Xlib.h:3774:13 1859 | XmbDrawString: { 1860 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1861 | result: "void", 1862 | }, 1863 | // XwcDrawString @ include/Xlib.h:3785:13 1864 | XwcDrawString: { 1865 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1866 | result: "void", 1867 | }, 1868 | // Xutf8DrawString @ include/Xlib.h:3796:13 1869 | Xutf8DrawString: { 1870 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1871 | result: "void", 1872 | }, 1873 | // XmbDrawImageString @ include/Xlib.h:3807:13 1874 | XmbDrawImageString: { 1875 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1876 | result: "void", 1877 | }, 1878 | // XwcDrawImageString @ include/Xlib.h:3818:13 1879 | XwcDrawImageString: { 1880 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1881 | result: "void", 1882 | }, 1883 | // Xutf8DrawImageString @ include/Xlib.h:3829:13 1884 | Xutf8DrawImageString: { 1885 | parameters: ["pointer","u64","pointer","pointer","i32","i32","pointer","i32"], 1886 | result: "void", 1887 | }, 1888 | // XOpenIM @ include/Xlib.h:3840:12 1889 | XOpenIM: { 1890 | parameters: ["pointer","pointer","pointer","pointer"], 1891 | result: "pointer", 1892 | }, 1893 | // XCloseIM @ include/Xlib.h:3847:15 1894 | XCloseIM: { 1895 | parameters: ["pointer"], 1896 | result: "i32", 1897 | }, 1898 | // XDisplayOfIM @ include/Xlib.h:3859:17 1899 | XDisplayOfIM: { 1900 | parameters: ["pointer"], 1901 | result: "pointer", 1902 | }, 1903 | // XLocaleOfIM @ include/Xlib.h:3863:14 1904 | XLocaleOfIM: { 1905 | parameters: ["pointer"], 1906 | result: "pointer", 1907 | }, 1908 | // XDestroyIC @ include/Xlib.h:3871:13 1909 | XDestroyIC: { 1910 | parameters: ["pointer"], 1911 | result: "void", 1912 | }, 1913 | // XSetICFocus @ include/Xlib.h:3875:13 1914 | XSetICFocus: { 1915 | parameters: ["pointer"], 1916 | result: "void", 1917 | }, 1918 | // XUnsetICFocus @ include/Xlib.h:3879:13 1919 | XUnsetICFocus: { 1920 | parameters: ["pointer"], 1921 | result: "void", 1922 | }, 1923 | // XwcResetIC @ include/Xlib.h:3883:17 1924 | XwcResetIC: { 1925 | parameters: ["pointer"], 1926 | result: "pointer", 1927 | }, 1928 | // XmbResetIC @ include/Xlib.h:3887:14 1929 | XmbResetIC: { 1930 | parameters: ["pointer"], 1931 | result: "pointer", 1932 | }, 1933 | // Xutf8ResetIC @ include/Xlib.h:3891:14 1934 | Xutf8ResetIC: { 1935 | parameters: ["pointer"], 1936 | result: "pointer", 1937 | }, 1938 | // XIMOfIC @ include/Xlib.h:3903:12 1939 | XIMOfIC: { 1940 | parameters: ["pointer"], 1941 | result: "pointer", 1942 | }, 1943 | // XFilterEvent @ include/Xlib.h:3907:13 1944 | XFilterEvent: { 1945 | parameters: ["pointer","u64"], 1946 | result: "i32", 1947 | }, 1948 | // XmbLookupString @ include/Xlib.h:3912:12 1949 | XmbLookupString: { 1950 | parameters: ["pointer","pointer","pointer","i32","pointer","pointer"], 1951 | result: "i32", 1952 | }, 1953 | // XwcLookupString @ include/Xlib.h:3921:12 1954 | XwcLookupString: { 1955 | parameters: ["pointer","pointer","pointer","i32","pointer","pointer"], 1956 | result: "i32", 1957 | }, 1958 | // Xutf8LookupString @ include/Xlib.h:3930:12 1959 | Xutf8LookupString: { 1960 | parameters: ["pointer","pointer","pointer","i32","pointer","pointer"], 1961 | result: "i32", 1962 | }, 1963 | // XRegisterIMInstantiateCallback @ include/Xlib.h:3945:13 1964 | XRegisterIMInstantiateCallback: { 1965 | parameters: ["pointer","pointer","pointer","pointer","pointer","pointer"], 1966 | result: "i32", 1967 | }, 1968 | // XUnregisterIMInstantiateCallback @ include/Xlib.h:3954:13 1969 | XUnregisterIMInstantiateCallback: { 1970 | parameters: ["pointer","pointer","pointer","pointer","pointer","pointer"], 1971 | result: "i32", 1972 | }, 1973 | // XInternalConnectionNumbers @ include/Xlib.h:3972:15 1974 | XInternalConnectionNumbers: { 1975 | parameters: ["pointer","pointer","pointer"], 1976 | result: "i32", 1977 | }, 1978 | // XProcessInternalConnection @ include/Xlib.h:3978:13 1979 | XProcessInternalConnection: { 1980 | parameters: ["pointer","i32"], 1981 | result: "void", 1982 | }, 1983 | // XAddConnectionWatch @ include/Xlib.h:3983:15 1984 | XAddConnectionWatch: { 1985 | parameters: ["pointer","pointer","pointer"], 1986 | result: "i32", 1987 | }, 1988 | // XRemoveConnectionWatch @ include/Xlib.h:3989:13 1989 | XRemoveConnectionWatch: { 1990 | parameters: ["pointer","pointer","pointer"], 1991 | result: "void", 1992 | }, 1993 | // XSetAuthorization @ include/Xlib.h:3995:13 1994 | XSetAuthorization: { 1995 | parameters: ["pointer","i32","pointer","i32"], 1996 | result: "void", 1997 | }, 1998 | // _Xmbtowc @ include/Xlib.h:4002:12 1999 | _Xmbtowc: { 2000 | parameters: ["pointer","pointer","i32"], 2001 | result: "i32", 2002 | }, 2003 | // _Xwctomb @ include/Xlib.h:4008:12 2004 | _Xwctomb: { 2005 | parameters: ["pointer","i32"], 2006 | result: "i32", 2007 | }, 2008 | // XGetEventData @ include/Xlib.h:4013:13 2009 | XGetEventData: { 2010 | parameters: ["pointer","pointer"], 2011 | result: "i32", 2012 | }, 2013 | // XFreeEventData @ include/Xlib.h:4018:13 2014 | XFreeEventData: { 2015 | parameters: ["pointer","pointer"], 2016 | result: "void", 2017 | } 2018 | } as const; 2019 | 2020 | const { symbols } = Deno.dlopen("libX11.so", _); 2021 | 2022 | export default symbols; 2023 | 2024 | -------------------------------------------------------------------------------- /example/x11/include/Xlib.h: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | Copyright 1985, 1986, 1987, 1991, 1998 The Open Group 4 | 5 | Permission to use, copy, modify, distribute, and sell this software and its 6 | documentation for any purpose is hereby granted without fee, provided that 7 | the above copyright notice appear in all copies and that both that 8 | copyright notice and this permission notice appear in supporting 9 | documentation. 10 | 11 | The above copyright notice and this permission notice shall be included in 12 | all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 18 | AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 19 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 20 | 21 | Except as contained in this notice, the name of The Open Group shall not be 22 | used in advertising or otherwise to promote the sale, use or other dealings 23 | in this Software without prior written authorization from The Open Group. 24 | 25 | */ 26 | 27 | 28 | /* 29 | * Xlib.h - Header definition and support file for the C subroutine 30 | * interface library (Xlib) to the X Window System Protocol (V11). 31 | * Structures and symbols starting with "_" are private to the library. 32 | */ 33 | #ifndef _X11_XLIB_H_ 34 | #define _X11_XLIB_H_ 35 | 36 | #define XlibSpecificationRelease 6 37 | 38 | #include 39 | 40 | #if defined(__SCO__) || defined(__UNIXWARE__) 41 | #include 42 | #endif 43 | 44 | #include 45 | 46 | /* applications should not depend on these two headers being included! */ 47 | #include 48 | #include 49 | 50 | #ifndef X_WCHAR 51 | #include 52 | #else 53 | #ifdef __UNIXOS2__ 54 | #include 55 | #else 56 | /* replace this with #include or typedef appropriate for your system */ 57 | typedef unsigned long wchar_t; 58 | #endif 59 | #endif 60 | 61 | 62 | extern int 63 | _Xmblen( 64 | char *str, 65 | int len 66 | ); 67 | 68 | /* API mentioning "UTF8" or "utf8" is an XFree86 extension, introduced in 69 | November 2000. Its presence is indicated through the following macro. */ 70 | #define X_HAVE_UTF8_STRING 1 71 | 72 | /* The Xlib structs are full of implicit padding to properly align members. 73 | We can't clean that up without breaking ABI, so tell clang not to bother 74 | complaining about it. */ 75 | #ifdef __clang__ 76 | #pragma clang diagnostic push 77 | #pragma clang diagnostic ignored "-Wpadded" 78 | #endif 79 | 80 | typedef char *XPointer; 81 | 82 | #define Bool int 83 | #define Status int 84 | #define True 1 85 | #define False 0 86 | 87 | #define QueuedAlready 0 88 | #define QueuedAfterReading 1 89 | #define QueuedAfterFlush 2 90 | 91 | #define ConnectionNumber(dpy) (((_XPrivDisplay)(dpy))->fd) 92 | #define RootWindow(dpy, scr) (ScreenOfDisplay(dpy,scr)->root) 93 | #define DefaultScreen(dpy) (((_XPrivDisplay)(dpy))->default_screen) 94 | #define DefaultRootWindow(dpy) (ScreenOfDisplay(dpy,DefaultScreen(dpy))->root) 95 | #define DefaultVisual(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_visual) 96 | #define DefaultGC(dpy, scr) (ScreenOfDisplay(dpy,scr)->default_gc) 97 | #define BlackPixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->black_pixel) 98 | #define WhitePixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->white_pixel) 99 | #define AllPlanes ((unsigned long)~0L) 100 | #define QLength(dpy) (((_XPrivDisplay)(dpy))->qlen) 101 | #define DisplayWidth(dpy, scr) (ScreenOfDisplay(dpy,scr)->width) 102 | #define DisplayHeight(dpy, scr) (ScreenOfDisplay(dpy,scr)->height) 103 | #define DisplayWidthMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mwidth) 104 | #define DisplayHeightMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mheight) 105 | #define DisplayPlanes(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) 106 | #define DisplayCells(dpy, scr) (DefaultVisual(dpy,scr)->map_entries) 107 | #define ScreenCount(dpy) (((_XPrivDisplay)(dpy))->nscreens) 108 | #define ServerVendor(dpy) (((_XPrivDisplay)(dpy))->vendor) 109 | #define ProtocolVersion(dpy) (((_XPrivDisplay)(dpy))->proto_major_version) 110 | #define ProtocolRevision(dpy) (((_XPrivDisplay)(dpy))->proto_minor_version) 111 | #define VendorRelease(dpy) (((_XPrivDisplay)(dpy))->release) 112 | #define DisplayString(dpy) (((_XPrivDisplay)(dpy))->display_name) 113 | #define DefaultDepth(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) 114 | #define DefaultColormap(dpy, scr)(ScreenOfDisplay(dpy,scr)->cmap) 115 | #define BitmapUnit(dpy) (((_XPrivDisplay)(dpy))->bitmap_unit) 116 | #define BitmapBitOrder(dpy) (((_XPrivDisplay)(dpy))->bitmap_bit_order) 117 | #define BitmapPad(dpy) (((_XPrivDisplay)(dpy))->bitmap_pad) 118 | #define ImageByteOrder(dpy) (((_XPrivDisplay)(dpy))->byte_order) 119 | #define NextRequest(dpy) (((_XPrivDisplay)(dpy))->request + 1) 120 | #define LastKnownRequestProcessed(dpy) (((_XPrivDisplay)(dpy))->last_request_read) 121 | 122 | /* macros for screen oriented applications (toolkit) */ 123 | #define ScreenOfDisplay(dpy, scr)(&((_XPrivDisplay)(dpy))->screens[scr]) 124 | #define DefaultScreenOfDisplay(dpy) ScreenOfDisplay(dpy,DefaultScreen(dpy)) 125 | #define DisplayOfScreen(s) ((s)->display) 126 | #define RootWindowOfScreen(s) ((s)->root) 127 | #define BlackPixelOfScreen(s) ((s)->black_pixel) 128 | #define WhitePixelOfScreen(s) ((s)->white_pixel) 129 | #define DefaultColormapOfScreen(s)((s)->cmap) 130 | #define DefaultDepthOfScreen(s) ((s)->root_depth) 131 | #define DefaultGCOfScreen(s) ((s)->default_gc) 132 | #define DefaultVisualOfScreen(s)((s)->root_visual) 133 | #define WidthOfScreen(s) ((s)->width) 134 | #define HeightOfScreen(s) ((s)->height) 135 | #define WidthMMOfScreen(s) ((s)->mwidth) 136 | #define HeightMMOfScreen(s) ((s)->mheight) 137 | #define PlanesOfScreen(s) ((s)->root_depth) 138 | #define CellsOfScreen(s) (DefaultVisualOfScreen((s))->map_entries) 139 | #define MinCmapsOfScreen(s) ((s)->min_maps) 140 | #define MaxCmapsOfScreen(s) ((s)->max_maps) 141 | #define DoesSaveUnders(s) ((s)->save_unders) 142 | #define DoesBackingStore(s) ((s)->backing_store) 143 | #define EventMaskOfScreen(s) ((s)->root_input_mask) 144 | 145 | /* 146 | * Extensions need a way to hang private data on some structures. 147 | */ 148 | typedef struct _XExtData { 149 | int number; /* number returned by XRegisterExtension */ 150 | struct _XExtData *next; /* next item on list of data for structure */ 151 | int (*free_private)( /* called to free private storage */ 152 | struct _XExtData *extension 153 | ); 154 | XPointer private_data; /* data private to this extension. */ 155 | } XExtData; 156 | 157 | /* 158 | * This file contains structures used by the extension mechanism. 159 | */ 160 | typedef struct { /* public to extension, cannot be changed */ 161 | int extension; /* extension number */ 162 | int major_opcode; /* major op-code assigned by server */ 163 | int first_event; /* first event number for the extension */ 164 | int first_error; /* first error number for the extension */ 165 | } XExtCodes; 166 | 167 | /* 168 | * Data structure for retrieving info about pixmap formats. 169 | */ 170 | 171 | typedef struct { 172 | int depth; 173 | int bits_per_pixel; 174 | int scanline_pad; 175 | } XPixmapFormatValues; 176 | 177 | 178 | /* 179 | * Data structure for setting graphics context. 180 | */ 181 | typedef struct { 182 | int function; /* logical operation */ 183 | unsigned long plane_mask;/* plane mask */ 184 | unsigned long foreground;/* foreground pixel */ 185 | unsigned long background;/* background pixel */ 186 | int line_width; /* line width */ 187 | int line_style; /* LineSolid, LineOnOffDash, LineDoubleDash */ 188 | int cap_style; /* CapNotLast, CapButt, 189 | CapRound, CapProjecting */ 190 | int join_style; /* JoinMiter, JoinRound, JoinBevel */ 191 | int fill_style; /* FillSolid, FillTiled, 192 | FillStippled, FillOpaqueStippled */ 193 | int fill_rule; /* EvenOddRule, WindingRule */ 194 | int arc_mode; /* ArcChord, ArcPieSlice */ 195 | Pixmap tile; /* tile pixmap for tiling operations */ 196 | Pixmap stipple; /* stipple 1 plane pixmap for stippling */ 197 | int ts_x_origin; /* offset for tile or stipple operations */ 198 | int ts_y_origin; 199 | Font font; /* default text font for text operations */ 200 | int subwindow_mode; /* ClipByChildren, IncludeInferiors */ 201 | Bool graphics_exposures;/* boolean, should exposures be generated */ 202 | int clip_x_origin; /* origin for clipping */ 203 | int clip_y_origin; 204 | Pixmap clip_mask; /* bitmap clipping; other calls for rects */ 205 | int dash_offset; /* patterned/dashed line information */ 206 | char dashes; 207 | } XGCValues; 208 | 209 | /* 210 | * Graphics context. The contents of this structure are implementation 211 | * dependent. A GC should be treated as opaque by application code. 212 | */ 213 | 214 | typedef struct _XGC 215 | #ifdef XLIB_ILLEGAL_ACCESS 216 | { 217 | XExtData *ext_data; /* hook for extension to hang data */ 218 | GContext gid; /* protocol ID for graphics context */ 219 | /* there is more to this structure, but it is private to Xlib */ 220 | } 221 | #endif 222 | *GC; 223 | 224 | /* 225 | * Visual structure; contains information about colormapping possible. 226 | */ 227 | typedef struct { 228 | XExtData *ext_data; /* hook for extension to hang data */ 229 | VisualID visualid; /* visual id of this visual */ 230 | #if defined(__cplusplus) || defined(c_plusplus) 231 | int c_class; /* C++ class of screen (monochrome, etc.) */ 232 | #else 233 | int class; /* class of screen (monochrome, etc.) */ 234 | #endif 235 | unsigned long red_mask, green_mask, blue_mask; /* mask values */ 236 | int bits_per_rgb; /* log base 2 of distinct color values */ 237 | int map_entries; /* color map entries */ 238 | } Visual; 239 | 240 | /* 241 | * Depth structure; contains information for each possible depth. 242 | */ 243 | typedef struct { 244 | int depth; /* this depth (Z) of the depth */ 245 | int nvisuals; /* number of Visual types at this depth */ 246 | Visual *visuals; /* list of visuals possible at this depth */ 247 | } Depth; 248 | 249 | /* 250 | * Information about the screen. The contents of this structure are 251 | * implementation dependent. A Screen should be treated as opaque 252 | * by application code. 253 | */ 254 | 255 | struct _XDisplay; /* Forward declare before use for C++ */ 256 | 257 | typedef struct { 258 | XExtData *ext_data; /* hook for extension to hang data */ 259 | struct _XDisplay *display;/* back pointer to display structure */ 260 | Window root; /* Root window id. */ 261 | int width, height; /* width and height of screen */ 262 | int mwidth, mheight; /* width and height of in millimeters */ 263 | int ndepths; /* number of depths possible */ 264 | Depth *depths; /* list of allowable depths on the screen */ 265 | int root_depth; /* bits per pixel */ 266 | Visual *root_visual; /* root visual */ 267 | GC default_gc; /* GC for the root root visual */ 268 | Colormap cmap; /* default color map */ 269 | unsigned long white_pixel; 270 | unsigned long black_pixel; /* White and Black pixel values */ 271 | int max_maps, min_maps; /* max and min color maps */ 272 | int backing_store; /* Never, WhenMapped, Always */ 273 | Bool save_unders; 274 | long root_input_mask; /* initial root input mask */ 275 | } Screen; 276 | 277 | /* 278 | * Format structure; describes ZFormat data the screen will understand. 279 | */ 280 | typedef struct { 281 | XExtData *ext_data; /* hook for extension to hang data */ 282 | int depth; /* depth of this image format */ 283 | int bits_per_pixel; /* bits/pixel at this depth */ 284 | int scanline_pad; /* scanline must padded to this multiple */ 285 | } ScreenFormat; 286 | 287 | /* 288 | * Data structure for setting window attributes. 289 | */ 290 | typedef struct { 291 | Pixmap background_pixmap; /* background or None or ParentRelative */ 292 | unsigned long background_pixel; /* background pixel */ 293 | Pixmap border_pixmap; /* border of the window */ 294 | unsigned long border_pixel; /* border pixel value */ 295 | int bit_gravity; /* one of bit gravity values */ 296 | int win_gravity; /* one of the window gravity values */ 297 | int backing_store; /* NotUseful, WhenMapped, Always */ 298 | unsigned long backing_planes;/* planes to be preserved if possible */ 299 | unsigned long backing_pixel;/* value to use in restoring planes */ 300 | Bool save_under; /* should bits under be saved? (popups) */ 301 | long event_mask; /* set of events that should be saved */ 302 | long do_not_propagate_mask; /* set of events that should not propagate */ 303 | Bool override_redirect; /* boolean value for override-redirect */ 304 | Colormap colormap; /* color map to be associated with window */ 305 | Cursor cursor; /* cursor to be displayed (or None) */ 306 | } XSetWindowAttributes; 307 | 308 | typedef struct { 309 | int x, y; /* location of window */ 310 | int width, height; /* width and height of window */ 311 | int border_width; /* border width of window */ 312 | int depth; /* depth of window */ 313 | Visual *visual; /* the associated visual structure */ 314 | Window root; /* root of screen containing window */ 315 | #if defined(__cplusplus) || defined(c_plusplus) 316 | int c_class; /* C++ InputOutput, InputOnly*/ 317 | #else 318 | int class; /* InputOutput, InputOnly*/ 319 | #endif 320 | int bit_gravity; /* one of bit gravity values */ 321 | int win_gravity; /* one of the window gravity values */ 322 | int backing_store; /* NotUseful, WhenMapped, Always */ 323 | unsigned long backing_planes;/* planes to be preserved if possible */ 324 | unsigned long backing_pixel;/* value to be used when restoring planes */ 325 | Bool save_under; /* boolean, should bits under be saved? */ 326 | Colormap colormap; /* color map to be associated with window */ 327 | Bool map_installed; /* boolean, is color map currently installed*/ 328 | int map_state; /* IsUnmapped, IsUnviewable, IsViewable */ 329 | long all_event_masks; /* set of events all people have interest in*/ 330 | long your_event_mask; /* my event mask */ 331 | long do_not_propagate_mask; /* set of events that should not propagate */ 332 | Bool override_redirect; /* boolean value for override-redirect */ 333 | Screen *screen; /* back pointer to correct screen */ 334 | } XWindowAttributes; 335 | 336 | /* 337 | * Data structure for host setting; getting routines. 338 | * 339 | */ 340 | 341 | typedef struct { 342 | int family; /* for example FamilyInternet */ 343 | int length; /* length of address, in bytes */ 344 | char *address; /* pointer to where to find the bytes */ 345 | } XHostAddress; 346 | 347 | /* 348 | * Data structure for ServerFamilyInterpreted addresses in host routines 349 | */ 350 | typedef struct { 351 | int typelength; /* length of type string, in bytes */ 352 | int valuelength; /* length of value string, in bytes */ 353 | char *type; /* pointer to where to find the type string */ 354 | char *value; /* pointer to where to find the address */ 355 | } XServerInterpretedAddress; 356 | 357 | /* 358 | * Data structure for "image" data, used by image manipulation routines. 359 | */ 360 | typedef struct _XImage { 361 | int width, height; /* size of image */ 362 | int xoffset; /* number of pixels offset in X direction */ 363 | int format; /* XYBitmap, XYPixmap, ZPixmap */ 364 | char *data; /* pointer to image data */ 365 | int byte_order; /* data byte order, LSBFirst, MSBFirst */ 366 | int bitmap_unit; /* quant. of scanline 8, 16, 32 */ 367 | int bitmap_bit_order; /* LSBFirst, MSBFirst */ 368 | int bitmap_pad; /* 8, 16, 32 either XY or ZPixmap */ 369 | int depth; /* depth of image */ 370 | int bytes_per_line; /* accelerator to next line */ 371 | int bits_per_pixel; /* bits per pixel (ZPixmap) */ 372 | unsigned long red_mask; /* bits in z arrangement */ 373 | unsigned long green_mask; 374 | unsigned long blue_mask; 375 | XPointer obdata; /* hook for the object routines to hang on */ 376 | struct funcs { /* image manipulation routines */ 377 | struct _XImage *(*create_image)( 378 | struct _XDisplay* /* display */, 379 | Visual* /* visual */, 380 | unsigned int /* depth */, 381 | int /* format */, 382 | int /* offset */, 383 | char* /* data */, 384 | unsigned int /* width */, 385 | unsigned int /* height */, 386 | int /* bitmap_pad */, 387 | int /* bytes_per_line */); 388 | int (*destroy_image) (struct _XImage *); 389 | unsigned long (*get_pixel) (struct _XImage *, int, int); 390 | int (*put_pixel) (struct _XImage *, int, int, unsigned long); 391 | struct _XImage *(*sub_image)(struct _XImage *, int, int, unsigned int, unsigned int); 392 | int (*add_pixel) (struct _XImage *, long); 393 | } f; 394 | } XImage; 395 | 396 | /* 397 | * Data structure for XReconfigureWindow 398 | */ 399 | typedef struct { 400 | int x, y; 401 | int width, height; 402 | int border_width; 403 | Window sibling; 404 | int stack_mode; 405 | } XWindowChanges; 406 | 407 | /* 408 | * Data structure used by color operations 409 | */ 410 | typedef struct { 411 | unsigned long pixel; 412 | unsigned short red, green, blue; 413 | char flags; /* do_red, do_green, do_blue */ 414 | char pad; 415 | } XColor; 416 | 417 | /* 418 | * Data structures for graphics operations. On most machines, these are 419 | * congruent with the wire protocol structures, so reformatting the data 420 | * can be avoided on these architectures. 421 | */ 422 | typedef struct { 423 | short x1, y1, x2, y2; 424 | } XSegment; 425 | 426 | typedef struct { 427 | short x, y; 428 | } XPoint; 429 | 430 | typedef struct { 431 | short x, y; 432 | unsigned short width, height; 433 | } XRectangle; 434 | 435 | typedef struct { 436 | short x, y; 437 | unsigned short width, height; 438 | short angle1, angle2; 439 | } XArc; 440 | 441 | 442 | /* Data structure for XChangeKeyboardControl */ 443 | 444 | typedef struct { 445 | int key_click_percent; 446 | int bell_percent; 447 | int bell_pitch; 448 | int bell_duration; 449 | int led; 450 | int led_mode; 451 | int key; 452 | int auto_repeat_mode; /* On, Off, Default */ 453 | } XKeyboardControl; 454 | 455 | /* Data structure for XGetKeyboardControl */ 456 | 457 | typedef struct { 458 | int key_click_percent; 459 | int bell_percent; 460 | unsigned int bell_pitch, bell_duration; 461 | unsigned long led_mask; 462 | int global_auto_repeat; 463 | char auto_repeats[32]; 464 | } XKeyboardState; 465 | 466 | /* Data structure for XGetMotionEvents. */ 467 | 468 | typedef struct { 469 | Time time; 470 | short x, y; 471 | } XTimeCoord; 472 | 473 | /* Data structure for X{Set,Get}ModifierMapping */ 474 | 475 | typedef struct { 476 | int max_keypermod; /* The server's max # of keys per modifier */ 477 | KeyCode *modifiermap; /* An 8 by max_keypermod array of modifiers */ 478 | } XModifierKeymap; 479 | 480 | 481 | /* 482 | * Display datatype maintaining display specific data. 483 | * The contents of this structure are implementation dependent. 484 | * A Display should be treated as opaque by application code. 485 | */ 486 | #ifndef XLIB_ILLEGAL_ACCESS 487 | typedef struct _XDisplay Display; 488 | #endif 489 | 490 | struct _XPrivate; /* Forward declare before use for C++ */ 491 | struct _XrmHashBucketRec; 492 | 493 | typedef struct 494 | #ifdef XLIB_ILLEGAL_ACCESS 495 | _XDisplay 496 | #endif 497 | { 498 | XExtData *ext_data; /* hook for extension to hang data */ 499 | struct _XPrivate *private1; 500 | int fd; /* Network socket. */ 501 | int private2; 502 | int proto_major_version;/* major version of server's X protocol */ 503 | int proto_minor_version;/* minor version of servers X protocol */ 504 | char *vendor; /* vendor of the server hardware */ 505 | XID private3; 506 | XID private4; 507 | XID private5; 508 | int private6; 509 | XID (*resource_alloc)( /* allocator function */ 510 | struct _XDisplay* 511 | ); 512 | int byte_order; /* screen byte order, LSBFirst, MSBFirst */ 513 | int bitmap_unit; /* padding and data requirements */ 514 | int bitmap_pad; /* padding requirements on bitmaps */ 515 | int bitmap_bit_order; /* LeastSignificant or MostSignificant */ 516 | int nformats; /* number of pixmap formats in list */ 517 | ScreenFormat *pixmap_format; /* pixmap format list */ 518 | int private8; 519 | int release; /* release of the server */ 520 | struct _XPrivate *private9, *private10; 521 | int qlen; /* Length of input event queue */ 522 | unsigned long last_request_read; /* seq number of last event read */ 523 | unsigned long request; /* sequence number of last request. */ 524 | XPointer private11; 525 | XPointer private12; 526 | XPointer private13; 527 | XPointer private14; 528 | unsigned max_request_size; /* maximum number 32 bit words in request*/ 529 | struct _XrmHashBucketRec *db; 530 | int (*private15)( 531 | struct _XDisplay* 532 | ); 533 | char *display_name; /* "host:display" string used on this connect*/ 534 | int default_screen; /* default screen for operations */ 535 | int nscreens; /* number of screens on this server*/ 536 | Screen *screens; /* pointer to list of screens */ 537 | unsigned long motion_buffer; /* size of motion buffer */ 538 | unsigned long private16; 539 | int min_keycode; /* minimum defined keycode */ 540 | int max_keycode; /* maximum defined keycode */ 541 | XPointer private17; 542 | XPointer private18; 543 | int private19; 544 | char *xdefaults; /* contents of defaults from server */ 545 | /* there is more to this structure, but it is private to Xlib */ 546 | } 547 | #ifdef XLIB_ILLEGAL_ACCESS 548 | Display, 549 | #endif 550 | *_XPrivDisplay; 551 | 552 | #undef _XEVENT_ 553 | #ifndef _XEVENT_ 554 | /* 555 | * Definitions of specific events. 556 | */ 557 | typedef struct { 558 | int type; /* of event */ 559 | unsigned long serial; /* # of last request processed by server */ 560 | Bool send_event; /* true if this came from a SendEvent request */ 561 | Display *display; /* Display the event was read from */ 562 | Window window; /* "event" window it is reported relative to */ 563 | Window root; /* root window that the event occurred on */ 564 | Window subwindow; /* child window */ 565 | Time time; /* milliseconds */ 566 | int x, y; /* pointer x, y coordinates in event window */ 567 | int x_root, y_root; /* coordinates relative to root */ 568 | unsigned int state; /* key or button mask */ 569 | unsigned int keycode; /* detail */ 570 | Bool same_screen; /* same screen flag */ 571 | } XKeyEvent; 572 | typedef XKeyEvent XKeyPressedEvent; 573 | typedef XKeyEvent XKeyReleasedEvent; 574 | 575 | typedef struct { 576 | int type; /* of event */ 577 | unsigned long serial; /* # of last request processed by server */ 578 | Bool send_event; /* true if this came from a SendEvent request */ 579 | Display *display; /* Display the event was read from */ 580 | Window window; /* "event" window it is reported relative to */ 581 | Window root; /* root window that the event occurred on */ 582 | Window subwindow; /* child window */ 583 | Time time; /* milliseconds */ 584 | int x, y; /* pointer x, y coordinates in event window */ 585 | int x_root, y_root; /* coordinates relative to root */ 586 | unsigned int state; /* key or button mask */ 587 | unsigned int button; /* detail */ 588 | Bool same_screen; /* same screen flag */ 589 | } XButtonEvent; 590 | typedef XButtonEvent XButtonPressedEvent; 591 | typedef XButtonEvent XButtonReleasedEvent; 592 | 593 | typedef struct { 594 | int type; /* of event */ 595 | unsigned long serial; /* # of last request processed by server */ 596 | Bool send_event; /* true if this came from a SendEvent request */ 597 | Display *display; /* Display the event was read from */ 598 | Window window; /* "event" window reported relative to */ 599 | Window root; /* root window that the event occurred on */ 600 | Window subwindow; /* child window */ 601 | Time time; /* milliseconds */ 602 | int x, y; /* pointer x, y coordinates in event window */ 603 | int x_root, y_root; /* coordinates relative to root */ 604 | unsigned int state; /* key or button mask */ 605 | char is_hint; /* detail */ 606 | Bool same_screen; /* same screen flag */ 607 | } XMotionEvent; 608 | typedef XMotionEvent XPointerMovedEvent; 609 | 610 | typedef struct { 611 | int type; /* of event */ 612 | unsigned long serial; /* # of last request processed by server */ 613 | Bool send_event; /* true if this came from a SendEvent request */ 614 | Display *display; /* Display the event was read from */ 615 | Window window; /* "event" window reported relative to */ 616 | Window root; /* root window that the event occurred on */ 617 | Window subwindow; /* child window */ 618 | Time time; /* milliseconds */ 619 | int x, y; /* pointer x, y coordinates in event window */ 620 | int x_root, y_root; /* coordinates relative to root */ 621 | int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */ 622 | int detail; 623 | /* 624 | * NotifyAncestor, NotifyVirtual, NotifyInferior, 625 | * NotifyNonlinear,NotifyNonlinearVirtual 626 | */ 627 | Bool same_screen; /* same screen flag */ 628 | Bool focus; /* boolean focus */ 629 | unsigned int state; /* key or button mask */ 630 | } XCrossingEvent; 631 | typedef XCrossingEvent XEnterWindowEvent; 632 | typedef XCrossingEvent XLeaveWindowEvent; 633 | 634 | typedef struct { 635 | int type; /* FocusIn or FocusOut */ 636 | unsigned long serial; /* # of last request processed by server */ 637 | Bool send_event; /* true if this came from a SendEvent request */ 638 | Display *display; /* Display the event was read from */ 639 | Window window; /* window of event */ 640 | int mode; /* NotifyNormal, NotifyWhileGrabbed, 641 | NotifyGrab, NotifyUngrab */ 642 | int detail; 643 | /* 644 | * NotifyAncestor, NotifyVirtual, NotifyInferior, 645 | * NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer, 646 | * NotifyPointerRoot, NotifyDetailNone 647 | */ 648 | } XFocusChangeEvent; 649 | typedef XFocusChangeEvent XFocusInEvent; 650 | typedef XFocusChangeEvent XFocusOutEvent; 651 | 652 | /* generated on EnterWindow and FocusIn when KeyMapState selected */ 653 | typedef struct { 654 | int type; 655 | unsigned long serial; /* # of last request processed by server */ 656 | Bool send_event; /* true if this came from a SendEvent request */ 657 | Display *display; /* Display the event was read from */ 658 | Window window; 659 | char key_vector[32]; 660 | } XKeymapEvent; 661 | 662 | typedef struct { 663 | int type; 664 | unsigned long serial; /* # of last request processed by server */ 665 | Bool send_event; /* true if this came from a SendEvent request */ 666 | Display *display; /* Display the event was read from */ 667 | Window window; 668 | int x, y; 669 | int width, height; 670 | int count; /* if non-zero, at least this many more */ 671 | } XExposeEvent; 672 | 673 | typedef struct { 674 | int type; 675 | unsigned long serial; /* # of last request processed by server */ 676 | Bool send_event; /* true if this came from a SendEvent request */ 677 | Display *display; /* Display the event was read from */ 678 | Drawable drawable; 679 | int x, y; 680 | int width, height; 681 | int count; /* if non-zero, at least this many more */ 682 | int major_code; /* core is CopyArea or CopyPlane */ 683 | int minor_code; /* not defined in the core */ 684 | } XGraphicsExposeEvent; 685 | 686 | typedef struct { 687 | int type; 688 | unsigned long serial; /* # of last request processed by server */ 689 | Bool send_event; /* true if this came from a SendEvent request */ 690 | Display *display; /* Display the event was read from */ 691 | Drawable drawable; 692 | int major_code; /* core is CopyArea or CopyPlane */ 693 | int minor_code; /* not defined in the core */ 694 | } XNoExposeEvent; 695 | 696 | typedef struct { 697 | int type; 698 | unsigned long serial; /* # of last request processed by server */ 699 | Bool send_event; /* true if this came from a SendEvent request */ 700 | Display *display; /* Display the event was read from */ 701 | Window window; 702 | int state; /* Visibility state */ 703 | } XVisibilityEvent; 704 | 705 | typedef struct { 706 | int type; 707 | unsigned long serial; /* # of last request processed by server */ 708 | Bool send_event; /* true if this came from a SendEvent request */ 709 | Display *display; /* Display the event was read from */ 710 | Window parent; /* parent of the window */ 711 | Window window; /* window id of window created */ 712 | int x, y; /* window location */ 713 | int width, height; /* size of window */ 714 | int border_width; /* border width */ 715 | Bool override_redirect; /* creation should be overridden */ 716 | } XCreateWindowEvent; 717 | 718 | typedef struct { 719 | int type; 720 | unsigned long serial; /* # of last request processed by server */ 721 | Bool send_event; /* true if this came from a SendEvent request */ 722 | Display *display; /* Display the event was read from */ 723 | Window event; 724 | Window window; 725 | } XDestroyWindowEvent; 726 | 727 | typedef struct { 728 | int type; 729 | unsigned long serial; /* # of last request processed by server */ 730 | Bool send_event; /* true if this came from a SendEvent request */ 731 | Display *display; /* Display the event was read from */ 732 | Window event; 733 | Window window; 734 | Bool from_configure; 735 | } XUnmapEvent; 736 | 737 | typedef struct { 738 | int type; 739 | unsigned long serial; /* # of last request processed by server */ 740 | Bool send_event; /* true if this came from a SendEvent request */ 741 | Display *display; /* Display the event was read from */ 742 | Window event; 743 | Window window; 744 | Bool override_redirect; /* boolean, is override set... */ 745 | } XMapEvent; 746 | 747 | typedef struct { 748 | int type; 749 | unsigned long serial; /* # of last request processed by server */ 750 | Bool send_event; /* true if this came from a SendEvent request */ 751 | Display *display; /* Display the event was read from */ 752 | Window parent; 753 | Window window; 754 | } XMapRequestEvent; 755 | 756 | typedef struct { 757 | int type; 758 | unsigned long serial; /* # of last request processed by server */ 759 | Bool send_event; /* true if this came from a SendEvent request */ 760 | Display *display; /* Display the event was read from */ 761 | Window event; 762 | Window window; 763 | Window parent; 764 | int x, y; 765 | Bool override_redirect; 766 | } XReparentEvent; 767 | 768 | typedef struct { 769 | int type; 770 | unsigned long serial; /* # of last request processed by server */ 771 | Bool send_event; /* true if this came from a SendEvent request */ 772 | Display *display; /* Display the event was read from */ 773 | Window event; 774 | Window window; 775 | int x, y; 776 | int width, height; 777 | int border_width; 778 | Window above; 779 | Bool override_redirect; 780 | } XConfigureEvent; 781 | 782 | typedef struct { 783 | int type; 784 | unsigned long serial; /* # of last request processed by server */ 785 | Bool send_event; /* true if this came from a SendEvent request */ 786 | Display *display; /* Display the event was read from */ 787 | Window event; 788 | Window window; 789 | int x, y; 790 | } XGravityEvent; 791 | 792 | typedef struct { 793 | int type; 794 | unsigned long serial; /* # of last request processed by server */ 795 | Bool send_event; /* true if this came from a SendEvent request */ 796 | Display *display; /* Display the event was read from */ 797 | Window window; 798 | int width, height; 799 | } XResizeRequestEvent; 800 | 801 | typedef struct { 802 | int type; 803 | unsigned long serial; /* # of last request processed by server */ 804 | Bool send_event; /* true if this came from a SendEvent request */ 805 | Display *display; /* Display the event was read from */ 806 | Window parent; 807 | Window window; 808 | int x, y; 809 | int width, height; 810 | int border_width; 811 | Window above; 812 | int detail; /* Above, Below, TopIf, BottomIf, Opposite */ 813 | unsigned long value_mask; 814 | } XConfigureRequestEvent; 815 | 816 | typedef struct { 817 | int type; 818 | unsigned long serial; /* # of last request processed by server */ 819 | Bool send_event; /* true if this came from a SendEvent request */ 820 | Display *display; /* Display the event was read from */ 821 | Window event; 822 | Window window; 823 | int place; /* PlaceOnTop, PlaceOnBottom */ 824 | } XCirculateEvent; 825 | 826 | typedef struct { 827 | int type; 828 | unsigned long serial; /* # of last request processed by server */ 829 | Bool send_event; /* true if this came from a SendEvent request */ 830 | Display *display; /* Display the event was read from */ 831 | Window parent; 832 | Window window; 833 | int place; /* PlaceOnTop, PlaceOnBottom */ 834 | } XCirculateRequestEvent; 835 | 836 | typedef struct { 837 | int type; 838 | unsigned long serial; /* # of last request processed by server */ 839 | Bool send_event; /* true if this came from a SendEvent request */ 840 | Display *display; /* Display the event was read from */ 841 | Window window; 842 | Atom atom; 843 | Time time; 844 | int state; /* NewValue, Deleted */ 845 | } XPropertyEvent; 846 | 847 | typedef struct { 848 | int type; 849 | unsigned long serial; /* # of last request processed by server */ 850 | Bool send_event; /* true if this came from a SendEvent request */ 851 | Display *display; /* Display the event was read from */ 852 | Window window; 853 | Atom selection; 854 | Time time; 855 | } XSelectionClearEvent; 856 | 857 | typedef struct { 858 | int type; 859 | unsigned long serial; /* # of last request processed by server */ 860 | Bool send_event; /* true if this came from a SendEvent request */ 861 | Display *display; /* Display the event was read from */ 862 | Window owner; 863 | Window requestor; 864 | Atom selection; 865 | Atom target; 866 | Atom property; 867 | Time time; 868 | } XSelectionRequestEvent; 869 | 870 | typedef struct { 871 | int type; 872 | unsigned long serial; /* # of last request processed by server */ 873 | Bool send_event; /* true if this came from a SendEvent request */ 874 | Display *display; /* Display the event was read from */ 875 | Window requestor; 876 | Atom selection; 877 | Atom target; 878 | Atom property; /* ATOM or None */ 879 | Time time; 880 | } XSelectionEvent; 881 | 882 | typedef struct { 883 | int type; 884 | unsigned long serial; /* # of last request processed by server */ 885 | Bool send_event; /* true if this came from a SendEvent request */ 886 | Display *display; /* Display the event was read from */ 887 | Window window; 888 | Colormap colormap; /* COLORMAP or None */ 889 | #if defined(__cplusplus) || defined(c_plusplus) 890 | Bool c_new; /* C++ */ 891 | #else 892 | Bool new; 893 | #endif 894 | int state; /* ColormapInstalled, ColormapUninstalled */ 895 | } XColormapEvent; 896 | 897 | typedef struct { 898 | int type; 899 | unsigned long serial; /* # of last request processed by server */ 900 | Bool send_event; /* true if this came from a SendEvent request */ 901 | Display *display; /* Display the event was read from */ 902 | Window window; 903 | Atom message_type; 904 | int format; 905 | union { 906 | char b[20]; 907 | short s[10]; 908 | long l[5]; 909 | } data; 910 | } XClientMessageEvent; 911 | 912 | typedef struct { 913 | int type; 914 | unsigned long serial; /* # of last request processed by server */ 915 | Bool send_event; /* true if this came from a SendEvent request */ 916 | Display *display; /* Display the event was read from */ 917 | Window window; /* unused */ 918 | int request; /* one of MappingModifier, MappingKeyboard, 919 | MappingPointer */ 920 | int first_keycode; /* first keycode */ 921 | int count; /* defines range of change w. first_keycode*/ 922 | } XMappingEvent; 923 | 924 | typedef struct { 925 | int type; 926 | Display *display; /* Display the event was read from */ 927 | XID resourceid; /* resource id */ 928 | unsigned long serial; /* serial number of failed request */ 929 | unsigned char error_code; /* error code of failed request */ 930 | unsigned char request_code; /* Major op-code of failed request */ 931 | unsigned char minor_code; /* Minor op-code of failed request */ 932 | } XErrorEvent; 933 | 934 | typedef struct { 935 | int type; 936 | unsigned long serial; /* # of last request processed by server */ 937 | Bool send_event; /* true if this came from a SendEvent request */ 938 | Display *display;/* Display the event was read from */ 939 | Window window; /* window on which event was requested in event mask */ 940 | } XAnyEvent; 941 | 942 | 943 | /*************************************************************** 944 | * 945 | * GenericEvent. This event is the standard event for all newer extensions. 946 | */ 947 | 948 | typedef struct 949 | { 950 | int type; /* of event. Always GenericEvent */ 951 | unsigned long serial; /* # of last request processed */ 952 | Bool send_event; /* true if from SendEvent request */ 953 | Display *display; /* Display the event was read from */ 954 | int extension; /* major opcode of extension that caused the event */ 955 | int evtype; /* actual event type. */ 956 | } XGenericEvent; 957 | 958 | typedef struct { 959 | int type; /* of event. Always GenericEvent */ 960 | unsigned long serial; /* # of last request processed */ 961 | Bool send_event; /* true if from SendEvent request */ 962 | Display *display; /* Display the event was read from */ 963 | int extension; /* major opcode of extension that caused the event */ 964 | int evtype; /* actual event type. */ 965 | unsigned int cookie; 966 | void *data; 967 | } XGenericEventCookie; 968 | 969 | /* 970 | * this union is defined so Xlib can always use the same sized 971 | * event structure internally, to avoid memory fragmentation. 972 | */ 973 | typedef union _XEvent { 974 | int type; /* must not be changed; first element */ 975 | XAnyEvent xany; 976 | XKeyEvent xkey; 977 | XButtonEvent xbutton; 978 | XMotionEvent xmotion; 979 | XCrossingEvent xcrossing; 980 | XFocusChangeEvent xfocus; 981 | XExposeEvent xexpose; 982 | XGraphicsExposeEvent xgraphicsexpose; 983 | XNoExposeEvent xnoexpose; 984 | XVisibilityEvent xvisibility; 985 | XCreateWindowEvent xcreatewindow; 986 | XDestroyWindowEvent xdestroywindow; 987 | XUnmapEvent xunmap; 988 | XMapEvent xmap; 989 | XMapRequestEvent xmaprequest; 990 | XReparentEvent xreparent; 991 | XConfigureEvent xconfigure; 992 | XGravityEvent xgravity; 993 | XResizeRequestEvent xresizerequest; 994 | XConfigureRequestEvent xconfigurerequest; 995 | XCirculateEvent xcirculate; 996 | XCirculateRequestEvent xcirculaterequest; 997 | XPropertyEvent xproperty; 998 | XSelectionClearEvent xselectionclear; 999 | XSelectionRequestEvent xselectionrequest; 1000 | XSelectionEvent xselection; 1001 | XColormapEvent xcolormap; 1002 | XClientMessageEvent xclient; 1003 | XMappingEvent xmapping; 1004 | XErrorEvent xerror; 1005 | XKeymapEvent xkeymap; 1006 | XGenericEvent xgeneric; 1007 | XGenericEventCookie xcookie; 1008 | long pad[24]; 1009 | } XEvent; 1010 | #endif 1011 | 1012 | #define XAllocID(dpy) ((*((_XPrivDisplay)(dpy))->resource_alloc)((dpy))) 1013 | 1014 | /* 1015 | * per character font metric information. 1016 | */ 1017 | typedef struct { 1018 | short lbearing; /* origin to left edge of raster */ 1019 | short rbearing; /* origin to right edge of raster */ 1020 | short width; /* advance to next char's origin */ 1021 | short ascent; /* baseline to top edge of raster */ 1022 | short descent; /* baseline to bottom edge of raster */ 1023 | unsigned short attributes; /* per char flags (not predefined) */ 1024 | } XCharStruct; 1025 | 1026 | /* 1027 | * To allow arbitrary information with fonts, there are additional properties 1028 | * returned. 1029 | */ 1030 | typedef struct { 1031 | Atom name; 1032 | unsigned long card32; 1033 | } XFontProp; 1034 | 1035 | typedef struct { 1036 | XExtData *ext_data; /* hook for extension to hang data */ 1037 | Font fid; /* Font id for this font */ 1038 | unsigned direction; /* hint about direction the font is painted */ 1039 | unsigned min_char_or_byte2;/* first character */ 1040 | unsigned max_char_or_byte2;/* last character */ 1041 | unsigned min_byte1; /* first row that exists */ 1042 | unsigned max_byte1; /* last row that exists */ 1043 | Bool all_chars_exist;/* flag if all characters have non-zero size*/ 1044 | unsigned default_char; /* char to print for undefined character */ 1045 | int n_properties; /* how many properties there are */ 1046 | XFontProp *properties; /* pointer to array of additional properties*/ 1047 | XCharStruct min_bounds; /* minimum bounds over all existing char*/ 1048 | XCharStruct max_bounds; /* maximum bounds over all existing char*/ 1049 | XCharStruct *per_char; /* first_char to last_char information */ 1050 | int ascent; /* log. extent above baseline for spacing */ 1051 | int descent; /* log. descent below baseline for spacing */ 1052 | } XFontStruct; 1053 | 1054 | /* 1055 | * PolyText routines take these as arguments. 1056 | */ 1057 | typedef struct { 1058 | char *chars; /* pointer to string */ 1059 | int nchars; /* number of characters */ 1060 | int delta; /* delta between strings */ 1061 | Font font; /* font to print it in, None don't change */ 1062 | } XTextItem; 1063 | 1064 | typedef struct { /* normal 16 bit characters are two bytes */ 1065 | unsigned char byte1; 1066 | unsigned char byte2; 1067 | } XChar2b; 1068 | 1069 | typedef struct { 1070 | XChar2b *chars; /* two byte characters */ 1071 | int nchars; /* number of characters */ 1072 | int delta; /* delta between strings */ 1073 | Font font; /* font to print it in, None don't change */ 1074 | } XTextItem16; 1075 | 1076 | 1077 | typedef union { Display *display; 1078 | GC gc; 1079 | Visual *visual; 1080 | Screen *screen; 1081 | ScreenFormat *pixmap_format; 1082 | XFontStruct *font; } XEDataObject; 1083 | 1084 | typedef struct { 1085 | XRectangle max_ink_extent; 1086 | XRectangle max_logical_extent; 1087 | } XFontSetExtents; 1088 | 1089 | /* unused: 1090 | typedef void (*XOMProc)(); 1091 | */ 1092 | 1093 | typedef struct _XOM *XOM; 1094 | typedef struct _XOC *XOC, *XFontSet; 1095 | 1096 | typedef struct { 1097 | char *chars; 1098 | int nchars; 1099 | int delta; 1100 | XFontSet font_set; 1101 | } XmbTextItem; 1102 | 1103 | typedef struct { 1104 | wchar_t *chars; 1105 | int nchars; 1106 | int delta; 1107 | XFontSet font_set; 1108 | } XwcTextItem; 1109 | 1110 | #define XNRequiredCharSet "requiredCharSet" 1111 | #define XNQueryOrientation "queryOrientation" 1112 | #define XNBaseFontName "baseFontName" 1113 | #define XNOMAutomatic "omAutomatic" 1114 | #define XNMissingCharSet "missingCharSet" 1115 | #define XNDefaultString "defaultString" 1116 | #define XNOrientation "orientation" 1117 | #define XNDirectionalDependentDrawing "directionalDependentDrawing" 1118 | #define XNContextualDrawing "contextualDrawing" 1119 | #define XNFontInfo "fontInfo" 1120 | 1121 | typedef struct { 1122 | int charset_count; 1123 | char **charset_list; 1124 | } XOMCharSetList; 1125 | 1126 | typedef enum { 1127 | XOMOrientation_LTR_TTB, 1128 | XOMOrientation_RTL_TTB, 1129 | XOMOrientation_TTB_LTR, 1130 | XOMOrientation_TTB_RTL, 1131 | XOMOrientation_Context 1132 | } XOrientation; 1133 | 1134 | typedef struct { 1135 | int num_orientation; 1136 | XOrientation *orientation; /* Input Text description */ 1137 | } XOMOrientation; 1138 | 1139 | typedef struct { 1140 | int num_font; 1141 | XFontStruct **font_struct_list; 1142 | char **font_name_list; 1143 | } XOMFontInfo; 1144 | 1145 | typedef struct _XIM *XIM; 1146 | typedef struct _XIC *XIC; 1147 | 1148 | typedef void (*XIMProc)( 1149 | XIM, 1150 | XPointer, 1151 | XPointer 1152 | ); 1153 | 1154 | typedef Bool (*XICProc)( 1155 | XIC, 1156 | XPointer, 1157 | XPointer 1158 | ); 1159 | 1160 | typedef void (*XIDProc)( 1161 | Display*, 1162 | XPointer, 1163 | XPointer 1164 | ); 1165 | 1166 | typedef unsigned long XIMStyle; 1167 | 1168 | typedef struct { 1169 | unsigned short count_styles; 1170 | XIMStyle *supported_styles; 1171 | } XIMStyles; 1172 | 1173 | #define XIMPreeditArea 0x0001L 1174 | #define XIMPreeditCallbacks 0x0002L 1175 | #define XIMPreeditPosition 0x0004L 1176 | #define XIMPreeditNothing 0x0008L 1177 | #define XIMPreeditNone 0x0010L 1178 | #define XIMStatusArea 0x0100L 1179 | #define XIMStatusCallbacks 0x0200L 1180 | #define XIMStatusNothing 0x0400L 1181 | #define XIMStatusNone 0x0800L 1182 | 1183 | #define XNVaNestedList "XNVaNestedList" 1184 | #define XNQueryInputStyle "queryInputStyle" 1185 | #define XNClientWindow "clientWindow" 1186 | #define XNInputStyle "inputStyle" 1187 | #define XNFocusWindow "focusWindow" 1188 | #define XNResourceName "resourceName" 1189 | #define XNResourceClass "resourceClass" 1190 | #define XNGeometryCallback "geometryCallback" 1191 | #define XNDestroyCallback "destroyCallback" 1192 | #define XNFilterEvents "filterEvents" 1193 | #define XNPreeditStartCallback "preeditStartCallback" 1194 | #define XNPreeditDoneCallback "preeditDoneCallback" 1195 | #define XNPreeditDrawCallback "preeditDrawCallback" 1196 | #define XNPreeditCaretCallback "preeditCaretCallback" 1197 | #define XNPreeditStateNotifyCallback "preeditStateNotifyCallback" 1198 | #define XNPreeditAttributes "preeditAttributes" 1199 | #define XNStatusStartCallback "statusStartCallback" 1200 | #define XNStatusDoneCallback "statusDoneCallback" 1201 | #define XNStatusDrawCallback "statusDrawCallback" 1202 | #define XNStatusAttributes "statusAttributes" 1203 | #define XNArea "area" 1204 | #define XNAreaNeeded "areaNeeded" 1205 | #define XNSpotLocation "spotLocation" 1206 | #define XNColormap "colorMap" 1207 | #define XNStdColormap "stdColorMap" 1208 | #define XNForeground "foreground" 1209 | #define XNBackground "background" 1210 | #define XNBackgroundPixmap "backgroundPixmap" 1211 | #define XNFontSet "fontSet" 1212 | #define XNLineSpace "lineSpace" 1213 | #define XNCursor "cursor" 1214 | 1215 | #define XNQueryIMValuesList "queryIMValuesList" 1216 | #define XNQueryICValuesList "queryICValuesList" 1217 | #define XNVisiblePosition "visiblePosition" 1218 | #define XNR6PreeditCallback "r6PreeditCallback" 1219 | #define XNStringConversionCallback "stringConversionCallback" 1220 | #define XNStringConversion "stringConversion" 1221 | #define XNResetState "resetState" 1222 | #define XNHotKey "hotKey" 1223 | #define XNHotKeyState "hotKeyState" 1224 | #define XNPreeditState "preeditState" 1225 | #define XNSeparatorofNestedList "separatorofNestedList" 1226 | 1227 | #define XBufferOverflow -1 1228 | #define XLookupNone 1 1229 | #define XLookupChars 2 1230 | #define XLookupKeySym 3 1231 | #define XLookupBoth 4 1232 | 1233 | typedef void *XVaNestedList; 1234 | 1235 | typedef struct { 1236 | XPointer client_data; 1237 | XIMProc callback; 1238 | } XIMCallback; 1239 | 1240 | typedef struct { 1241 | XPointer client_data; 1242 | XICProc callback; 1243 | } XICCallback; 1244 | 1245 | typedef unsigned long XIMFeedback; 1246 | 1247 | #define XIMReverse 1L 1248 | #define XIMUnderline (1L<<1) 1249 | #define XIMHighlight (1L<<2) 1250 | #define XIMPrimary (1L<<5) 1251 | #define XIMSecondary (1L<<6) 1252 | #define XIMTertiary (1L<<7) 1253 | #define XIMVisibleToForward (1L<<8) 1254 | #define XIMVisibleToBackword (1L<<9) 1255 | #define XIMVisibleToCenter (1L<<10) 1256 | 1257 | typedef struct _XIMText { 1258 | unsigned short length; 1259 | XIMFeedback *feedback; 1260 | Bool encoding_is_wchar; 1261 | union { 1262 | char *multi_byte; 1263 | wchar_t *wide_char; 1264 | } string; 1265 | } XIMText; 1266 | 1267 | typedef unsigned long XIMPreeditState; 1268 | 1269 | #define XIMPreeditUnKnown 0L 1270 | #define XIMPreeditEnable 1L 1271 | #define XIMPreeditDisable (1L<<1) 1272 | 1273 | typedef struct _XIMPreeditStateNotifyCallbackStruct { 1274 | XIMPreeditState state; 1275 | } XIMPreeditStateNotifyCallbackStruct; 1276 | 1277 | typedef unsigned long XIMResetState; 1278 | 1279 | #define XIMInitialState 1L 1280 | #define XIMPreserveState (1L<<1) 1281 | 1282 | typedef unsigned long XIMStringConversionFeedback; 1283 | 1284 | #define XIMStringConversionLeftEdge (0x00000001) 1285 | #define XIMStringConversionRightEdge (0x00000002) 1286 | #define XIMStringConversionTopEdge (0x00000004) 1287 | #define XIMStringConversionBottomEdge (0x00000008) 1288 | #define XIMStringConversionConcealed (0x00000010) 1289 | #define XIMStringConversionWrapped (0x00000020) 1290 | 1291 | typedef struct _XIMStringConversionText { 1292 | unsigned short length; 1293 | XIMStringConversionFeedback *feedback; 1294 | Bool encoding_is_wchar; 1295 | union { 1296 | char *mbs; 1297 | wchar_t *wcs; 1298 | } string; 1299 | } XIMStringConversionText; 1300 | 1301 | typedef unsigned short XIMStringConversionPosition; 1302 | 1303 | typedef unsigned short XIMStringConversionType; 1304 | 1305 | #define XIMStringConversionBuffer (0x0001) 1306 | #define XIMStringConversionLine (0x0002) 1307 | #define XIMStringConversionWord (0x0003) 1308 | #define XIMStringConversionChar (0x0004) 1309 | 1310 | typedef unsigned short XIMStringConversionOperation; 1311 | 1312 | #define XIMStringConversionSubstitution (0x0001) 1313 | #define XIMStringConversionRetrieval (0x0002) 1314 | 1315 | typedef enum { 1316 | XIMForwardChar, XIMBackwardChar, 1317 | XIMForwardWord, XIMBackwardWord, 1318 | XIMCaretUp, XIMCaretDown, 1319 | XIMNextLine, XIMPreviousLine, 1320 | XIMLineStart, XIMLineEnd, 1321 | XIMAbsolutePosition, 1322 | XIMDontChange 1323 | } XIMCaretDirection; 1324 | 1325 | typedef struct _XIMStringConversionCallbackStruct { 1326 | XIMStringConversionPosition position; 1327 | XIMCaretDirection direction; 1328 | XIMStringConversionOperation operation; 1329 | unsigned short factor; 1330 | XIMStringConversionText *text; 1331 | } XIMStringConversionCallbackStruct; 1332 | 1333 | typedef struct _XIMPreeditDrawCallbackStruct { 1334 | int caret; /* Cursor offset within pre-edit string */ 1335 | int chg_first; /* Starting change position */ 1336 | int chg_length; /* Length of the change in character count */ 1337 | XIMText *text; 1338 | } XIMPreeditDrawCallbackStruct; 1339 | 1340 | typedef enum { 1341 | XIMIsInvisible, /* Disable caret feedback */ 1342 | XIMIsPrimary, /* UI defined caret feedback */ 1343 | XIMIsSecondary /* UI defined caret feedback */ 1344 | } XIMCaretStyle; 1345 | 1346 | typedef struct _XIMPreeditCaretCallbackStruct { 1347 | int position; /* Caret offset within pre-edit string */ 1348 | XIMCaretDirection direction; /* Caret moves direction */ 1349 | XIMCaretStyle style; /* Feedback of the caret */ 1350 | } XIMPreeditCaretCallbackStruct; 1351 | 1352 | typedef enum { 1353 | XIMTextType, 1354 | XIMBitmapType 1355 | } XIMStatusDataType; 1356 | 1357 | typedef struct _XIMStatusDrawCallbackStruct { 1358 | XIMStatusDataType type; 1359 | union { 1360 | XIMText *text; 1361 | Pixmap bitmap; 1362 | } data; 1363 | } XIMStatusDrawCallbackStruct; 1364 | 1365 | typedef struct _XIMHotKeyTrigger { 1366 | KeySym keysym; 1367 | int modifier; 1368 | int modifier_mask; 1369 | } XIMHotKeyTrigger; 1370 | 1371 | typedef struct _XIMHotKeyTriggers { 1372 | int num_hot_key; 1373 | XIMHotKeyTrigger *key; 1374 | } XIMHotKeyTriggers; 1375 | 1376 | typedef unsigned long XIMHotKeyState; 1377 | 1378 | #define XIMHotKeyStateON (0x0001L) 1379 | #define XIMHotKeyStateOFF (0x0002L) 1380 | 1381 | typedef struct { 1382 | unsigned short count_values; 1383 | char **supported_values; 1384 | } XIMValuesList; 1385 | 1386 | _XFUNCPROTOBEGIN 1387 | 1388 | #if defined(WIN32) && !defined(_XLIBINT_) 1389 | #define _Xdebug (*_Xdebug_p) 1390 | #endif 1391 | 1392 | extern int _Xdebug; 1393 | 1394 | extern XFontStruct *XLoadQueryFont( 1395 | Display* /* display */, 1396 | _Xconst char* /* name */ 1397 | ); 1398 | 1399 | extern XFontStruct *XQueryFont( 1400 | Display* /* display */, 1401 | XID /* font_ID */ 1402 | ); 1403 | 1404 | 1405 | extern XTimeCoord *XGetMotionEvents( 1406 | Display* /* display */, 1407 | Window /* w */, 1408 | Time /* start */, 1409 | Time /* stop */, 1410 | int* /* nevents_return */ 1411 | ); 1412 | 1413 | extern XModifierKeymap *XDeleteModifiermapEntry( 1414 | XModifierKeymap* /* modmap */, 1415 | #if NeedWidePrototypes 1416 | unsigned int /* keycode_entry */, 1417 | #else 1418 | KeyCode /* keycode_entry */, 1419 | #endif 1420 | int /* modifier */ 1421 | ); 1422 | 1423 | extern XModifierKeymap *XGetModifierMapping( 1424 | Display* /* display */ 1425 | ); 1426 | 1427 | extern XModifierKeymap *XInsertModifiermapEntry( 1428 | XModifierKeymap* /* modmap */, 1429 | #if NeedWidePrototypes 1430 | unsigned int /* keycode_entry */, 1431 | #else 1432 | KeyCode /* keycode_entry */, 1433 | #endif 1434 | int /* modifier */ 1435 | ); 1436 | 1437 | extern XModifierKeymap *XNewModifiermap( 1438 | int /* max_keys_per_mod */ 1439 | ); 1440 | 1441 | extern XImage *XCreateImage( 1442 | Display* /* display */, 1443 | Visual* /* visual */, 1444 | unsigned int /* depth */, 1445 | int /* format */, 1446 | int /* offset */, 1447 | char* /* data */, 1448 | unsigned int /* width */, 1449 | unsigned int /* height */, 1450 | int /* bitmap_pad */, 1451 | int /* bytes_per_line */ 1452 | ); 1453 | extern Status XInitImage( 1454 | XImage* /* image */ 1455 | ); 1456 | extern XImage *XGetImage( 1457 | Display* /* display */, 1458 | Drawable /* d */, 1459 | int /* x */, 1460 | int /* y */, 1461 | unsigned int /* width */, 1462 | unsigned int /* height */, 1463 | unsigned long /* plane_mask */, 1464 | int /* format */ 1465 | ); 1466 | extern XImage *XGetSubImage( 1467 | Display* /* display */, 1468 | Drawable /* d */, 1469 | int /* x */, 1470 | int /* y */, 1471 | unsigned int /* width */, 1472 | unsigned int /* height */, 1473 | unsigned long /* plane_mask */, 1474 | int /* format */, 1475 | XImage* /* dest_image */, 1476 | int /* dest_x */, 1477 | int /* dest_y */ 1478 | ); 1479 | 1480 | /* 1481 | * X function declarations. 1482 | */ 1483 | extern Display *XOpenDisplay( 1484 | _Xconst char* /* display_name */ 1485 | ); 1486 | 1487 | extern void XrmInitialize( 1488 | void 1489 | ); 1490 | 1491 | extern char *XFetchBytes( 1492 | Display* /* display */, 1493 | int* /* nbytes_return */ 1494 | ); 1495 | extern char *XFetchBuffer( 1496 | Display* /* display */, 1497 | int* /* nbytes_return */, 1498 | int /* buffer */ 1499 | ); 1500 | extern char *XGetAtomName( 1501 | Display* /* display */, 1502 | Atom /* atom */ 1503 | ); 1504 | extern Status XGetAtomNames( 1505 | Display* /* dpy */, 1506 | Atom* /* atoms */, 1507 | int /* count */, 1508 | char** /* names_return */ 1509 | ); 1510 | extern char *XGetDefault( 1511 | Display* /* display */, 1512 | _Xconst char* /* program */, 1513 | _Xconst char* /* option */ 1514 | ); 1515 | extern char *XDisplayName( 1516 | _Xconst char* /* string */ 1517 | ); 1518 | extern char *XKeysymToString( 1519 | KeySym /* keysym */ 1520 | ); 1521 | 1522 | extern int (*XSynchronize( 1523 | Display* /* display */, 1524 | Bool /* onoff */ 1525 | ))( 1526 | Display* /* display */ 1527 | ); 1528 | extern int (*XSetAfterFunction( 1529 | Display* /* display */, 1530 | int (*) ( 1531 | Display* /* display */ 1532 | ) /* procedure */ 1533 | ))( 1534 | Display* /* display */ 1535 | ); 1536 | extern Atom XInternAtom( 1537 | Display* /* display */, 1538 | _Xconst char* /* atom_name */, 1539 | Bool /* only_if_exists */ 1540 | ); 1541 | extern Status XInternAtoms( 1542 | Display* /* dpy */, 1543 | char** /* names */, 1544 | int /* count */, 1545 | Bool /* onlyIfExists */, 1546 | Atom* /* atoms_return */ 1547 | ); 1548 | extern Colormap XCopyColormapAndFree( 1549 | Display* /* display */, 1550 | Colormap /* colormap */ 1551 | ); 1552 | extern Colormap XCreateColormap( 1553 | Display* /* display */, 1554 | Window /* w */, 1555 | Visual* /* visual */, 1556 | int /* alloc */ 1557 | ); 1558 | extern Cursor XCreatePixmapCursor( 1559 | Display* /* display */, 1560 | Pixmap /* source */, 1561 | Pixmap /* mask */, 1562 | XColor* /* foreground_color */, 1563 | XColor* /* background_color */, 1564 | unsigned int /* x */, 1565 | unsigned int /* y */ 1566 | ); 1567 | extern Cursor XCreateGlyphCursor( 1568 | Display* /* display */, 1569 | Font /* source_font */, 1570 | Font /* mask_font */, 1571 | unsigned int /* source_char */, 1572 | unsigned int /* mask_char */, 1573 | XColor _Xconst * /* foreground_color */, 1574 | XColor _Xconst * /* background_color */ 1575 | ); 1576 | extern Cursor XCreateFontCursor( 1577 | Display* /* display */, 1578 | unsigned int /* shape */ 1579 | ); 1580 | extern Font XLoadFont( 1581 | Display* /* display */, 1582 | _Xconst char* /* name */ 1583 | ); 1584 | extern GC XCreateGC( 1585 | Display* /* display */, 1586 | Drawable /* d */, 1587 | unsigned long /* valuemask */, 1588 | XGCValues* /* values */ 1589 | ); 1590 | extern GContext XGContextFromGC( 1591 | GC /* gc */ 1592 | ); 1593 | extern void XFlushGC( 1594 | Display* /* display */, 1595 | GC /* gc */ 1596 | ); 1597 | extern Pixmap XCreatePixmap( 1598 | Display* /* display */, 1599 | Drawable /* d */, 1600 | unsigned int /* width */, 1601 | unsigned int /* height */, 1602 | unsigned int /* depth */ 1603 | ); 1604 | extern Pixmap XCreateBitmapFromData( 1605 | Display* /* display */, 1606 | Drawable /* d */, 1607 | _Xconst char* /* data */, 1608 | unsigned int /* width */, 1609 | unsigned int /* height */ 1610 | ); 1611 | extern Pixmap XCreatePixmapFromBitmapData( 1612 | Display* /* display */, 1613 | Drawable /* d */, 1614 | char* /* data */, 1615 | unsigned int /* width */, 1616 | unsigned int /* height */, 1617 | unsigned long /* fg */, 1618 | unsigned long /* bg */, 1619 | unsigned int /* depth */ 1620 | ); 1621 | extern Window XCreateSimpleWindow( 1622 | Display* /* display */, 1623 | Window /* parent */, 1624 | int /* x */, 1625 | int /* y */, 1626 | unsigned int /* width */, 1627 | unsigned int /* height */, 1628 | unsigned int /* border_width */, 1629 | unsigned long /* border */, 1630 | unsigned long /* background */ 1631 | ); 1632 | extern Window XGetSelectionOwner( 1633 | Display* /* display */, 1634 | Atom /* selection */ 1635 | ); 1636 | extern Window XCreateWindow( 1637 | Display* /* display */, 1638 | Window /* parent */, 1639 | int /* x */, 1640 | int /* y */, 1641 | unsigned int /* width */, 1642 | unsigned int /* height */, 1643 | unsigned int /* border_width */, 1644 | int /* depth */, 1645 | unsigned int /* class */, 1646 | Visual* /* visual */, 1647 | unsigned long /* valuemask */, 1648 | XSetWindowAttributes* /* attributes */ 1649 | ); 1650 | extern Colormap *XListInstalledColormaps( 1651 | Display* /* display */, 1652 | Window /* w */, 1653 | int* /* num_return */ 1654 | ); 1655 | extern char **XListFonts( 1656 | Display* /* display */, 1657 | _Xconst char* /* pattern */, 1658 | int /* maxnames */, 1659 | int* /* actual_count_return */ 1660 | ); 1661 | extern char **XListFontsWithInfo( 1662 | Display* /* display */, 1663 | _Xconst char* /* pattern */, 1664 | int /* maxnames */, 1665 | int* /* count_return */, 1666 | XFontStruct** /* info_return */ 1667 | ); 1668 | extern char **XGetFontPath( 1669 | Display* /* display */, 1670 | int* /* npaths_return */ 1671 | ); 1672 | extern char **XListExtensions( 1673 | Display* /* display */, 1674 | int* /* nextensions_return */ 1675 | ); 1676 | extern Atom *XListProperties( 1677 | Display* /* display */, 1678 | Window /* w */, 1679 | int* /* num_prop_return */ 1680 | ); 1681 | extern XHostAddress *XListHosts( 1682 | Display* /* display */, 1683 | int* /* nhosts_return */, 1684 | Bool* /* state_return */ 1685 | ); 1686 | _X_DEPRECATED 1687 | extern KeySym XKeycodeToKeysym( 1688 | Display* /* display */, 1689 | #if NeedWidePrototypes 1690 | unsigned int /* keycode */, 1691 | #else 1692 | KeyCode /* keycode */, 1693 | #endif 1694 | int /* index */ 1695 | ); 1696 | extern KeySym XLookupKeysym( 1697 | XKeyEvent* /* key_event */, 1698 | int /* index */ 1699 | ); 1700 | extern KeySym *XGetKeyboardMapping( 1701 | Display* /* display */, 1702 | #if NeedWidePrototypes 1703 | unsigned int /* first_keycode */, 1704 | #else 1705 | KeyCode /* first_keycode */, 1706 | #endif 1707 | int /* keycode_count */, 1708 | int* /* keysyms_per_keycode_return */ 1709 | ); 1710 | extern KeySym XStringToKeysym( 1711 | _Xconst char* /* string */ 1712 | ); 1713 | extern long XMaxRequestSize( 1714 | Display* /* display */ 1715 | ); 1716 | extern long XExtendedMaxRequestSize( 1717 | Display* /* display */ 1718 | ); 1719 | extern char *XResourceManagerString( 1720 | Display* /* display */ 1721 | ); 1722 | extern char *XScreenResourceString( 1723 | Screen* /* screen */ 1724 | ); 1725 | extern unsigned long XDisplayMotionBufferSize( 1726 | Display* /* display */ 1727 | ); 1728 | extern VisualID XVisualIDFromVisual( 1729 | Visual* /* visual */ 1730 | ); 1731 | 1732 | /* multithread routines */ 1733 | 1734 | extern Status XInitThreads( 1735 | void 1736 | ); 1737 | 1738 | extern Status XFreeThreads( 1739 | void 1740 | ); 1741 | 1742 | extern void XLockDisplay( 1743 | Display* /* display */ 1744 | ); 1745 | 1746 | extern void XUnlockDisplay( 1747 | Display* /* display */ 1748 | ); 1749 | 1750 | /* routines for dealing with extensions */ 1751 | 1752 | extern XExtCodes *XInitExtension( 1753 | Display* /* display */, 1754 | _Xconst char* /* name */ 1755 | ); 1756 | 1757 | extern XExtCodes *XAddExtension( 1758 | Display* /* display */ 1759 | ); 1760 | extern XExtData *XFindOnExtensionList( 1761 | XExtData** /* structure */, 1762 | int /* number */ 1763 | ); 1764 | extern XExtData **XEHeadOfExtensionList( 1765 | XEDataObject /* object */ 1766 | ); 1767 | 1768 | /* these are routines for which there are also macros */ 1769 | extern Window XRootWindow( 1770 | Display* /* display */, 1771 | int /* screen_number */ 1772 | ); 1773 | extern Window XDefaultRootWindow( 1774 | Display* /* display */ 1775 | ); 1776 | extern Window XRootWindowOfScreen( 1777 | Screen* /* screen */ 1778 | ); 1779 | extern Visual *XDefaultVisual( 1780 | Display* /* display */, 1781 | int /* screen_number */ 1782 | ); 1783 | extern Visual *XDefaultVisualOfScreen( 1784 | Screen* /* screen */ 1785 | ); 1786 | extern GC XDefaultGC( 1787 | Display* /* display */, 1788 | int /* screen_number */ 1789 | ); 1790 | extern GC XDefaultGCOfScreen( 1791 | Screen* /* screen */ 1792 | ); 1793 | extern unsigned long XBlackPixel( 1794 | Display* /* display */, 1795 | int /* screen_number */ 1796 | ); 1797 | extern unsigned long XWhitePixel( 1798 | Display* /* display */, 1799 | int /* screen_number */ 1800 | ); 1801 | extern unsigned long XAllPlanes( 1802 | void 1803 | ); 1804 | extern unsigned long XBlackPixelOfScreen( 1805 | Screen* /* screen */ 1806 | ); 1807 | extern unsigned long XWhitePixelOfScreen( 1808 | Screen* /* screen */ 1809 | ); 1810 | extern unsigned long XNextRequest( 1811 | Display* /* display */ 1812 | ); 1813 | extern unsigned long XLastKnownRequestProcessed( 1814 | Display* /* display */ 1815 | ); 1816 | extern char *XServerVendor( 1817 | Display* /* display */ 1818 | ); 1819 | extern char *XDisplayString( 1820 | Display* /* display */ 1821 | ); 1822 | extern Colormap XDefaultColormap( 1823 | Display* /* display */, 1824 | int /* screen_number */ 1825 | ); 1826 | extern Colormap XDefaultColormapOfScreen( 1827 | Screen* /* screen */ 1828 | ); 1829 | extern Display *XDisplayOfScreen( 1830 | Screen* /* screen */ 1831 | ); 1832 | extern Screen *XScreenOfDisplay( 1833 | Display* /* display */, 1834 | int /* screen_number */ 1835 | ); 1836 | extern Screen *XDefaultScreenOfDisplay( 1837 | Display* /* display */ 1838 | ); 1839 | extern long XEventMaskOfScreen( 1840 | Screen* /* screen */ 1841 | ); 1842 | 1843 | extern int XScreenNumberOfScreen( 1844 | Screen* /* screen */ 1845 | ); 1846 | 1847 | typedef int (*XErrorHandler) ( /* WARNING, this type not in Xlib spec */ 1848 | Display* /* display */, 1849 | XErrorEvent* /* error_event */ 1850 | ); 1851 | 1852 | extern XErrorHandler XSetErrorHandler ( 1853 | XErrorHandler /* handler */ 1854 | ); 1855 | 1856 | 1857 | typedef int (*XIOErrorHandler) ( /* WARNING, this type not in Xlib spec */ 1858 | Display* /* display */ 1859 | ); 1860 | 1861 | extern XIOErrorHandler XSetIOErrorHandler ( 1862 | XIOErrorHandler /* handler */ 1863 | ); 1864 | 1865 | typedef void (*XIOErrorExitHandler) ( /* WARNING, this type not in Xlib spec */ 1866 | Display*, /* display */ 1867 | void* /* user_data */ 1868 | ); 1869 | 1870 | extern void XSetIOErrorExitHandler ( 1871 | Display*, /* display */ 1872 | XIOErrorExitHandler, /* handler */ 1873 | void* /* user_data */ 1874 | ); 1875 | 1876 | extern XPixmapFormatValues *XListPixmapFormats( 1877 | Display* /* display */, 1878 | int* /* count_return */ 1879 | ); 1880 | extern int *XListDepths( 1881 | Display* /* display */, 1882 | int /* screen_number */, 1883 | int* /* count_return */ 1884 | ); 1885 | 1886 | /* ICCCM routines for things that don't require special include files; */ 1887 | /* other declarations are given in Xutil.h */ 1888 | extern Status XReconfigureWMWindow( 1889 | Display* /* display */, 1890 | Window /* w */, 1891 | int /* screen_number */, 1892 | unsigned int /* mask */, 1893 | XWindowChanges* /* changes */ 1894 | ); 1895 | 1896 | extern Status XGetWMProtocols( 1897 | Display* /* display */, 1898 | Window /* w */, 1899 | Atom** /* protocols_return */, 1900 | int* /* count_return */ 1901 | ); 1902 | extern Status XSetWMProtocols( 1903 | Display* /* display */, 1904 | Window /* w */, 1905 | Atom* /* protocols */, 1906 | int /* count */ 1907 | ); 1908 | extern Status XIconifyWindow( 1909 | Display* /* display */, 1910 | Window /* w */, 1911 | int /* screen_number */ 1912 | ); 1913 | extern Status XWithdrawWindow( 1914 | Display* /* display */, 1915 | Window /* w */, 1916 | int /* screen_number */ 1917 | ); 1918 | extern Status XGetCommand( 1919 | Display* /* display */, 1920 | Window /* w */, 1921 | char*** /* argv_return */, 1922 | int* /* argc_return */ 1923 | ); 1924 | extern Status XGetWMColormapWindows( 1925 | Display* /* display */, 1926 | Window /* w */, 1927 | Window** /* windows_return */, 1928 | int* /* count_return */ 1929 | ); 1930 | extern Status XSetWMColormapWindows( 1931 | Display* /* display */, 1932 | Window /* w */, 1933 | Window* /* colormap_windows */, 1934 | int /* count */ 1935 | ); 1936 | extern void XFreeStringList( 1937 | char** /* list */ 1938 | ); 1939 | extern int XSetTransientForHint( 1940 | Display* /* display */, 1941 | Window /* w */, 1942 | Window /* prop_window */ 1943 | ); 1944 | 1945 | /* The following are given in alphabetical order */ 1946 | 1947 | extern int XActivateScreenSaver( 1948 | Display* /* display */ 1949 | ); 1950 | 1951 | extern int XAddHost( 1952 | Display* /* display */, 1953 | XHostAddress* /* host */ 1954 | ); 1955 | 1956 | extern int XAddHosts( 1957 | Display* /* display */, 1958 | XHostAddress* /* hosts */, 1959 | int /* num_hosts */ 1960 | ); 1961 | 1962 | extern int XAddToExtensionList( 1963 | struct _XExtData** /* structure */, 1964 | XExtData* /* ext_data */ 1965 | ); 1966 | 1967 | extern int XAddToSaveSet( 1968 | Display* /* display */, 1969 | Window /* w */ 1970 | ); 1971 | 1972 | extern Status XAllocColor( 1973 | Display* /* display */, 1974 | Colormap /* colormap */, 1975 | XColor* /* screen_in_out */ 1976 | ); 1977 | 1978 | extern Status XAllocColorCells( 1979 | Display* /* display */, 1980 | Colormap /* colormap */, 1981 | Bool /* contig */, 1982 | unsigned long* /* plane_masks_return */, 1983 | unsigned int /* nplanes */, 1984 | unsigned long* /* pixels_return */, 1985 | unsigned int /* npixels */ 1986 | ); 1987 | 1988 | extern Status XAllocColorPlanes( 1989 | Display* /* display */, 1990 | Colormap /* colormap */, 1991 | Bool /* contig */, 1992 | unsigned long* /* pixels_return */, 1993 | int /* ncolors */, 1994 | int /* nreds */, 1995 | int /* ngreens */, 1996 | int /* nblues */, 1997 | unsigned long* /* rmask_return */, 1998 | unsigned long* /* gmask_return */, 1999 | unsigned long* /* bmask_return */ 2000 | ); 2001 | 2002 | extern Status XAllocNamedColor( 2003 | Display* /* display */, 2004 | Colormap /* colormap */, 2005 | _Xconst char* /* color_name */, 2006 | XColor* /* screen_def_return */, 2007 | XColor* /* exact_def_return */ 2008 | ); 2009 | 2010 | extern int XAllowEvents( 2011 | Display* /* display */, 2012 | int /* event_mode */, 2013 | Time /* time */ 2014 | ); 2015 | 2016 | extern int XAutoRepeatOff( 2017 | Display* /* display */ 2018 | ); 2019 | 2020 | extern int XAutoRepeatOn( 2021 | Display* /* display */ 2022 | ); 2023 | 2024 | extern int XBell( 2025 | Display* /* display */, 2026 | int /* percent */ 2027 | ); 2028 | 2029 | extern int XBitmapBitOrder( 2030 | Display* /* display */ 2031 | ); 2032 | 2033 | extern int XBitmapPad( 2034 | Display* /* display */ 2035 | ); 2036 | 2037 | extern int XBitmapUnit( 2038 | Display* /* display */ 2039 | ); 2040 | 2041 | extern int XCellsOfScreen( 2042 | Screen* /* screen */ 2043 | ); 2044 | 2045 | extern int XChangeActivePointerGrab( 2046 | Display* /* display */, 2047 | unsigned int /* event_mask */, 2048 | Cursor /* cursor */, 2049 | Time /* time */ 2050 | ); 2051 | 2052 | extern int XChangeGC( 2053 | Display* /* display */, 2054 | GC /* gc */, 2055 | unsigned long /* valuemask */, 2056 | XGCValues* /* values */ 2057 | ); 2058 | 2059 | extern int XChangeKeyboardControl( 2060 | Display* /* display */, 2061 | unsigned long /* value_mask */, 2062 | XKeyboardControl* /* values */ 2063 | ); 2064 | 2065 | extern int XChangeKeyboardMapping( 2066 | Display* /* display */, 2067 | int /* first_keycode */, 2068 | int /* keysyms_per_keycode */, 2069 | KeySym* /* keysyms */, 2070 | int /* num_codes */ 2071 | ); 2072 | 2073 | extern int XChangePointerControl( 2074 | Display* /* display */, 2075 | Bool /* do_accel */, 2076 | Bool /* do_threshold */, 2077 | int /* accel_numerator */, 2078 | int /* accel_denominator */, 2079 | int /* threshold */ 2080 | ); 2081 | 2082 | extern int XChangeProperty( 2083 | Display* /* display */, 2084 | Window /* w */, 2085 | Atom /* property */, 2086 | Atom /* type */, 2087 | int /* format */, 2088 | int /* mode */, 2089 | _Xconst unsigned char* /* data */, 2090 | int /* nelements */ 2091 | ); 2092 | 2093 | extern int XChangeSaveSet( 2094 | Display* /* display */, 2095 | Window /* w */, 2096 | int /* change_mode */ 2097 | ); 2098 | 2099 | extern int XChangeWindowAttributes( 2100 | Display* /* display */, 2101 | Window /* w */, 2102 | unsigned long /* valuemask */, 2103 | XSetWindowAttributes* /* attributes */ 2104 | ); 2105 | 2106 | extern Bool XCheckIfEvent( 2107 | Display* /* display */, 2108 | XEvent* /* event_return */, 2109 | Bool (*) ( 2110 | Display* /* display */, 2111 | XEvent* /* event */, 2112 | XPointer /* arg */ 2113 | ) /* predicate */, 2114 | XPointer /* arg */ 2115 | ); 2116 | 2117 | extern Bool XCheckMaskEvent( 2118 | Display* /* display */, 2119 | long /* event_mask */, 2120 | XEvent* /* event_return */ 2121 | ); 2122 | 2123 | extern Bool XCheckTypedEvent( 2124 | Display* /* display */, 2125 | int /* event_type */, 2126 | XEvent* /* event_return */ 2127 | ); 2128 | 2129 | extern Bool XCheckTypedWindowEvent( 2130 | Display* /* display */, 2131 | Window /* w */, 2132 | int /* event_type */, 2133 | XEvent* /* event_return */ 2134 | ); 2135 | 2136 | extern Bool XCheckWindowEvent( 2137 | Display* /* display */, 2138 | Window /* w */, 2139 | long /* event_mask */, 2140 | XEvent* /* event_return */ 2141 | ); 2142 | 2143 | extern int XCirculateSubwindows( 2144 | Display* /* display */, 2145 | Window /* w */, 2146 | int /* direction */ 2147 | ); 2148 | 2149 | extern int XCirculateSubwindowsDown( 2150 | Display* /* display */, 2151 | Window /* w */ 2152 | ); 2153 | 2154 | extern int XCirculateSubwindowsUp( 2155 | Display* /* display */, 2156 | Window /* w */ 2157 | ); 2158 | 2159 | extern int XClearArea( 2160 | Display* /* display */, 2161 | Window /* w */, 2162 | int /* x */, 2163 | int /* y */, 2164 | unsigned int /* width */, 2165 | unsigned int /* height */, 2166 | Bool /* exposures */ 2167 | ); 2168 | 2169 | extern int XClearWindow( 2170 | Display* /* display */, 2171 | Window /* w */ 2172 | ); 2173 | 2174 | extern int XCloseDisplay( 2175 | Display* /* display */ 2176 | ); 2177 | 2178 | extern int XConfigureWindow( 2179 | Display* /* display */, 2180 | Window /* w */, 2181 | unsigned int /* value_mask */, 2182 | XWindowChanges* /* values */ 2183 | ); 2184 | 2185 | extern int XConnectionNumber( 2186 | Display* /* display */ 2187 | ); 2188 | 2189 | extern int XConvertSelection( 2190 | Display* /* display */, 2191 | Atom /* selection */, 2192 | Atom /* target */, 2193 | Atom /* property */, 2194 | Window /* requestor */, 2195 | Time /* time */ 2196 | ); 2197 | 2198 | extern int XCopyArea( 2199 | Display* /* display */, 2200 | Drawable /* src */, 2201 | Drawable /* dest */, 2202 | GC /* gc */, 2203 | int /* src_x */, 2204 | int /* src_y */, 2205 | unsigned int /* width */, 2206 | unsigned int /* height */, 2207 | int /* dest_x */, 2208 | int /* dest_y */ 2209 | ); 2210 | 2211 | extern int XCopyGC( 2212 | Display* /* display */, 2213 | GC /* src */, 2214 | unsigned long /* valuemask */, 2215 | GC /* dest */ 2216 | ); 2217 | 2218 | extern int XCopyPlane( 2219 | Display* /* display */, 2220 | Drawable /* src */, 2221 | Drawable /* dest */, 2222 | GC /* gc */, 2223 | int /* src_x */, 2224 | int /* src_y */, 2225 | unsigned int /* width */, 2226 | unsigned int /* height */, 2227 | int /* dest_x */, 2228 | int /* dest_y */, 2229 | unsigned long /* plane */ 2230 | ); 2231 | 2232 | extern int XDefaultDepth( 2233 | Display* /* display */, 2234 | int /* screen_number */ 2235 | ); 2236 | 2237 | extern int XDefaultDepthOfScreen( 2238 | Screen* /* screen */ 2239 | ); 2240 | 2241 | extern int XDefaultScreen( 2242 | Display* /* display */ 2243 | ); 2244 | 2245 | extern int XDefineCursor( 2246 | Display* /* display */, 2247 | Window /* w */, 2248 | Cursor /* cursor */ 2249 | ); 2250 | 2251 | extern int XDeleteProperty( 2252 | Display* /* display */, 2253 | Window /* w */, 2254 | Atom /* property */ 2255 | ); 2256 | 2257 | extern int XDestroyWindow( 2258 | Display* /* display */, 2259 | Window /* w */ 2260 | ); 2261 | 2262 | extern int XDestroySubwindows( 2263 | Display* /* display */, 2264 | Window /* w */ 2265 | ); 2266 | 2267 | extern int XDoesBackingStore( 2268 | Screen* /* screen */ 2269 | ); 2270 | 2271 | extern Bool XDoesSaveUnders( 2272 | Screen* /* screen */ 2273 | ); 2274 | 2275 | extern int XDisableAccessControl( 2276 | Display* /* display */ 2277 | ); 2278 | 2279 | 2280 | extern int XDisplayCells( 2281 | Display* /* display */, 2282 | int /* screen_number */ 2283 | ); 2284 | 2285 | extern int XDisplayHeight( 2286 | Display* /* display */, 2287 | int /* screen_number */ 2288 | ); 2289 | 2290 | extern int XDisplayHeightMM( 2291 | Display* /* display */, 2292 | int /* screen_number */ 2293 | ); 2294 | 2295 | extern int XDisplayKeycodes( 2296 | Display* /* display */, 2297 | int* /* min_keycodes_return */, 2298 | int* /* max_keycodes_return */ 2299 | ); 2300 | 2301 | extern int XDisplayPlanes( 2302 | Display* /* display */, 2303 | int /* screen_number */ 2304 | ); 2305 | 2306 | extern int XDisplayWidth( 2307 | Display* /* display */, 2308 | int /* screen_number */ 2309 | ); 2310 | 2311 | extern int XDisplayWidthMM( 2312 | Display* /* display */, 2313 | int /* screen_number */ 2314 | ); 2315 | 2316 | extern int XDrawArc( 2317 | Display* /* display */, 2318 | Drawable /* d */, 2319 | GC /* gc */, 2320 | int /* x */, 2321 | int /* y */, 2322 | unsigned int /* width */, 2323 | unsigned int /* height */, 2324 | int /* angle1 */, 2325 | int /* angle2 */ 2326 | ); 2327 | 2328 | extern int XDrawArcs( 2329 | Display* /* display */, 2330 | Drawable /* d */, 2331 | GC /* gc */, 2332 | XArc* /* arcs */, 2333 | int /* narcs */ 2334 | ); 2335 | 2336 | extern int XDrawImageString( 2337 | Display* /* display */, 2338 | Drawable /* d */, 2339 | GC /* gc */, 2340 | int /* x */, 2341 | int /* y */, 2342 | _Xconst char* /* string */, 2343 | int /* length */ 2344 | ); 2345 | 2346 | extern int XDrawImageString16( 2347 | Display* /* display */, 2348 | Drawable /* d */, 2349 | GC /* gc */, 2350 | int /* x */, 2351 | int /* y */, 2352 | _Xconst XChar2b* /* string */, 2353 | int /* length */ 2354 | ); 2355 | 2356 | extern int XDrawLine( 2357 | Display* /* display */, 2358 | Drawable /* d */, 2359 | GC /* gc */, 2360 | int /* x1 */, 2361 | int /* y1 */, 2362 | int /* x2 */, 2363 | int /* y2 */ 2364 | ); 2365 | 2366 | extern int XDrawLines( 2367 | Display* /* display */, 2368 | Drawable /* d */, 2369 | GC /* gc */, 2370 | XPoint* /* points */, 2371 | int /* npoints */, 2372 | int /* mode */ 2373 | ); 2374 | 2375 | extern int XDrawPoint( 2376 | Display* /* display */, 2377 | Drawable /* d */, 2378 | GC /* gc */, 2379 | int /* x */, 2380 | int /* y */ 2381 | ); 2382 | 2383 | extern int XDrawPoints( 2384 | Display* /* display */, 2385 | Drawable /* d */, 2386 | GC /* gc */, 2387 | XPoint* /* points */, 2388 | int /* npoints */, 2389 | int /* mode */ 2390 | ); 2391 | 2392 | extern int XDrawRectangle( 2393 | Display* /* display */, 2394 | Drawable /* d */, 2395 | GC /* gc */, 2396 | int /* x */, 2397 | int /* y */, 2398 | unsigned int /* width */, 2399 | unsigned int /* height */ 2400 | ); 2401 | 2402 | extern int XDrawRectangles( 2403 | Display* /* display */, 2404 | Drawable /* d */, 2405 | GC /* gc */, 2406 | XRectangle* /* rectangles */, 2407 | int /* nrectangles */ 2408 | ); 2409 | 2410 | extern int XDrawSegments( 2411 | Display* /* display */, 2412 | Drawable /* d */, 2413 | GC /* gc */, 2414 | XSegment* /* segments */, 2415 | int /* nsegments */ 2416 | ); 2417 | 2418 | extern int XDrawString( 2419 | Display* /* display */, 2420 | Drawable /* d */, 2421 | GC /* gc */, 2422 | int /* x */, 2423 | int /* y */, 2424 | _Xconst char* /* string */, 2425 | int /* length */ 2426 | ); 2427 | 2428 | extern int XDrawString16( 2429 | Display* /* display */, 2430 | Drawable /* d */, 2431 | GC /* gc */, 2432 | int /* x */, 2433 | int /* y */, 2434 | _Xconst XChar2b* /* string */, 2435 | int /* length */ 2436 | ); 2437 | 2438 | extern int XDrawText( 2439 | Display* /* display */, 2440 | Drawable /* d */, 2441 | GC /* gc */, 2442 | int /* x */, 2443 | int /* y */, 2444 | XTextItem* /* items */, 2445 | int /* nitems */ 2446 | ); 2447 | 2448 | extern int XDrawText16( 2449 | Display* /* display */, 2450 | Drawable /* d */, 2451 | GC /* gc */, 2452 | int /* x */, 2453 | int /* y */, 2454 | XTextItem16* /* items */, 2455 | int /* nitems */ 2456 | ); 2457 | 2458 | extern int XEnableAccessControl( 2459 | Display* /* display */ 2460 | ); 2461 | 2462 | extern int XEventsQueued( 2463 | Display* /* display */, 2464 | int /* mode */ 2465 | ); 2466 | 2467 | extern Status XFetchName( 2468 | Display* /* display */, 2469 | Window /* w */, 2470 | char** /* window_name_return */ 2471 | ); 2472 | 2473 | extern int XFillArc( 2474 | Display* /* display */, 2475 | Drawable /* d */, 2476 | GC /* gc */, 2477 | int /* x */, 2478 | int /* y */, 2479 | unsigned int /* width */, 2480 | unsigned int /* height */, 2481 | int /* angle1 */, 2482 | int /* angle2 */ 2483 | ); 2484 | 2485 | extern int XFillArcs( 2486 | Display* /* display */, 2487 | Drawable /* d */, 2488 | GC /* gc */, 2489 | XArc* /* arcs */, 2490 | int /* narcs */ 2491 | ); 2492 | 2493 | extern int XFillPolygon( 2494 | Display* /* display */, 2495 | Drawable /* d */, 2496 | GC /* gc */, 2497 | XPoint* /* points */, 2498 | int /* npoints */, 2499 | int /* shape */, 2500 | int /* mode */ 2501 | ); 2502 | 2503 | extern int XFillRectangle( 2504 | Display* /* display */, 2505 | Drawable /* d */, 2506 | GC /* gc */, 2507 | int /* x */, 2508 | int /* y */, 2509 | unsigned int /* width */, 2510 | unsigned int /* height */ 2511 | ); 2512 | 2513 | extern int XFillRectangles( 2514 | Display* /* display */, 2515 | Drawable /* d */, 2516 | GC /* gc */, 2517 | XRectangle* /* rectangles */, 2518 | int /* nrectangles */ 2519 | ); 2520 | 2521 | extern int XFlush( 2522 | Display* /* display */ 2523 | ); 2524 | 2525 | extern int XForceScreenSaver( 2526 | Display* /* display */, 2527 | int /* mode */ 2528 | ); 2529 | 2530 | extern int XFree( 2531 | void* /* data */ 2532 | ); 2533 | 2534 | extern int XFreeColormap( 2535 | Display* /* display */, 2536 | Colormap /* colormap */ 2537 | ); 2538 | 2539 | extern int XFreeColors( 2540 | Display* /* display */, 2541 | Colormap /* colormap */, 2542 | unsigned long* /* pixels */, 2543 | int /* npixels */, 2544 | unsigned long /* planes */ 2545 | ); 2546 | 2547 | extern int XFreeCursor( 2548 | Display* /* display */, 2549 | Cursor /* cursor */ 2550 | ); 2551 | 2552 | extern int XFreeExtensionList( 2553 | char** /* list */ 2554 | ); 2555 | 2556 | extern int XFreeFont( 2557 | Display* /* display */, 2558 | XFontStruct* /* font_struct */ 2559 | ); 2560 | 2561 | extern int XFreeFontInfo( 2562 | char** /* names */, 2563 | XFontStruct* /* free_info */, 2564 | int /* actual_count */ 2565 | ); 2566 | 2567 | extern int XFreeFontNames( 2568 | char** /* list */ 2569 | ); 2570 | 2571 | extern int XFreeFontPath( 2572 | char** /* list */ 2573 | ); 2574 | 2575 | extern int XFreeGC( 2576 | Display* /* display */, 2577 | GC /* gc */ 2578 | ); 2579 | 2580 | extern int XFreeModifiermap( 2581 | XModifierKeymap* /* modmap */ 2582 | ); 2583 | 2584 | extern int XFreePixmap( 2585 | Display* /* display */, 2586 | Pixmap /* pixmap */ 2587 | ); 2588 | 2589 | extern int XGeometry( 2590 | Display* /* display */, 2591 | int /* screen */, 2592 | _Xconst char* /* position */, 2593 | _Xconst char* /* default_position */, 2594 | unsigned int /* bwidth */, 2595 | unsigned int /* fwidth */, 2596 | unsigned int /* fheight */, 2597 | int /* xadder */, 2598 | int /* yadder */, 2599 | int* /* x_return */, 2600 | int* /* y_return */, 2601 | int* /* width_return */, 2602 | int* /* height_return */ 2603 | ); 2604 | 2605 | extern int XGetErrorDatabaseText( 2606 | Display* /* display */, 2607 | _Xconst char* /* name */, 2608 | _Xconst char* /* message */, 2609 | _Xconst char* /* default_string */, 2610 | char* /* buffer_return */, 2611 | int /* length */ 2612 | ); 2613 | 2614 | extern int XGetErrorText( 2615 | Display* /* display */, 2616 | int /* code */, 2617 | char* /* buffer_return */, 2618 | int /* length */ 2619 | ); 2620 | 2621 | extern Bool XGetFontProperty( 2622 | XFontStruct* /* font_struct */, 2623 | Atom /* atom */, 2624 | unsigned long* /* value_return */ 2625 | ); 2626 | 2627 | extern Status XGetGCValues( 2628 | Display* /* display */, 2629 | GC /* gc */, 2630 | unsigned long /* valuemask */, 2631 | XGCValues* /* values_return */ 2632 | ); 2633 | 2634 | extern Status XGetGeometry( 2635 | Display* /* display */, 2636 | Drawable /* d */, 2637 | Window* /* root_return */, 2638 | int* /* x_return */, 2639 | int* /* y_return */, 2640 | unsigned int* /* width_return */, 2641 | unsigned int* /* height_return */, 2642 | unsigned int* /* border_width_return */, 2643 | unsigned int* /* depth_return */ 2644 | ); 2645 | 2646 | extern Status XGetIconName( 2647 | Display* /* display */, 2648 | Window /* w */, 2649 | char** /* icon_name_return */ 2650 | ); 2651 | 2652 | extern int XGetInputFocus( 2653 | Display* /* display */, 2654 | Window* /* focus_return */, 2655 | int* /* revert_to_return */ 2656 | ); 2657 | 2658 | extern int XGetKeyboardControl( 2659 | Display* /* display */, 2660 | XKeyboardState* /* values_return */ 2661 | ); 2662 | 2663 | extern int XGetPointerControl( 2664 | Display* /* display */, 2665 | int* /* accel_numerator_return */, 2666 | int* /* accel_denominator_return */, 2667 | int* /* threshold_return */ 2668 | ); 2669 | 2670 | extern int XGetPointerMapping( 2671 | Display* /* display */, 2672 | unsigned char* /* map_return */, 2673 | int /* nmap */ 2674 | ); 2675 | 2676 | extern int XGetScreenSaver( 2677 | Display* /* display */, 2678 | int* /* timeout_return */, 2679 | int* /* interval_return */, 2680 | int* /* prefer_blanking_return */, 2681 | int* /* allow_exposures_return */ 2682 | ); 2683 | 2684 | extern Status XGetTransientForHint( 2685 | Display* /* display */, 2686 | Window /* w */, 2687 | Window* /* prop_window_return */ 2688 | ); 2689 | 2690 | extern int XGetWindowProperty( 2691 | Display* /* display */, 2692 | Window /* w */, 2693 | Atom /* property */, 2694 | long /* long_offset */, 2695 | long /* long_length */, 2696 | Bool /* delete */, 2697 | Atom /* req_type */, 2698 | Atom* /* actual_type_return */, 2699 | int* /* actual_format_return */, 2700 | unsigned long* /* nitems_return */, 2701 | unsigned long* /* bytes_after_return */, 2702 | unsigned char** /* prop_return */ 2703 | ); 2704 | 2705 | extern Status XGetWindowAttributes( 2706 | Display* /* display */, 2707 | Window /* w */, 2708 | XWindowAttributes* /* window_attributes_return */ 2709 | ); 2710 | 2711 | extern int XGrabButton( 2712 | Display* /* display */, 2713 | unsigned int /* button */, 2714 | unsigned int /* modifiers */, 2715 | Window /* grab_window */, 2716 | Bool /* owner_events */, 2717 | unsigned int /* event_mask */, 2718 | int /* pointer_mode */, 2719 | int /* keyboard_mode */, 2720 | Window /* confine_to */, 2721 | Cursor /* cursor */ 2722 | ); 2723 | 2724 | extern int XGrabKey( 2725 | Display* /* display */, 2726 | int /* keycode */, 2727 | unsigned int /* modifiers */, 2728 | Window /* grab_window */, 2729 | Bool /* owner_events */, 2730 | int /* pointer_mode */, 2731 | int /* keyboard_mode */ 2732 | ); 2733 | 2734 | extern int XGrabKeyboard( 2735 | Display* /* display */, 2736 | Window /* grab_window */, 2737 | Bool /* owner_events */, 2738 | int /* pointer_mode */, 2739 | int /* keyboard_mode */, 2740 | Time /* time */ 2741 | ); 2742 | 2743 | extern int XGrabPointer( 2744 | Display* /* display */, 2745 | Window /* grab_window */, 2746 | Bool /* owner_events */, 2747 | unsigned int /* event_mask */, 2748 | int /* pointer_mode */, 2749 | int /* keyboard_mode */, 2750 | Window /* confine_to */, 2751 | Cursor /* cursor */, 2752 | Time /* time */ 2753 | ); 2754 | 2755 | extern int XGrabServer( 2756 | Display* /* display */ 2757 | ); 2758 | 2759 | extern int XHeightMMOfScreen( 2760 | Screen* /* screen */ 2761 | ); 2762 | 2763 | extern int XHeightOfScreen( 2764 | Screen* /* screen */ 2765 | ); 2766 | 2767 | extern int XIfEvent( 2768 | Display* /* display */, 2769 | XEvent* /* event_return */, 2770 | Bool (*) ( 2771 | Display* /* display */, 2772 | XEvent* /* event */, 2773 | XPointer /* arg */ 2774 | ) /* predicate */, 2775 | XPointer /* arg */ 2776 | ); 2777 | 2778 | extern int XImageByteOrder( 2779 | Display* /* display */ 2780 | ); 2781 | 2782 | extern int XInstallColormap( 2783 | Display* /* display */, 2784 | Colormap /* colormap */ 2785 | ); 2786 | 2787 | extern KeyCode XKeysymToKeycode( 2788 | Display* /* display */, 2789 | KeySym /* keysym */ 2790 | ); 2791 | 2792 | extern int XKillClient( 2793 | Display* /* display */, 2794 | XID /* resource */ 2795 | ); 2796 | 2797 | extern Status XLookupColor( 2798 | Display* /* display */, 2799 | Colormap /* colormap */, 2800 | _Xconst char* /* color_name */, 2801 | XColor* /* exact_def_return */, 2802 | XColor* /* screen_def_return */ 2803 | ); 2804 | 2805 | extern int XLowerWindow( 2806 | Display* /* display */, 2807 | Window /* w */ 2808 | ); 2809 | 2810 | extern int XMapRaised( 2811 | Display* /* display */, 2812 | Window /* w */ 2813 | ); 2814 | 2815 | extern int XMapSubwindows( 2816 | Display* /* display */, 2817 | Window /* w */ 2818 | ); 2819 | 2820 | extern int XMapWindow( 2821 | Display* /* display */, 2822 | Window /* w */ 2823 | ); 2824 | 2825 | extern int XMaskEvent( 2826 | Display* /* display */, 2827 | long /* event_mask */, 2828 | XEvent* /* event_return */ 2829 | ); 2830 | 2831 | extern int XMaxCmapsOfScreen( 2832 | Screen* /* screen */ 2833 | ); 2834 | 2835 | extern int XMinCmapsOfScreen( 2836 | Screen* /* screen */ 2837 | ); 2838 | 2839 | extern int XMoveResizeWindow( 2840 | Display* /* display */, 2841 | Window /* w */, 2842 | int /* x */, 2843 | int /* y */, 2844 | unsigned int /* width */, 2845 | unsigned int /* height */ 2846 | ); 2847 | 2848 | extern int XMoveWindow( 2849 | Display* /* display */, 2850 | Window /* w */, 2851 | int /* x */, 2852 | int /* y */ 2853 | ); 2854 | 2855 | extern int XNextEvent( 2856 | Display* /* display */, 2857 | XEvent* /* event_return */ 2858 | ); 2859 | 2860 | extern int XNoOp( 2861 | Display* /* display */ 2862 | ); 2863 | 2864 | extern Status XParseColor( 2865 | Display* /* display */, 2866 | Colormap /* colormap */, 2867 | _Xconst char* /* spec */, 2868 | XColor* /* exact_def_return */ 2869 | ); 2870 | 2871 | extern int XParseGeometry( 2872 | _Xconst char* /* parsestring */, 2873 | int* /* x_return */, 2874 | int* /* y_return */, 2875 | unsigned int* /* width_return */, 2876 | unsigned int* /* height_return */ 2877 | ); 2878 | 2879 | extern int XPeekEvent( 2880 | Display* /* display */, 2881 | XEvent* /* event_return */ 2882 | ); 2883 | 2884 | extern int XPeekIfEvent( 2885 | Display* /* display */, 2886 | XEvent* /* event_return */, 2887 | Bool (*) ( 2888 | Display* /* display */, 2889 | XEvent* /* event */, 2890 | XPointer /* arg */ 2891 | ) /* predicate */, 2892 | XPointer /* arg */ 2893 | ); 2894 | 2895 | extern int XPending( 2896 | Display* /* display */ 2897 | ); 2898 | 2899 | extern int XPlanesOfScreen( 2900 | Screen* /* screen */ 2901 | ); 2902 | 2903 | extern int XProtocolRevision( 2904 | Display* /* display */ 2905 | ); 2906 | 2907 | extern int XProtocolVersion( 2908 | Display* /* display */ 2909 | ); 2910 | 2911 | 2912 | extern int XPutBackEvent( 2913 | Display* /* display */, 2914 | XEvent* /* event */ 2915 | ); 2916 | 2917 | extern int XPutImage( 2918 | Display* /* display */, 2919 | Drawable /* d */, 2920 | GC /* gc */, 2921 | XImage* /* image */, 2922 | int /* src_x */, 2923 | int /* src_y */, 2924 | int /* dest_x */, 2925 | int /* dest_y */, 2926 | unsigned int /* width */, 2927 | unsigned int /* height */ 2928 | ); 2929 | 2930 | extern int XQLength( 2931 | Display* /* display */ 2932 | ); 2933 | 2934 | extern Status XQueryBestCursor( 2935 | Display* /* display */, 2936 | Drawable /* d */, 2937 | unsigned int /* width */, 2938 | unsigned int /* height */, 2939 | unsigned int* /* width_return */, 2940 | unsigned int* /* height_return */ 2941 | ); 2942 | 2943 | extern Status XQueryBestSize( 2944 | Display* /* display */, 2945 | int /* class */, 2946 | Drawable /* which_screen */, 2947 | unsigned int /* width */, 2948 | unsigned int /* height */, 2949 | unsigned int* /* width_return */, 2950 | unsigned int* /* height_return */ 2951 | ); 2952 | 2953 | extern Status XQueryBestStipple( 2954 | Display* /* display */, 2955 | Drawable /* which_screen */, 2956 | unsigned int /* width */, 2957 | unsigned int /* height */, 2958 | unsigned int* /* width_return */, 2959 | unsigned int* /* height_return */ 2960 | ); 2961 | 2962 | extern Status XQueryBestTile( 2963 | Display* /* display */, 2964 | Drawable /* which_screen */, 2965 | unsigned int /* width */, 2966 | unsigned int /* height */, 2967 | unsigned int* /* width_return */, 2968 | unsigned int* /* height_return */ 2969 | ); 2970 | 2971 | extern int XQueryColor( 2972 | Display* /* display */, 2973 | Colormap /* colormap */, 2974 | XColor* /* def_in_out */ 2975 | ); 2976 | 2977 | extern int XQueryColors( 2978 | Display* /* display */, 2979 | Colormap /* colormap */, 2980 | XColor* /* defs_in_out */, 2981 | int /* ncolors */ 2982 | ); 2983 | 2984 | extern Bool XQueryExtension( 2985 | Display* /* display */, 2986 | _Xconst char* /* name */, 2987 | int* /* major_opcode_return */, 2988 | int* /* first_event_return */, 2989 | int* /* first_error_return */ 2990 | ); 2991 | 2992 | extern int XQueryKeymap( 2993 | Display* /* display */, 2994 | char [32] /* keys_return */ 2995 | ); 2996 | 2997 | extern Bool XQueryPointer( 2998 | Display* /* display */, 2999 | Window /* w */, 3000 | Window* /* root_return */, 3001 | Window* /* child_return */, 3002 | int* /* root_x_return */, 3003 | int* /* root_y_return */, 3004 | int* /* win_x_return */, 3005 | int* /* win_y_return */, 3006 | unsigned int* /* mask_return */ 3007 | ); 3008 | 3009 | extern int XQueryTextExtents( 3010 | Display* /* display */, 3011 | XID /* font_ID */, 3012 | _Xconst char* /* string */, 3013 | int /* nchars */, 3014 | int* /* direction_return */, 3015 | int* /* font_ascent_return */, 3016 | int* /* font_descent_return */, 3017 | XCharStruct* /* overall_return */ 3018 | ); 3019 | 3020 | extern int XQueryTextExtents16( 3021 | Display* /* display */, 3022 | XID /* font_ID */, 3023 | _Xconst XChar2b* /* string */, 3024 | int /* nchars */, 3025 | int* /* direction_return */, 3026 | int* /* font_ascent_return */, 3027 | int* /* font_descent_return */, 3028 | XCharStruct* /* overall_return */ 3029 | ); 3030 | 3031 | extern Status XQueryTree( 3032 | Display* /* display */, 3033 | Window /* w */, 3034 | Window* /* root_return */, 3035 | Window* /* parent_return */, 3036 | Window** /* children_return */, 3037 | unsigned int* /* nchildren_return */ 3038 | ); 3039 | 3040 | extern int XRaiseWindow( 3041 | Display* /* display */, 3042 | Window /* w */ 3043 | ); 3044 | 3045 | extern int XReadBitmapFile( 3046 | Display* /* display */, 3047 | Drawable /* d */, 3048 | _Xconst char* /* filename */, 3049 | unsigned int* /* width_return */, 3050 | unsigned int* /* height_return */, 3051 | Pixmap* /* bitmap_return */, 3052 | int* /* x_hot_return */, 3053 | int* /* y_hot_return */ 3054 | ); 3055 | 3056 | extern int XReadBitmapFileData( 3057 | _Xconst char* /* filename */, 3058 | unsigned int* /* width_return */, 3059 | unsigned int* /* height_return */, 3060 | unsigned char** /* data_return */, 3061 | int* /* x_hot_return */, 3062 | int* /* y_hot_return */ 3063 | ); 3064 | 3065 | extern int XRebindKeysym( 3066 | Display* /* display */, 3067 | KeySym /* keysym */, 3068 | KeySym* /* list */, 3069 | int /* mod_count */, 3070 | _Xconst unsigned char* /* string */, 3071 | int /* bytes_string */ 3072 | ); 3073 | 3074 | extern int XRecolorCursor( 3075 | Display* /* display */, 3076 | Cursor /* cursor */, 3077 | XColor* /* foreground_color */, 3078 | XColor* /* background_color */ 3079 | ); 3080 | 3081 | extern int XRefreshKeyboardMapping( 3082 | XMappingEvent* /* event_map */ 3083 | ); 3084 | 3085 | extern int XRemoveFromSaveSet( 3086 | Display* /* display */, 3087 | Window /* w */ 3088 | ); 3089 | 3090 | extern int XRemoveHost( 3091 | Display* /* display */, 3092 | XHostAddress* /* host */ 3093 | ); 3094 | 3095 | extern int XRemoveHosts( 3096 | Display* /* display */, 3097 | XHostAddress* /* hosts */, 3098 | int /* num_hosts */ 3099 | ); 3100 | 3101 | extern int XReparentWindow( 3102 | Display* /* display */, 3103 | Window /* w */, 3104 | Window /* parent */, 3105 | int /* x */, 3106 | int /* y */ 3107 | ); 3108 | 3109 | extern int XResetScreenSaver( 3110 | Display* /* display */ 3111 | ); 3112 | 3113 | extern int XResizeWindow( 3114 | Display* /* display */, 3115 | Window /* w */, 3116 | unsigned int /* width */, 3117 | unsigned int /* height */ 3118 | ); 3119 | 3120 | extern int XRestackWindows( 3121 | Display* /* display */, 3122 | Window* /* windows */, 3123 | int /* nwindows */ 3124 | ); 3125 | 3126 | extern int XRotateBuffers( 3127 | Display* /* display */, 3128 | int /* rotate */ 3129 | ); 3130 | 3131 | extern int XRotateWindowProperties( 3132 | Display* /* display */, 3133 | Window /* w */, 3134 | Atom* /* properties */, 3135 | int /* num_prop */, 3136 | int /* npositions */ 3137 | ); 3138 | 3139 | extern int XScreenCount( 3140 | Display* /* display */ 3141 | ); 3142 | 3143 | extern int XSelectInput( 3144 | Display* /* display */, 3145 | Window /* w */, 3146 | long /* event_mask */ 3147 | ); 3148 | 3149 | extern Status XSendEvent( 3150 | Display* /* display */, 3151 | Window /* w */, 3152 | Bool /* propagate */, 3153 | long /* event_mask */, 3154 | XEvent* /* event_send */ 3155 | ); 3156 | 3157 | extern int XSetAccessControl( 3158 | Display* /* display */, 3159 | int /* mode */ 3160 | ); 3161 | 3162 | extern int XSetArcMode( 3163 | Display* /* display */, 3164 | GC /* gc */, 3165 | int /* arc_mode */ 3166 | ); 3167 | 3168 | extern int XSetBackground( 3169 | Display* /* display */, 3170 | GC /* gc */, 3171 | unsigned long /* background */ 3172 | ); 3173 | 3174 | extern int XSetClipMask( 3175 | Display* /* display */, 3176 | GC /* gc */, 3177 | Pixmap /* pixmap */ 3178 | ); 3179 | 3180 | extern int XSetClipOrigin( 3181 | Display* /* display */, 3182 | GC /* gc */, 3183 | int /* clip_x_origin */, 3184 | int /* clip_y_origin */ 3185 | ); 3186 | 3187 | extern int XSetClipRectangles( 3188 | Display* /* display */, 3189 | GC /* gc */, 3190 | int /* clip_x_origin */, 3191 | int /* clip_y_origin */, 3192 | XRectangle* /* rectangles */, 3193 | int /* n */, 3194 | int /* ordering */ 3195 | ); 3196 | 3197 | extern int XSetCloseDownMode( 3198 | Display* /* display */, 3199 | int /* close_mode */ 3200 | ); 3201 | 3202 | extern int XSetCommand( 3203 | Display* /* display */, 3204 | Window /* w */, 3205 | char** /* argv */, 3206 | int /* argc */ 3207 | ); 3208 | 3209 | extern int XSetDashes( 3210 | Display* /* display */, 3211 | GC /* gc */, 3212 | int /* dash_offset */, 3213 | _Xconst char* /* dash_list */, 3214 | int /* n */ 3215 | ); 3216 | 3217 | extern int XSetFillRule( 3218 | Display* /* display */, 3219 | GC /* gc */, 3220 | int /* fill_rule */ 3221 | ); 3222 | 3223 | extern int XSetFillStyle( 3224 | Display* /* display */, 3225 | GC /* gc */, 3226 | int /* fill_style */ 3227 | ); 3228 | 3229 | extern int XSetFont( 3230 | Display* /* display */, 3231 | GC /* gc */, 3232 | Font /* font */ 3233 | ); 3234 | 3235 | extern int XSetFontPath( 3236 | Display* /* display */, 3237 | char** /* directories */, 3238 | int /* ndirs */ 3239 | ); 3240 | 3241 | extern int XSetForeground( 3242 | Display* /* display */, 3243 | GC /* gc */, 3244 | unsigned long /* foreground */ 3245 | ); 3246 | 3247 | extern int XSetFunction( 3248 | Display* /* display */, 3249 | GC /* gc */, 3250 | int /* function */ 3251 | ); 3252 | 3253 | extern int XSetGraphicsExposures( 3254 | Display* /* display */, 3255 | GC /* gc */, 3256 | Bool /* graphics_exposures */ 3257 | ); 3258 | 3259 | extern int XSetIconName( 3260 | Display* /* display */, 3261 | Window /* w */, 3262 | _Xconst char* /* icon_name */ 3263 | ); 3264 | 3265 | extern int XSetInputFocus( 3266 | Display* /* display */, 3267 | Window /* focus */, 3268 | int /* revert_to */, 3269 | Time /* time */ 3270 | ); 3271 | 3272 | extern int XSetLineAttributes( 3273 | Display* /* display */, 3274 | GC /* gc */, 3275 | unsigned int /* line_width */, 3276 | int /* line_style */, 3277 | int /* cap_style */, 3278 | int /* join_style */ 3279 | ); 3280 | 3281 | extern int XSetModifierMapping( 3282 | Display* /* display */, 3283 | XModifierKeymap* /* modmap */ 3284 | ); 3285 | 3286 | extern int XSetPlaneMask( 3287 | Display* /* display */, 3288 | GC /* gc */, 3289 | unsigned long /* plane_mask */ 3290 | ); 3291 | 3292 | extern int XSetPointerMapping( 3293 | Display* /* display */, 3294 | _Xconst unsigned char* /* map */, 3295 | int /* nmap */ 3296 | ); 3297 | 3298 | extern int XSetScreenSaver( 3299 | Display* /* display */, 3300 | int /* timeout */, 3301 | int /* interval */, 3302 | int /* prefer_blanking */, 3303 | int /* allow_exposures */ 3304 | ); 3305 | 3306 | extern int XSetSelectionOwner( 3307 | Display* /* display */, 3308 | Atom /* selection */, 3309 | Window /* owner */, 3310 | Time /* time */ 3311 | ); 3312 | 3313 | extern int XSetState( 3314 | Display* /* display */, 3315 | GC /* gc */, 3316 | unsigned long /* foreground */, 3317 | unsigned long /* background */, 3318 | int /* function */, 3319 | unsigned long /* plane_mask */ 3320 | ); 3321 | 3322 | extern int XSetStipple( 3323 | Display* /* display */, 3324 | GC /* gc */, 3325 | Pixmap /* stipple */ 3326 | ); 3327 | 3328 | extern int XSetSubwindowMode( 3329 | Display* /* display */, 3330 | GC /* gc */, 3331 | int /* subwindow_mode */ 3332 | ); 3333 | 3334 | extern int XSetTSOrigin( 3335 | Display* /* display */, 3336 | GC /* gc */, 3337 | int /* ts_x_origin */, 3338 | int /* ts_y_origin */ 3339 | ); 3340 | 3341 | extern int XSetTile( 3342 | Display* /* display */, 3343 | GC /* gc */, 3344 | Pixmap /* tile */ 3345 | ); 3346 | 3347 | extern int XSetWindowBackground( 3348 | Display* /* display */, 3349 | Window /* w */, 3350 | unsigned long /* background_pixel */ 3351 | ); 3352 | 3353 | extern int XSetWindowBackgroundPixmap( 3354 | Display* /* display */, 3355 | Window /* w */, 3356 | Pixmap /* background_pixmap */ 3357 | ); 3358 | 3359 | extern int XSetWindowBorder( 3360 | Display* /* display */, 3361 | Window /* w */, 3362 | unsigned long /* border_pixel */ 3363 | ); 3364 | 3365 | extern int XSetWindowBorderPixmap( 3366 | Display* /* display */, 3367 | Window /* w */, 3368 | Pixmap /* border_pixmap */ 3369 | ); 3370 | 3371 | extern int XSetWindowBorderWidth( 3372 | Display* /* display */, 3373 | Window /* w */, 3374 | unsigned int /* width */ 3375 | ); 3376 | 3377 | extern int XSetWindowColormap( 3378 | Display* /* display */, 3379 | Window /* w */, 3380 | Colormap /* colormap */ 3381 | ); 3382 | 3383 | extern int XStoreBuffer( 3384 | Display* /* display */, 3385 | _Xconst char* /* bytes */, 3386 | int /* nbytes */, 3387 | int /* buffer */ 3388 | ); 3389 | 3390 | extern int XStoreBytes( 3391 | Display* /* display */, 3392 | _Xconst char* /* bytes */, 3393 | int /* nbytes */ 3394 | ); 3395 | 3396 | extern int XStoreColor( 3397 | Display* /* display */, 3398 | Colormap /* colormap */, 3399 | XColor* /* color */ 3400 | ); 3401 | 3402 | extern int XStoreColors( 3403 | Display* /* display */, 3404 | Colormap /* colormap */, 3405 | XColor* /* color */, 3406 | int /* ncolors */ 3407 | ); 3408 | 3409 | extern int XStoreName( 3410 | Display* /* display */, 3411 | Window /* w */, 3412 | _Xconst char* /* window_name */ 3413 | ); 3414 | 3415 | extern int XStoreNamedColor( 3416 | Display* /* display */, 3417 | Colormap /* colormap */, 3418 | _Xconst char* /* color */, 3419 | unsigned long /* pixel */, 3420 | int /* flags */ 3421 | ); 3422 | 3423 | extern int XSync( 3424 | Display* /* display */, 3425 | Bool /* discard */ 3426 | ); 3427 | 3428 | extern int XTextExtents( 3429 | XFontStruct* /* font_struct */, 3430 | _Xconst char* /* string */, 3431 | int /* nchars */, 3432 | int* /* direction_return */, 3433 | int* /* font_ascent_return */, 3434 | int* /* font_descent_return */, 3435 | XCharStruct* /* overall_return */ 3436 | ); 3437 | 3438 | extern int XTextExtents16( 3439 | XFontStruct* /* font_struct */, 3440 | _Xconst XChar2b* /* string */, 3441 | int /* nchars */, 3442 | int* /* direction_return */, 3443 | int* /* font_ascent_return */, 3444 | int* /* font_descent_return */, 3445 | XCharStruct* /* overall_return */ 3446 | ); 3447 | 3448 | extern int XTextWidth( 3449 | XFontStruct* /* font_struct */, 3450 | _Xconst char* /* string */, 3451 | int /* count */ 3452 | ); 3453 | 3454 | extern int XTextWidth16( 3455 | XFontStruct* /* font_struct */, 3456 | _Xconst XChar2b* /* string */, 3457 | int /* count */ 3458 | ); 3459 | 3460 | extern Bool XTranslateCoordinates( 3461 | Display* /* display */, 3462 | Window /* src_w */, 3463 | Window /* dest_w */, 3464 | int /* src_x */, 3465 | int /* src_y */, 3466 | int* /* dest_x_return */, 3467 | int* /* dest_y_return */, 3468 | Window* /* child_return */ 3469 | ); 3470 | 3471 | extern int XUndefineCursor( 3472 | Display* /* display */, 3473 | Window /* w */ 3474 | ); 3475 | 3476 | extern int XUngrabButton( 3477 | Display* /* display */, 3478 | unsigned int /* button */, 3479 | unsigned int /* modifiers */, 3480 | Window /* grab_window */ 3481 | ); 3482 | 3483 | extern int XUngrabKey( 3484 | Display* /* display */, 3485 | int /* keycode */, 3486 | unsigned int /* modifiers */, 3487 | Window /* grab_window */ 3488 | ); 3489 | 3490 | extern int XUngrabKeyboard( 3491 | Display* /* display */, 3492 | Time /* time */ 3493 | ); 3494 | 3495 | extern int XUngrabPointer( 3496 | Display* /* display */, 3497 | Time /* time */ 3498 | ); 3499 | 3500 | extern int XUngrabServer( 3501 | Display* /* display */ 3502 | ); 3503 | 3504 | extern int XUninstallColormap( 3505 | Display* /* display */, 3506 | Colormap /* colormap */ 3507 | ); 3508 | 3509 | extern int XUnloadFont( 3510 | Display* /* display */, 3511 | Font /* font */ 3512 | ); 3513 | 3514 | extern int XUnmapSubwindows( 3515 | Display* /* display */, 3516 | Window /* w */ 3517 | ); 3518 | 3519 | extern int XUnmapWindow( 3520 | Display* /* display */, 3521 | Window /* w */ 3522 | ); 3523 | 3524 | extern int XVendorRelease( 3525 | Display* /* display */ 3526 | ); 3527 | 3528 | extern int XWarpPointer( 3529 | Display* /* display */, 3530 | Window /* src_w */, 3531 | Window /* dest_w */, 3532 | int /* src_x */, 3533 | int /* src_y */, 3534 | unsigned int /* src_width */, 3535 | unsigned int /* src_height */, 3536 | int /* dest_x */, 3537 | int /* dest_y */ 3538 | ); 3539 | 3540 | extern int XWidthMMOfScreen( 3541 | Screen* /* screen */ 3542 | ); 3543 | 3544 | extern int XWidthOfScreen( 3545 | Screen* /* screen */ 3546 | ); 3547 | 3548 | extern int XWindowEvent( 3549 | Display* /* display */, 3550 | Window /* w */, 3551 | long /* event_mask */, 3552 | XEvent* /* event_return */ 3553 | ); 3554 | 3555 | extern int XWriteBitmapFile( 3556 | Display* /* display */, 3557 | _Xconst char* /* filename */, 3558 | Pixmap /* bitmap */, 3559 | unsigned int /* width */, 3560 | unsigned int /* height */, 3561 | int /* x_hot */, 3562 | int /* y_hot */ 3563 | ); 3564 | 3565 | extern Bool XSupportsLocale (void); 3566 | 3567 | extern char *XSetLocaleModifiers( 3568 | const char* /* modifier_list */ 3569 | ); 3570 | 3571 | extern XOM XOpenOM( 3572 | Display* /* display */, 3573 | struct _XrmHashBucketRec* /* rdb */, 3574 | _Xconst char* /* res_name */, 3575 | _Xconst char* /* res_class */ 3576 | ); 3577 | 3578 | extern Status XCloseOM( 3579 | XOM /* om */ 3580 | ); 3581 | 3582 | extern char *XSetOMValues( 3583 | XOM /* om */, 3584 | ... 3585 | ) _X_SENTINEL(0); 3586 | 3587 | extern char *XGetOMValues( 3588 | XOM /* om */, 3589 | ... 3590 | ) _X_SENTINEL(0); 3591 | 3592 | extern Display *XDisplayOfOM( 3593 | XOM /* om */ 3594 | ); 3595 | 3596 | extern char *XLocaleOfOM( 3597 | XOM /* om */ 3598 | ); 3599 | 3600 | extern XOC XCreateOC( 3601 | XOM /* om */, 3602 | ... 3603 | ) _X_SENTINEL(0); 3604 | 3605 | extern void XDestroyOC( 3606 | XOC /* oc */ 3607 | ); 3608 | 3609 | extern XOM XOMOfOC( 3610 | XOC /* oc */ 3611 | ); 3612 | 3613 | extern char *XSetOCValues( 3614 | XOC /* oc */, 3615 | ... 3616 | ) _X_SENTINEL(0); 3617 | 3618 | extern char *XGetOCValues( 3619 | XOC /* oc */, 3620 | ... 3621 | ) _X_SENTINEL(0); 3622 | 3623 | extern XFontSet XCreateFontSet( 3624 | Display* /* display */, 3625 | _Xconst char* /* base_font_name_list */, 3626 | char*** /* missing_charset_list */, 3627 | int* /* missing_charset_count */, 3628 | char** /* def_string */ 3629 | ); 3630 | 3631 | extern void XFreeFontSet( 3632 | Display* /* display */, 3633 | XFontSet /* font_set */ 3634 | ); 3635 | 3636 | extern int XFontsOfFontSet( 3637 | XFontSet /* font_set */, 3638 | XFontStruct*** /* font_struct_list */, 3639 | char*** /* font_name_list */ 3640 | ); 3641 | 3642 | extern char *XBaseFontNameListOfFontSet( 3643 | XFontSet /* font_set */ 3644 | ); 3645 | 3646 | extern char *XLocaleOfFontSet( 3647 | XFontSet /* font_set */ 3648 | ); 3649 | 3650 | extern Bool XContextDependentDrawing( 3651 | XFontSet /* font_set */ 3652 | ); 3653 | 3654 | extern Bool XDirectionalDependentDrawing( 3655 | XFontSet /* font_set */ 3656 | ); 3657 | 3658 | extern Bool XContextualDrawing( 3659 | XFontSet /* font_set */ 3660 | ); 3661 | 3662 | extern XFontSetExtents *XExtentsOfFontSet( 3663 | XFontSet /* font_set */ 3664 | ); 3665 | 3666 | extern int XmbTextEscapement( 3667 | XFontSet /* font_set */, 3668 | _Xconst char* /* text */, 3669 | int /* bytes_text */ 3670 | ); 3671 | 3672 | extern int XwcTextEscapement( 3673 | XFontSet /* font_set */, 3674 | _Xconst wchar_t* /* text */, 3675 | int /* num_wchars */ 3676 | ); 3677 | 3678 | extern int Xutf8TextEscapement( 3679 | XFontSet /* font_set */, 3680 | _Xconst char* /* text */, 3681 | int /* bytes_text */ 3682 | ); 3683 | 3684 | extern int XmbTextExtents( 3685 | XFontSet /* font_set */, 3686 | _Xconst char* /* text */, 3687 | int /* bytes_text */, 3688 | XRectangle* /* overall_ink_return */, 3689 | XRectangle* /* overall_logical_return */ 3690 | ); 3691 | 3692 | extern int XwcTextExtents( 3693 | XFontSet /* font_set */, 3694 | _Xconst wchar_t* /* text */, 3695 | int /* num_wchars */, 3696 | XRectangle* /* overall_ink_return */, 3697 | XRectangle* /* overall_logical_return */ 3698 | ); 3699 | 3700 | extern int Xutf8TextExtents( 3701 | XFontSet /* font_set */, 3702 | _Xconst char* /* text */, 3703 | int /* bytes_text */, 3704 | XRectangle* /* overall_ink_return */, 3705 | XRectangle* /* overall_logical_return */ 3706 | ); 3707 | 3708 | extern Status XmbTextPerCharExtents( 3709 | XFontSet /* font_set */, 3710 | _Xconst char* /* text */, 3711 | int /* bytes_text */, 3712 | XRectangle* /* ink_extents_buffer */, 3713 | XRectangle* /* logical_extents_buffer */, 3714 | int /* buffer_size */, 3715 | int* /* num_chars */, 3716 | XRectangle* /* overall_ink_return */, 3717 | XRectangle* /* overall_logical_return */ 3718 | ); 3719 | 3720 | extern Status XwcTextPerCharExtents( 3721 | XFontSet /* font_set */, 3722 | _Xconst wchar_t* /* text */, 3723 | int /* num_wchars */, 3724 | XRectangle* /* ink_extents_buffer */, 3725 | XRectangle* /* logical_extents_buffer */, 3726 | int /* buffer_size */, 3727 | int* /* num_chars */, 3728 | XRectangle* /* overall_ink_return */, 3729 | XRectangle* /* overall_logical_return */ 3730 | ); 3731 | 3732 | extern Status Xutf8TextPerCharExtents( 3733 | XFontSet /* font_set */, 3734 | _Xconst char* /* text */, 3735 | int /* bytes_text */, 3736 | XRectangle* /* ink_extents_buffer */, 3737 | XRectangle* /* logical_extents_buffer */, 3738 | int /* buffer_size */, 3739 | int* /* num_chars */, 3740 | XRectangle* /* overall_ink_return */, 3741 | XRectangle* /* overall_logical_return */ 3742 | ); 3743 | 3744 | extern void XmbDrawText( 3745 | Display* /* display */, 3746 | Drawable /* d */, 3747 | GC /* gc */, 3748 | int /* x */, 3749 | int /* y */, 3750 | XmbTextItem* /* text_items */, 3751 | int /* nitems */ 3752 | ); 3753 | 3754 | extern void XwcDrawText( 3755 | Display* /* display */, 3756 | Drawable /* d */, 3757 | GC /* gc */, 3758 | int /* x */, 3759 | int /* y */, 3760 | XwcTextItem* /* text_items */, 3761 | int /* nitems */ 3762 | ); 3763 | 3764 | extern void Xutf8DrawText( 3765 | Display* /* display */, 3766 | Drawable /* d */, 3767 | GC /* gc */, 3768 | int /* x */, 3769 | int /* y */, 3770 | XmbTextItem* /* text_items */, 3771 | int /* nitems */ 3772 | ); 3773 | 3774 | extern void XmbDrawString( 3775 | Display* /* display */, 3776 | Drawable /* d */, 3777 | XFontSet /* font_set */, 3778 | GC /* gc */, 3779 | int /* x */, 3780 | int /* y */, 3781 | _Xconst char* /* text */, 3782 | int /* bytes_text */ 3783 | ); 3784 | 3785 | extern void XwcDrawString( 3786 | Display* /* display */, 3787 | Drawable /* d */, 3788 | XFontSet /* font_set */, 3789 | GC /* gc */, 3790 | int /* x */, 3791 | int /* y */, 3792 | _Xconst wchar_t* /* text */, 3793 | int /* num_wchars */ 3794 | ); 3795 | 3796 | extern void Xutf8DrawString( 3797 | Display* /* display */, 3798 | Drawable /* d */, 3799 | XFontSet /* font_set */, 3800 | GC /* gc */, 3801 | int /* x */, 3802 | int /* y */, 3803 | _Xconst char* /* text */, 3804 | int /* bytes_text */ 3805 | ); 3806 | 3807 | extern void XmbDrawImageString( 3808 | Display* /* display */, 3809 | Drawable /* d */, 3810 | XFontSet /* font_set */, 3811 | GC /* gc */, 3812 | int /* x */, 3813 | int /* y */, 3814 | _Xconst char* /* text */, 3815 | int /* bytes_text */ 3816 | ); 3817 | 3818 | extern void XwcDrawImageString( 3819 | Display* /* display */, 3820 | Drawable /* d */, 3821 | XFontSet /* font_set */, 3822 | GC /* gc */, 3823 | int /* x */, 3824 | int /* y */, 3825 | _Xconst wchar_t* /* text */, 3826 | int /* num_wchars */ 3827 | ); 3828 | 3829 | extern void Xutf8DrawImageString( 3830 | Display* /* display */, 3831 | Drawable /* d */, 3832 | XFontSet /* font_set */, 3833 | GC /* gc */, 3834 | int /* x */, 3835 | int /* y */, 3836 | _Xconst char* /* text */, 3837 | int /* bytes_text */ 3838 | ); 3839 | 3840 | extern XIM XOpenIM( 3841 | Display* /* dpy */, 3842 | struct _XrmHashBucketRec* /* rdb */, 3843 | char* /* res_name */, 3844 | char* /* res_class */ 3845 | ); 3846 | 3847 | extern Status XCloseIM( 3848 | XIM /* im */ 3849 | ); 3850 | 3851 | extern char *XGetIMValues( 3852 | XIM /* im */, ... 3853 | ) _X_SENTINEL(0); 3854 | 3855 | extern char *XSetIMValues( 3856 | XIM /* im */, ... 3857 | ) _X_SENTINEL(0); 3858 | 3859 | extern Display *XDisplayOfIM( 3860 | XIM /* im */ 3861 | ); 3862 | 3863 | extern char *XLocaleOfIM( 3864 | XIM /* im*/ 3865 | ); 3866 | 3867 | extern XIC XCreateIC( 3868 | XIM /* im */, ... 3869 | ) _X_SENTINEL(0); 3870 | 3871 | extern void XDestroyIC( 3872 | XIC /* ic */ 3873 | ); 3874 | 3875 | extern void XSetICFocus( 3876 | XIC /* ic */ 3877 | ); 3878 | 3879 | extern void XUnsetICFocus( 3880 | XIC /* ic */ 3881 | ); 3882 | 3883 | extern wchar_t *XwcResetIC( 3884 | XIC /* ic */ 3885 | ); 3886 | 3887 | extern char *XmbResetIC( 3888 | XIC /* ic */ 3889 | ); 3890 | 3891 | extern char *Xutf8ResetIC( 3892 | XIC /* ic */ 3893 | ); 3894 | 3895 | extern char *XSetICValues( 3896 | XIC /* ic */, ... 3897 | ) _X_SENTINEL(0); 3898 | 3899 | extern char *XGetICValues( 3900 | XIC /* ic */, ... 3901 | ) _X_SENTINEL(0); 3902 | 3903 | extern XIM XIMOfIC( 3904 | XIC /* ic */ 3905 | ); 3906 | 3907 | extern Bool XFilterEvent( 3908 | XEvent* /* event */, 3909 | Window /* window */ 3910 | ); 3911 | 3912 | extern int XmbLookupString( 3913 | XIC /* ic */, 3914 | XKeyPressedEvent* /* event */, 3915 | char* /* buffer_return */, 3916 | int /* bytes_buffer */, 3917 | KeySym* /* keysym_return */, 3918 | Status* /* status_return */ 3919 | ); 3920 | 3921 | extern int XwcLookupString( 3922 | XIC /* ic */, 3923 | XKeyPressedEvent* /* event */, 3924 | wchar_t* /* buffer_return */, 3925 | int /* wchars_buffer */, 3926 | KeySym* /* keysym_return */, 3927 | Status* /* status_return */ 3928 | ); 3929 | 3930 | extern int Xutf8LookupString( 3931 | XIC /* ic */, 3932 | XKeyPressedEvent* /* event */, 3933 | char* /* buffer_return */, 3934 | int /* bytes_buffer */, 3935 | KeySym* /* keysym_return */, 3936 | Status* /* status_return */ 3937 | ); 3938 | 3939 | extern XVaNestedList XVaCreateNestedList( 3940 | int /*unused*/, ... 3941 | ) _X_SENTINEL(0); 3942 | 3943 | /* internal connections for IMs */ 3944 | 3945 | extern Bool XRegisterIMInstantiateCallback( 3946 | Display* /* dpy */, 3947 | struct _XrmHashBucketRec* /* rdb */, 3948 | char* /* res_name */, 3949 | char* /* res_class */, 3950 | XIDProc /* callback */, 3951 | XPointer /* client_data */ 3952 | ); 3953 | 3954 | extern Bool XUnregisterIMInstantiateCallback( 3955 | Display* /* dpy */, 3956 | struct _XrmHashBucketRec* /* rdb */, 3957 | char* /* res_name */, 3958 | char* /* res_class */, 3959 | XIDProc /* callback */, 3960 | XPointer /* client_data */ 3961 | ); 3962 | 3963 | typedef void (*XConnectionWatchProc)( 3964 | Display* /* dpy */, 3965 | XPointer /* client_data */, 3966 | int /* fd */, 3967 | Bool /* opening */, /* open or close flag */ 3968 | XPointer* /* watch_data */ /* open sets, close uses */ 3969 | ); 3970 | 3971 | 3972 | extern Status XInternalConnectionNumbers( 3973 | Display* /* dpy */, 3974 | int** /* fd_return */, 3975 | int* /* count_return */ 3976 | ); 3977 | 3978 | extern void XProcessInternalConnection( 3979 | Display* /* dpy */, 3980 | int /* fd */ 3981 | ); 3982 | 3983 | extern Status XAddConnectionWatch( 3984 | Display* /* dpy */, 3985 | XConnectionWatchProc /* callback */, 3986 | XPointer /* client_data */ 3987 | ); 3988 | 3989 | extern void XRemoveConnectionWatch( 3990 | Display* /* dpy */, 3991 | XConnectionWatchProc /* callback */, 3992 | XPointer /* client_data */ 3993 | ); 3994 | 3995 | extern void XSetAuthorization( 3996 | char * /* name */, 3997 | int /* namelen */, 3998 | char * /* data */, 3999 | int /* datalen */ 4000 | ); 4001 | 4002 | extern int _Xmbtowc( 4003 | wchar_t * /* wstr */, 4004 | char * /* str */, 4005 | int /* len */ 4006 | ); 4007 | 4008 | extern int _Xwctomb( 4009 | char * /* str */, 4010 | wchar_t /* wc */ 4011 | ); 4012 | 4013 | extern Bool XGetEventData( 4014 | Display* /* dpy */, 4015 | XGenericEventCookie* /* cookie*/ 4016 | ); 4017 | 4018 | extern void XFreeEventData( 4019 | Display* /* dpy */, 4020 | XGenericEventCookie* /* cookie*/ 4021 | ); 4022 | 4023 | #ifdef __clang__ 4024 | #pragma clang diagnostic pop 4025 | #endif 4026 | 4027 | _XFUNCPROTOEND 4028 | 4029 | #endif /* _X11_XLIB_H_ */ 4030 | --------------------------------------------------------------------------------