Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStéphane Bégaudeau2016-05-11 12:50:47 +0000
committerStéphane Bégaudeau2016-05-11 12:50:47 +0000
commit7f3c3dde97e8697e416cb32ab2d4d6f21ef8af18 (patch)
tree1cf70cb6396568d709c96cd90a25160c48bce8c2
parentddb1ec22b95dcf6551ef7783f2b14d485ae944ff (diff)
downloadorg.eclipse.eef-7f3c3dde97e8697e416cb32ab2d4d6f21ef8af18.tar.gz
org.eclipse.eef-7f3c3dde97e8697e416cb32ab2d4d6f21ef8af18.tar.xz
org.eclipse.eef-7f3c3dde97e8697e416cb32ab2d4d6f21ef8af18.zip
Fix an issue with truncated button labels
Change-Id: Iccf2d38e86a12909248d4ea0200f1407a1ca2e4f Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ActionButton.java10
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFButtonLifecycleManager.java12
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFMultipleReferencesLifecycleManager.java5
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java4
4 files changed, 20 insertions, 11 deletions
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ActionButton.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ActionButton.java
index 981294899..0908d0d0c 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ActionButton.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ActionButton.java
@@ -17,7 +17,7 @@ import org.eclipse.sirius.common.interpreter.api.IInterpreter;
import org.eclipse.sirius.common.interpreter.api.IVariableManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.layout.RowData;
+import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
@@ -68,8 +68,12 @@ public class ActionButton {
IVariableManager variableManager) {
this.action = action;
this.button = widgetFactory.createButton(parent, "", SWT.NONE); //$NON-NLS-1$
- RowData rowData = new RowData(MINIMUM_BUTTON_WIDTH, SWT.DEFAULT);
- this.button.setLayoutData(rowData);
+
+ GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
+ gridData.grabExcessHorizontalSpace = true;
+ gridData.minimumWidth = MINIMUM_BUTTON_WIDTH;
+
+ this.button.setLayoutData(gridData);
String expression = action.getLabelExpression();
String buttonLabel = EvalFactory.of(interpreter, variableManager).logIfInvalidType(String.class).defaultValue("...").evaluate(expression); //$NON-NLS-1$
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFButtonLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFButtonLifecycleManager.java
index b4affd2ed..18ba61738 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFButtonLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFButtonLifecycleManager.java
@@ -39,6 +39,12 @@ import org.eclipse.swt.widgets.Control;
* @author pcdavid
*/
public class EEFButtonLifecycleManager extends AbstractEEFWidgetLifecycleManager {
+
+ /**
+ * The minimum width of the button.
+ */
+ private static final int MINIMUM_BUTTON_WIDTH = 80;
+
/**
* The description.
*/
@@ -89,9 +95,9 @@ public class EEFButtonLifecycleManager extends AbstractEEFWidgetLifecycleManager
this.button = widgetFactory.createButton(parent, "", SWT.NONE); //$NON-NLS-1$
- final int minimumWidth = 80;
- GridData layoutData = new GridData(minimumWidth, SWT.DEFAULT);
- this.button.setLayoutData(layoutData);
+ GridData gridData = new GridData();
+ gridData.minimumWidth = MINIMUM_BUTTON_WIDTH;
+ this.button.setLayoutData(gridData);
widgetFactory.paintBordersFor(parent);
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFMultipleReferencesLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFMultipleReferencesLifecycleManager.java
index d93851d4e..80eb65c96 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFMultipleReferencesLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFMultipleReferencesLifecycleManager.java
@@ -39,7 +39,6 @@ import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.layout.RowLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Table;
@@ -188,16 +187,16 @@ public class EEFMultipleReferencesLifecycleManager extends AbstractEEFWidgetLife
Composite buttons = widgetFactory.createFlatFormComposite(parent);
GridData gridData = new GridData();
- gridData.grabExcessHorizontalSpace = false;
buttons.setLayoutData(gridData);
+ buttons.setLayout(new GridLayout(1, false));
+
// Buttons are visible only if an action is defined
for (EEFWidgetAction action : this.description.getActions()) {
ActionButton actionButton = new ActionButton(action, buttons, widgetFactory, this.interpreter, this.variableManager);
actionButtons.add(actionButton);
}
- buttons.setLayout(new RowLayout(SWT.VERTICAL));
}
/**
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
index 353824ed6..6394755de 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFReferenceLifecycleManager.java
@@ -37,7 +37,6 @@ import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.layout.RowLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
@@ -155,13 +154,14 @@ public class EEFReferenceLifecycleManager extends AbstractEEFWidgetLifecycleMana
gridData.grabExcessHorizontalSpace = false;
buttons.setLayoutData(gridData);
+ buttons.setLayout(new GridLayout(this.description.getActions().size(), true));
+
// Buttons are visible only if an action is defined
for (EEFWidgetAction action : this.description.getActions()) {
ActionButton actionButton = new ActionButton(action, buttons, widgetFactory, this.interpreter, this.variableManager);
actionButtons.add(actionButton);
}
- buttons.setLayout(new RowLayout(SWT.HORIZONTAL));
}
/**

Back to the top