41 |
|
|
42 |
JNIEXPORT void JNICALL |
JNIEXPORT void JNICALL |
43 |
Java_gnu_java_awt_peer_gtk_GtkLabelPeer_create |
Java_gnu_java_awt_peer_gtk_GtkLabelPeer_create |
44 |
(JNIEnv *env, jobject obj) |
(JNIEnv *env, jobject obj, jstring text, jfloat xalign) |
45 |
{ |
{ |
46 |
GtkWidget *label; |
GtkWidget *label; |
47 |
|
GtkWidget *ebox; |
48 |
|
GtkContainer *ebox_container; |
49 |
|
const char *str; |
50 |
|
|
51 |
|
str = (*env)->GetStringUTFChars (env, text, 0); |
52 |
|
|
53 |
|
gdk_threads_enter (); |
54 |
|
|
55 |
|
ebox = gtk_event_box_new (); |
56 |
|
ebox_container = GTK_CONTAINER (ebox); |
57 |
|
label = gtk_label_new (str); |
58 |
|
gtk_misc_set_alignment (GTK_MISC (label), xalign, 0.5); |
59 |
|
gtk_container_add (ebox_container, label); |
60 |
|
gtk_widget_show (label); |
61 |
|
|
62 |
|
gdk_threads_leave (); |
63 |
|
|
64 |
|
(*env)->ReleaseStringUTFChars (env, text, str); |
65 |
|
|
66 |
|
NSA_SET_PTR (env, obj, ebox); |
67 |
|
} |
68 |
|
|
69 |
|
JNIEXPORT void JNICALL |
70 |
|
Java_gnu_java_awt_peer_gtk_GtkLabelPeer_setText |
71 |
|
(JNIEnv *env, jobject obj, jstring text) |
72 |
|
{ |
73 |
|
const char *str; |
74 |
|
void *ptr; |
75 |
|
GtkWidget *label; |
76 |
|
|
77 |
|
ptr = NSA_GET_PTR (env, obj); |
78 |
|
|
79 |
|
str = (*env)->GetStringUTFChars (env, text, 0); |
80 |
|
|
81 |
gdk_threads_enter (); |
gdk_threads_enter (); |
82 |
|
|
83 |
label = gtk_label_new (NULL); |
label = gtk_bin_get_child (GTK_BIN(ptr)); |
84 |
|
|
85 |
|
gtk_label_set_label (GTK_LABEL (label), str); |
86 |
|
|
87 |
gdk_threads_leave (); |
gdk_threads_leave (); |
88 |
|
|
89 |
NSA_SET_PTR (env, obj, label); |
(*env)->ReleaseStringUTFChars (env, text, str); |
90 |
|
} |
91 |
|
|
92 |
|
JNIEXPORT void JNICALL |
93 |
|
Java_gnu_java_awt_peer_gtk_GtkLabelPeer_setAlignment |
94 |
|
(JNIEnv *env, jobject obj, jfloat xalign) |
95 |
|
{ |
96 |
|
void *ptr; |
97 |
|
GtkWidget *label; |
98 |
|
|
99 |
|
ptr = NSA_GET_PTR (env, obj); |
100 |
|
|
101 |
|
gdk_threads_enter (); |
102 |
|
|
103 |
|
label = gtk_bin_get_child (GTK_BIN(ptr)); |
104 |
|
|
105 |
|
gtk_misc_set_alignment (GTK_MISC (label), xalign, 0.5); |
106 |
|
|
107 |
|
gdk_threads_leave (); |
108 |
} |
} |