JNIEXPORT jint JNICALL Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkEntryGetBorderWidth (JNIEnv *env, jobject obj) { void *ptr; int border_width = 0; ptr = NSA_GET_PTR (env, obj); gdk_threads_enter (); border_width = get_border_width (GTK_WIDGET (ptr)); gdk_threads_leave (); return border_width; }
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_create (JNIEnv *env, jobject obj, jint text_width) { GtkWidget *entry; /* Create global reference and save it for future use */ NSA_SET_GLOBAL_REF (env, obj); gdk_threads_enter (); entry = gtk_entry_new (); gtk_widget_set_size_request (entry, text_width + 2 * get_border_width (entry), -1); gdk_threads_leave (); NSA_SET_PTR (env, obj, entry); }
void ButtonBox::v_rearrange_children() { #ifdef NDEBUG testInvariant(TEST_EXPANDABLE_VISIBLE_COUNT); #endif ProxyContainer proxy_container(*this); if(is_custom_size_request()) { int a, b; on_size_request(a,b); } if(_n_visible_children==0) return; Real inv_childrens_size_request = 1.f/Real(_expandable_childrens_size_request); Real additional_size = MAX(0.f, Real(proxy_container.get_height() - proxy_container.get_children_size_request_height())); Real single_space = additional_size; int x_pos; int max_child_w; int max_child_h; if(get_is_horizontal()) { max_child_w = MAX(_max_child_height, _max_child_height); max_child_h = MAX(_max_child_width, _max_child_width); }else { max_child_w = MAX(_max_child_width, _max_child_width); max_child_h = MAX(_max_child_height, _max_child_height); } Real cursor = get_border_width(); ButtonBoxStyle l = get_layout(); switch(get_layout()) { case BUTTONBOX_EDGE: single_space = additional_size / Real(_n_visible_children-1); break; case BUTTONBOX_START: break; case BUTTONBOX_END: cursor += additional_size; break; case BUTTONBOX_CENTER: cursor += additional_size*0.5f; break; case BUTTONBOX_SPREAD: default: single_space = additional_size / Real(_n_visible_children+1); } x_pos = MAX(get_border_width(), (proxy_container.get_width()-max_child_w)/2); int i=0; for(BoxChildContainerList::iterator iter = _start_children.begin(); iter!=_end_children.end();) { if(iter==_start_children.end()) { iter = _end_children.begin(); continue; } g_assert(iter->child); g_assert(iter->child->get_size_request_width()>=0); g_assert(iter->child->get_size_request_height()>=0); ProxyChild child(*this, *iter->child); if(iter->child->is_visible()) { switch(get_layout()) { case BUTTONBOX_EDGE: break; case BUTTONBOX_START: case BUTTONBOX_END: case BUTTONBOX_CENTER: break; case BUTTONBOX_SPREAD: default: cursor += single_space; cursor += get_spacing(); } child.set_allocation(x_pos, round(cursor), max_child_w, max_child_h); cursor += max_child_h; switch(get_layout()) { case BUTTONBOX_EDGE: cursor += single_space; cursor += get_spacing(); break; case BUTTONBOX_START: case BUTTONBOX_END: case BUTTONBOX_CENTER: cursor += get_spacing(); break; case BUTTONBOX_SPREAD: default: break; } ++i; } ++iter; } }