in org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/FileListEditor.java [56:163]
public FileListEditor(Composite parent, int style, String label, final String labelPopup,
final IProject project, final String defaultExtension) {
super(parent, style);
setLayout(new GridLayout(3, false));
Label l = new Label(this, SWT.NONE);
l.setText(label);
l.setLayoutData(new GridData(GridData.BEGINNING, GridData.FILL, false, false));
filelist = new ListViewer(this, SWT.BORDER);
filelist.getList().setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
filelist.setContentProvider(ArrayContentProvider.getInstance());
filelist.setLabelProvider(new LabelProvider());
filelist.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
edit.setEnabled(!event.getSelection().isEmpty());
remove.setEnabled(!event.getSelection().isEmpty());
updateUpDownEnableButtons(true);
}
});
Composite buttons = new Composite(this, SWT.NONE);
buttons.setLayoutData(new GridData(GridData.FILL, GridData.FILL, false, true));
// CheckStyle:MagicNumber| OFF
GridLayout layout = new GridLayout(1, false);
// CheckStyle:MagicNumber| ON
layout.marginHeight = 0;
layout.marginWidth = 0;
buttons.setLayout(layout);
edit = new Button(buttons, SWT.PUSH);
edit.setText("Edit");
edit.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false));
edit.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
PathEditorDialog dialog = new PathEditorDialog(getShell(), labelPopup, project,
defaultExtension);
String selection = (String) ((IStructuredSelection) filelist.getSelection()).getFirstElement();
dialog.init(selection);
if (dialog.open() == Window.OK) {
int i = getSelectedConfigurationIndex(selection);
files.set(i, dialog.getFile());
filelist.refresh();
fileListUpdated();
}
}
});
add = new Button(buttons, SWT.PUSH);
add.setText("Add");
add.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false));
add.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
PathEditorDialog dialog = new PathEditorDialog(getShell(), labelPopup, project,
defaultExtension);
if (dialog.open() == Window.OK) {
files.add(dialog.getFile());
filelist.refresh();
fileListUpdated();
}
}
});
remove = new Button(buttons, SWT.PUSH);
remove.setText("Remove");
remove.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false));
remove.addSelectionListener(new SelectionAdapter() {
@SuppressWarnings("unchecked")
public void widgetSelected(SelectionEvent e) {
List<String> selection = ((IStructuredSelection) filelist.getSelection()).toList();
files.removeAll(selection);
filelist.refresh();
fileListUpdated();
remove.setEnabled(false);
edit.setEnabled(false);
}
});
up = new Button(buttons, SWT.PUSH);
up.setText("Up");
up.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false));
up.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
int i = getSelectedConfigurationIndex();
String f = files.get(i);
files.set(i, files.get(i - 1));
files.set(i - 1, f);
filelist.refresh();
fileListUpdated();
updateUpDownEnableButtons(true);
}
});
down = new Button(buttons, SWT.PUSH);
down.setText("Down");
down.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false));
down.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
int i = getSelectedConfigurationIndex();
String f = files.get(i);
files.set(i, files.get(i + 1));
files.set(i + 1, f);
filelist.refresh();
fileListUpdated();
updateUpDownEnableButtons(true);
}
});
}