package org.reldb.dbrowser.ui.content.rev;
import java.util.Vector;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
public class LoadQueryDialog extends Dialog {
private String item;
private Vector<String> items;
/**
* Create the dialog.
* @param parentShell
*/
public LoadQueryDialog(Shell parentShell, Vector<String> items) {
super(parentShell);
this.items = items;
}
protected void configureShell(Shell shell) {
super.configureShell(shell);
shell.setText("Load Query");
}
/**
* Create contents of the dialog.
* @param parent
*/
@Override
protected Control createDialogArea(Composite parent) {
Composite container = (Composite) super.createDialogArea(parent);
container.setLayout(new FillLayout(SWT.HORIZONTAL));
List list = new List(container, SWT.BORDER);
for (String item: items)
list.add(item);
list.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
item = list.getSelection()[0];
}
});
return container;
}
/**
* Create contents of the button bar.
* @param parent
*/
@Override
protected void createButtonsForButtonBar(Composite parent) {
createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
}
public String getSelectedItem() {
return item;
}
}