summaryrefslogtreecommitdiffstats
path: root/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java
diff options
context:
space:
mode:
Diffstat (limited to 'examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java')
-rwxr-xr-xexamples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java423
1 files changed, 0 insertions, 423 deletions
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
deleted file mode 100755
index f987d483cb..0000000000
--- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/TableTab.java
+++ /dev/null
@@ -1,423 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.examples.controlexample;
-
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.events.*;
-
-class TableTab extends ScrollableTab {
- /* Example widgets and groups that contain them */
- Table table1;
- Group tableGroup, itemGroup;
-
- /* Style widgets added to the "Style" group */
- Button checkButton, fullSelectionButton, hideSelectionButton;
-
- /* Other widgets added to the "Other" group */
- Button multipleColumns, headerVisibleButton, linesVisibleButton;
-
- /* Controls and resources added to the "Colors" group */
- Button itemForegroundButton, itemBackgroundButton, itemFontButton;
- Color itemForegroundColor, itemBackgroundColor;
- Image itemForegroundImage, itemBackgroundImage;
- Font itemFont;
-
- static String [] columnTitles = {ControlExample.getResourceString("TableTitle_0"),
- ControlExample.getResourceString("TableTitle_1"),
- ControlExample.getResourceString("TableTitle_2"),
- ControlExample.getResourceString("TableTitle_3")};
-
- static String[][] tableData = {
- { ControlExample.getResourceString("TableLine0_0"),
- ControlExample.getResourceString("TableLine0_1"),
- ControlExample.getResourceString("TableLine0_2"),
- ControlExample.getResourceString("TableLine0_3") },
- { ControlExample.getResourceString("TableLine1_0"),
- ControlExample.getResourceString("TableLine1_1"),
- ControlExample.getResourceString("TableLine1_2"),
- ControlExample.getResourceString("TableLine1_3") },
- { ControlExample.getResourceString("TableLine2_0"),
- ControlExample.getResourceString("TableLine2_1"),
- ControlExample.getResourceString("TableLine2_2"),
- ControlExample.getResourceString("TableLine2_3") } };
-
- /**
- * Creates the Tab within a given instance of ControlExample.
- */
- TableTab(ControlExample instance) {
- super(instance);
- }
-
- /**
- * Creates the "Colors" group.
- */
- void createColorGroup () {
- super.createColorGroup();
-
- itemGroup = new Group (colorGroup, SWT.NONE);
- itemGroup.setText (ControlExample.getResourceString ("Table_Item_Colors"));
- GridData data = new GridData ();
- data.horizontalSpan = 2;
- itemGroup.setLayoutData (data);
- itemGroup.setLayout (new GridLayout (2, false));
- new Label (itemGroup, SWT.NONE).setText (ControlExample.getResourceString ("Foreground_Color"));
- itemForegroundButton = new Button (itemGroup, SWT.PUSH);
- new Label (itemGroup, SWT.NONE).setText (ControlExample.getResourceString ("Background_Color"));
- itemBackgroundButton = new Button (itemGroup, SWT.PUSH);
- itemFontButton = new Button (itemGroup, SWT.PUSH);
- itemFontButton.setText(ControlExample.getResourceString("Font"));
- itemFontButton.setLayoutData(new GridData (GridData.HORIZONTAL_ALIGN_FILL));
-
- Shell shell = colorGroup.getShell ();
- final ColorDialog foregroundDialog = new ColorDialog (shell);
- final ColorDialog backgroundDialog = new ColorDialog (shell);
- final FontDialog fontDialog = new FontDialog (shell);
-
- int imageSize = 12;
- Display display = shell.getDisplay ();
- itemForegroundImage = new Image(display, imageSize, imageSize);
- itemBackgroundImage = new Image(display, imageSize, imageSize);
-
- /* Add listeners to set the colors and font */
- itemForegroundButton.setImage(itemForegroundImage);
- itemForegroundButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- Color oldColor = itemForegroundColor;
- if (oldColor == null) oldColor = table1.getItem (0).getForeground ();
- foregroundDialog.setRGB(oldColor.getRGB());
- RGB rgb = foregroundDialog.open();
- if (rgb == null) return;
- oldColor = itemForegroundColor;
- itemForegroundColor = new Color (event.display, rgb);
- setItemForeground ();
- if (oldColor != null) oldColor.dispose ();
- }
- });
- itemBackgroundButton.setImage(itemBackgroundImage);
- itemBackgroundButton.addSelectionListener(new SelectionAdapter() {
- public void widgetSelected(SelectionEvent event) {
- Color oldColor = itemBackgroundColor;
- if (oldColor == null) oldColor = table1.getItem (0).getBackground ();
- backgroundDialog.setRGB(oldColor.getRGB());
- RGB rgb = backgroundDialog.open();
- if (rgb == null) return;
- oldColor = itemBackgroundColor;
- itemBackgroundColor = new Color (event.display, rgb);
- setItemBackground ();
- if (oldColor != null) oldColor.dispose ();
- }
- });
- itemFontButton.addSelectionListener(new SelectionAdapter () {
- public void widgetSelected (SelectionEvent event) {
- Font oldFont = itemFont;
- if (oldFont == null) oldFont = table1.getItem (0).getFont ();
- fontDialog.setFontList(oldFont.getFontData());
- FontData fontData = fontDialog.open ();
- if (fontData == null) return;
- oldFont = itemFont;
- itemFont = new Font (event.display, fontData);
- setItemFont ();
- setExampleWidgetSize ();
- if (oldFont != null) oldFont.dispose ();
- }
- });
- shell.addDisposeListener(new DisposeListener() {
- public void widgetDisposed(DisposeEvent event) {
- if (itemBackgroundImage != null) itemBackgroundImage.dispose();
- if (itemForegroundImage != null) itemForegroundImage.dispose();
- if (itemBackgroundColor != null) itemBackgroundColor.dispose();
- if (itemForegroundColor != null) itemForegroundColor.dispose();
- if (itemFont != null) itemFont.dispose();
- itemBackgroundColor = null;
- itemForegroundColor = null;
- itemFont = null;
- }
- });
- }
-
- /**
- * Creates the "Other" group.
- */
- void createOtherGroup () {
- super.createOtherGroup ();
-
- /* Create display controls specific to this example */
- multipleColumns = new Button (otherGroup, SWT.CHECK);
- multipleColumns.setText (ControlExample.getResourceString("Multiple_Columns"));
- multipleColumns.setSelection(true);
- headerVisibleButton = new Button (otherGroup, SWT.CHECK);
- headerVisibleButton.setText (ControlExample.getResourceString("Header_Visible"));
- linesVisibleButton = new Button (otherGroup, SWT.CHECK);
- linesVisibleButton.setText (ControlExample.getResourceString("Lines_Visible"));
-
- /* Add the listeners */
- multipleColumns.addSelectionListener (new SelectionAdapter () {
- public void widgetSelected (SelectionEvent event) {
- recreateExampleWidgets ();
- }
- });
- headerVisibleButton.addSelectionListener (new SelectionAdapter () {
- public void widgetSelected (SelectionEvent event) {
- setWidgetHeaderVisible ();
- }
- });
- linesVisibleButton.addSelectionListener (new SelectionAdapter () {
- public void widgetSelected (SelectionEvent event) {
- setWidgetLinesVisible ();
- };
- });
- }
-
- /**
- * Creates the "Example" group.
- */
- void createExampleGroup () {
- super.createExampleGroup ();
-
- /* Create a group for the table */
- tableGroup = new Group (exampleGroup, SWT.NONE);
- tableGroup.setLayout (new GridLayout ());
- tableGroup.setLayoutData (new GridData (GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL));
- tableGroup.setText ("Table");
- }
-
- /**
- * Creates the "Example" widgets.
- */
- void createExampleWidgets () {
- /* Compute the widget style */
- int style = getDefaultStyle();
- if (singleButton.getSelection ()) style |= SWT.SINGLE;
- if (multiButton.getSelection ()) style |= SWT.MULTI;
- if (verticalButton.getSelection ()) style |= SWT.V_SCROLL;
- if (horizontalButton.getSelection ()) style |= SWT.H_SCROLL;
- if (checkButton.getSelection ()) style |= SWT.CHECK;
- if (fullSelectionButton.getSelection ()) style |= SWT.FULL_SELECTION;
- if (hideSelectionButton.getSelection ()) style |= SWT.HIDE_SELECTION;
- if (borderButton.getSelection ()) style |= SWT.BORDER;
-
- /* Create the table widget */
- table1 = new Table (tableGroup, style);
-
- /* Fill the table with data */
- if (multipleColumns.getSelection()) {
- for (int i = 0; i < columnTitles.length; i++) {
- TableColumn tableColumn = new TableColumn(table1, SWT.NONE);
- tableColumn.setText(columnTitles[i]);
- }
- } else {
- new TableColumn(table1, SWT.NONE);
- }
- for (int i=0; i<16; i++) {
- TableItem item = new TableItem (table1, SWT.NONE);
- item.setImage (instance.images [i % 3]);
- setItemText (item, i, ControlExample.getResourceString("Index") + i);
- }
- packColumns();
- }
-
- void setItemText(TableItem item, int i, String node) {
- int index = i % 3;
- if (multipleColumns.getSelection()) {
- tableData [index][0] = node;
- item.setText (tableData [index]);
- } else {
- item.setText (node);
- }
- }
-
- /**
- * Creates the "Style" group.
- */
- void createStyleGroup () {
- super.createStyleGroup ();
-
- /* Create the extra widgets */
- checkButton = new Button (styleGroup, SWT.CHECK);
- checkButton.setText ("SWT.CHECK");
- fullSelectionButton = new Button (styleGroup, SWT.CHECK);
- fullSelectionButton.setText ("SWT.FULL_SELECTION");
- hideSelectionButton = new Button (styleGroup, SWT.CHECK);
- hideSelectionButton.setText ("SWT.HIDE_SELECTION");
- }
-
- /**
- * Gets the "Example" widget children's items, if any.
- *
- * @return an array containing the example widget children's items
- */
- Item [] getExampleWidgetItems () {
- Item [] columns = table1.getColumns();
- Item [] items = table1.getItems();
- Item [] allItems = new Item [columns.length + items.length];
- System.arraycopy(columns, 0, allItems, 0, columns.length);
- System.arraycopy(items, 0, allItems, columns.length, items.length);
- return allItems;
- }
-
- /**
- * Gets the "Example" widget children.
- */
- Control [] getExampleWidgets () {
- return new Control [] {table1};
- }
-
- /**
- * Returns a list of set/get API method names (without the set/get prefix)
- * that can be used to set/get values in the example control(s).
- */
- String[] getMethodNames() {
- return new String[] {"ItemCount", "Selection", "SelectionIndex", "TopIndex"};
- }
-
- String setMethodName(String methodRoot) {
- /* Override to handle special case of int getSelectionIndex()/setSelection(int) */
- return (methodRoot.equals("SelectionIndex")) ? "setSelection" : "set" + methodRoot;
- }
-
- Object[] parameterForType(String typeName, String value, Control control) {
- if (value.equals("")) return new Object[] {new TableItem[0]}; // bug in Table?
- if (typeName.equals("org.eclipse.swt.widgets.TableItem")) {
- TableItem item = findItem(value, ((Table) control).getItems());
- if (item != null) return new Object[] {item};
- }
- if (typeName.equals("[Lorg.eclipse.swt.widgets.TableItem;")) {
- String[] values = value.split(",");
- TableItem[] items = new TableItem[values.length];
- for (int i = 0; i < values.length; i++) {
- items[i] = findItem(values[i], ((Table) control).getItems());
- }
- return new Object[] {items};
- }
- return super.parameterForType(typeName, value, control);
- }
-
- TableItem findItem(String value, TableItem[] items) {
- for (int i = 0; i < items.length; i++) {
- TableItem item = items[i];
- if (item.getText().equals(value)) return item;
- }
- return null;
- }
-
- /**
- * Gets the text for the tab folder item.
- */
- String getTabText () {
- return "Table";
- }
-
- /**
- * Sets the foreground color, background color, and font
- * of the "Example" widgets to their default settings.
- * Also sets foreground and background color of TableItem [0]
- * to default settings.
- */
- void resetColorsAndFonts () {
- super.resetColorsAndFonts ();
- Color oldColor = itemForegroundColor;
- itemForegroundColor = null;
- setItemForeground ();
- if (oldColor != null) oldColor.dispose();
- oldColor = itemBackgroundColor;
- itemBackgroundColor = null;
- setItemBackground ();
- if (oldColor != null) oldColor.dispose();
- Font oldFont = font;
- itemFont = null;
- setItemFont ();
- setExampleWidgetSize ();
- if (oldFont != null) oldFont.dispose();
- }
-
- /**
- * Sets the background color of TableItem [0].
- */
- void setItemBackground () {
- table1.getItem (0).setBackground (itemBackgroundColor);
- /* Set the background button's color to match the color just set. */
- Color color = itemBackgroundColor;
- if (color == null) color = table1.getItem (0).getBackground ();
- drawImage (itemBackgroundImage, color);
- itemBackgroundButton.setImage (itemBackgroundImage);
- }
-
- /**
- * Sets the foreground color of TableItem [0].
- */
- void setItemForeground () {
- table1.getItem (0).setForeground (itemForegroundColor);
- /* Set the foreground button's color to match the color just set. */
- Color color = itemForegroundColor;
- if (color == null) color = table1.getItem (0).getForeground ();
- drawImage (itemForegroundImage, color);
- itemForegroundButton.setImage (itemForegroundImage);
- }
-
- /**
- * Sets the font of TableItem 0.
- */
- void setItemFont () {
- if (instance.startup) return;
- table1.getItem (0).setFont (itemFont);
- packColumns ();
- }
-
- /**
- * Sets the font of the "Example" widgets.
- */
- void setExampleWidgetFont () {
- super.setExampleWidgetFont();
- packColumns ();
- }
-
- void packColumns () {
- int columnCount = table1.getColumnCount();
- for (int i = 0; i < columnCount; i++) {
- TableColumn tableColumn = table1.getColumn(i);
- tableColumn.pack();
- }
- }
-
- /**
- * Sets the state of the "Example" widgets.
- */
- void setExampleWidgetState () {
- super.setExampleWidgetState ();
- setItemBackground ();
- setItemForeground ();
- setItemFont ();
- setExampleWidgetSize ();
- setWidgetHeaderVisible ();
- setWidgetLinesVisible ();
- checkButton.setSelection ((table1.getStyle () & SWT.CHECK) != 0);
- fullSelectionButton.setSelection ((table1.getStyle () & SWT.FULL_SELECTION) != 0);
- hideSelectionButton.setSelection ((table1.getStyle () & SWT.HIDE_SELECTION) != 0);
- }
-
- /**
- * Sets the header visible state of the "Example" widgets.
- */
- void setWidgetHeaderVisible () {
- table1.setHeaderVisible (headerVisibleButton.getSelection ());
- }
-
- /**
- * Sets the lines visible state of the "Example" widgets.
- */
- void setWidgetLinesVisible () {
- table1.setLinesVisible (linesVisibleButton.getSelection ());
- }
-}