473 |
} |
} |
474 |
|
|
475 |
JNIEXPORT void JNICALL |
JNIEXPORT void JNICALL |
476 |
|
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetSetParent |
477 |
|
(JNIEnv *env, jobject obj, jobject parent) |
478 |
|
{ |
479 |
|
void *ptr; |
480 |
|
void *parent_ptr; |
481 |
|
GtkWidget *widget; |
482 |
|
GtkWidget *parent_widget; |
483 |
|
|
484 |
|
ptr = NSA_GET_PTR (env, obj); |
485 |
|
parent_ptr = NSA_GET_PTR (env, parent); |
486 |
|
|
487 |
|
gdk_threads_enter (); |
488 |
|
|
489 |
|
widget = GTK_WIDGET (ptr); |
490 |
|
parent_widget = GTK_WIDGET (parent_ptr); |
491 |
|
|
492 |
|
if (GTK_IS_WINDOW (parent_widget)) |
493 |
|
{ |
494 |
|
GList *children = gtk_container_children |
495 |
|
(GTK_CONTAINER (GTK_BIN (parent_widget)->child)); |
496 |
|
|
497 |
|
if (GTK_IS_MENU_BAR (children->data)) |
498 |
|
gtk_layout_put (GTK_LAYOUT (children->next->data), widget, 0, 0); |
499 |
|
else |
500 |
|
gtk_layout_put (GTK_LAYOUT (children->data), widget, 0, 0); |
501 |
|
} |
502 |
|
else |
503 |
|
if (GTK_IS_SCROLLED_WINDOW (parent_widget)) |
504 |
|
{ |
505 |
|
gtk_scrolled_window_add_with_viewport |
506 |
|
(GTK_SCROLLED_WINDOW (parent_widget), widget); |
507 |
|
gtk_viewport_set_shadow_type (GTK_VIEWPORT (widget->parent), |
508 |
|
GTK_SHADOW_NONE); |
509 |
|
|
510 |
|
} |
511 |
|
else |
512 |
|
gtk_layout_put (GTK_LAYOUT (parent_widget), widget, 0, 0); |
513 |
|
|
514 |
|
gdk_threads_leave (); |
515 |
|
} |
516 |
|
|
517 |
|
JNIEXPORT void JNICALL |
518 |
|
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetSetSensitive |
519 |
|
(JNIEnv *env, jobject obj, jboolean sensitive) |
520 |
|
{ |
521 |
|
void *ptr; |
522 |
|
|
523 |
|
ptr = NSA_GET_PTR (env, obj); |
524 |
|
|
525 |
|
gdk_threads_enter (); |
526 |
|
|
527 |
|
gtk_widget_set_sensitive (GTK_WIDGET (ptr), sensitive); |
528 |
|
|
529 |
|
gdk_threads_leave (); |
530 |
|
} |
531 |
|
|
532 |
|
JNIEXPORT void JNICALL |
533 |
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetRequestFocus |
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetRequestFocus |
534 |
(JNIEnv *env, jobject obj) |
(JNIEnv *env, jobject obj) |
535 |
{ |
{ |
968 |
return NULL; |
return NULL; |
969 |
} |
} |
970 |
|
|
|
#define WIDGET_CLASS(w) GTK_WIDGET_CLASS (GTK_OBJECT (w)->klass) |
|
|
|
|
|
void |
|
|
set_parent (GtkWidget *widget, GtkContainer *parent) |
|
|
{ |
|
|
if (GTK_IS_WINDOW (parent)) |
|
|
{ |
|
|
GList *children = gtk_container_children |
|
|
(GTK_CONTAINER (GTK_BIN (parent)->child)); |
|
|
|
|
|
if (GTK_IS_MENU_BAR (children->data)) |
|
|
gtk_layout_put (GTK_LAYOUT (children->next->data), widget, 0, 0); |
|
|
else /* GTK_IS_LAYOUT (children->data) */ |
|
|
gtk_layout_put (GTK_LAYOUT (children->data), widget, 0, 0); |
|
|
} |
|
|
else |
|
|
if (GTK_IS_SCROLLED_WINDOW (parent)) |
|
|
{ |
|
|
/* if (WIDGET_CLASS (widget)->set_scroll_adjustments_signal) */ |
|
|
/* gtk_container_add (GTK_CONTAINER (parent), widget); */ |
|
|
/* else */ |
|
|
/* { */ |
|
|
gtk_scrolled_window_add_with_viewport |
|
|
(GTK_SCROLLED_WINDOW (parent), widget); |
|
|
gtk_viewport_set_shadow_type (GTK_VIEWPORT (widget->parent), |
|
|
GTK_SHADOW_NONE); |
|
|
/* } */ |
|
|
|
|
|
} |
|
|
/* gtk_layout_put */ |
|
|
/* (GTK_LAYOUT (GTK_BIN (parent)->child), widget, 0, 0); */ |
|
|
|
|
|
/* if (GTK_IS_SCROLLED_WINDOW (parent)) */ |
|
|
/* gtk_layout_put */ |
|
|
/* (GTK_LAYOUT (GTK_BIN (GTK_BIN (parent)->child)->child), widget, 0, 0); */ |
|
|
else |
|
|
gtk_layout_put (GTK_LAYOUT (parent), widget, 0, 0); |
|
|
} |
|
|
|
|
971 |
JNIEXPORT jboolean JNICALL |
JNIEXPORT jboolean JNICALL |
972 |
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_isEnabled |
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_isEnabled |
973 |
(JNIEnv *env, jobject obj) |
(JNIEnv *env, jobject obj) |
999 |
return retval; |
return retval; |
1000 |
} |
} |
1001 |
|
|
|
JNIEXPORT void JNICALL |
|
|
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2Ljava_lang_String_2 |
|
|
(JNIEnv *env, jobject obj, jstring jname, jstring jvalue) |
|
|
{ |
|
|
const char *name; |
|
|
const char *value; |
|
|
void *ptr; |
|
|
|
|
|
ptr = NSA_GET_PTR (env, obj); |
|
|
name = (*env)->GetStringUTFChars (env, jname, NULL); |
|
|
value = (*env)->GetStringUTFChars (env, jvalue, NULL); |
|
|
|
|
|
gdk_threads_enter(); |
|
|
g_object_set(ptr, name, value, NULL); |
|
|
gdk_threads_leave(); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
(*env)->ReleaseStringUTFChars (env, jvalue, value); |
|
|
} |
|
|
|
|
|
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2Z |
|
|
(JNIEnv *env, jobject obj, jstring jname, jboolean value) |
|
|
{ |
|
|
const char *name; |
|
|
void *ptr; |
|
|
|
|
|
ptr = NSA_GET_PTR (env, obj); |
|
|
|
|
|
name = (*env)->GetStringUTFChars (env, jname, NULL); |
|
|
|
|
|
gdk_threads_enter(); |
|
|
g_object_set(ptr, name, value, NULL); |
|
|
gdk_threads_leave(); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
} |
|
|
|
|
|
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2I |
|
|
(JNIEnv *env, jobject obj, jstring jname, jint value) |
|
|
{ |
|
|
const char *name; |
|
|
void *ptr; |
|
|
|
|
|
ptr = NSA_GET_PTR (env, obj); |
|
|
name = (*env)->GetStringUTFChars (env, jname, NULL); |
|
|
|
|
|
gdk_threads_enter(); |
|
|
g_object_set(ptr, name, value, NULL); |
|
|
gdk_threads_leave(); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
} |
|
|
|
|
|
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2F |
|
|
(JNIEnv *env, jobject obj, jstring jname, jfloat value) |
|
|
{ |
|
|
const char *name; |
|
|
void *ptr; |
|
|
|
|
|
ptr = NSA_GET_PTR (env, obj); |
|
|
name = (*env)->GetStringUTFChars (env, jname, NULL); |
|
|
|
|
|
gdk_threads_enter(); |
|
|
g_object_set(ptr, name, value, NULL); |
|
|
gdk_threads_leave(); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
} |
|
|
|
|
|
JNIEXPORT void JNICALL |
|
|
Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2Ljava_lang_Object_2 |
|
|
(JNIEnv *env, jobject obj1, jstring jname, jobject obj2) |
|
|
{ |
|
|
const char *name; |
|
|
void *ptr1, *ptr2; |
|
|
|
|
|
ptr1 = NSA_GET_PTR (env, obj1); |
|
|
ptr2 = NSA_GET_PTR (env, obj2); |
|
|
|
|
|
name = (*env)->GetStringUTFChars (env, jname, NULL); |
|
|
|
|
|
/* special case to catch where we need to set the parent */ |
|
|
if (!strcmp (name, "parent")) |
|
|
{ |
|
|
gdk_threads_enter (); |
|
|
set_parent (GTK_WIDGET (ptr1), GTK_CONTAINER (ptr2)); |
|
|
gdk_threads_leave (); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
return; |
|
|
} |
|
|
|
|
|
gdk_threads_enter(); |
|
|
g_object_set(ptr1, name, ptr2, NULL); |
|
|
gdk_threads_leave(); |
|
|
|
|
|
(*env)->ReleaseStringUTFChars (env, jname, name); |
|
|
} |
|
|
|
|
1002 |
static gboolean |
static gboolean |
1003 |
filter_expose_event_handler (GtkWidget *widget, GdkEvent *event, jobject peer) |
filter_expose_event_handler (GtkWidget *widget, GdkEvent *event, jobject peer) |
1004 |
{ |
{ |