annotate org.eclipse.swt.gtk.linux.x86/src/org/eclipse/swt/internal/c/gmodule.d @ 120:536e43f63c81

Comprehensive update for Win32/Linux32 dmd-2.053/dmd-1.068+Tango-r5661 ===D2=== * added [Try]Immutable/Const/Shared templates to work with differenses in D1/D2 instead of version statements used these templates to work with strict type storage rules of dmd-2.053 * com.ibm.icu now also compilable with D2, but not tested yet * small fixes Snippet288 - shared data is in TLS ===Phobos=== * fixed critical bugs in Phobos implemention completely incorrect segfault prone fromStringz (Linux's port ruthless killer) terrible, incorrect StringBuffer realization (StyledText killer) * fixed small bugs as well Snippet72 - misprint in the snippet * implemented missed functionality for Phobos ByteArrayOutputStream implemented (image loading available) formatting correctly works for all DWT's cases As a result, folowing snippets now works with Phobos (Snippet### - what is fixed): Snippet24, 42, 111, 115, 130, 235, 276 - bad string formatting Snippet48, 282 - crash on image loading Snippet163, 189, 211, 213, 217, 218, 222 - crash on copy/cut in StyledText Snippet244 - hang-up ===Tango=== * few changes for the latest Tango trunc-r5661 * few small performance improvments ===General=== * implMissing-s for only one version changed to implMissingInTango/InPhobos * incorrect calls to Format in toString-s fixed * fixed loading \uXXXX characters in ResourceBundle * added good UTF-8 support for StyledText, TextLayout (Win32) and friends UTF functions revised and tested. It is now in java.nonstandard.*Utf modules StyledText and TextLayout (Win32) modules revised for UTF-8 support * removed small diferences in most identical files in *.swt.* folders *.swt.internal.image, *.swt.events and *.swt.custom are identical in Win32/Linux32 now 179 of 576 (~31%) files in *.swt.* folders are fully identical * Win32: snippets now have right subsystem, pretty icons and native system style controls * small fixes in snippets Snippet44 - it's not Snippet44 Snippet212 - functions work with different images and offsets arrays Win32: Snippet282 - crash on close if the button has an image Snippet293 - setGrayed is commented and others Win32: As a result, folowing snippets now works Snippet68 - color doesn't change Snippet163, 189, 211, 213, 217, 218, 222 - UTF-8 issues (see above) Snippet193 - no tabel headers
author Denis Shelomovskij <verylonglogin.reg@gmail.com>
date Sat, 09 Jul 2011 15:50:20 +0300
parents fb3aa8075988
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1 /******************************************************************************
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 Based on the generated files from the BCD tool
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3 modified by: Frank Benoit <keinfarbton@googlemail.com>
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4 ******************************************************************************/
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
5 module org.eclipse.swt.internal.c.gmodule;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
6
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
7 import java.lang.all;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
8
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
9 public import org.eclipse.swt.internal.c.glib_object;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
10
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
11 extern(C):
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
12 align(4):
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
13
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
14 alias void GModule;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
15 alias void function(void *) _BCD_func__1618;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
16 alias _BCD_func__1618 GModuleUnload;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
17 alias char * function(void *) _BCD_func__1619;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
18 alias _BCD_func__1619 GModuleCheckInit;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
19 enum GModuleFlags {
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20 G_MODULE_BIND_LAZY=1,
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
21 G_MODULE_BIND_LOCAL=2,
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
22 G_MODULE_BIND_MASK=3,
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
23 }
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
24 alias int function(void *, void *, void *) _BCD_func__1621;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
25 alias void function(void *) _BCD_func__1638;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
26 alias int function(void *, void *, void *) _BCD_func__1642;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
27 alias void function(_GScanner *, char *, int) _BCD_func__1645;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
28 alias int function(void *, _GString *, void *) _BCD_func__1718;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
29 alias void function(void *, void *, void *, _GError * *) _BCD_func__1737;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
30 alias int function(void *, void *, void *, _GError * *) _BCD_func__1738;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
31 alias int function(char *, char *, void *, _GError * *) _BCD_func__1739;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
32 alias void * function(void *, void *) _BCD_func__1750;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
33 alias void function(_GNode *, void *) _BCD_func__1751;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
34 alias int function(_GNode *, void *) _BCD_func__1752;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
35 alias void function(char *) _BCD_func__1760;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
36 alias void function(char *, int, char *, void *) _BCD_func__1762;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
37 alias int function(_GIOChannel *, int, void *) _BCD_func__1782;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
38 alias int function(_GPollFD *, uint, int) _BCD_func__1835;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
39 alias void function() _BCD_func__1841;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
40 alias void function(int, int, void *) _BCD_func__1842;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
41 alias int function(void *) _BCD_func__1843;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
42 alias void function(_GHookList *, _GHook *) _BCD_func__1879;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
43 alias int function(_GHook *, void *) _BCD_func__1880;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
44 alias void function(_GHook *, void *) _BCD_func__1881;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
45 alias int function(_GHook *, _GHook *) _BCD_func__1882;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
46 alias void function(uint, void *, void *) _BCD_func__1916;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
47 alias int function(char *, char *, uint) _BCD_func__1919;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
48 alias char * function(void *) _BCD_func__1920;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
49 alias void * function(void *) _BCD_func__1929;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
50 alias char * function(char *, void *) _BCD_func__2114;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
51 alias void function(void *, void *, void *) _BCD_func__2115;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
52 alias uint function(void *) _BCD_func__2116;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
53 alias void function(void *, void *) _BCD_func__2117;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
54 alias int function(void *, void *) _BCD_func__2118;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
55 alias int function(void *, void *, void *) _BCD_func__2119;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
56 alias int function(void *, void *) _BCD_func__2120;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
57 version(DYNLINK){
113
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
58 mixin(gshared!(
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
59 "extern (C) char * function(char *, char *)g_module_build_path;
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
60 extern (C) char * function(void *)g_module_name;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
61 extern (C) int function(void *, char *, void * *)g_module_symbol;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
62 extern (C) char * function()g_module_error;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
63 extern (C) void function(void *)g_module_make_resident;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
64 extern (C) int function(void *)g_module_close;
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
65 extern (C) void * function(char *, int)g_module_open;
113
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
66 extern (C) int function()g_module_supported;"
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
67 ));
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
68
113
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
69 Symbol[] symbols;
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
70 static this () {
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
71 symbols = [
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
72 Symbol("g_module_build_path", cast(void**)& g_module_build_path),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
73 Symbol("g_module_name", cast(void**)& g_module_name),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
74 Symbol("g_module_symbol", cast(void**)& g_module_symbol),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
75 Symbol("g_module_error", cast(void**)& g_module_error),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
76 Symbol("g_module_make_resident", cast(void**)& g_module_make_resident),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
77 Symbol("g_module_close", cast(void**)& g_module_close),
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
78 Symbol("g_module_open", cast(void**)& g_module_open),
120
536e43f63c81 Comprehensive update for Win32/Linux32 dmd-2.053/dmd-1.068+Tango-r5661
Denis Shelomovskij <verylonglogin.reg@gmail.com>
parents: 113
diff changeset
79 Symbol("g_module_supported", cast(void**)& g_module_supported)
113
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
80 ];
fb3aa8075988 D2 support for the linux port.
Jacob Carlborg <doob@me.com>
parents: 25
diff changeset
81 }
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
82
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
83 } else { // version(DYNLINK)
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
84 extern (C) char * g_module_build_path(char *, char *);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
85 extern (C) char * g_module_name(void *);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
86 extern (C) int g_module_symbol(void *, char *, void * *);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
87 extern (C) char * g_module_error();
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
88 extern (C) void g_module_make_resident(void *);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
89 extern (C) int g_module_close(void *);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
90 extern (C) void * g_module_open(char *, int);
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
91 extern (C) int g_module_supported();
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
92 } // version(DYNLINK)