diff options
author | Leo Ufimtsev | 2018-01-29 20:17:07 +0000 |
---|---|---|
committer | Alexander Kurtakov | 2018-02-01 08:59:15 +0000 |
commit | 99f1cc70e851d747f5b2b5de343eacb7bc4cce6a (patch) | |
tree | 20885dcf664e422feb3feae675b59c8cfa774cd4 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java | |
parent | ceaf821b793f81ec993f2661de5a37693bc0cd05 (diff) | |
download | eclipse.platform.swt-99f1cc70e851d747f5b2b5de343eacb7bc4cce6a.tar.gz eclipse.platform.swt-99f1cc70e851d747f5b2b5de343eacb7bc4cce6a.tar.xz eclipse.platform.swt-99f1cc70e851d747f5b2b5de343eacb7bc4cce6a.zip |
Bug 529151 [Gtk] Move gtk function from OS.java to GTK.java
Benefits:
- Adding dynamic functions doesn't require one to manually link
the function in os_custom.h anymore.
This makes prototyping much faster and SWT development more user
friendly.
- NativeStats tool generates a separate category for gtk functions
(from OS.java once).
Technical details:
- SWT Tools generates <CLASS_NAME>_LOAD_FUNCTION
with GTK.java, we get GTK_LOAD_FUNCTION
- we hard-code GTK_LOAD_FUNCTION to link to gtk lib (see os.h).
- All native code is still put into os.(c|h)
- I manually Updated a few special OS_LOAD_FUNCTION calls and
removed old bindings in os_custom.h
Verified with child eclipse.
Fedora 27, Gtk3.22.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=529151
Change-Id: I6446ee5cca090022a8d984a1f92969c26e5e2f24
Signed-off-by: Leo Ufimtsev <lufimtse@redhat.com>
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java index 4a273887ec..a8a7110e26 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TreeColumn.java @@ -258,7 +258,7 @@ public int getAlignment () { */ public boolean getMoveable() { checkWidget(); - return OS.gtk_tree_view_column_get_reorderable (handle); + return GTK.gtk_tree_view_column_get_reorderable (handle); } /** @@ -290,7 +290,7 @@ public Tree getParent () { */ public boolean getResizable () { checkWidget(); - return OS.gtk_tree_view_column_get_resizable (handle); + return GTK.gtk_tree_view_column_get_resizable (handle); } /** @@ -328,11 +328,11 @@ public int getWidth () { int getWidthInPixels () { checkWidget(); - if (!OS.gtk_tree_view_column_get_visible (handle)) { + if (!GTK.gtk_tree_view_column_get_visible (handle)) { return 0; } - if (useFixedWidth) return OS.gtk_tree_view_column_get_fixed_width (handle); - return OS.gtk_tree_view_column_get_width (handle); + if (useFixedWidth) return GTK.gtk_tree_view_column_get_fixed_width (handle); + return GTK.gtk_tree_view_column_get_width (handle); } @Override @@ -346,7 +346,7 @@ long /*int*/ gtk_clicked (long /*int*/ widget) { */ boolean doubleClick = false; boolean postEvent = true; - long /*int*/ eventPtr = OS.gtk_get_current_event (); + long /*int*/ eventPtr = GTK.gtk_get_current_event (); if (eventPtr != 0) { GdkEventButton gdkEvent = new GdkEventButton (); OS.memmove (gdkEvent, eventPtr, GdkEventButton.sizeof); @@ -394,7 +394,7 @@ long /*int*/ gtk_mnemonic_activate (long /*int*/ widget, long /*int*/ arg1) { long /*int*/ gtk_size_allocate (long /*int*/ widget, long /*int*/ allocation) { useFixedWidth = false; GtkAllocation widgetAllocation = new GtkAllocation(); - OS.gtk_widget_get_allocation (widget, widgetAllocation); + GTK.gtk_widget_get_allocation (widget, widgetAllocation); int x = widgetAllocation.x; int width = widgetAllocation.width; if (x != lastX) { @@ -446,11 +446,11 @@ public void pack () { } } } else { - long /*int*/ iter = OS.g_malloc (OS.GtkTreeIter_sizeof ()); - if (OS.gtk_tree_model_get_iter_first (parent.modelHandle, iter)) { + long /*int*/ iter = OS.g_malloc (GTK.GtkTreeIter_sizeof ()); + if (GTK.gtk_tree_model_get_iter_first (parent.modelHandle, iter)) { do { width = Math.max (width, parent.calculateWidth (handle, iter, true)); - } while (OS.gtk_tree_model_iter_next(parent.modelHandle, iter)); + } while (GTK.gtk_tree_model_iter_next(parent.modelHandle, iter)); } OS.g_free (iter); } @@ -574,10 +574,10 @@ public void setImage (Image image) { if (imageIndex == -1) imageIndex = headerImageList.add (image); long /*int*/ pixbuf = headerImageList.getPixbuf (imageIndex); gtk_image_set_from_pixbuf (imageHandle, pixbuf); - OS.gtk_widget_show (imageHandle); + GTK.gtk_widget_show (imageHandle); } else { gtk_image_set_from_pixbuf (imageHandle, 0); - OS.gtk_widget_hide (imageHandle); + GTK.gtk_widget_hide (imageHandle); } } @@ -604,16 +604,16 @@ public void setImage (Image image) { */ public void setMoveable (boolean moveable) { checkWidget(); - OS.gtk_tree_view_column_set_reorderable (handle, moveable); + GTK.gtk_tree_view_column_set_reorderable (handle, moveable); } @Override void setOrientation (boolean create) { if ((parent.style & SWT.RIGHT_TO_LEFT) != 0 || !create) { if (buttonHandle != 0) { - int dir = (parent.style & SWT.RIGHT_TO_LEFT) != 0 ? OS.GTK_TEXT_DIR_RTL : OS.GTK_TEXT_DIR_LTR; - OS.gtk_widget_set_direction (buttonHandle, dir); - OS.gtk_container_forall (buttonHandle, display.setDirectionProc, dir); + int dir = (parent.style & SWT.RIGHT_TO_LEFT) != 0 ? GTK.GTK_TEXT_DIR_RTL : GTK.GTK_TEXT_DIR_LTR; + GTK.gtk_widget_set_direction (buttonHandle, dir); + GTK.gtk_container_forall (buttonHandle, display.setDirectionProc, dir); } } } @@ -632,7 +632,7 @@ void setOrientation (boolean create) { */ public void setResizable (boolean resizable) { checkWidget(); - OS.gtk_tree_view_column_set_resizable (handle, resizable); + GTK.gtk_tree_view_column_set_resizable (handle, resizable); } @Override @@ -642,11 +642,11 @@ public void setText (String string) { super.setText (string); char [] chars = fixMnemonic (string); byte [] buffer = Converter.wcsToMbcs (chars, true); - OS.gtk_label_set_text_with_mnemonic (labelHandle, buffer); + GTK.gtk_label_set_text_with_mnemonic (labelHandle, buffer); if (string.length () != 0) { - OS.gtk_widget_show (labelHandle); + GTK.gtk_widget_show (labelHandle); } else { - OS.gtk_widget_hide (labelHandle); + GTK.gtk_widget_hide (labelHandle); } } @@ -704,15 +704,15 @@ void setWidthInPixels (int width) { if (width == lastWidth) return; if (width > 0) { useFixedWidth = true; - OS.gtk_tree_view_column_set_fixed_width (handle, width); + GTK.gtk_tree_view_column_set_fixed_width (handle, width); } /* * Bug in GTK. For some reason, calling gtk_tree_view_column_set_visible() * when the parent is not realized fails to show the column. The fix is to * ensure that the table has been realized. */ - if (width != 0) OS.gtk_widget_realize (parent.handle); - OS.gtk_tree_view_column_set_visible (handle, width != 0); + if (width != 0) GTK.gtk_widget_realize (parent.handle); + GTK.gtk_tree_view_column_set_visible (handle, width != 0); lastWidth = width; /* * Bug in GTK. When the column is made visible the event window of column @@ -723,7 +723,7 @@ void setWidthInPixels (int width) { */ if (width != 0) { if (buttonHandle != 0) { - long /*int*/ window = OS.gtk_widget_get_parent_window (buttonHandle); + long /*int*/ window = GTK.gtk_widget_get_parent_window (buttonHandle); if (window != 0) { long /*int*/ windowList = OS.gdk_window_get_children (window); if (windowList != 0) { |