use of org.eclipse.swt.custom.CTabFolder in project eclipse.platform.swt by eclipse.
the class Test_org_eclipse_swt_custom_CTabFolder method test_nestedTabHighlighting.
/**
* Test for bug 528251.
*
* We define two {@link CTabFolder tab folders}, of which one has a nested tab folder.
* We validate that selecting the nested tab does not break selection highlight for the top-level tabs.
*
* @see Bug528251_CTabFolder_nested_highlighting
*/
@Test
public void test_nestedTabHighlighting() {
CTabFolder partStackTabFolder = new CTabFolder(shell, SWT.NONE);
CTabItem consoleViewTab = new CTabItem(partStackTabFolder, SWT.NONE);
consoleViewTab.setText("Console View");
SashForm anotherView = new SashForm(partStackTabFolder, SWT.NONE);
CTabItem anotherViewTab = new CTabItem(partStackTabFolder, SWT.NONE);
anotherViewTab.setText("Other View");
anotherViewTab.setControl(anotherView);
CTabFolder anotherViewNestedTabFolder = new CTabFolder(anotherView, SWT.NONE);
CTabItem anotherViewNestedTab = new CTabItem(anotherViewNestedTabFolder, SWT.NONE);
anotherViewNestedTab.setText("nested tab");
shell.pack();
shell.open();
processEvents();
// nothing is selected, expect no highlight
boolean shouldHighlightConsoleViewTab = reflection_shouldHighlight(partStackTabFolder);
assertFalse("expected CTabFolder to not need highlighting without any selection", shouldHighlightConsoleViewTab);
// "click" on the Console View tab
partStackTabFolder.notifyListeners(SWT.Activate, new Event());
partStackTabFolder.setSelection(consoleViewTab);
// "click" on the Other View tab, per default the first sub-tab is also highlighted
partStackTabFolder.setSelection(anotherViewTab);
anotherViewNestedTabFolder.notifyListeners(SWT.Activate, new Event());
// "click" on the nested tab
anotherViewNestedTabFolder.setSelection(anotherViewNestedTab);
partStackTabFolder.setSelection(consoleViewTab);
// "click" on the Console View tab, this hides and deactivates the nested CTabFolder
anotherViewNestedTabFolder.notifyListeners(SWT.Deactivate, new Event());
processEvents();
// the Console View tab is selected, so it should still be highlighted
shouldHighlightConsoleViewTab = reflection_shouldHighlight(partStackTabFolder);
assertTrue("Bug 528251 - View tab not highlighted due to another view with a CTabFolder", shouldHighlightConsoleViewTab);
}
use of org.eclipse.swt.custom.CTabFolder in project eclipse.platform.swt by eclipse.
the class Test_org_eclipse_swt_custom_CTabItem method setUp.
@Override
@Before
public void setUp() {
super.setUp();
cTabFolder = new CTabFolder(shell, SWT.NONE);
cTabItem = new CTabItem(cTabFolder, SWT.NONE);
setWidget(cTabItem);
}
use of org.eclipse.swt.custom.CTabFolder in project eclipse.platform.swt by eclipse.
the class ControlsWithLabelsExample method main.
public static void main(String[] args) {
display = new Display();
shell = new Shell(display);
shell.setLayout(new GridLayout(4, true));
shell.setText("All Controls Test");
new Label(shell, SWT.NONE).setText("Label for Label");
label = new Label(shell, SWT.NONE);
label.setText("Label");
new Label(shell, SWT.NONE).setText("Label for CLabel");
cLabel = new CLabel(shell, SWT.NONE);
cLabel.setText("CLabel");
new Label(shell, SWT.NONE).setText("Label for Push Button");
buttonPush = new Button(shell, SWT.PUSH);
buttonPush.setText("Push Button");
new Label(shell, SWT.NONE).setText("Label for Radio Button");
buttonRadio = new Button(shell, SWT.RADIO);
buttonRadio.setText("Radio Button");
new Label(shell, SWT.NONE).setText("Label for Check Button");
buttonCheck = new Button(shell, SWT.CHECK);
buttonCheck.setText("Check Button");
new Label(shell, SWT.NONE).setText("Label for Toggle Button");
buttonToggle = new Button(shell, SWT.TOGGLE);
buttonToggle.setText("Toggle Button");
new Label(shell, SWT.NONE).setText("Label for Editable Combo");
combo = new Combo(shell, SWT.BORDER);
for (int i = 0; i < 4; i++) {
combo.add("item" + i);
}
combo.select(0);
new Label(shell, SWT.NONE).setText("Label for Read-Only Combo");
combo = new Combo(shell, SWT.READ_ONLY | SWT.BORDER);
for (int i = 0; i < 4; i++) {
combo.add("item" + i);
}
combo.select(0);
new Label(shell, SWT.NONE).setText("Label for CCombo");
cCombo = new CCombo(shell, SWT.BORDER);
for (int i = 0; i < 5; i++) {
cCombo.add("item" + i);
}
cCombo.select(0);
new Label(shell, SWT.NONE).setText("Label for List");
list = new List(shell, SWT.SINGLE | SWT.BORDER);
list.setItems("Item0", "Item1", "Item2");
new Label(shell, SWT.NONE).setText("Label for Spinner");
spinner = new Spinner(shell, SWT.BORDER);
new Label(shell, SWT.NONE).setText("Label for Single-line Text");
textSingle = new Text(shell, SWT.SINGLE | SWT.BORDER);
textSingle.setText("Contents of Single-line Text");
new Label(shell, SWT.NONE).setText("Label for Multi-line Text");
textMulti = new Text(shell, SWT.MULTI | SWT.BORDER);
textMulti.setText("\nContents of Multi-line Text\n");
new Label(shell, SWT.NONE).setText("Label for StyledText");
styledText = new StyledText(shell, SWT.MULTI | SWT.BORDER);
styledText.setText("\nContents of Multi-line StyledText\n");
new Label(shell, SWT.NONE).setText("Label for Table");
table = new Table(shell, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER);
table.setHeaderVisible(true);
table.setLinesVisible(true);
for (int col = 0; col < 3; col++) {
TableColumn column = new TableColumn(table, SWT.NONE);
column.setText("Col " + col);
column.setWidth(50);
}
for (int row = 0; row < 3; row++) {
TableItem item = new TableItem(table, SWT.NONE);
item.setText(new String[] { "C0R" + row, "C1R" + row, "C2R" + row });
}
new Label(shell, SWT.NONE).setText("Label for Tree");
tree = new Tree(shell, SWT.BORDER | SWT.MULTI);
for (int i = 0; i < 3; i++) {
TreeItem item = new TreeItem(tree, SWT.NONE);
item.setText("Item" + i);
for (int j = 0; j < 4; j++) {
new TreeItem(item, SWT.NONE).setText("Item" + i + j);
}
}
new Label(shell, SWT.NONE).setText("Label for Tree with columns");
treeTable = new Tree(shell, SWT.BORDER | SWT.MULTI);
treeTable.setHeaderVisible(true);
treeTable.setLinesVisible(true);
for (int col = 0; col < 3; col++) {
TreeColumn column = new TreeColumn(treeTable, SWT.NONE);
column.setText("Col " + col);
column.setWidth(50);
}
for (int i = 0; i < 3; i++) {
TreeItem item = new TreeItem(treeTable, SWT.NONE);
item.setText(new String[] { "I" + i + "C0", "I" + i + "C1", "I" + i + "C2" });
for (int j = 0; j < 4; j++) {
new TreeItem(item, SWT.NONE).setText(new String[] { "I" + i + j + "C0", "I" + i + j + "C1", "I" + i + j + "C2" });
}
}
new Label(shell, SWT.NONE).setText("Label for ToolBar");
toolBar = new ToolBar(shell, SWT.FLAT);
for (int i = 0; i < 3; i++) {
ToolItem item = new ToolItem(toolBar, SWT.PUSH);
item.setText("Item" + i);
item.setToolTipText("ToolItem ToolTip" + i);
}
new Label(shell, SWT.NONE).setText("Label for CoolBar");
coolBar = new CoolBar(shell, SWT.FLAT);
for (int i = 0; i < 2; i++) {
CoolItem coolItem = new CoolItem(coolBar, SWT.PUSH);
ToolBar coolItemToolBar = new ToolBar(coolBar, SWT.FLAT);
int toolItemWidth = 0;
for (int j = 0; j < 2; j++) {
ToolItem item = new ToolItem(coolItemToolBar, SWT.PUSH);
item.setText("Item" + i + j);
item.setToolTipText("ToolItem ToolTip" + i + j);
if (item.getWidth() > toolItemWidth)
toolItemWidth = item.getWidth();
}
coolItem.setControl(coolItemToolBar);
Point size = coolItemToolBar.computeSize(SWT.DEFAULT, SWT.DEFAULT);
Point coolSize = coolItem.computeSize(size.x, size.y);
coolItem.setMinimumSize(toolItemWidth, coolSize.y);
coolItem.setPreferredSize(coolSize);
coolItem.setSize(coolSize);
}
new Label(shell, SWT.NONE).setText("Label for Canvas");
canvas = new Canvas(shell, SWT.BORDER);
canvas.setLayoutData(new GridData(64, 64));
canvas.addPaintListener(e -> e.gc.drawString("Canvas", 15, 25));
canvas.setCaret(new Caret(canvas, SWT.NONE));
/* Hook key listener so canvas will take focus during traversal in. */
canvas.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
}
});
/* Hook traverse listener to make canvas give up focus during traversal out. */
canvas.addTraverseListener(e -> e.doit = true);
new Label(shell, SWT.NONE).setText("Label for Group");
group = new Group(shell, SWT.NONE);
group.setText("Group");
group.setLayout(new FillLayout());
new Text(group, SWT.SINGLE | SWT.BORDER).setText("Text in Group");
new Label(shell, SWT.NONE).setText("Label for TabFolder");
tabFolder = new TabFolder(shell, SWT.NONE);
for (int i = 0; i < 3; i++) {
TabItem item = new TabItem(tabFolder, SWT.NONE);
item.setText("TabItem &" + i);
item.setToolTipText("TabItem ToolTip" + i);
Text itemText = new Text(tabFolder, SWT.SINGLE | SWT.BORDER);
itemText.setText("Text for TabItem " + i);
item.setControl(itemText);
}
new Label(shell, SWT.NONE).setText("Label for CTabFolder");
cTabFolder = new CTabFolder(shell, SWT.BORDER);
for (int i = 0; i < 3; i++) {
CTabItem item = new CTabItem(cTabFolder, SWT.NONE);
item.setText("CTabItem &" + i);
item.setToolTipText("CTabItem ToolTip" + i);
Text itemText = new Text(cTabFolder, SWT.SINGLE | SWT.BORDER);
itemText.setText("Text for CTabItem " + i);
item.setControl(itemText);
}
cTabFolder.setSelection(cTabFolder.getItem(0));
new Label(shell, SWT.NONE).setText("Label for Scale");
scale = new Scale(shell, SWT.NONE);
new Label(shell, SWT.NONE).setText("Label for Slider");
slider = new Slider(shell, SWT.NONE);
new Label(shell, SWT.NONE).setText("Label for ProgressBar");
progressBar = new ProgressBar(shell, SWT.NONE);
progressBar.setSelection(50);
new Label(shell, SWT.NONE).setText("Label for Sash");
sash = new Sash(shell, SWT.NONE);
shell.pack();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
use of org.eclipse.swt.custom.CTabFolder in project cubrid-manager by CUBRID.
the class BrokerConfigEditComposite method createCubridBrokerConfComp.
public void createCubridBrokerConfComp(Composite parent) {
confTabFolder = new CTabFolder(parent, SWT.BOTTOM | SWT.BORDER);
confTabFolder.setLayout(new FillLayout());
confTabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
confTabFolder.setUnselectedImageVisible(true);
confTabFolder.setUnselectedCloseVisible(true);
confTabFolder.setSelectionBackground(getColor(SWT.COLOR_TITLE_FOREGROUND));
confTabFolder.setSelectionForeground(getColor(SWT.COLOR_TITLE_BACKGROUND));
createCubridBrokerConfPropTable(confTabFolder);
createCubridBrokerConfPropEditor(confTabFolder);
confTabFolder.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(final SelectionEvent event) {
if (event.item == sourceCTabItem) {
editorPart.setEditTableItemEnabled(false);
brokerConfig = editorPart.parseCommonTableValueToBrokerConfig(confListData, confTableViewer.getTable().getColumnCount());
createCubridBrokerConfDocumnetContent();
} else if (event.item == tableCTabItem) {
editorPart.setEditTableItemEnabled(true);
brokerConfig = editorPart.parseStringLineToBrokerConfig(propEditor.getDocument().get());
createBrokerConfTableData();
}
}
});
confTabFolder.setSelection(tableCTabItem);
}
use of org.eclipse.swt.custom.CTabFolder in project translationstudio8 by heartsome.
the class ColumnStyleEditorDialog method initComponents.
@Override
protected void initComponents(final Shell shell) {
shell.setLayout(new GridLayout());
shell.setText("Customize style");
// Closing the window is the same as canceling the form
shell.addShellListener(new ShellAdapter() {
@Override
public void shellClosed(ShellEvent e) {
doFormCancel(shell);
}
});
// Tabs panel
Composite tabPanel = new Composite(shell, SWT.NONE);
tabPanel.setLayout(new GridLayout());
GridData fillGridData = new GridData();
fillGridData.grabExcessHorizontalSpace = true;
fillGridData.horizontalAlignment = GridData.FILL;
tabPanel.setLayoutData(fillGridData);
CTabFolder tabFolder = new CTabFolder(tabPanel, SWT.BORDER);
tabFolder.setLayout(new GridLayout());
tabFolder.setLayoutData(fillGridData);
CTabItem columnTab = new CTabItem(tabFolder, SWT.NONE);
columnTab.setText("Column");
columnTab.setImage(GUIHelper.getImage("column"));
columnTab.setControl(createColumnPanel(tabFolder));
try {
cellStyleEditorPanel.edit(columnStyle);
borderStyleEditorPanel.edit(columnStyle.getAttributeValue(CellStyleAttributes.BORDER_STYLE));
} catch (Exception e) {
e.printStackTrace(System.err);
}
}
Aggregations