< prev index next >

src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.c

Print this page




2530     }
2531 
2532     return result;
2533 }
2534 
2535 /***********************************************/
2536 static jobject get_string_property(JNIEnv *env, GtkSettings* settings,
2537                                                              const gchar* key) {
2538     jobject result = NULL;
2539     gchar*  strval = NULL;
2540 
2541     (*fp_g_object_get)(settings, key, &strval, NULL);
2542     result = (*env)->NewStringUTF(env, strval);
2543     (*fp_g_free)(strval);
2544 
2545     return result;
2546 }
2547 
2548 static jobject get_integer_property(JNIEnv *env, GtkSettings* settings,
2549                                                              const gchar* key) {
2550     gint intval = NULL;
2551     (*fp_g_object_get)(settings, key, &intval, NULL);
2552     return create_Integer(env, intval);
2553 }
2554 
2555 static jobject get_boolean_property(JNIEnv *env, GtkSettings* settings,
2556                                                              const gchar* key) {
2557     gint intval = NULL;
2558     (*fp_g_object_get)(settings, key, &intval, NULL);
2559     return create_Boolean(env, intval);
2560 }
2561 
2562 static jobject gtk3_get_setting(JNIEnv *env, Setting property)
2563 {
2564     GtkSettings* settings = (*fp_gtk_settings_get_default)();
2565 
2566     switch (property)
2567     {
2568         case GTK_FONT_NAME:
2569             return get_string_property(env, settings, "gtk-font-name");
2570         case GTK_ICON_SIZES:
2571             return get_string_property(env, settings, "gtk-icon-sizes");
2572         case GTK_CURSOR_BLINK:
2573             return get_boolean_property(env, settings, "gtk-cursor-blink");
2574         case GTK_CURSOR_BLINK_TIME:
2575             return get_integer_property(env, settings, "gtk-cursor-blink-time");
2576     }
2577 




2530     }
2531 
2532     return result;
2533 }
2534 
2535 /***********************************************/
2536 static jobject get_string_property(JNIEnv *env, GtkSettings* settings,
2537                                                              const gchar* key) {
2538     jobject result = NULL;
2539     gchar*  strval = NULL;
2540 
2541     (*fp_g_object_get)(settings, key, &strval, NULL);
2542     result = (*env)->NewStringUTF(env, strval);
2543     (*fp_g_free)(strval);
2544 
2545     return result;
2546 }
2547 
2548 static jobject get_integer_property(JNIEnv *env, GtkSettings* settings,
2549                                                              const gchar* key) {
2550     gint intval = 0;
2551     (*fp_g_object_get)(settings, key, &intval, NULL);
2552     return create_Integer(env, intval);
2553 }
2554 
2555 static jobject get_boolean_property(JNIEnv *env, GtkSettings* settings,
2556                                                              const gchar* key) {
2557     gint intval = 0;
2558     (*fp_g_object_get)(settings, key, &intval, NULL);
2559     return create_Boolean(env, intval);
2560 }
2561 
2562 static jobject gtk3_get_setting(JNIEnv *env, Setting property)
2563 {
2564     GtkSettings* settings = (*fp_gtk_settings_get_default)();
2565 
2566     switch (property)
2567     {
2568         case GTK_FONT_NAME:
2569             return get_string_property(env, settings, "gtk-font-name");
2570         case GTK_ICON_SIZES:
2571             return get_string_property(env, settings, "gtk-icon-sizes");
2572         case GTK_CURSOR_BLINK:
2573             return get_boolean_property(env, settings, "gtk-cursor-blink");
2574         case GTK_CURSOR_BLINK_TIME:
2575             return get_integer_property(env, settings, "gtk-cursor-blink-time");
2576     }
2577 


< prev index next >