sysmodelmgr/com.symbian.smt.gui/src/com/symbian/smt/gui/smtwidgets/FilterWidget.java
author terytkon
Thu, 11 Mar 2010 19:08:43 +0200
changeset 0 522a326673b6
permissions -rw-r--r--
Moved swconfigapps content under oss repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     1
// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     2
// All rights reserved.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     3
// This component and the accompanying materials are made available
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     5
// which accompanies this distribution, and is available
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     7
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     8
// Initial Contributors:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    10
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    11
// Contributors:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    12
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    13
// Description:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    14
// ${file_name}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    15
// 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    16
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    17
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    18
package com.symbian.smt.gui.smtwidgets;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    19
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    20
import org.eclipse.jface.dialogs.MessageDialog;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    21
import org.eclipse.swt.SWT;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    22
import org.eclipse.swt.events.KeyEvent;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    23
import org.eclipse.swt.events.KeyListener;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    24
import org.eclipse.swt.events.SelectionAdapter;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    25
import org.eclipse.swt.events.SelectionEvent;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    26
import org.eclipse.swt.layout.FillLayout;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    27
import org.eclipse.swt.layout.GridData;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    28
import org.eclipse.swt.layout.GridLayout;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    29
import org.eclipse.swt.layout.RowData;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    30
import org.eclipse.swt.layout.RowLayout;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    31
import org.eclipse.swt.widgets.Button;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    32
import org.eclipse.swt.widgets.Composite;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    33
import org.eclipse.swt.widgets.Label;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    34
import org.eclipse.swt.widgets.List;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    35
import org.eclipse.swt.widgets.Text;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    36
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    37
public class FilterWidget extends Composite {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    38
	private Text text = null;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    39
	private List list;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    40
	private Button modifyButton;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    41
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    42
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    43
	 * Creates a FilterWidget composite object
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    44
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    45
	 * @return void
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    46
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    47
	public FilterWidget(final Composite parent, int style) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    48
		super(parent, style);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    49
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    50
		this.setLayout(new FillLayout());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    51
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    52
		final Composite gridLayoutComposite = new Composite(this, SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    53
		final GridLayout gridLayout = new GridLayout();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    54
		gridLayout.numColumns = 2;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    55
		gridLayoutComposite.setLayout(gridLayout);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    56
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    57
		list = new List(gridLayoutComposite, SWT.BORDER);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    58
		final GridData gd_list = new GridData(SWT.FILL, SWT.FILL, true, true,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    59
				2, 1);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    60
		gd_list.widthHint = 439;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    61
		list.setLayoutData(gd_list);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    62
		list.addSelectionListener(new SelectionAdapter() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    63
			public void widgetSelected(final SelectionEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    64
				int index = list.getSelectionIndex();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    65
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    66
				if (index != -1) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    67
					String filterSelected = list.getItem(index);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    68
					text.setText(filterSelected);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    69
					text.setFocus();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    70
					modifyButton.setEnabled(true);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    71
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    72
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    73
		});
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    74
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    75
		final Label filterLabel = new Label(gridLayoutComposite, SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    76
		filterLabel.setText("Filter");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    77
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    78
		text = new Text(gridLayoutComposite, SWT.BORDER);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    79
		text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    80
		text.setFocus();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    81
		text.addKeyListener(new KeyListener() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    82
			public void keyPressed(KeyEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    83
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    84
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    85
			public void keyReleased(KeyEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    86
				if (text.getText().length() == 0) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    87
					modifyButton.setEnabled(false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    88
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    89
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    90
		});
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    91
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    92
		final Composite buttonsComposite = new Composite(gridLayoutComposite,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    93
				SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    94
		final RowLayout rowLayout = new RowLayout();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    95
		rowLayout.spacing = 30;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    96
		rowLayout.justify = true;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    97
		buttonsComposite.setLayout(rowLayout);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    98
		final GridData gd_buttonsComposite = new GridData(SWT.CENTER, SWT.FILL,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    99
				true, false, 2, 1);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   100
		buttonsComposite.setLayoutData(gd_buttonsComposite);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   101
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   102
		final Button addFilterButton = new Button(buttonsComposite, SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   103
		final RowData rd_addFilterButton = new RowData();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   104
		rd_addFilterButton.width = 75;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   105
		addFilterButton.setLayoutData(rd_addFilterButton);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   106
		addFilterButton.setText("Add");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   107
		addFilterButton.addSelectionListener(new SelectionAdapter() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   108
			public void widgetSelected(final SelectionEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   109
				// Adds the text entered in the filter text to the list of
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   110
				// filter items
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   111
				String filter = text.getText().trim();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   112
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   113
				if (filter.length() > 0) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   114
					// Check that text has been entered and that it does not
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   115
					// already exist in the table
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   116
					Boolean doesExistInList = false;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   117
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   118
					for (String s : list.getItems()) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   119
						if (s.equals(filter)) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   120
							doesExistInList = true;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   121
						}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   122
					}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   123
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   124
					if (!doesExistInList) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   125
						// If it doesn't exist in the table then add it and
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   126
						// clear the text box
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   127
						list.add(filter);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   128
						text.setText("");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   129
						modifyButton.setEnabled(false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   130
					} else {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   131
						MessageDialog
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   132
								.openError(
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   133
										parent.getShell(),
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   134
										"Error",
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   135
										filter
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   136
												+ " already exists in the list of filters.");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   137
					}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   138
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   139
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   140
				text.setFocus();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   141
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   142
		});
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   143
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   144
		final Button removeFilterButton = new Button(buttonsComposite, SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   145
		final RowData rd_removeFilterButton = new RowData();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   146
		rd_removeFilterButton.width = 75;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   147
		removeFilterButton.setLayoutData(rd_removeFilterButton);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   148
		removeFilterButton.setText("Remove");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   149
		removeFilterButton.addSelectionListener(new SelectionAdapter() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   150
			public void widgetSelected(SelectionEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   151
				int listIndex = list.getSelectionIndex();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   152
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   153
				if (listIndex != -1) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   154
					// If an item has been selected in the table then remove it
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   155
					list.remove(listIndex);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   156
					text.setText("");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   157
					modifyButton.setEnabled(false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   158
				} else {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   159
					MessageDialog.openInformation(parent.getShell(), "Info",
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   160
							"You need to select an item to remove.");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   161
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   162
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   163
				text.setFocus();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   164
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   165
		});
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   166
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   167
		modifyButton = new Button(buttonsComposite, SWT.NONE);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   168
		final RowData rd_modifyButton = new RowData();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   169
		rd_modifyButton.width = 75;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   170
		modifyButton.setLayoutData(rd_modifyButton);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   171
		modifyButton.setText("Modify");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   172
		modifyButton.setEnabled(false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   173
		modifyButton.addSelectionListener(new SelectionAdapter() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   174
			public void widgetSelected(final SelectionEvent e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   175
				// Modifies a table entry in place
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   176
				int index = list.getSelectionIndex();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   177
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   178
				String filter = text.getText().trim();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   179
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   180
				if (filter.length() > 0) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   181
					// Check filter text has been entered
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   182
					Boolean doesExistInList = false;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   183
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   184
					for (String s : list.getItems()) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   185
						// Check that the entry doesn't already exist in the
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   186
						// table
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   187
						if (s.equals(filter)) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   188
							doesExistInList = true;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   189
						}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   190
					}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   191
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   192
					if (!doesExistInList) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   193
						// If it doesn't already exist in the table then add it
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   194
						list.remove(index);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   195
						list.add(filter, index);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   196
						text.setText("");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   197
						modifyButton.setEnabled(false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   198
					}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   199
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   200
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   201
				text.setFocus();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   202
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   203
		});
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   204
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   205
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   206
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   207
	 * Returns the filter items
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   208
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   209
	 * @return String[]
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   210
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   211
	public String[] getFilterItems() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   212
		return list.getItems();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   213
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   214
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   215
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   216
	 * Sets the filter items
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   217
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   218
	 * @param filterItems
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   219
	 *            A list containing filters.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   220
	 * @return void
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   221
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   222
	public void setFilterItems(String[] filterItems) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   223
		if (filterItems != null)
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   224
			list.setItems(filterItems);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   225
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   226
}