Example usage for org.eclipse.jface.viewers ViewerCell setImage

List of usage examples for org.eclipse.jface.viewers ViewerCell setImage

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ViewerCell setImage.

Prototype

public void setImage(Image image) 

Source Link

Document

Set the Image for the cell.

Usage

From source file:org.jkiss.dbeaver.tools.transfer.database.ColumnsMappingDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    DBPDataSource targetDataSource = settings.getTargetDataSource(mapping);

    getShell().setText("Map columns of " + mapping.getTargetName());
    boldFont = UIUtils.makeBoldFont(parent.getFont());

    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(new GridLayout(1, false));
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    new Label(composite, SWT.NONE).setText("Source entity: " + DBUtils.getObjectFullName(mapping.getSource())
            + " [" + mapping.getSource().getDataSource().getContainer().getName() + "]");
    new Label(composite, SWT.NONE).setText("Target entity: " + mapping.getTargetName() + " ["
            + (targetDataSource == null ? "?" : targetDataSource.getContainer().getName()) + "]");
    mappingViewer = new TableViewer(composite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.widthHint = 600;/*  w  ww  . j  a  v a  2 s  .  com*/
    gd.heightHint = 300;
    mappingViewer.getTable().setLayoutData(gd);
    mappingViewer.getTable().setLinesVisible(true);
    mappingViewer.getTable().setHeaderVisible(true);
    mappingViewer.setContentProvider(new ListContentProvider());
    mappingViewer.getTable().addKeyListener(new KeyAdapter() {
        @Override
        public void keyReleased(KeyEvent e) {
            if (e.character == SWT.DEL) {
                for (TableItem item : mappingViewer.getTable().getSelection()) {
                    DatabaseMappingAttribute attribute = (DatabaseMappingAttribute) item.getData();
                    attribute.setMappingType(DatabaseMappingType.skip);
                }
                updateStatus(Status.OK_STATUS);
                mappingViewer.refresh();
            } else if (e.character == SWT.SPACE) {
                for (TableItem item : mappingViewer.getTable().getSelection()) {
                    DatabaseMappingAttribute attribute = (DatabaseMappingAttribute) item.getData();
                    attribute.setMappingType(DatabaseMappingType.existing);
                    try {
                        attribute.updateMappingType(VoidProgressMonitor.INSTANCE);
                    } catch (DBException e1) {
                        updateStatus(GeneralUtils.makeExceptionStatus(e1));
                    }
                }
                mappingViewer.refresh();
            }
        }
    });

    {
        TableViewerColumn columnSource = new TableViewerColumn(mappingViewer, SWT.LEFT);
        columnSource.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) cell.getElement();
                cell.setText(DBUtils.getObjectFullName(attrMapping.getSource()));
                if (attrMapping.getIcon() != null) {
                    cell.setImage(DBeaverIcons.getImage(attrMapping.getIcon()));
                }
            }
        });
        columnSource.getColumn().setText("Source Column");
        columnSource.getColumn().setWidth(170);
    }
    {
        TableViewerColumn columnSourceType = new TableViewerColumn(mappingViewer, SWT.LEFT);
        columnSourceType.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                cell.setText(((DatabaseMappingAttribute) cell.getElement()).getSourceType());
            }
        });
        columnSourceType.getColumn().setText("Source Type");
        columnSourceType.getColumn().setWidth(100);
    }

    {
        TableViewerColumn columnTarget = new TableViewerColumn(mappingViewer, SWT.LEFT);
        columnTarget.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                DatabaseMappingAttribute mapping = (DatabaseMappingAttribute) cell.getElement();
                cell.setText(mapping.getTargetName());
                if (mapping.mappingType == DatabaseMappingType.unspecified) {
                    cell.setBackground(
                            DBeaverUI.getSharedTextColors().getColor(SharedTextColors.COLOR_WARNING));
                } else {
                    cell.setBackground(null);
                }
                cell.setFont(boldFont);
            }
        });
        columnTarget.getColumn().setText("Target Column");
        columnTarget.getColumn().setWidth(170);
        columnTarget.setEditingSupport(new EditingSupport(mappingViewer) {
            @Override
            protected CellEditor getCellEditor(Object element) {
                try {
                    java.util.List<String> items = new ArrayList<>();
                    DatabaseMappingAttribute mapping = (DatabaseMappingAttribute) element;
                    if (mapping.getParent().getMappingType() == DatabaseMappingType.existing
                            && mapping.getParent().getTarget() instanceof DBSEntity) {
                        DBSEntity parentEntity = (DBSEntity) mapping.getParent().getTarget();
                        for (DBSEntityAttribute attr : CommonUtils
                                .safeCollection(parentEntity.getAttributes(VoidProgressMonitor.INSTANCE))) {
                            items.add(attr.getName());
                        }
                    }

                    items.add(DatabaseMappingAttribute.TARGET_NAME_SKIP);
                    CustomComboBoxCellEditor editor = new CustomComboBoxCellEditor(mappingViewer.getTable(),
                            items.toArray(new String[items.size()]), SWT.DROP_DOWN);
                    updateStatus(Status.OK_STATUS);
                    return editor;
                } catch (DBException e) {
                    updateStatus(GeneralUtils.makeExceptionStatus(e));
                    return null;
                }
            }

            @Override
            protected boolean canEdit(Object element) {
                return true;
            }

            @Override
            protected Object getValue(Object element) {
                return ((DatabaseMappingAttribute) element).getTargetName();
            }

            @Override
            protected void setValue(Object element, Object value) {
                try {
                    String name = CommonUtils.toString(value);
                    DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) element;
                    if (DatabaseMappingAttribute.TARGET_NAME_SKIP.equals(name)) {
                        attrMapping.setMappingType(DatabaseMappingType.skip);
                    } else {
                        if (attrMapping.getParent().getMappingType() == DatabaseMappingType.existing
                                && attrMapping.getParent().getTarget() instanceof DBSEntity) {
                            DBSEntity parentEntity = (DBSEntity) attrMapping.getParent().getTarget();
                            for (DBSEntityAttribute attr : CommonUtils
                                    .safeCollection(parentEntity.getAttributes(VoidProgressMonitor.INSTANCE))) {
                                if (name.equalsIgnoreCase(attr.getName())) {
                                    attrMapping.setTarget(attr);
                                    attrMapping.setMappingType(DatabaseMappingType.existing);
                                    return;
                                }
                            }
                        }
                        attrMapping.setMappingType(DatabaseMappingType.create);
                        attrMapping.setTargetName(name);
                    }
                    updateStatus(Status.OK_STATUS);
                } catch (DBException e) {
                    updateStatus(GeneralUtils.makeExceptionStatus(e));
                } finally {
                    mappingViewer.refresh();
                }
            }
        });
    }

    {
        TableViewerColumn columnTargetType = new TableViewerColumn(mappingViewer, SWT.LEFT);
        columnTargetType.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) cell.getElement();
                DBPDataSource dataSource = settings.getTargetDataSource(attrMapping);
                cell.setText(attrMapping.getTargetType(dataSource));
                cell.setFont(boldFont);
            }
        });
        columnTargetType.getColumn().setText("Target Type");
        columnTargetType.getColumn().setWidth(100);
        columnTargetType.setEditingSupport(new EditingSupport(mappingViewer) {
            @Override
            protected CellEditor getCellEditor(Object element) {
                DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) element;

                Set<String> types = new LinkedHashSet<>();
                DBPDataSource dataSource = settings.getTargetDataSource(attrMapping);
                if (dataSource instanceof DBPDataTypeProvider) {
                    for (DBSDataType type : ((DBPDataTypeProvider) dataSource).getLocalDataTypes()) {
                        types.add(type.getName());
                    }
                }
                types.add(attrMapping.getTargetType(dataSource));

                return new CustomComboBoxCellEditor(mappingViewer.getTable(),
                        types.toArray(new String[types.size()]), SWT.BORDER);
            }

            @Override
            protected boolean canEdit(Object element) {
                return true;
            }

            @Override
            protected Object getValue(Object element) {
                DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) element;
                return attrMapping.getTargetType(settings.getTargetDataSource(attrMapping));
            }

            @Override
            protected void setValue(Object element, Object value) {
                DatabaseMappingAttribute attrMapping = (DatabaseMappingAttribute) element;
                attrMapping.setTargetType(CommonUtils.toString(value));
                mappingViewer.refresh(element);
            }
        });
    }

    {
        TableViewerColumn columnType = new TableViewerColumn(mappingViewer, SWT.LEFT);
        columnType.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                DatabaseMappingAttribute mapping = (DatabaseMappingAttribute) cell.getElement();
                String text = "";
                switch (mapping.getMappingType()) {
                case unspecified:
                    text = "?";
                    break;
                case existing:
                    text = "existing";
                    break;
                case create:
                    text = "new";
                    break;
                case skip:
                    text = "skip";
                    break;
                }
                cell.setText(text);
            }
        });
        columnType.getColumn().setText("Mapping");
        columnType.getColumn().setWidth(60);
    }

    mappingViewer.setInput(attributeMappings);

    return parent;
}

From source file:org.jkiss.dbeaver.tools.transfer.database.DatabaseConsumerPageMapping.java

License:Open Source License

private void createMappingsTree(Composite composite) {
    // Mapping table
    mappingViewer = new TreeViewer(composite, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    mappingViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    mappingViewer.getTree().setLinesVisible(true);
    mappingViewer.getTree().setHeaderVisible(true);

    TreeViewerColumn columnSource = new TreeViewerColumn(mappingViewer, SWT.LEFT);
    columnSource.setLabelProvider(new MappingLabelProvider() {
        @Override/*from w w w  .  j ava2  s  . c om*/
        public void update(ViewerCell cell) {
            DatabaseMappingObject mapping = (DatabaseMappingObject) cell.getElement();
            cell.setText(DBUtils.getObjectFullName(mapping.getSource()));
            if (mapping.getIcon() != null) {
                cell.setImage(DBeaverIcons.getImage(mapping.getIcon()));
            }
            super.update(cell);
        }
    });
    columnSource.getColumn().setText("Source");

    TreeViewerColumn columnTarget = new TreeViewerColumn(mappingViewer, SWT.LEFT);
    columnTarget.setLabelProvider(new MappingLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            DatabaseMappingObject mapping = (DatabaseMappingObject) cell.getElement();
            cell.setText(mapping.getTargetName());
            if (mapping.getMappingType() == DatabaseMappingType.unspecified) {
                cell.setBackground(DBeaverUI.getSharedTextColors().getColor(SharedTextColors.COLOR_WARNING));
            } else {
                cell.setBackground(null);
            }
            super.update(cell);
        }
    });
    columnTarget.getColumn().setText("Target");
    columnTarget.setEditingSupport(new EditingSupport(mappingViewer) {
        @Override
        protected CellEditor getCellEditor(Object element) {
            try {
                CellEditor targetEditor = createTargetEditor(element);
                setErrorMessage(null);
                return targetEditor;
            } catch (DBException e) {
                setErrorMessage(e.getMessage());
                return null;
            }
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }

        @Override
        protected Object getValue(Object element) {
            DatabaseMappingObject mapping = (DatabaseMappingObject) element;
            if (mapping.getMappingType() == DatabaseMappingType.unspecified) {
                return mapping.getSource().getName();
            }
            if (mapping instanceof DatabaseMappingContainer) {
                if (mapping.getMappingType() == DatabaseMappingType.existing) {
                    return ((DatabaseMappingContainer) mapping).getTarget();
                }
                return mapping.getTargetName();
            } else {
                if (mapping.getMappingType() == DatabaseMappingType.existing) {
                    return ((DatabaseMappingAttribute) mapping).getTarget();
                }
                return mapping.getTargetName();
            }
        }

        @Override
        protected void setValue(Object element, Object value) {
            try {
                final DatabaseConsumerSettings settings = getWizard()
                        .getPageSettings(DatabaseConsumerPageMapping.this, DatabaseConsumerSettings.class);
                String name = CommonUtils.toString(value);
                DBPDataSource dataSource = settings.getTargetDataSource((DatabaseMappingObject) element);
                if (!name.equals(DatabaseMappingAttribute.TARGET_NAME_SKIP) && !name.equals(TARGET_NAME_BROWSE)
                        && dataSource != null) {
                    name = DBObjectNameCaseTransformer.transformName(dataSource, name);
                }
                setMappingTarget((DatabaseMappingObject) element, name);
                mappingViewer.refresh();
                mappingViewer.setSelection(mappingViewer.getSelection());
                updatePageCompletion();
                setErrorMessage(null);
            } catch (DBException e) {
                setErrorMessage(e.getMessage());
            }
        }
    });
    //TreeViewerEditor.create(mappingViewer, new TreeViewerFocusCellManager(), ColumnViewerEditor.TABBING_CYCLE_IN_ROW);

    TreeViewerColumn columnMapping = new TreeViewerColumn(mappingViewer, SWT.LEFT);
    columnMapping.setLabelProvider(new MappingLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            DatabaseMappingObject mapping = (DatabaseMappingObject) cell.getElement();
            String text = "";
            switch (mapping.getMappingType()) {
            case unspecified:
                text = "?";
                break;
            case existing:
                text = "existing";
                break;
            case create:
                text = "new";
                break;
            case skip:
                text = "skip";
                break;
            }
            cell.setText(text);
            super.update(cell);
        }
    });
    columnMapping.getColumn().setText("Mapping");

    mappingViewer.setContentProvider(new TreeContentProvider() {
        @Override
        public boolean hasChildren(Object element) {
            return element instanceof DatabaseMappingContainer;
        }

        @Override
        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof DatabaseMappingContainer) {
                return ((DatabaseMappingContainer) parentElement).getAttributeMappings(getContainer())
                        .toArray();
            }
            return null;
        }
    });
}

From source file:org.jkiss.dbeaver.tools.transfer.wizard.DataTransferPagePipes.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    initializeDialogUnits(parent);//  w ww. java 2 s .  co  m

    Composite composite = new Composite(parent, SWT.NULL);
    composite.setLayout(new GridLayout());
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    consumersTable = new TableViewer(composite, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION);
    consumersTable.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    consumersTable.getTable().setLinesVisible(true);
    consumersTable.setContentProvider(new IStructuredContentProvider() {
        @Override
        public void dispose() {
        }

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        @Override
        public Object[] getElements(Object inputElement) {
            if (inputElement instanceof Collection) {
                return ((Collection<?>) inputElement).toArray();
            }
            return new Object[0];
        }
    });
    CellLabelProvider labelProvider = new CellLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            TransferTarget element = (TransferTarget) cell.getElement();
            if (cell.getColumnIndex() == 0) {
                if (element.processor != null) {
                    cell.setImage(DBeaverIcons.getImage(element.processor.getIcon()));
                    cell.setText(element.processor.getName());
                } else {
                    cell.setImage(DBeaverIcons.getImage(element.consumer.getIcon()));
                    cell.setText(element.consumer.getName());
                }
            } else {
                if (element.processor != null) {
                    cell.setText(element.processor.getDescription());
                } else {
                    cell.setText(element.consumer.getDescription());
                }
            }
        }
    };
    {
        TableViewerColumn columnName = new TableViewerColumn(consumersTable, SWT.LEFT);
        columnName.setLabelProvider(labelProvider);
        columnName.getColumn().setText(CoreMessages.data_transfer_wizard_init_column_exported);

        TableViewerColumn columnDesc = new TableViewerColumn(consumersTable, SWT.LEFT);
        columnDesc.setLabelProvider(labelProvider);
        columnDesc.getColumn().setText(CoreMessages.data_transfer_wizard_init_column_description);
    }

    loadConsumers();

    consumersTable.getTable().addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            final IStructuredSelection selection = (IStructuredSelection) consumersTable.getSelection();
            TransferTarget target;
            if (!selection.isEmpty()) {
                target = (TransferTarget) selection.getFirstElement();
            } else {
                target = null;
            }
            if (target == null) {
                getWizard().getSettings().selectConsumer(null, null);
            } else {
                getWizard().getSettings().selectConsumer(target.consumer, target.processor);
            }
            updatePageCompletion();
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
            if (isPageComplete()) {
                getWizard().getContainer().showPage(getWizard().getNextPage(DataTransferPagePipes.this));
            }
        }
    });
    consumersTable.getTable().addControlListener(new ControlAdapter() {
        @Override
        public void controlResized(ControlEvent e) {
            UIUtils.packColumns(consumersTable.getTable());
            UIUtils.maxTableColumnsWidth(consumersTable.getTable());
            consumersTable.getTable().removeControlListener(this);
        }
    });
    setControl(composite);

    DataTransferNodeDescriptor consumer = getWizard().getSettings().getConsumer();
    DataTransferProcessorDescriptor processor = getWizard().getSettings().getProcessor();
    if (consumer != null) {
        Collection<TransferTarget> targets = (Collection<TransferTarget>) consumersTable.getInput();
        for (TransferTarget target : targets) {
            if (target.consumer == consumer && target.processor == processor) {
                consumersTable.setSelection(new StructuredSelection(target));
                break;
            }
        }
    }
    updatePageCompletion();
}

From source file:org.jkiss.dbeaver.ui.dialogs.driver.DriverEditDialog.java

License:Open Source License

private void createLibrariesTab(TabFolder group) {
    GridData gd;/*  www .j a  va2  s  .co  m*/
    Composite libsGroup = new Composite(group, SWT.NONE);
    libsGroup.setLayout(new GridLayout(2, false));

    {
        Composite libsListGroup = new Composite(libsGroup, SWT.NONE);
        gd = new GridData(GridData.FILL_BOTH);
        libsListGroup.setLayoutData(gd);
        GridLayout layout = new GridLayout(1, false);
        layout.marginHeight = 0;
        layout.marginWidth = 0;
        libsListGroup.setLayout(layout);

        // Additional libraries list
        libTable = new TreeViewer(libsListGroup, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
        libTable.setContentProvider(new LibContentProvider());
        libTable.setLabelProvider(new CellLabelProvider() {
            @Override
            public void update(ViewerCell cell) {
                final Object element = cell.getElement();
                if (element instanceof DBPDriverLibrary) {
                    DBPDriverLibrary lib = (DBPDriverLibrary) element;
                    String displayName = lib.getDisplayName();
                    if (lib.getPreferredVersion() != null) {
                        displayName += " [" + lib.getPreferredVersion() + "]";
                    }
                    cell.setText(displayName);
                    File localFile = lib.getLocalFile();
                    if (localFile != null && !localFile.exists()) {
                        cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED));
                    } else if (!driver.isLibraryResolved(lib)) {
                        cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLUE));
                    } else {
                        cell.setForeground(null);
                    }
                    cell.setImage(DBeaverIcons.getImage(lib.getIcon()));
                } else {
                    cell.setText(element.toString());
                    cell.setImage(DBeaverIcons.getImage(UIIcon.JAR));
                }
            }
        });
        libTable.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
        libTable.getControl().addListener(SWT.Selection, new Listener() {
            @Override
            public void handleEvent(Event event) {
                changeLibSelection();
            }
        });

        // Find driver class
        boolean isReadOnly = !provider.isDriversManagable();

        Composite findClassGroup = new Composite(libsListGroup, SWT.TOP);
        findClassGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        layout = new GridLayout(3, false);
        layout.marginHeight = 0;
        layout.marginWidth = 0;
        findClassGroup.setLayout(layout);

        UIUtils.createControlLabel(findClassGroup, CoreMessages.dialog_edit_driver_label_driver_class);
        classListCombo = new Combo(findClassGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
        classListCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        classListCombo.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                int selIndex = classListCombo.getSelectionIndex();
                if (selIndex >= 0) {
                    driverClassText.setText(classListCombo.getItem(selIndex));
                }
            }
        });
        classListCombo.setEnabled(!isReadOnly);
        findClassButton = new Button(findClassGroup, SWT.PUSH);
        findClassButton.setText(CoreMessages.dialog_edit_driver_button_bind_class);
        findClassButton.addListener(SWT.Selection, new Listener() {
            @Override
            public void handleEvent(Event event) {
                try {
                    DriverClassFindJob classFinder = new DriverClassFindJob(driver, "java/sql/Driver", true);
                    new ProgressMonitorDialog(getShell()).run(true, true, classFinder);

                    if (classListCombo != null && !classListCombo.isDisposed()) {
                        java.util.List<String> classNames = classFinder.getDriverClassNames();
                        classListCombo.setItems(classNames.toArray(new String[classNames.size()]));
                        classListCombo.setListVisible(true);
                    }

                } catch (InvocationTargetException e) {
                    log.error(e.getTargetException());
                } catch (InterruptedException e) {
                    log.error(e);
                }
            }
        });
        findClassButton.setEnabled(!isReadOnly);
    }

    Composite libsControlGroup = new Composite(libsGroup, SWT.TOP);
    libsControlGroup.setLayout(new GridLayout(1, true));
    libsControlGroup.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));

    UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_file,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    FileDialog fd = new FileDialog(getShell(), SWT.OPEN | SWT.MULTI);
                    fd.setText(CoreMessages.dialog_edit_driver_dialog_open_driver_library);
                    fd.setFilterPath(curFolder);
                    String[] filterExt = { "*.jar;*.zip", "*.dll;*.so", "*.*", "*" }; //$NON-NLS-1$ //$NON-NLS-2$
                    fd.setFilterExtensions(filterExt);
                    String selected = fd.open();
                    if (selected != null) {
                        curFolder = fd.getFilterPath();
                        String[] fileNames = fd.getFileNames();
                        if (!ArrayUtils.isEmpty(fileNames)) {
                            File folderFile = new File(curFolder);
                            for (String fileName : fileNames) {
                                driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver,
                                        fileName.endsWith(".jar") || fileName.endsWith(".zip")
                                                ? DBPDriverLibrary.FileType.jar
                                                : DBPDriverLibrary.FileType.lib,
                                        new File(folderFile, fileName).getAbsolutePath(), null));
                            }
                            changeLibContent();
                        }
                    }
                }
            });

    UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_folder,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    DirectoryDialog fd = new DirectoryDialog(getShell(), SWT.MULTI);
                    fd.setText(CoreMessages.dialog_edit_driver_dialog_open_driver_directory);
                    fd.setFilterPath(curFolder);
                    String selected = fd.open();
                    if (selected != null) {
                        curFolder = fd.getFilterPath();
                        driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver,
                                DBPDriverLibrary.FileType.jar, selected, null));
                        changeLibContent();
                    }
                }
            });

    UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_artifact,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    EditMavenArtifactDialog fd = new EditMavenArtifactDialog(getShell(), null);
                    if (fd.open() == IDialogConstants.OK_ID) {
                        driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver,
                                DBPDriverLibrary.FileType.jar,
                                DriverLibraryMavenArtifact.PATH_PREFIX + fd.getArtifact().getPath(), null));
                        changeLibContent();
                    }
                }
            });

    updateVersionButton = UIUtils.createToolButton(libsControlGroup,
            CoreMessages.dialog_edit_driver_button_update_version, new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    driver.updateFiles();
                    changeLibContent();
                }
            });

    detailsButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_details,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    new DriverLibraryDetailsDialog(getShell(), driver, getSelectedLibrary()).open();
                }
            });
    detailsButton.setEnabled(false);
    deleteButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_delete,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    IStructuredSelection selection = (IStructuredSelection) libTable.getSelection();
                    if (selection != null && !selection.isEmpty()) {
                        if (UIUtils.confirmAction(getShell(), "Delete library",
                                "Are you sure you want to delete selected libraries?")) {
                            for (Object obj : selection.toArray()) {
                                if (obj instanceof DriverLibraryAbstract) {
                                    driver.removeDriverLibrary((DriverLibraryAbstract) obj);
                                }
                            }
                        }
                    }
                    changeLibContent();
                }
            });
    deleteButton.setEnabled(false);

    /*
            upButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_up, new SelectionAdapter() {
    @Override
    public void widgetSelected(SelectionEvent e)
    {
        DriverLibraryAbstract selectedLib = getSelectedLibrary();
        int selIndex = libList.indexOf(selectedLib);
        Collections.swap(libList, selIndex, selIndex - 1);
        changeLibContent();
        changeLibSelection();
    }
            });
            upButton.setEnabled(false);
            
            downButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_down, new SelectionAdapter() {
    @Override
    public void widgetSelected(SelectionEvent e)
    {
        DriverLibraryAbstract selectedLib = getSelectedLibrary();
        int selIndex = libList.indexOf(selectedLib);
        Collections.swap(libList, selIndex, selIndex + 1);
        changeLibContent();
        changeLibSelection();
    }
            });
            downButton.setEnabled(false);
    */

    UIUtils.createHorizontalLine(libsControlGroup);

    UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_classpath,
            new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    ViewClasspathDialog cpDialog = new ViewClasspathDialog(getShell());
                    cpDialog.open();
                }
            });

    changeLibContent();

    TabItem libsTab = new TabItem(group, SWT.NONE);
    libsTab.setText(CoreMessages.dialog_edit_driver_tab_name_driver_libraries);
    libsTab.setToolTipText(CoreMessages.dialog_edit_driver_tab_tooltip_driver_libraries);
    libsTab.setControl(libsGroup);
}

From source file:org.modelio.core.ui.images.ElementDecoratedStyledLabelProvider.java

License:Open Source License

@objid("00051cca-d823-100f-85b1-001ec947cd2a")
@Override/*from  ww  w .j a  v  a  2  s .  c o  m*/
public final void update(ViewerCell cell) {
    final Object obj = cell.getElement();

    if (obj != null) {
        cell.setImage(placeholder);
        final StyledString s = this.baseProvider.getStyledText(obj);
        cell.setText(s.getString());
        cell.setStyleRanges(s.getStyleRanges());
    }

    super.update(cell);
}

From source file:org.oobium.eclipse.designer.outline.DesignerLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();
    String base = getText(element);
    StyledString s = new StyledString(base);

    if (element instanceof ModelElement) {
        // do nothing... ?
    } else if (element instanceof ModelAttribute) {
        ModelAttribute a = (ModelAttribute) element;
        if ("java.sql.Date".equals(a.type())) {
            s.append(": sql.Date", StyledString.DECORATIONS_STYLER);
        } else {/*from  w  ww  .  ja  v a  2 s  .  com*/
            s.append(": " + a.getSimpleType(), StyledString.DECORATIONS_STYLER);
        }
    } else if (element instanceof ModelRelation) {
        ModelRelation r = (ModelRelation) element;
        if (r.isThrough()) {
            s.append(" : " + r.getSimpleType() + " -> " + r.through(), StyledString.DECORATIONS_STYLER);
        } else if (r.hasOpposite()) {
            s.append(" : " + r.getSimpleType() + " (" + r.opposite() + ")", StyledString.DECORATIONS_STYLER);
        } else {
            s.append(" : " + r.getSimpleType(), StyledString.DECORATIONS_STYLER);
        }
    } else if (element instanceof Property) {
        String value = String.valueOf(((Property) element).value);
        if ("dependent".equals(base)) {
            value = getDependentConstant(Integer.parseInt(value));
        } else if ("onDelete".equals(base)) {
            value = getReferentialConstant(Integer.parseInt(value));
        } else if ("onUpdate".equals(base)) {
            value = getReferentialConstant(Integer.parseInt(value));
        }
        s.append(" : " + value, StyledString.DECORATIONS_STYLER);
    }

    cell.setText(s.toString());
    cell.setStyleRanges(s.getStyleRanges());
    cell.setImage(getImage(element));
    super.update(cell);
}

From source file:org.oobium.eclipse.esp.config.ConfigLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    Object element = cell.getElement();
    String base = getText(element);
    StyledString s = new StyledString(base);

    if (element instanceof Entry && !hasChildren(element)) {
        s.append(" : " + ((Entry<?, ?>) element).getValue(), StyledString.DECORATIONS_STYLER);
    }//from   ww w .  j  a v a2 s. c  om

    cell.setText(s.toString());
    cell.setStyleRanges(s.getStyleRanges());
    cell.setImage(getImage(element));
    super.update(cell);
}

From source file:org.openscada.da.ui.widgets.realtime.ItemCellLabelProvider.java

License:Open Source License

private void updateListEntry(final ListEntry listEntry, final ViewerCell cell) {
    cell.setFont(listEntry.getFont());//  w ww . jav  a 2s. c  om
    cell.setForeground(listEntry.getForeground());
    cell.setBackground(listEntry.getBackground());

    switch (cell.getColumnIndex()) {
    case 0:
        cell.setImage(listEntry.getImage());
        cell.setText(listEntry.getDataItem().getItem().getId());
        break;
    case 1:
        if (listEntry.getSubscriptionError() != null) {
            cell.setText(String.format("%s (%s)", listEntry.getSubscriptionState(), //$NON-NLS-1$
                    listEntry.getSubscriptionError().getMessage()));
        } else {
            cell.setText(listEntry.getSubscriptionState().name());
        }
        break;
    case 2:
        if (listEntry.getValue() != null) {
            cell.setText(listEntry.getValue().getType().name());
        }
        break;
    case 3:
        if (listEntry.getValue() != null) {
            cell.setText(listEntry.getValue().asString("<null>")); //$NON-NLS-1$
        }
        break;
    default:
        break;
    }
}

From source file:org.openscada.sec.ui.providers.internal.LabelProviderImpl.java

License:Open Source License

@Override
public void update(final ViewerCell cell) {
    final Object ele = cell.getElement();
    if (ele instanceof KeyProviderFactory) {
        cell.setText(ele.toString());/*from www  .j  av a2s. co m*/
    } else if (ele instanceof KeyProvider) {
        final KeyProvider keyProvider = (KeyProvider) ele;
        cell.setText(keyProvider.toString());
        cell.setImage(keyProvider.isLocked() ? this.locked : null);
    } else if (ele instanceof org.openscada.sec.ui.providers.Key) {
        final org.openscada.sec.ui.providers.Key key = (org.openscada.sec.ui.providers.Key) ele;
        cell.setText(key.toString());
        cell.setImage(key.isLocked() ? this.locked : null);
    }
}

From source file:org.openscada.ui.chart.view.ChartControllerView.java

License:Open Source License

@Override
public void createPartControl(final Composite parent) {
    this.dbc = new DataBindingContext();

    parent.setLayout(new FillLayout());

    final Composite wrapper = new Composite(parent, SWT.NONE);

    this.viewer = new TableViewer(wrapper, SWT.FULL_SELECTION);
    this.viewer.getTable().setHeaderVisible(true);

    final TableColumnLayout layout = new TableColumnLayout();
    wrapper.setLayout(layout);/*from w w  w  .ja  v  a2  s  .co m*/

    final ObservableListContentProvider provider = new ObservableListContentProvider();
    this.viewer.setContentProvider(provider);

    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("Input");
        layout.setColumnData(col.getColumn(), new ColumnWeightData(100));
        col.setLabelProvider(new ObservableMapCellLabelProvider(
                BeansObservables.observeMap(provider.getRealizedElements(), "label")) {

            @Override
            public void update(final ViewerCell cell) {
                cell.setText(((ChartInput) cell.getElement()).getLabel());
            }
        });
    }
    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("Preview");
        col.getColumn().setAlignment(SWT.CENTER);
        layout.setColumnData(col.getColumn(), new ColumnPixelData(50));
        col.setLabelProvider(new ObservableMapCellLabelProvider(
                BeansObservables.observeMap(provider.getRealizedElements(), ChartInput.PROP_PREVIEW)) {

            @Override
            public void update(final ViewerCell cell) {
                final Rectangle rect = cell.getImageBounds();

                if (rect != null && rect.width > 0 && rect.height > 0) {
                    cell.setImage(((ChartInput) cell.getElement()).getPreview(rect.width, rect.height));
                } else {
                    cell.setImage(((ChartInput) cell.getElement()).getPreview(50, 20));
                }
            }
        });
    }
    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("State");
        layout.setColumnData(col.getColumn(), new ColumnWeightData(100));
        col.setLabelProvider(new ObservableMapCellLabelProvider(
                BeansObservables.observeMap(provider.getRealizedElements(), ChartInput.PROP_STATE)) {

            @Override
            public void update(final ViewerCell cell) {
                cell.setText(((ChartInput) cell.getElement()).getState());
            }
        });
    }
    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("Selected Timestamp");
        layout.setColumnData(col.getColumn(), new ColumnWeightData(100));
        col.setLabelProvider(new ObservableMapCellLabelProvider(BeansObservables
                .observeMap(provider.getRealizedElements(), ChartInput.PROP_SELECTED_TIMESTAMP)) {

            @Override
            public void update(final ViewerCell cell) {
                final Date timestamp = ((ChartInput) cell.getElement()).getSelectedTimestamp();
                cell.setText(timestamp == null ? null : DateFormat.getDateTimeInstance().format(timestamp));
            }
        });
    }
    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("Selected Value");
        layout.setColumnData(col.getColumn(), new ColumnWeightData(100));
        col.setLabelProvider(new ObservableMapCellLabelProvider(
                BeansObservables.observeMap(provider.getRealizedElements(), ChartInput.PROP_SELECTED_VALUE)) {

            @Override
            public void update(final ViewerCell cell) {
                cell.setText(((ChartInput) cell.getElement()).getSelectedValue());
            }
        });
    }
    {
        final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE);
        col.getColumn().setText("Selected Quality");
        layout.setColumnData(col.getColumn(), new ColumnWeightData(100));
        col.setLabelProvider(new ObservableMapCellLabelProvider(
                BeansObservables.observeMap(provider.getRealizedElements(), ChartInput.PROP_SELECTED_QUALITY)) {

            @Override
            public void update(final ViewerCell cell) {
                cell.setText(((ChartInput) cell.getElement()).getSelectedQuality());
            }
        });
    }

    getSite().setSelectionProvider(this.viewer);

    contribueTo(getViewSite());

    attachSelectionService();
}