summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
diff options
context:
space:
mode:
authorFelipe Heidrich <fheidric>2010-12-17 21:48:04 +0000
committerFelipe Heidrich <fheidric>2010-12-17 21:48:04 +0000
commit1c8d6d064e4a8a70316f776a21806c7dda140423 (patch)
treea013b3317233078ea393b78e85ad02a9fd262ac2 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
parentd8c7ac1c238569192a4106f29243a448a4e0192d (diff)
downloadeclipse.platform.swt-1c8d6d064e4a8a70316f776a21806c7dda140423.tar.gz
eclipse.platform.swt-1c8d6d064e4a8a70316f776a21806c7dda140423.tar.xz
eclipse.platform.swt-1c8d6d064e4a8a70316f776a21806c7dda140423.zip
Bug 29779 - BIDI: lack of ability to change orientation of widget in runtime [no public methods yet]
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
index d98c2823ac..ab048052e3 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
@@ -745,13 +745,14 @@ public void setMenu (Menu menu) {
if (accelGroup != 0) addAccelerators (accelGroup);
}
-void setOrientation() {
- if ((parent.style & SWT.RIGHT_TO_LEFT) != 0) {
- if (handle != 0) {
- OS.gtk_widget_set_direction (handle, OS.GTK_TEXT_DIR_RTL);
- OS.gtk_container_forall (handle, display.setDirectionProc, OS.GTK_TEXT_DIR_RTL);
- }
- }
+void setOrientation (boolean create) {
+ super.setOrientation (create);
+ if ((parent.style & SWT.RIGHT_TO_LEFT) != 0 || !create) {
+ int dir = (parent.style & SWT.RIGHT_TO_LEFT) != 0 ? OS.GTK_TEXT_DIR_RTL : OS.GTK_TEXT_DIR_LTR;
+ OS.gtk_widget_set_direction (handle, dir);
+ OS.gtk_container_forall (handle, display.setDirectionProc, dir);
+ if (menu != null) menu._setOrientation (parent.style & (SWT.RIGHT_TO_LEFT | SWT.LEFT_TO_RIGHT));
+ }
}
boolean setRadioSelection (boolean value) {