Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 224525 Details for
Bug 273198
[Bidi] Lack of support for controlling text direction independently from widget orientation
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Modified controlexample
patch_ex.txt (text/plain), 17.31 KB, created by
Lina Kemmel
on 2012-12-10 11:06:16 EST
(
hide
)
Description:
Modified controlexample
Filename:
MIME Type:
Creator:
Lina Kemmel
Created:
2012-12-10 11:06:16 EST
Size:
17.31 KB
patch
obsolete
>diff --git a/examples/org.eclipse.swt.examples/src/examples_control.properties b/examples/org.eclipse.swt.examples/src/examples_control.properties >index c4af3fb..c7e9844 100644 >--- a/examples/org.eclipse.swt.examples/src/examples_control.properties >+++ b/examples/org.eclipse.swt.examples/src/examples_control.properties >@@ -20,9 +20,9 @@ > Up = Up > Down = Down > Center = Center >-One = One >-Two = Two >-Three = Three >+One = One... >+Two = Two... >+Three = Three... > Image_Buttons = Image Buttons > Image_Text_Buttons = Image and Text Buttons > Control_Example = Control Example >@@ -112,25 +112,25 @@ > Multiple_Columns = Multiple Columns > Locked = Locked > Combo_child = Combo Child >-Node_1 = Node 1 >-Node_2 = Node 2 >-Node_3 = Node 3 >-Node_4 = Node 4 >-Node_1_1 = Node 1.1 >-Node_2_1 = Node 2.1 >-Node_3_1 = Node 3.1 >-Node_2_2 = Node 2.2 >-Node_2_2_1 = Node 2.2.1 >+Node_1 = Node 1... >+Node_2 = Node 2... >+Node_3 = Node 3... >+Node_4 = Node 4... >+Node_1_1 = Node 1.1... >+Node_2_1 = Node 2.1... >+Node_3_1 = Node 3.1... >+Node_2_2 = Node 2.2... >+Node_2_2_1 = Node 2.2.1... > Parent = Parent > No_Parent = No Parent > Decoration_Styles = Decoration Styles > Create_Shell = Create Shell > Close_All_Shells = Close All Shells >-Push = Push >-Radio = Radio >-Check = Check >-Cascade = Cascade >-Drop_Down = Drop Down >+Push = Push... >+Radio = Radio... >+Check = Check... >+Cascade = Cascade... >+Drop_Down = Drop Down... > Images_failed = Warning: Failed to load images > Index = Index: > Title = Title: >@@ -142,49 +142,49 @@ > FilterName_1 = Batch Files (*.bat) > FilterName_2 = Doc Files (*.doc, *.rtf) > FilterName_3 = All Files (*) >-TableTitle_0 = Name >-TableTitle_1 = Type >-TableTitle_2 = Size >-TableTitle_3 = Modified >+TableTitle_0 = Name... >+TableTitle_1 = Type... >+TableTitle_2 = Size... >+TableTitle_3 = Modified... > TableLine0_0 = <empty> >-TableLine0_1 = classes >-TableLine0_2 = 0 >-TableLine0_3 = today >+TableLine0_1 = classes... >+TableLine0_2 = 0... >+TableLine0_3 = today... > TableLine1_0 = <empty> >-TableLine1_1 = databases >-TableLine1_2 = 2556 >-TableLine1_3 = tomorrow >+TableLine1_1 = databases... >+TableLine1_2 = 2556... >+TableLine1_3 = tomorrow... > TableLine2_0 = <empty> >-TableLine2_1 = images >-TableLine2_2 = 91571 >-TableLine2_3 = yesterday >-ListData0_0 = Line 1 >-ListData0_1 = Line 2 >-ListData0_2 = Line 3 >-ListData0_3 = Line 4 >-ListData0_4 = Line 5 >-ListData0_5 = Line 6 >-ListData0_6 = Line 7 >-ListData0_7 = Line 8 >-ListData0_8 = Longest Line In List >-ListData1_0 = Apples >-ListData1_1 = Oranges >-ListData1_2 = Bananas >-ListData1_3 = Grapefruit >-ListData1_4 = Peaches >-ListData1_5 = Kiwi >-ListData1_6 = Apricots >-ListData1_7 = Strawberries >-ListData1_8 = The Longest String >-DropDownData_0 = Apples >-DropDownData_1 = Oranges >+TableLine2_1 = images... >+TableLine2_2 = 91571... >+TableLine2_3 = yesterday... >+ListData0_0 = Line 1... >+ListData0_1 = Line 2... >+ListData0_2 = Line 3... >+ListData0_3 = Line 4... >+ListData0_4 = Line 5... >+ListData0_5 = Line 6... >+ListData0_6 = Line 7... >+ListData0_7 = Line 8... >+ListData0_8 = Longest Line In List... >+ListData1_0 = Apples... >+ListData1_1 = Oranges... >+ListData1_2 = Bananas... >+ListData1_3 = Grapefruit... >+ListData1_4 = Peaches... >+ListData1_5 = Kiwi... >+ListData1_6 = Apricots... >+ListData1_7 = Strawberries... >+ListData1_8 = The Longest String... >+DropDownData_0 = Apples... >+DropDownData_1 = Oranges... > DropDownData_2 = >-DropDownData_3 = Grapefruit >-DropDownData_4 = Peaches >-DropDownData_5 = Kiwi >+DropDownData_3 = Grapefruit... >+DropDownData_4 = Peaches... >+DropDownData_5 = Kiwi... > DropDownData_6 = >-DropDownData_7 = Strawberries >-DropDownData_8 = The Longest String >+DropDownData_7 = Strawberries... >+DropDownData_8 = The Longest String... > Colors = Colors and Font > Change = &Change... > Defaults = &Defaults >@@ -210,10 +210,10 @@ > Fill_X = Horizontal Fill > Fill_Y = Vertical Fill > Pack_Columns = Pack Columns >-TabItem1_0 = Tab &0 >-TabItem1_1 = Tab &1 >-TabItem1_2 = Tab &2 >-TabItem_content = TabItem Content >+TabItem1_0 = Tab &0 ... >+TabItem1_1 = Tab &1 ... >+TabItem1_2 = Tab &2 ... >+TabItem_content = TabItem Content... > CTabItem1_0 = CTabItem &0 > CTabItem1_1 = CTabItem &1 > CTabItem1_2 = CTabItem &2 has a long name >@@ -255,7 +255,7 @@ > Tooltip = Tooltip: {0} > Item1_Text = What is your favorite button? > Item2_Text = What is your favorite icon? >-ToolTip_Title = Foxes vs. Dogs >+ToolTip_Title = Foxes vs. Dogs... > No_Icon = No Icon > Show_In_Tray = Show In Tray > BrowserNotFound = Browser not found: {0} >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ExpandBarTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ExpandBarTab.java >index 1e1a25d..603058c 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ExpandBarTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ExpandBarTab.java >@@ -73,13 +73,13 @@ > composite = new Composite (expandBar1, SWT.NONE); > composite.setLayout(new GridLayout (2, false)); > new Label (composite, SWT.NONE).setImage(display.getSystemImage(SWT.ICON_ERROR)); >- new Label (composite, SWT.NONE).setText("SWT.ICON_ERROR"); >+ new Label (composite, SWT.NONE).setText("SWT.ICON_ERROR..."); > new Label (composite, SWT.NONE).setImage(display.getSystemImage(SWT.ICON_INFORMATION)); >- new Label (composite, SWT.NONE).setText("SWT.ICON_INFORMATION"); >+ new Label (composite, SWT.NONE).setText("SWT.ICON_INFORMATION..."); > new Label (composite, SWT.NONE).setImage(display.getSystemImage(SWT.ICON_WARNING)); >- new Label (composite, SWT.NONE).setText("SWT.ICON_WARNING"); >+ new Label (composite, SWT.NONE).setText("SWT.ICON_WARNING..."); > new Label (composite, SWT.NONE).setImage(display.getSystemImage(SWT.ICON_QUESTION)); >- new Label (composite, SWT.NONE).setText("SWT.ICON_QUESTION"); >+ new Label (composite, SWT.NONE).setText("SWT.ICON_QUESTION..."); > item = new ExpandItem (expandBar1, SWT.NONE, 1); > item.setText(ControlExample.getResourceString("Item2_Text")); > item.setHeight(composite.computeSize(SWT.DEFAULT, SWT.DEFAULT).y); >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/MenuTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/MenuTab.java >index 158bb8d..ff4f395 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/MenuTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/MenuTab.java >@@ -239,7 +239,7 @@ > MenuItem item; > if (pushButton.getSelection()) { > item = new MenuItem(menu, SWT.PUSH); >- item.setText(getMenuItemText("Push")); >+ item.setText(getMenuItemText("Push") + "..."); > if (acceleratorsButton.getSelection()) item.setAccelerator(SWT.MOD1 + SWT.MOD2 + 'P'); > if (imagesButton.getSelection()) item.setImage(instance.images[ControlExample.ciClosedFolder]); > item.setEnabled(enabledButton.getSelection()); >@@ -252,7 +252,7 @@ > > if (checkButton.getSelection()) { > item = new MenuItem(menu, SWT.CHECK); >- item.setText(getMenuItemText("Check")); >+ item.setText(getMenuItemText("Check") + "..."); > if (acceleratorsButton.getSelection()) item.setAccelerator(SWT.MOD1 + SWT.MOD2 + 'C'); > if (imagesButton.getSelection()) item.setImage(instance.images[ControlExample.ciOpenFolder]); > item.setEnabled(enabledButton.getSelection()); >@@ -261,7 +261,7 @@ > > if (radioButton.getSelection()) { > item = new MenuItem(menu, SWT.RADIO); >- item.setText(getMenuItemText("1Radio")); >+ item.setText(getMenuItemText("1Radio") + "..."); > if (acceleratorsButton.getSelection()) item.setAccelerator(SWT.MOD1 + SWT.MOD2 + '1'); > if (imagesButton.getSelection()) item.setImage(instance.images[ControlExample.ciTarget]); > item.setSelection(true); >@@ -269,7 +269,7 @@ > hookListeners(item); > > item = new MenuItem(menu, SWT.RADIO); >- item.setText(getMenuItemText("2Radio")); >+ item.setText(getMenuItemText("2Radio") + "..."); > if (acceleratorsButton.getSelection()) item.setAccelerator(SWT.MOD1 + SWT.MOD2 + '2'); > if (imagesButton.getSelection()) item.setImage(instance.images[ControlExample.ciTarget]); > item.setEnabled(enabledButton.getSelection()); >@@ -279,7 +279,7 @@ > if (createSubMenu && cascadeButton.getSelection()) { > /* Create cascade button and drop-down menu for the sub-menu. */ > item = new MenuItem(menu, SWT.CASCADE); >- item.setText(getMenuItemText("Cascade")); >+ item.setText(getMenuItemText("Cascade") + "..."); > if (imagesButton.getSelection()) item.setImage(instance.images[ControlExample.ciOpenFolder]); > hookListeners(item); > Menu subMenu = new Menu(menu.getShell(), SWT.DROP_DOWN); >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java >index 01fcd21..27bdaf5 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java >@@ -58,7 +58,7 @@ > /* Right-to-left support */ > static final boolean RTL_SUPPORT_ENABLE = "win32".equals(SWT.getPlatform()) || "gtk".equals(SWT.getPlatform()); > Group orientationGroup; >- Button rtlButton, ltrButton, defaultOrietationButton; >+ Button rtlButtonRecreate, rtlButtonOrientationChange, rtlButtonTextDirection, ltrButtonTextDirection, ltrButtonRecreate, ltrButtonOrientationChange, defaultOrietationButton; > > /* Controls and resources for the "Colors & Fonts" group */ > static final int IMAGE_SIZE = 12; >@@ -286,9 +286,35 @@ > } > } > if (rtlSupport()) { >- rtlButton.addSelectionListener (selectionListener); >- ltrButton.addSelectionListener (selectionListener); >+ SelectionListener dynamicOrientationListener = new SelectionAdapter () { >+ public void widgetSelected (SelectionEvent event) { >+ int style = getOrientationStyle(event.widget) & (SWT.RIGHT_TO_LEFT | SWT.LEFT_TO_RIGHT); >+ if (style != 0) { >+ Control [] controls = getExampleControls (); >+ for (int i = 0; i < controls.length; i++) { >+ controls [i].setOrientation(style); >+ } >+ } >+ } >+ }; >+ SelectionListener textDirectionListener = new SelectionAdapter () { >+ public void widgetSelected (SelectionEvent event) { >+ int style = getTextDirectionStyle(event.widget) & (SWT.RIGHT_TO_LEFT | SWT.LEFT_TO_RIGHT); >+ if (style != 0) { >+ Control [] controls = getExampleControls (); >+ for (int i = 0; i < controls.length; i++) { >+ controls [i].setTextDirection(style); >+ } >+ } >+ } >+ }; >+ rtlButtonRecreate.addSelectionListener (selectionListener); >+ ltrButtonRecreate.addSelectionListener (selectionListener); > defaultOrietationButton.addSelectionListener (selectionListener); >+ rtlButtonOrientationChange.addSelectionListener (dynamicOrientationListener); >+ ltrButtonOrientationChange.addSelectionListener (dynamicOrientationListener); >+ rtlButtonTextDirection.addSelectionListener (textDirectionListener); >+ ltrButtonTextDirection.addSelectionListener (textDirectionListener); > } > } > >@@ -1161,10 +1187,18 @@ > defaultOrietationButton = new Button (orientationGroup, SWT.RADIO); > defaultOrietationButton.setText (ControlExample.getResourceString("Default")); > defaultOrietationButton.setSelection (true); >- ltrButton = new Button (orientationGroup, SWT.RADIO); >- ltrButton.setText ("SWT.LEFT_TO_RIGHT"); >- rtlButton = new Button (orientationGroup, SWT.RADIO); >- rtlButton.setText ("SWT.RIGHT_TO_LEFT"); >+ ltrButtonRecreate = new Button (orientationGroup, SWT.RADIO); >+ ltrButtonRecreate.setText ("SWT.LEFT_TO_RIGHT"); >+ rtlButtonRecreate = new Button (orientationGroup, SWT.RADIO); >+ rtlButtonRecreate.setText ("SWT.RIGHT_TO_LEFT"); >+ ltrButtonOrientationChange = new Button (orientationGroup, SWT.RADIO); >+ ltrButtonOrientationChange.setText ("Dynamic SWT.LEFT_TO_RIGHT"); >+ rtlButtonOrientationChange = new Button (orientationGroup, SWT.RADIO); >+ rtlButtonOrientationChange.setText ("Dynamic SWT.RIGHT_TO_LEFT"); >+ ltrButtonTextDirection = new Button (orientationGroup, SWT.RADIO); >+ ltrButtonTextDirection.setText ("Text SWT.LEFT_TO_RIGHT"); >+ rtlButtonTextDirection = new Button (orientationGroup, SWT.RADIO); >+ rtlButtonTextDirection.setText ("Text SWT.RIGHT_TO_LEFT"); > } > > /** >@@ -1373,10 +1407,10 @@ > * @return the default style bit > */ > int getDefaultStyle () { >- if (ltrButton != null && ltrButton.getSelection()) { >+ if (ltrButtonRecreate != null && ltrButtonRecreate.getSelection()) { > return SWT.LEFT_TO_RIGHT; > } >- if (rtlButton != null && rtlButton.getSelection()) { >+ if (rtlButtonRecreate != null && rtlButtonRecreate.getSelection()) { > return SWT.RIGHT_TO_LEFT; > } > return SWT.NONE; >@@ -1421,6 +1455,21 @@ > } > > /** >+ * Gets the dynamic orientation style controlled by the button >+ * >+ * @return the default style bit >+ */ >+ int getOrientationStyle (Widget widget) { >+ if (ltrButtonOrientationChange.equals(widget)) { >+ return SWT.LEFT_TO_RIGHT; >+ } >+ if (rtlButtonOrientationChange.equals(widget)) { >+ return SWT.RIGHT_TO_LEFT; >+ } >+ return SWT.NONE; >+ } >+ >+ /** > * Gets the short text for the tab folder item. > * > * @return the short text for the tab item >@@ -1439,6 +1488,21 @@ > } > > /** >+ * Gets the dynamic orientation style controlled by the button >+ * >+ * @return the default style bit >+ */ >+ int getTextDirectionStyle (Widget widget) { >+ if (ltrButtonTextDirection.equals(widget)) { >+ return SWT.LEFT_TO_RIGHT; >+ } >+ if (rtlButtonTextDirection.equals(widget)) { >+ return SWT.RIGHT_TO_LEFT; >+ } >+ return SWT.NONE; >+ } >+ >+ /** > * Hooks all listeners to all example controls > * and example control items. > */ >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TabFolderTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TabFolderTab.java >index 19f0b4b..0035b97 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TabFolderTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TabFolderTab.java >@@ -65,7 +65,7 @@ > item.setText(TabItems1[i]); > item.setToolTipText(ControlExample.getResourceString("Tooltip", new String [] {TabItems1[i]})); > Text content = new Text(tabFolder1, SWT.WRAP | SWT.MULTI); >- content.setText(ControlExample.getResourceString("TabItem_content") + ": " + i); >+ content.setText(ControlExample.getResourceString("TabItem_content") + ": " + i + "..."); > item.setControl(content); > } > } >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java >index 68a2962..35f546b 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java >@@ -307,7 +307,7 @@ > } else { > item.setImage(instance.images [i % 3]); > } >- setItemText (item, i, ControlExample.getResourceString("Index") + i); >+ setItemText (item, i, ControlExample.getResourceString("Index") + i + "..."); > } > packColumns(); > } >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ToolTipTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ToolTipTab.java >index 4693557..c8a8771 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ToolTipTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ToolTipTab.java >@@ -72,7 +72,7 @@ > > /* Create the example widgets */ > toolTip1 = new ToolTip (shell, style); >- toolTip1.setText(ControlExample.getResourceString("ToolTip_Title")); >+ toolTip1.setText(ControlExample.getResourceString("ToolTip_Title") + "..."); > toolTip1.setMessage(ControlExample.getResourceString("Example_string")); > } > >diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TreeTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TreeTab.java >index 6c12861..8919851 100644 >--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TreeTab.java >+++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TreeTab.java >@@ -295,7 +295,7 @@ > if (multiColumn) { > for (int i = 0; i < columnTitles.length; i++) { > TreeColumn treeColumn = new TreeColumn(tree1, SWT.NONE); >- treeColumn.setText(columnTitles[i]); >+ treeColumn.setText(columnTitles[i] + "..."); > treeColumn.setToolTipText(ControlExample.getResourceString("Tooltip", new String [] {columnTitles[i]})); > } > tree1.setSortColumn(tree1.getColumn(0)); >@@ -326,7 +326,7 @@ > if (multiColumn) { > for (int i = 0; i < columnTitles.length; i++) { > TreeColumn treeColumn = new TreeColumn(tree2, SWT.NONE); >- treeColumn.setText(columnTitles[i]); >+ treeColumn.setText(columnTitles[i] + "..."); > treeColumn.setToolTipText(ControlExample.getResourceString("Tooltip", new String [] {columnTitles[i]})); > if (headerImagesButton.getSelection()) treeColumn.setImage(instance.images [i % 3]); > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 273198
:
224319
| 224525 |
228372
|
228374