📄 natgtklabelpeer.cc
字号:
// Native Gtk AWT label code.#include <config.h>#include <gcj/cni.h>#include "gtkcommon.h"#include <gnu/awt/gtk/GtkLabelPeer.h>#include <java/awt/Label.h>voidgnu::awt::gtk::GtkLabelPeer::setText (java::lang::String *text){ _Jv_GdkThreadLock sync; jsize len = 0; if (text) len = JvGetStringUTFLength (text); // FIXME: this can allocate an unbounded amount. Should use heap // even though it is slower. char buf[len + 1]; if (text) JvGetStringUTFRegion (text, 0, len, buf); buf[len] = '\0'; gtk_label_set_text (GTK_LABEL (ptr), buf);}voidgnu::awt::gtk::GtkLabelPeer::setAlignment (jint alignment){ using namespace java::awt; gfloat value = 0.5; if (alignment == Label::LEFT) value = 0.0; else if (alignment == Label::RIGHT) value = 1.0; _Jv_GdkThreadLock sync; gtk_misc_set_alignment (GTK_MISC (ptr), 0.5f, value);}voidgnu::awt::gtk::GtkLabelPeer::create (){ if (! ptr) { _Jv_GdkThreadLock sync; // This is a little inefficient. ptr = (gnu::gcj::RawData *) gtk_label_new (""); using namespace ::java::awt; Label *label = reinterpret_cast<Label *> (awtComponent); setText (label->getText ()); setAlignment (label->getAlignment ()); } gnu::awt::gtk::GtkComponentPeer::create ();}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -