Example usage for org.eclipse.jface.viewers TreeViewerColumn getColumn

List of usage examples for org.eclipse.jface.viewers TreeViewerColumn getColumn

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TreeViewerColumn getColumn.

Prototype

public TreeColumn getColumn() 

Source Link

Usage

From source file:net.tourbook.photo.internal.PicDirFolder.java

License:Open Source License

private void createUI_10_TreeView(final Composite parent) {

    /*/*from w w  w  .  ja  va2 s  .co m*/
     * create tree layout
     */

    final Composite layoutContainer = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults()//
            .grab(true, true).hint(200, 100).applyTo(layoutContainer);

    final TreeColumnLayout treeLayout = new TreeColumnLayout();
    layoutContainer.setLayout(treeLayout);

    /*
     * create viewer
     */
    final Tree tree = new Tree(layoutContainer, SWT.V_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION);

    tree.setHeaderVisible(false);

    tree.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseDown(final MouseEvent e) {
            _doAutoCollapseExpand = true;
            _isMouseContextMenu = e.button == 3;
        }
    });

    _folderViewer = new TreeViewer(tree);

    _folderViewer.setContentProvider(new FolderContentProvider());
    _folderViewer.setComparer(new FolderComparer());
    _folderViewer.setUseHashlookup(true);

    _folderViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(final DoubleClickEvent event) {

            // expand/collapse current item
            final Object selection = ((IStructuredSelection) _folderViewer.getSelection()).getFirstElement();

            final TVIFolderFolder treeItem = (TVIFolderFolder) selection;

            expandCollapseFolder(treeItem);
        }
    });

    _folderViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(final SelectionChangedEvent event) {
            onSelectFolder((ITreeSelection) event.getSelection());
        }
    });

    /*
     * create columns
     */
    TreeViewerColumn tvc;
    TreeColumn tvcColumn;

    // column: os folder
    tvc = new TreeViewerColumn(_folderViewer, SWT.TRAIL);
    tvcColumn = tvc.getColumn();
    tvc.setLabelProvider(new StyledCellLabelProvider() {

        @Override
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof TVIFolderFolder) {
                final TVIFolderFolder folderItem = (TVIFolderFolder) element;

                final StyledString styledString = new StyledString();

                styledString.append(folderItem._folderName);

                if (_isStateShowFileFolderInFolderItem) {

                    if (folderItem.isFolderLoaded()) {

                        final int folderCounter = folderItem.getFolderCounter();
                        if (folderCounter > 0) {
                            styledString.append(UI.SPACE2);
                            styledString.append(Integer.toString(folderCounter), PhotoUI.PHOTO_FOLDER_STYLER);
                        }

                        final int fileCounter = folderItem.getFileCounter();
                        if (fileCounter > 0) {
                            styledString.append(net.tourbook.common.UI.SPACE2);
                            styledString.append(Integer.toString(fileCounter), PhotoUI.PHOTO_FILE_STYLER);
                        }

                    } else {

                        // force that file list is loaded and number of files is available

                        putFolderInWaitingQueue(folderItem, false);

                        styledString.append(UI.SPACE2 + Messages.Pic_Dir_StatusLable_LoadingFolder_InFolderTree,
                                PhotoUI.PHOTO_FOLDER_STYLER);
                    }
                }

                cell.setText(styledString.getString());
                cell.setStyleRanges(styledString.getStyleRanges());
            }
        }
    });
    treeLayout.setColumnData(tvcColumn, new ColumnWeightData(100, true));
}

From source file:net.tourbook.preferences.PrefPageAppearanceColors.java

License:Open Source License

/**
 * create columns/*from w ww . j  a v  a2  s  .co m*/
 */
private void defineAllColumns(final TreeColumnLayout treeLayout, final Tree tree) {

    final int numberOfHorizontalImages = 5;
    final int trailingOffset = 10;

    final int itemHeight = tree.getItemHeight();
    final int colorWidth = (itemHeight + GraphColorPainter.GRAPH_COLOR_SPACING) * numberOfHorizontalImages
            + trailingOffset;

    TreeColumn tc;
    TreeViewerColumn tvc;

    // 1. column: color item/color definition
    tvc = new TreeViewerColumn(_colorViewer, SWT.TRAIL);
    tc = tvc.getColumn();
    tvc.setLabelProvider(new StyledCellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof ColorDefinition) {
                cell.setText(((ColorDefinition) (element)).getVisibleName());
            } else if (element instanceof GraphColorItem) {
                cell.setText(((GraphColorItem) (element)).getName());
            } else {
                cell.setText(UI.EMPTY_STRING);
            }
        }
    });
    treeLayout.setColumnData(tc, new ColumnWeightData(1, true));

    // 2. column: color for definition/item
    tvc = new TreeViewerColumn(_colorViewer, SWT.TRAIL);
    tc = tvc.getColumn();
    tvc.setLabelProvider(new StyledCellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof ColorDefinition) {

                cell.setImage(_graphColorPainter.drawColorDefinitionImage((ColorDefinition) element,
                        numberOfHorizontalImages));

            } else if (element instanceof GraphColorItem) {

                cell.setImage(_graphColorPainter.drawGraphColorImage(//
                        (GraphColorItem) element, numberOfHorizontalImages));

            } else {

                cell.setImage(null);
            }
        }
    });
    treeLayout.setColumnData(tc, new ColumnPixelData(colorWidth, true));
}

From source file:net.tourbook.preferences.PrefPageTags.java

License:Open Source License

private void createUI_20_TagViewer(final Composite parent) {

    /*/*from   ww w  .  j a v  a 2s  .  c  o  m*/
     * create tree layout
     */

    final Composite layoutContainer = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults()//
            .grab(true, true).hint(200, 100).applyTo(layoutContainer);

    final TreeColumnLayout treeLayout = new TreeColumnLayout();
    layoutContainer.setLayout(treeLayout);

    /*
     * create viewer
     */
    final Tree tree = new Tree(layoutContainer, SWT.H_SCROLL | SWT.V_SCROLL
    //            | SWT.BORDER
            | SWT.MULTI | SWT.FULL_SELECTION);

    tree.setHeaderVisible(false);
    tree.setLinesVisible(getPreferenceStore().getBoolean(ITourbookPreferences.VIEW_LAYOUT_DISPLAY_LINES));

    _tagViewer = new TreeViewer(tree);

    _tagViewer.setContentProvider(new TagViewerContentProvicer());
    _tagViewer.setComparator(new TagViewerComparator());
    _tagViewer.setUseHashlookup(true);

    _tagViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(final DoubleClickEvent event) {

            final Object selection = ((IStructuredSelection) _tagViewer.getSelection()).getFirstElement();

            if (selection instanceof TVIPrefTag) {

                // tag is selected

                onRenameTourTag();

            } else if (selection instanceof TVIPrefTagCategory) {

                // expand/collapse current item

                final TreeViewerItem tourItem = (TreeViewerItem) selection;

                if (_tagViewer.getExpandedState(tourItem)) {
                    _tagViewer.collapseToLevel(tourItem, 1);
                } else {
                    _tagViewer.expandToLevel(tourItem, 1);
                }
            }
        }
    });

    _tagViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            enableButtons();
        }
    });

    _tagViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new DragSourceListener() {

                @Override
                public void dragFinished(final DragSourceEvent event) {

                    final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer();

                    if (event.doit == false) {
                        return;
                    }

                    transfer.setSelection(null);
                    transfer.setSelectionSetTime(0);
                }

                @Override
                public void dragSetData(final DragSourceEvent event) {
                    // data are set in LocalSelectionTransfer
                }

                @Override
                public void dragStart(final DragSourceEvent event) {

                    final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer();
                    final ISelection selection = _tagViewer.getSelection();

                    //                  System.out.println("dragStart");
                    transfer.setSelection(selection);
                    transfer.setSelectionSetTime(_dragStartTime = event.time & 0xFFFFFFFFL);

                    event.doit = !selection.isEmpty();
                }
            });

    _tagViewer.addDropSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() },
            new TagDropAdapter(this, _tagViewer));

    /*
     * create columns
     */
    TreeViewerColumn tvc;
    TreeColumn tvcColumn;

    // column: tags + tag categories
    tvc = new TreeViewerColumn(_tagViewer, SWT.TRAIL);
    tvcColumn = tvc.getColumn();
    tvc.setLabelProvider(new StyledCellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {

            final StyledString styledString = new StyledString();

            final Object element = cell.getElement();
            if (element instanceof TVIPrefTag) {

                final TourTag tourTag = ((TVIPrefTag) element).getTourTag();

                styledString.append(tourTag.getTagName(), UI.TAG_STYLER);
                cell.setImage(tourTag.isRoot() ? _imgTagRoot : _imgTag);

            } else if (element instanceof TVIPrefTagCategory) {

                final TVIPrefTagCategory tourTagCategoryItem = (TVIPrefTagCategory) element;
                final TourTagCategory tourTagCategory = tourTagCategoryItem.getTourTagCategory();

                cell.setImage(_imgTagCategory);

                styledString.append(tourTagCategory.getCategoryName(), UI.TAG_CATEGORY_STYLER);

                // get number of categories
                final int categoryCounter = tourTagCategory.getCategoryCounter();
                final int tagCounter = tourTagCategory.getTagCounter();
                if (categoryCounter == -1 && tagCounter == -1) {

                    //                  styledString.append("  ...", StyledString.COUNTER_STYLER);

                } else {

                    String categoryString = UI.EMPTY_STRING;
                    if (categoryCounter > 0) {
                        categoryString = "/" + categoryCounter; //$NON-NLS-1$
                    }
                    styledString.append("   " + tagCounter + categoryString, StyledString.QUALIFIER_STYLER); //$NON-NLS-1$
                }

            } else {
                styledString.append(element.toString());
            }

            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
        }
    });
    treeLayout.setColumnData(tvcColumn, new ColumnWeightData(100, true));
}

From source file:net.tourbook.preferences.PrefPageTourTypes.java

License:Open Source License

/**
 * create columns/*from  w w w.  j a v  a  2 s.  c  o  m*/
 */
private void defineAllColumns(final TreeColumnLayout treeLayout, final Tree tree) {

    final int numberOfHorizontalImages = 4;
    final int trailingOffset = 10;

    final int itemHeight = tree.getItemHeight();
    final int oneColorWidth = itemHeight + GraphColorPainter.GRAPH_COLOR_SPACING;

    final int colorImageWidth = (oneColorWidth * numberOfHorizontalImages) + trailingOffset;

    TreeColumn tc;
    TreeViewerColumn tvc;

    /*
     * 1. column: color item/color definition
     */
    {
        tvc = new TreeViewerColumn(_tourTypeViewer, SWT.TRAIL);
        tc = tvc.getColumn();
        tvc.setLabelProvider(new StyledCellLabelProvider() {
            @Override
            public void update(final ViewerCell cell) {

                final Object element = cell.getElement();

                if (element instanceof ColorDefinition) {

                    cell.setText(((ColorDefinition) (element)).getVisibleName());

                } else if (element instanceof GraphColorItem) {

                    cell.setText(((GraphColorItem) (element)).getName());

                } else {

                    cell.setText(UI.EMPTY_STRING);
                }
            }
        });
        treeLayout.setColumnData(tc, new ColumnWeightData(1, true));
    }

    /*
     * 2. column: color for definition/item
     */
    {
        tvc = new TreeViewerColumn(_tourTypeViewer, SWT.TRAIL);
        tc = tvc.getColumn();
        tvc.setLabelProvider(new StyledCellLabelProvider() {
            @Override
            public void update(final ViewerCell cell) {

                final Object element = cell.getElement();

                if (element instanceof ColorDefinition) {

                    final Image image = _graphColorPainter.drawColorDefinitionImage((ColorDefinition) element,
                            numberOfHorizontalImages);

                    cell.setImage(image);

                } else if (element instanceof GraphColorItem) {

                    final Image image = _graphColorPainter.drawGraphColorImage(//
                            (GraphColorItem) element, numberOfHorizontalImages);

                    cell.setImage(image);

                } else {

                    cell.setImage(null);
                }
            }
        });
        treeLayout.setColumnData(tc, new ColumnPixelData(colorImageWidth, true));
    }
}

From source file:net.tourbook.ui.views.tourCatalog.WizardPage_10_CompareTour.java

License:Open Source License

private void defineColumn_AltitudeUp(final TreeColumnLayout treeLayout) {

    final TreeViewerColumn tvc = new TreeViewerColumn(_tourViewer, SWT.TRAIL);
    tvc.setLabelProvider(new CellLabelProvider() {
        @Override//from   w ww  . ja  v a2s . c om
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof TVIWizardCompareTour) {

                final TVIWizardCompareTour tourItem = (TVIWizardCompareTour) element;

                final long value = (long) (tourItem.colAltitudeUp / net.tourbook.ui.UI.UNIT_VALUE_ALTITUDE);
                cell.setText(Long.toString(value));

            } else {

                cell.setText(UI.EMPTY_STRING);
            }
        }
    });

    final TreeColumn tc = tvc.getColumn();
    tc.setText(UI.UNIT_LABEL_ALTITUDE);
    tc.setToolTipText(Messages.tourCatalog_wizard_Column_altitude_up_tooltip);
    treeLayout.setColumnData(tc, new ColumnWeightData(10));
}

From source file:net.tourbook.ui.views.tourCatalog.WizardPage_10_CompareTour.java

License:Open Source License

private void defineColumn_Date(final TreeColumnLayout treeLayout) {

    final TreeViewerColumn tvc = new TreeViewerColumn(_tourViewer, SWT.LEAD);
    tvc.setLabelProvider(new CellLabelProvider() {
        @Override/*from www. j a  v a 2  s . c  om*/
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof TVIWizardCompareYear) {
                cell.setText(((TVIWizardCompareYear) element).treeColumn);
            } else if (element instanceof TVIWizardCompareMonth) {
                cell.setText(((TVIWizardCompareMonth) element).treeColumn);
            } else if (element instanceof TVIWizardCompareTour) {
                cell.setText(((TVIWizardCompareTour) element).treeColumn);
            } else {
                cell.setText(UI.EMPTY_STRING);
            }
        }
    });

    final TreeColumn tc = tvc.getColumn();
    tc.setText(Messages.tourCatalog_wizard_Column_tour);
    treeLayout.setColumnData(tc, new ColumnPixelData(convertWidthInCharsToPixels(20)));
}

From source file:net.tourbook.ui.views.tourCatalog.WizardPage_10_CompareTour.java

License:Open Source License

private void defineColumn_Distance(final TreeColumnLayout treeLayout) {

    final TreeViewerColumn tvc = new TreeViewerColumn(_tourViewer, SWT.TRAIL);
    tvc.setLabelProvider(new CellLabelProvider() {
        @Override/*from w  w w  . j a va  2s.  c  om*/
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof TVIWizardCompareTour) {

                final TVIWizardCompareTour tourItem = (TVIWizardCompareTour) element;

                final float distance = (tourItem.colDistance) / (1000 * net.tourbook.ui.UI.UNIT_VALUE_DISTANCE);

                cell.setText(_nf1.format(distance));

            } else {

                cell.setText(UI.EMPTY_STRING);
            }
        }
    });

    final TreeColumn tc = tvc.getColumn();
    tc.setText(UI.UNIT_LABEL_DISTANCE);
    tc.setToolTipText(Messages.tourCatalog_wizard_Column_distance_tooltip);
    treeLayout.setColumnData(tc, new ColumnWeightData(10));
}

From source file:net.tourbook.ui.views.tourCatalog.WizardPage_10_CompareTour.java

License:Open Source License

private void defineColumn_RecordingTime(final TreeColumnLayout treeLayout) {

    final TreeViewerColumn tvc = new TreeViewerColumn(_tourViewer, SWT.TRAIL);
    tvc.setLabelProvider(new CellLabelProvider() {
        @Override//from w  w w.j  a v  a2  s.  c  o m
        public void update(final ViewerCell cell) {

            final Object element = cell.getElement();

            if (element instanceof TVIWizardCompareTour) {

                final TVIWizardCompareTour tourItem = (TVIWizardCompareTour) element;

                final long recordingTime = tourItem.colRecordingTime;

                cell.setText(String.format(//
                        Messages.Format_hhmm, (recordingTime / 3600), ((recordingTime % 3600) / 60)));

            } else {

                cell.setText(UI.EMPTY_STRING);
            }
        }
    });

    final TreeColumn tc = tvc.getColumn();

    tc.setText(Messages.tourCatalog_wizard_Column_h);
    tc.setToolTipText(Messages.tourCatalog_wizard_Column_h_tooltip);
    treeLayout.setColumnData(tc, new ColumnWeightData(10));
}

From source file:net.tourbook.util.ColumnManager.java

License:Open Source License

/**
 * Creates a column in a tree viewer/*from   w w  w. ja  va2s .  c  o  m*/
 * 
 * @param colDef
 * @param treeViewer
 */
private void createTreeColumn(final TreeColumnDefinition colDef, final TreeViewer treeViewer) {

    TreeViewerColumn tvc;
    TreeColumn tc;

    tvc = new TreeViewerColumn(treeViewer, colDef.getColumnStyle());

    final CellLabelProvider cellLabelProvider = colDef.getCellLabelProvider();
    if (cellLabelProvider != null) {
        tvc.setLabelProvider(cellLabelProvider);
    }

    tc = tvc.getColumn();

    final String columnText = colDef.getColumnText();
    if (columnText != null) {
        tc.setText(columnText);
    }

    final String columnToolTipText = colDef.getColumnToolTipText();
    if (columnToolTipText != null) {
        tc.setToolTipText(columnToolTipText);
    }

    /*
     * set column width
     */
    int columnWidth = colDef.getColumnWidth();
    if (colDef.isColumnHidden()) {
        columnWidth = 0;
    } else {
        columnWidth = columnWidth < MINIMUM_COLUMN_WIDTH ? colDef.getDefaultColumnWidth() : columnWidth;
    }
    tc.setWidth(columnWidth);

    tc.setResizable(colDef.isColumnResizable());
    tc.setMoveable(colDef.isColumnMoveable());

    // keep reference to the column definition
    tc.setData(colDef);
    colDef.setTreeColumn(tc);

    final SelectionAdapter columnSelectionListener = colDef.getColumnSelectionListener();
    if (columnSelectionListener != null) {
        tc.addSelectionListener(columnSelectionListener);
    }
}

From source file:net.vectorcomputing.photo.ui.widgets.PhotoCatalogsList.java

License:Apache License

private void createHeaders() {
    String[] headers = { "Name", "# of records", "update start time" };
    int[] columnWidths = { 100, 100, 100 };
    for (int i = 0; i < headers.length; i++) {
        TreeViewerColumn column = new TreeViewerColumn(viewer, SWT.NONE);
        column.getColumn().setText(headers[i]);
        column.getColumn().setResizable(true);
        //column.getColumn().setMoveable(true);
        column.getColumn().setWidth(columnWidths[i]);
    }//from w w w.j  a v  a 2  s  .  co  m

    viewer.setLabelProvider(new PhotoCatalogsCellLabelProvider());

    tree.setHeaderVisible(true);
    tree.setLinesVisible(true);
}