use of org.eclipse.ui.forms.widgets.FormToolkit in project yamcs-studio by yamcs.
the class ThemeColorBlock method createMasterPart.
@Override
protected void createMasterPart(IManagedForm managedForm, Composite parent) {
FormToolkit tk = managedForm.getToolkit();
Section section = tk.createSection(parent, Section.NO_TITLE);
section.marginWidth = 10;
section.marginHeight = 5;
Composite client = tk.createComposite(section, SWT.WRAP);
GridLayout layout = new GridLayout();
layout.numColumns = 2;
layout.marginWidth = 2;
layout.marginHeight = 2;
client.setLayout(layout);
Composite tableWrapper = tk.createComposite(client, SWT.NONE);
tableWrapper.setLayoutData(new GridData(GridData.FILL_VERTICAL));
TableColumnLayout tcl = new TableColumnLayout();
tableWrapper.setLayout(tcl);
Table t = tk.createTable(tableWrapper, SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);
t.setHeaderVisible(false);
t.setLinesVisible(false);
tk.paintBordersFor(client);
Composite buttonWrapper = tk.createComposite(client);
buttonWrapper.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_CENTER));
GridLayout gl = new GridLayout();
gl.marginHeight = 0;
gl.marginWidth = 0;
buttonWrapper.setLayout(gl);
Button b = tk.createButton(buttonWrapper, "Add", SWT.PUSH);
GridData gd = new GridData(GridData.FILL_HORIZONTAL);
b.setLayoutData(gd);
b = tk.createButton(buttonWrapper, "Remove", SWT.PUSH);
gd = new GridData(GridData.FILL_HORIZONTAL);
b.setLayoutData(gd);
b = tk.createButton(buttonWrapper, "Up", SWT.PUSH);
b.setImage(upImage);
b.setToolTipText("Move Up");
gd = new GridData(GridData.FILL_HORIZONTAL);
b.setLayoutData(gd);
b = tk.createButton(buttonWrapper, "Down", SWT.PUSH);
b.setImage(downImage);
b.setToolTipText("Move Down");
gd = new GridData(GridData.FILL_HORIZONTAL);
b.setLayoutData(gd);
section.setClient(client);
SectionPart spart = new SectionPart(section);
managedForm.addPart(spart);
TableViewer viewer = new TableViewer(t);
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.addSelectionChangedListener(evt -> {
managedForm.fireSelectionChanged(spart, evt.getSelection());
});
TableViewerColumn colorColumn = new TableViewerColumn(viewer, SWT.NONE);
colorColumn.setLabelProvider(new ColorLabelProvider() {
@Override
public Color getColor(Object element) {
ThemeColor color = (ThemeColor) element;
return colorMap.get(color.getRGB());
}
@Override
public Color getBorderColor(Object element) {
return parent.getDisplay().getSystemColor(SWT.COLOR_BLACK);
}
});
tcl.setColumnData(colorColumn.getColumn(), new ColumnWeightData(50, 50, false));
TableViewerColumn textColumn = new TableViewerColumn(viewer, SWT.NONE);
textColumn.setLabelProvider(new ColumnLabelProvider() {
@Override
public String getText(Object element) {
ThemeColor color = (ThemeColor) element;
return color.getLabel();
}
});
tcl.setColumnData(textColumn.getColumn(), new ColumnWeightData(200, 200, true));
viewer.setInput(def.getColors());
}
use of org.eclipse.ui.forms.widgets.FormToolkit in project yamcs-studio by yamcs.
the class ThemeColorDetailsPage method createContents.
@Override
public void createContents(Composite parent) {
TableWrapLayout layout = new TableWrapLayout();
layout.topMargin = 5;
layout.leftMargin = 5;
layout.rightMargin = 2;
layout.bottomMargin = 2;
parent.setLayout(layout);
FormToolkit tk = mform.getToolkit();
Section s1 = tk.createSection(parent, Section.NO_TITLE);
// s1.marginWidth = 10;
TableWrapData td = new TableWrapData(TableWrapData.FILL, TableWrapData.TOP);
td.grabHorizontal = true;
s1.setLayoutData(td);
Composite client = tk.createComposite(s1);
GridLayout gl = new GridLayout();
client.setLayout(gl);
colorLabel = tk.createLabel(client, " yy ", SWT.BORDER);
colorLabel.setBackground(selectedColor);
Composite rgbScales = tk.createComposite(client);
GridData gd = new GridData();
rgbScales.setLayoutData(gd);
gl = new GridLayout(3, false);
rgbScales.setLayout(gl);
tk.createLabel(rgbScales, "Red");
redScale = new Scale(rgbScales, SWT.NONE);
redScale.setMinimum(0);
redScale.setMaximum(255);
redScale.setIncrement(1);
redScale.addListener(SWT.Selection, evt -> {
redText.setText("" + redScale.getSelection());
updateSelectedColor();
});
redText = tk.createText(rgbScales, " ", SWT.RIGHT);
redText.setEnabled(false);
gd = new GridData();
gd.widthHint = 50;
redText.setLayoutData(gd);
tk.createLabel(rgbScales, "Green");
greenScale = new Scale(rgbScales, SWT.NONE);
greenScale.setMinimum(0);
greenScale.setMaximum(255);
greenScale.setIncrement(1);
greenScale.addListener(SWT.Selection, evt -> {
greenText.setText("" + greenScale.getSelection());
updateSelectedColor();
});
greenText = tk.createText(rgbScales, " ", SWT.RIGHT);
greenText.setEnabled(false);
gd = new GridData();
gd.widthHint = 50;
greenText.setLayoutData(gd);
tk.createLabel(rgbScales, "Blue");
blueScale = new Scale(rgbScales, SWT.NONE);
blueScale.setMinimum(0);
blueScale.setMaximum(255);
blueScale.setIncrement(1);
blueScale.addListener(SWT.Selection, evt -> {
blueText.setText("" + blueScale.getSelection());
updateSelectedColor();
});
blueText = tk.createText(rgbScales, " ", SWT.RIGHT);
blueText.setEnabled(false);
gd = new GridData();
gd.widthHint = 50;
blueText.setLayoutData(gd);
tk.paintBordersFor(s1);
s1.setClient(client);
}
Aggregations