summaryrefslogtreecommitdiffstats
path: root/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java
diff options
context:
space:
mode:
Diffstat (limited to 'examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java')
-rw-r--r--examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java104
1 files changed, 0 insertions, 104 deletions
diff --git a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java b/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java
deleted file mode 100644
index 3d8d6d0ad9..0000000000
--- a/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet192.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.swt.snippets;
-
-import java.util.*;
-
-import org.eclipse.swt.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-
-/*
- * Show a sort indicator in the column header
- *
- * For a list of all SWT example snippets see
- * http://www.eclipse.org/swt/snippets/
- *
- * @since 3.2
- */
-
-public class Snippet192 {
-public static void main(String[] args) {
- // initialize data with keys and random values
- int size = 100;
- Random random = new Random();
- final int[][] data = new int[size][];
- for (int i = 0; i < data.length; i++) {
- data[i] = new int[] {i, random.nextInt()};
- }
- // create a virtual table to display data
- Display display = new Display();
- Shell shell = new Shell(display);
- shell.setLayout(new FillLayout());
- final Table table = new Table(shell, SWT.VIRTUAL);
- table.setHeaderVisible(true);
- table.setLinesVisible(true);
- table.setItemCount(size);
- final TableColumn column1 = new TableColumn(table, SWT.NONE);
- column1.setText("Key");
- column1.setWidth(200);
- final TableColumn column2 = new TableColumn(table, SWT.NONE);
- column2.setText("Value");
- column2.setWidth(200);
- table.addListener(SWT.SetData, new Listener() {
- public void handleEvent(Event e) {
- TableItem item = (TableItem) e.item;
- int index = table.indexOf(item);
- int[] datum = data[index];
- item.setText(new String[] {Integer.toString(datum[0]),
- Integer.toString(datum[1]) });
- }
- });
- // Add sort indicator and sort data when column selected
- Listener sortListener = new Listener() {
- public void handleEvent(Event e) {
- // determine new sort column and direction
- TableColumn sortColumn = table.getSortColumn();
- TableColumn currentColumn = (TableColumn) e.widget;
- int dir = table.getSortDirection();
- if (sortColumn == currentColumn) {
- dir = dir == SWT.UP ? SWT.DOWN : SWT.UP;
- } else {
- table.setSortColumn(currentColumn);
- dir = SWT.UP;
- }
- // sort the data based on column and direction
- final int index = currentColumn == column1 ? 0 : 1;
- final int direction = dir;
- Arrays.sort(data, new Comparator() {
- public int compare(Object arg0, Object arg1) {
- int[] a = (int[]) arg0;
- int[] b = (int[]) arg1;
- if (a[index] == b[index]) return 0;
- if (direction == SWT.UP) {
- return a[index] < b[index] ? -1 : 1;
- }
- return a[index] < b[index] ? 1 : -1;
- }
- });
- // update data displayed in table
- table.setSortDirection(dir);
- table.clearAll();
- }
- };
- column1.addListener(SWT.Selection, sortListener);
- column2.addListener(SWT.Selection, sortListener);
- table.setSortColumn(column1);
- table.setSortDirection(SWT.UP);
- shell.setSize(shell.computeSize(SWT.DEFAULT, SWT.DEFAULT).x, 300);
- shell.open();
- while (!shell.isDisposed()) {
- if (!display.readAndDispatch())
- display.sleep();
- }
- display.dispose();
-}
-} \ No newline at end of file