40 |
#include "gnu_java_awt_peer_gtk_GtkMenuItemPeer.h" |
#include "gnu_java_awt_peer_gtk_GtkMenuItemPeer.h" |
41 |
#include "gnu_java_awt_peer_gtk_GtkComponentPeer.h" |
#include "gnu_java_awt_peer_gtk_GtkComponentPeer.h" |
42 |
|
|
43 |
|
static jmethodID postMenuActionEventID; |
44 |
|
|
45 |
|
void |
46 |
|
cp_gtk_menuitem_init_jni (void) |
47 |
|
{ |
48 |
|
jclass gtkmenuitempeer; |
49 |
|
|
50 |
|
gtkmenuitempeer = (*cp_gtk_gdk_env())->FindClass (cp_gtk_gdk_env(), |
51 |
|
"gnu/java/awt/peer/gtk/GtkMenuItemPeer"); |
52 |
|
|
53 |
|
postMenuActionEventID = (*cp_gtk_gdk_env())->GetMethodID (cp_gtk_gdk_env(), |
54 |
|
gtkmenuitempeer, |
55 |
|
"postMenuActionEvent", |
56 |
|
"()V"); |
57 |
|
} |
58 |
|
|
59 |
static void item_activate_cb (GtkMenuItem *item __attribute__((unused)), |
static void item_activate_cb (GtkMenuItem *item __attribute__((unused)), |
60 |
jobject peer_obj); |
jobject peer_obj); |
61 |
|
|
125 |
if (label) |
if (label) |
126 |
{ |
{ |
127 |
font_desc = pango_font_description_from_string (font_name); |
font_desc = pango_font_description_from_string (font_name); |
128 |
pango_font_description_set_size (font_desc, size * dpi_conversion_factor); |
pango_font_description_set_size (font_desc, |
129 |
|
size * cp_gtk_dpi_conversion_factor); |
130 |
|
|
131 |
if (style & AWT_STYLE_BOLD) |
if (style & AWT_STYLE_BOLD) |
132 |
pango_font_description_set_weight (font_desc, PANGO_WEIGHT_BOLD); |
pango_font_description_set_weight (font_desc, PANGO_WEIGHT_BOLD); |
187 |
item_activate_cb (GtkMenuItem *item __attribute__((unused)), jobject peer_obj) |
item_activate_cb (GtkMenuItem *item __attribute__((unused)), jobject peer_obj) |
188 |
{ |
{ |
189 |
gdk_threads_leave (); |
gdk_threads_leave (); |
190 |
(*gdk_env())->CallVoidMethod (gdk_env(), peer_obj, |
(*cp_gtk_gdk_env())->CallVoidMethod (cp_gtk_gdk_env(), peer_obj, |
191 |
postMenuActionEventID); |
postMenuActionEventID); |
192 |
gdk_threads_enter (); |
gdk_threads_enter (); |
193 |
} |
} |