| /******************************************************************************* |
| * Copyright (c) 2003, 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.help.ui.internal.views; |
| |
| import org.eclipse.swt.SWT; |
| import org.eclipse.swt.custom.CCombo; |
| import org.eclipse.swt.events.KeyListener; |
| import org.eclipse.swt.events.ModifyListener; |
| import org.eclipse.swt.events.SelectionListener; |
| import org.eclipse.swt.widgets.*; |
| import org.eclipse.ui.forms.widgets.FormToolkit; |
| |
| public class ComboPart { |
| private Control combo; |
| |
| public ComboPart() { |
| } |
| |
| public ComboPart(Composite parent, FormToolkit toolkit, int style) { |
| createControl(parent, toolkit, style); |
| } |
| |
| public void addSelectionListener(SelectionListener listener) { |
| if (combo instanceof Combo) |
| ((Combo) combo).addSelectionListener(listener); |
| else |
| ((CCombo) combo).addSelectionListener(listener); |
| } |
| |
| public void addModifyListener(ModifyListener listener) { |
| if (combo instanceof Combo) |
| ((Combo) combo).addModifyListener(listener); |
| else |
| ((CCombo) combo).addModifyListener(listener); |
| } |
| |
| public void addKeyListener(KeyListener listener) { |
| if (combo instanceof Combo) |
| ((Combo) combo).addKeyListener(listener); |
| else |
| ((CCombo) combo).addKeyListener(listener); |
| } |
| |
| public void createControl(Composite parent, FormToolkit toolkit, int style) { |
| if (toolkit.getBorderStyle() == SWT.BORDER) |
| combo = new Combo(parent, style | SWT.BORDER); |
| else |
| combo = new CCombo(parent, style | SWT.FLAT); |
| toolkit.adapt(combo, true, true); |
| } |
| |
| public Control getControl() { |
| return combo; |
| } |
| |
| public int getSelectionIndex() { |
| if (combo instanceof Combo) |
| return ((Combo) combo).getSelectionIndex(); |
| return ((CCombo) combo).getSelectionIndex(); |
| } |
| |
| public void add(String item, int index) { |
| if (combo instanceof Combo) |
| ((Combo) combo).add(item, index); |
| else |
| ((CCombo) combo).add(item, index); |
| } |
| |
| public void add(String item) { |
| if (combo instanceof Combo) |
| ((Combo) combo).add(item); |
| else |
| ((CCombo) combo).add(item); |
| } |
| |
| public void select(int index) { |
| if (combo instanceof Combo) |
| ((Combo) combo).select(index); |
| else |
| ((CCombo) combo).select(index); |
| } |
| |
| public String getSelection() { |
| if (combo instanceof Combo) |
| return ((Combo) combo).getItem(getSelectionIndex()); |
| return ((CCombo) combo).getItem(getSelectionIndex()); |
| } |
| |
| public void setText(String text) { |
| if (combo instanceof Combo) |
| ((Combo) combo).setText(text); |
| else |
| ((CCombo) combo).setText(text); |
| } |
| public String getText() { |
| if (combo instanceof Combo) |
| return ((Combo) combo).getText(); |
| return ((CCombo) combo).getText(); |
| } |
| |
| public void setItems(String[] items) { |
| if (combo instanceof Combo) |
| ((Combo) combo).setItems(items); |
| else |
| ((CCombo) combo).setItems(items); |
| } |
| } |