Example usage for org.eclipse.jface.viewers IStructuredSelection isEmpty

List of usage examples for org.eclipse.jface.viewers IStructuredSelection isEmpty

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers IStructuredSelection isEmpty.

Prototype

public boolean isEmpty();

Source Link

Document

Returns whether this selection is empty.

Usage

From source file:com.bdaum.zoom.ui.internal.dialogs.ConfigureColumnsDialog.java

License:Open Source License

private void updateButtons() {
    boolean fieldSelected = false;
    IStructuredSelection selection = (IStructuredSelection) metaViewer.getSelection();
    Iterator<?> iterator = selection.iterator();
    while (iterator.hasNext()) {
        QueryField qfield = (QueryField) iterator.next();
        if (!qfield.hasChildren()) {
            fieldSelected = true;/*  w  w  w. j a v  a 2  s  . co  m*/
            break;
        }
    }
    addButton.setEnabled(fieldSelected);
    selection = columnsViewer.getStructuredSelection();
    boolean colSelected = !selection.isEmpty();
    removeButton.setEnabled(colSelected);
    if (colSelected) {
        int min = Integer.MAX_VALUE;
        int max = -1;
        iterator = selection.iterator();
        while (iterator.hasNext()) {
            int index = columnFields.indexOf(iterator.next());
            min = Math.min(min, index);
            max = Math.max(max, index);
        }
        upButton.setEnabled(min > 0);
        downButton.setEnabled(max < columnFields.size() - 1);
    } else {
        upButton.setEnabled(false);
        downButton.setEnabled(false);
    }
}

From source file:com.bdaum.zoom.ui.internal.dialogs.MigrateDialog.java

License:Open Source License

private void updateButtons() {
    IStructuredSelection selection = viewer.getStructuredSelection();
    boolean enabled = !selection.isEmpty();
    removePatternButton.setEnabled(enabled);
    editPatternButton.setEnabled(enabled);
    if (enabled) {
        int i = rules.indexOf(selection.getFirstElement());
        downButton.setEnabled(i < rules.size() - 1);
        upButton.setEnabled(i > 0);//from   w w w  .ja  v a 2  s  . c o  m
    } else {
        downButton.setEnabled(false);
        upButton.setEnabled(false);
    }
    String errorMessage = null;
    if (fileEditor.getText().isEmpty())
        errorMessage = Messages.MigrateDialog_define_target_cat_file;
    else if (rules.isEmpty())
        errorMessage = Messages.MigrateDialog_define_one_pattern;
    else {
        File file = new File(fileEditor.getText());
        long freeSpace = Core.getCore().getVolumeManager().getRootFile(file).getUsableSpace();
        long catSize = (long) (dbManager.getFile().length() * 1.05d);
        if (freeSpace < catSize)
            errorMessage = NLS.bind(Messages.MigrateDialog_not_enough_free_space,
                    Format.sizeFormatter.toString(freeSpace), Format.sizeFormatter.toString(catSize));
    }
    setErrorMessage(errorMessage);
    getButton(OK).setEnabled(errorMessage == null);
    getButton(SAVE).setEnabled(errorMessage == null);
    getButton(LOAD).setEnabled(!dbManager.obtainObjects(MigrationPolicy.class).isEmpty());
}

From source file:com.bdaum.zoom.ui.internal.dialogs.MigrateDialog.java

License:Open Source License

@Override
protected void buttonPressed(int buttonId) {
    switch (buttonId) {
    case LOAD:/*from   www . j  av  a2s.  c o  m*/
        if (dirty && !AcousticMessageDialog.openQuestion(getShell(),
                Messages.MigrateDialog_load_migration_policy, Messages.MigrateDialog_abandon_current_policy))
            return;
        List<MigrationPolicy> set = dbManager.obtainObjects(MigrationPolicy.class);
        if (!set.isEmpty()) {
            List<MigrationPolicy> policies = new ArrayList<MigrationPolicy>(set);
            ListDialog dialog = new ListDialog(getShell()) {
                @Override
                public void create() {
                    super.create();
                    getTableViewer().addSelectionChangedListener(new ISelectionChangedListener() {
                        public void selectionChanged(SelectionChangedEvent event) {
                            updateDeleteButton();
                        }
                    });
                }

                @Override
                protected void createButtonsForButtonBar(Composite parent) {
                    createButton(parent, 9999, Messages.MigrateDialog_remove, false);
                    super.createButtonsForButtonBar(parent);
                }

                @Override
                protected void buttonPressed(int buttonId) {
                    if (buttonId == 9999) {
                        TableViewer tableViewer = getTableViewer();
                        IStructuredSelection selection = tableViewer.getStructuredSelection();
                        if (!selection.isEmpty()) {
                            MigrationPolicy policy = (MigrationPolicy) selection.getFirstElement();
                            tableViewer.remove(policy);
                            List<Object> toBeDeleted = new ArrayList<Object>(policy.getRule().length + 1);
                            toBeDeleted.addAll(Arrays.asList(policy.getRule()));
                            toBeDeleted.add(policy);
                            dbManager.safeTransaction(toBeDeleted, null);
                            updateDeleteButton();
                            return;
                        }
                    } else
                        super.buttonPressed(buttonId);
                }

                private void updateDeleteButton() {
                    getButton(9999).setEnabled(!getTableViewer().getSelection().isEmpty());
                }
            };
            dialog.setContentProvider(ArrayContentProvider.getInstance());
            dialog.setLabelProvider(ZColumnLabelProvider.getDefaultInstance());
            dialog.setMessage(Messages.MigrateDialog_available_policies);
            dialog.setTitle(Messages.MigrateDialog_migration_policies);
            dialog.setInput(policies);
            if (dialog.open() == ListSelectionDialog.OK) {
                Object[] result = dialog.getResult();
                if (result != null && result.length > 0) {
                    MigrationPolicy policy = (MigrationPolicy) result[0];
                    rules = new ArrayList<MigrationRule>(Arrays.asList(policy.getRule()));
                    fileEditor.setText(policy.getTargetCatalog());
                    String fsp = policy.getFileSeparatorPolicy();
                    fileSepearatorPolicy = MigrationPolicy_type.fileSeparatorPolicy_tOSLASH.equals(fsp) ? 1
                            : MigrationPolicy_type.fileSeparatorPolicy_tOBACKSLASH.equals(fsp) ? 2 : 0;
                    fileSeparatorCombo.select(fileSepearatorPolicy);
                    viewer.setInput(rules);
                    updateButtons();
                    dirty = false;
                }
            }
        }
        return;
    case SAVE:
        File file = new File(fileEditor.getText());
        String filename = file.getName();
        if (filename.endsWith(BatchConstants.CATEXTENSION))
            filename = filename.substring(0, filename.length() - BatchConstants.CATEXTENSION.length());
        InputDialog dialog = new InputDialog(getShell(), Messages.MigrateDialog_save_migration_policy,
                Messages.MigrateDialog_specify_name, filename, null);
        if (dialog.open() == InputDialog.OK) {
            String name = dialog.getValue();
            fileSepearatorPolicy = fileSeparatorCombo.getSelectionIndex();
            String fsp = convertFileSeparatorPolicy();
            MigrationPolicy policy;
            set = dbManager.obtainObjects(MigrationPolicy.class, "name", name, QueryField.EQUALS); //$NON-NLS-1$
            List<Object> toBeDeleted = null;
            if (!set.isEmpty()) {
                if (AcousticMessageDialog.openQuestion(getShell(), Messages.MigrateDialog_save_migration_policy,
                        Messages.MigrateDialog_policy_already_exists))
                    return;
                policy = set.get(0);
                toBeDeleted = new ArrayList<Object>(Arrays.asList(policy.getRule()));
                policy.setTargetCatalog(targetCatalog);
                policy.setRule(rules.toArray(new MigrationRule[rules.size()]));
                policy.setFileSeparatorPolicy(fsp);
            } else {
                policy = new MigrationPolicyImpl(name, fsp, fileEditor.getText());
                policy.setRule(rules.toArray(new MigrationRule[rules.size()]));
            }
            List<Object> toBeStored = new ArrayList<Object>(rules.size() + 1);
            toBeStored.addAll(rules);
            toBeStored.add(policy);
            dbManager.safeTransaction(toBeDeleted, toBeStored);
            dirty = false;
        }
        return;
    }
    super.buttonPressed(buttonId);
}

From source file:com.bdaum.zoom.ui.internal.preferences.AppearancePreferencePage.java

License:Open Source License

@Override
protected void doPerformOk() {
    IPreferenceStore preferenceStore = getPreferenceStore();
    int showLabel = labelConfigGroup.getSelection();
    if (showLabel >= 0) {
        preferenceStore.setValue(PreferenceConstants.SHOWLABEL, showLabel);
        if (showLabel == Constants.CUSTOM_LABEL)
            preferenceStore.setValue(PreferenceConstants.THUMBNAILTEMPLATE, labelConfigGroup.getTemplate());
    }/*w  w w . j av a  2s . c  o  m*/
    IStructuredSelection selection = colorViewer.getStructuredSelection();
    if (!selection.isEmpty())
        preferenceStore.setValue(PreferenceConstants.BACKGROUNDCOLOR, (String) selection.getFirstElement());
    selection = distViewer.getStructuredSelection();
    if (!selection.isEmpty())
        preferenceStore.setValue(PreferenceConstants.DISTANCEUNIT, (String) selection.getFirstElement());
    selection = dimViewer.getStructuredSelection();
    if (!selection.isEmpty())
        preferenceStore.setValue(PreferenceConstants.DIMUNIT, (String) selection.getFirstElement());
    preferenceStore.setValue(PreferenceConstants.SHOWLOCATION, locationButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.MAXREGIONS, regionField.getSelection());
    preferenceStore.setValue(PreferenceConstants.SHOWDONEMARK, doneButton.getSelection());
    int sel = showRatingGroup.getSelection();
    if (sel >= 0)
        preferenceStore.setValue(PreferenceConstants.SHOWRATING, ratingOptions[sel]);
    preferenceStore.setValue(PreferenceConstants.SHOWROTATEBUTTONS, rotateButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.SHOWVOICENOTE, voiceNoteButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.SHOWEXPANDCOLLAPSE, expandButton.getSelection());
}

From source file:com.bdaum.zoom.ui.internal.preferences.AutoPreferencePage.java

License:Open Source License

@Override
protected void doPerformOk() {
    IPreferenceStore preferenceStore = getPreferenceStore();
    preferenceStore.setValue(PreferenceConstants.AUTORULES, ruleComponent.getResult());
    preferenceStore.setValue(PreferenceConstants.AUTODERIVE, autoButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.APPLYXMPTODERIVATES, xmpButton.getSelection());
    StringBuilder sb = new StringBuilder();
    for (Map.Entry<String, CheckboxButton> entry : detectorButtons.entrySet())
        if (entry.getValue().getSelection()) {
            if (sb.length() > 0)
                sb.append(' ');
            sb.append(entry.getKey());//from  w  ww  .j  a  v a 2  s. c o  m
        }
    preferenceStore.setValue(PreferenceConstants.RELATIONDETECTORS, sb.toString());
    if (relviewer != null) {
        IStructuredSelection selection = relviewer.getStructuredSelection();
        if (!selection.isEmpty())
            preferenceStore.setValue(PreferenceConstants.DERIVERELATIONS, (String) selection.getFirstElement());
    }
    ruleComponent.accelerate();
}

From source file:com.bdaum.zoom.ui.internal.preferences.ColorCodePage.java

License:Open Source License

@Override
public void performOk() {
    IPreferenceStore preferenceStore = getPreferenceStore();
    IStructuredSelection selection = colorCodeViewer.getStructuredSelection();
    if (!selection.isEmpty())
        preferenceStore.setValue(PreferenceConstants.SHOWCOLORCODE, (String) selection.getFirstElement());
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < colorCodeGroups.length; i++)
        sb.append(colorCodeGroups[i].encodeCriterion()).append("\n"); //$NON-NLS-1$
    preferenceStore.setValue(PreferenceConstants.AUTOCOLORCODECRIT, sb.toString());
}

From source file:com.bdaum.zoom.ui.internal.preferences.GeneralPreferencePage.java

License:Open Source License

@Override
protected void doPerformOk() {
    IPreferenceStore preferenceStore = getPreferenceStore();
    preferenceStore.setValue(PreferenceConstants.UNDOLEVELS, undoField.getSelection());
    preferenceStore.setValue(PreferenceConstants.BACKUPINTERVAL, backupField.getSelection());
    IStructuredSelection selection = backupGenerationsField.getStructuredSelection();
    if (!selection.isEmpty())
        preferenceStore.setValue(PreferenceConstants.BACKUPGENERATIONS,
                Integer.parseInt(selection.getFirstElement().toString()));
    selection = iccViewer.getStructuredSelection();
    if (!selection.isEmpty()) {
        String iccno = (String) selection.getFirstElement();
        preferenceStore.setValue(PreferenceConstants.COLORPROFILE, iccno);
        if (Integer.parseInt(iccno) == ImageConstants.CUSTOM && customFile != null)
            preferenceStore.setValue(PreferenceConstants.CUSTOMPROFILE, customFile);
    }/*from w w  w  .j  av a2  s .c  o  m*/
    preferenceStore.setValue(PreferenceConstants.ADVANCEDGRAPHICS, advancedButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.PREVIEW, previewButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.ADDNOISE, noiseButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.ENLARGESMALL, enlargeButton.getSelection());
    if (displayGroup != null) {
        int i = displayGroup.getSelection();
        preferenceStore.setValue(PreferenceConstants.SECONDARYMONITOR,
                i == 2 ? PreferenceConstants.MON_ALTERNATE : i == 1 ? "true" : "false"); //$NON-NLS-1$ //$NON-NLS-2$
    }
    preferenceStore.setValue(PreferenceConstants.INACTIVITYINTERVAL, inactivityField.getSelection());
    IStructuredSelection sel = updateViewer.getStructuredSelection();
    if (!sel.isEmpty())
        preferenceStore.setValue(PreferenceConstants.UPDATEPOLICY, sel.getFirstElement().toString());
    preferenceStore.setValue(PreferenceConstants.NOPROGRESS, noProgressButton.getSelection());
}

From source file:com.bdaum.zoom.ui.internal.preferences.ImportPreferencePage.java

License:Open Source License

@Override
protected void doPerformOk() {
    IPreferenceStore preferenceStore = getPreferenceStore();
    IRawConverter c = (IRawConverter) rcViewer.getStructuredSelection().getFirstElement();
    if (c != null)
        BatchActivator.getDefault().setCurrentRawConverter(c);
    Map<String, IRawConverter> rawConverters = BatchActivator.getDefault().getRawConverters();
    for (IRawConverter rc : rawConverters.values()) {
        FileEditor fileEditor = basicsFileEditors.get(rc.getId());
        if (fileEditor != null) {
            String text = fileEditor.getText();
            preferenceStore.setValue(rc.getPathId(), text);
            BatchUtilities.putPreferences(rc.getPathId(), text);
            rc.setPath(text);/*from ww  w  . ja va2 s. c  o  m*/
        }
        List<RawProperty> props = rc.getProperties();
        for (RawProperty prop : props) {
            Object object = optionProps.get(prop.id);
            if (object instanceof ComboViewer) {
                RawEnum rawEnum = (RawEnum) ((ComboViewer) object).getStructuredSelection().getFirstElement();
                if (rawEnum != null)
                    prop.value = rawEnum.id;
            } else if (object instanceof Spinner)
                prop.value = String.valueOf(((Spinner) object).getSelection());
            else if (object instanceof Button)
                prop.value = String.valueOf(((Button) object).getSelection());
            else if (object instanceof Text)
                prop.value = ((Button) object).getText();
            preferenceStore.setValue(prop.id, prop.value);
            BatchUtilities.putPreferences(prop.id, prop.value);
        }
    }

    if (modeviewer != null) {
        IStructuredSelection selection = modeviewer.getStructuredSelection();
        if (!selection.isEmpty())
            preferenceStore.setValue(PreferenceConstants.RAWIMPORT, (String) selection.getFirstElement());
    }
    if (dngpathEditor != null)
        preferenceStore.setValue(PreferenceConstants.DNGCONVERTERPATH, dngpathEditor.getText());
    if (uncompressedButton != null)
        preferenceStore.setValue(PreferenceConstants.DNGUNCOMPRESSED, uncompressedButton.getSelection());
    if (linearButton != null)
        preferenceStore.setValue(PreferenceConstants.DNGLINEAR, linearButton.getSelection());
    if (dngfolderField != null)
        preferenceStore.setValue(PreferenceConstants.DNGFOLDER, dngfolderField.getText());
    preferenceStore.setValue(PreferenceConstants.MAXIMPORTS, maxSpinner.getSelection());
    int devIns = deviceGroup.getSelection();
    preferenceStore.setValue(PreferenceConstants.DEVICEWATCH,
            devIns == 0 ? "false" : devIns == 1 ? "true" : PreferenceConstants.TETHERED); //$NON-NLS-1$ //$NON-NLS-2$
    preferenceStore.setValue(PreferenceConstants.TETHEREDSHOW, tetheredGroup.getSelection());
    preferenceStore.setValue(PreferenceConstants.SHOWIMPORTED, showButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.IMPORTMAKERNOTES, makerNotesButton.getSelection());
    preferenceStore.setValue(PreferenceConstants.IMPORTFACEDATA, faceDataButton.getSelection());
    StringBuilder sb = new StringBuilder();
    if (recipeViewer != null && recipeGroup.isVisible()) {
        if (allDetectors != null) {
            List<String> configList = new ArrayList<String>(allDetectors.size());
            for (IRecipeDetector detector : allDetectors) {
                sb.setLength(0);
                for (IRecipeParameter parm : detector.getParameters()) {
                    if (sb.length() > 0)
                        sb.append(';');
                    else
                        sb.append(detector.getId()).append(':');
                    sb.append(parm.getId()).append('=').append(parm.getValue());
                }
                configList.add(sb.toString());
            }
            preferenceStore.setValue(PreferenceConstants.RECIPEDETECTORCONFIGURATIONS,
                    Core.toStringList(configList, '\n'));
        }
        if (selectedRecipeDetectors != null)
            preferenceStore.setValue(PreferenceConstants.RECIPEDETECTORS,
                    Core.toStringList(selectedRecipeDetectors, '\n'));
        preferenceStore.setValue(PreferenceConstants.ARCHIVERECIPES, archiveRecipesButton.getSelection());
        preferenceStore.setValue(PreferenceConstants.PROCESSRECIPES, processRecipesButton.getSelection());
    }
    if (synchronizeRecipesButton.isVisible() && synchronizeRecipesButton.getSelection())
        new UpdateRawImagesJob(c != previousRawConverter).schedule(200);
}

From source file:com.bdaum.zoom.ui.internal.preferences.ImportPreferencePage.java

License:Open Source License

@Override
protected String doValidate() {
    if (modeviewer != null) {
        IStructuredSelection selection = modeviewer.getStructuredSelection();
        if (!selection.isEmpty() && !Constants.RAWIMPORT_ONLYRAW.equals(selection.getFirstElement())) {
            String fn = dngpathEditor.getText();
            if (!fn.isEmpty() && !new File(fn).exists())
                return Messages.getString("ImportPreferencePage.dng_converter_does_not_exist"); //$NON-NLS-1$
        }/* ww  w.  j  av a  2  s . co m*/
    }
    IRawConverter c = (IRawConverter) rcViewer.getStructuredSelection().getFirstElement();
    if (c != null) {
        String fn = basicsFileEditors.get(c.getId()).getText();
        if (!fn.isEmpty()) {
            if (!new File(fn).exists())
                return NLS.bind(Messages.getString("ImportPreferencePage.external_dcraw_does_not_exist"), //$NON-NLS-1$
                        c.getName());
        } else if ("required".equals(c.getExecutable())) //$NON-NLS-1$
            return NLS.bind(Messages.getString("ImportPreferencePage.specify_path"), c.getName()); //$NON-NLS-1$
    } else
        return Messages.getString("ImportPreferencePage.select_raw"); //$NON-NLS-1$
    return null;
}

From source file:com.bdaum.zoom.ui.internal.preferences.KeyPreferencePage.java

License:Open Source License

private void createConflictsArea(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    composite.setLayout(new GridLayout(1, false));
    new Label(composite, SWT.NONE).setText(Messages.getString("KeyPreferencePage.conflicts")); //$NON-NLS-1$
    conflictViewer = new TableViewer(composite,
            SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    Table table = conflictViewer.getTable();
    TableViewerColumn bindingNameColumn = new TableViewerColumn(conflictViewer, SWT.LEAD);
    bindingNameColumn.getColumn().setWidth(250);
    table.setLayoutData(new GridData(250, 80));
    bindingNameColumn.setLabelProvider(new ZColumnLabelProvider() {
        @Override/*from   ww w.  j  a  va2 s.  c o  m*/
        public String getText(Object element) {
            if (element instanceof Binding[]) {
                StringBuilder sb = new StringBuilder();
                for (Binding binding : ((Binding[]) element)) {
                    ParameterizedCommand parameterizedCommand = binding.getParameterizedCommand();
                    String s = Messages.getString("KeyPreferencePage.undefined"); //$NON-NLS-1$
                    if (parameterizedCommand != null)
                        try {
                            s = parameterizedCommand.getName();
                        } catch (NotDefinedException e) {
                            // do nothing
                        }
                    if (sb.length() > 0)
                        sb.append("; "); //$NON-NLS-1$
                    sb.append(s);
                }
                return sb.toString();
            }
            return element.toString();
        }
    });
    conflictViewer.setContentProvider(ArrayContentProvider.getInstance());
    conflictViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            if (!selection.isEmpty()) {
                Binding[] conflict = (Binding[]) selection.getFirstElement();
                bindingViewer.setSelection(new StructuredSelection(conflict[0]));
            }
        }
    });
}