public FileListEditor()

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);
            }
        });
    }