类org.eclipse.swt.widgets.TreeColumn源码实例Demo

下面列出了怎么用org.eclipse.swt.widgets.TreeColumn的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: nebula   文件: XViewerCustomMenu.java
protected void handleUniqeValuesColumn() {
   TreeColumn treeCol = xViewer.getRightClickSelectedColumn();
   XViewerColumn xCol = (XViewerColumn) treeCol.getData();

   TreeItem[] items = xViewer.getTree().getSelection();
   if (items.length == 0) {
      items = xViewer.getTree().getItems();
   }
   if (items.length == 0) {
      XViewerLib.popup(XViewerText.get("error"), XViewerText.get("error.no_items.sum")); //$NON-NLS-1$ //$NON-NLS-2$
      return;
   }
   Set<String> values = new HashSet<>();
   for (TreeItem item : items) {
      for (int x = 0; x < xViewer.getTree().getColumnCount(); x++) {
         if (xViewer.getTree().getColumn(x).equals(treeCol)) {
            values.add(((IXViewerLabelProvider) xViewer.getLabelProvider()).getColumnText(item.getData(), x));
         }
      }
   }
   String html = HtmlUtil.simplePage(HtmlUtil.textToHtml(CollectionsUtil.toString("\n", values))); //$NON-NLS-1$
   new HtmlDialog(XViewerText.get("dialog.unique.title"), XViewerText.get("dialog.unique.prompt", xCol.getName()), //$NON-NLS-1$ //$NON-NLS-2$
      html).open();
}
 
源代码2 项目: nebula   文件: XViewerCustomMenu.java
protected void handleHideColumn() {
   TreeColumn insertTreeCol = xViewer.getRightClickSelectedColumn();
   XViewerColumn insertXCol = (XViewerColumn) insertTreeCol.getData();
   //      System.out.println("Hide column " + insertXCol);
   CustomizeData custData = xViewer.getCustomizeMgr().generateCustDataFromTable();
   List<XViewerColumn> xCols = custData.getColumnData().getColumns();
   List<XViewerColumn> newXCols = new ArrayList<>();
   for (XViewerColumn currXCol : xCols) {
      if (currXCol.equals(insertXCol)) {
         currXCol.setShow(false);
      }
      newXCols.add(currXCol);
   }
   custData.getColumnData().setColumns(newXCols);
   xViewer.getCustomizeMgr().loadCustomization(custData);
   xViewer.refresh();
}
 
源代码3 项目: arx   文件: ClipboardHandlerTree.java
/**
 * Renders the tree into a string.
 *
 * @param tree
 * @return
 */
private String getText(TreeViewer tree){
    
    StringBuilder builder = new StringBuilder();
   
    List<String> properties = new ArrayList<String>();
    for (TreeColumn column : getColumns(tree)){
        properties.add(column.getText());
    }
    
    for (Object item : getItems(tree)) {
        getText(tree, item, properties, builder, ""); //$NON-NLS-1$
    }
    
    return builder.toString();
}
 
源代码4 项目: nebula   文件: XViewerCustomMenu.java
private void performViewOrCopyCell(Option option) {
   try {
      MouseEvent event = xViewer.getMouseListener().getLeftClickEvent();
      TreeItem item = xViewer.getItemUnderMouseClick(new Point(event.x, event.y));
      TreeColumn column = xViewer.getColumnUnderMouseClick(new Point(event.x, event.y));
      if (item != null && column != null) {
         int columnNum = 0;
         for (int x = 0; x < xViewer.getTree().getColumnCount(); x++) {
            if (xViewer.getTree().getColumn(x).equals(column)) {
               columnNum = x;
               break;
            }
         }
         ViewSelectedCellDataAction action = new ViewSelectedCellDataAction(xViewer, clipboard, option);
         action.run(column, item, columnNum);
      }
   } catch (Exception ex) {
      // do nothing
   }
}
 
源代码5 项目: n4js   文件: TreeViewerBuilder.java
@Override
protected TreeViewer createViewer(final Composite parent, final AbstractColumnLayout columnLayout,
		final int style) {
	final TreeViewer viewer = new TreeViewer(parent, virual ? (style | VIRTUAL) : style);
	final Tree tree = viewer.getTree();
	tree.setLinesVisible(linesVisible);
	tree.setHeaderVisible(headerVisible);

	int columnIndex = 0;
	for (final String columnLabel : columnLabels) {

		final TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, NONE);
		final TreeColumn column = viewerColumn.getColumn();
		columnLayout.setColumnData(column, createColumnLayoutData(columnIndex));
		column.setText(columnLabel);
		column.setMoveable(moveable);

		columnIndex++;
	}

	return viewer;
}
 
源代码6 项目: neoscada   文件: RealTimeListViewer.java
public void saveTo ( final IMemento memento )
{
    if ( memento == null )
    {
        return;
    }

    {
        final IMemento tableMemento = memento.createChild ( "tableCols" ); //$NON-NLS-1$

        for ( int i = 0; i < this.viewer.getTree ().getColumnCount (); i++ )
        {
            final TreeColumn col = this.viewer.getTree ().getColumn ( i );
            tableMemento.putInteger ( "col_" + i, col.getWidth () ); //$NON-NLS-1$
        }
    }

    for ( final ListEntry entry : this.list.getItems () )
    {
        final Item item = entry.getItem ();
        item.saveTo ( memento.createChild ( "item" ) ); //$NON-NLS-1$
    }
}
 
源代码7 项目: Pydev   文件: PackageTab.java
private void makeUIClean() {
    if (tree.isDisposed()) {
        return;
    }
    TreeColumn column = tree.getColumn(0);
    column.setText("Library");
    tree.clearAll(true);
    tree.setItemCount(0);
    btConda.setEnabled(false);
    if (btPipenv != null) {
        btPipenv.setEnabled(false);
    }
    btPip.setEnabled(false);
    if (checkUseConda != null) {
        checkUseConda.setEnabled(false);
    }
}
 
源代码8 项目: tracecompass   文件: TmfSynchronizationView.java
@Override
public void createPartControl(Composite parent) {
    fTree = new Tree(parent, SWT.NONE);
    TreeColumn nameCol = new TreeColumn(fTree, SWT.NONE, 0);
    TreeColumn valueCol = new TreeColumn(fTree, SWT.NONE, 1);
    nameCol.setText(Messages.TmfSynchronizationView_NameColumn);
    valueCol.setText(Messages.TmfSynchronizationView_ValueColumn);

    fTree.setItemCount(0);

    fTree.setHeaderVisible(true);
    nameCol.pack();
    valueCol.pack();

    ITmfTrace trace = TmfTraceManager.getInstance().getActiveTrace();
    if (trace != null) {
        traceSelected(new TmfTraceSelectedSignal(this, trace));
    }
}
 
源代码9 项目: tracecompass   文件: TimeGraphFilterDialog.java
/**
 * Creates the tree viewer.
 *
 * @param parent
 *            the parent composite
 * @return the tree viewer
 */
protected CheckboxTreeViewer createTreeViewer(Composite parent) {
    PatternFilter filter = new TreePatternFilter();
    filter.setIncludeLeadingWildcard(true);
    fTree = new FilteredCheckboxTree(parent, SWT.BORDER | SWT.MULTI, filter, true, false);

    Tree tree = fTree.getViewer().getTree();
    tree.setHeaderVisible(true);
    for (String columnName : fColumnNames) {
        TreeColumn column = new TreeColumn(tree, SWT.LEFT);
        column.setText(columnName);
    }

    fTree.getViewer().setContentProvider(fContentProvider);
    fTree.getViewer().setLabelProvider(fLabelProvider);
    fTree.addCheckStateListener(new CheckStateListener());
    fTree.getViewer().setComparator(fComparator);
    if (fFilters != null) {
        for (int i = 0; i != fFilters.size(); i++) {
            fTree.getViewer().addFilter(fFilters.get(i));
        }
    }
    fTree.getViewer().setInput(fInput);
    return (CheckboxTreeViewer) fTree.getViewer();
}
 
源代码10 项目: nebula   文件: ModelSortPageableTreeExample.java
private static TreeViewerColumn createTreeViewerColumn(TreeViewer viewer,
		String title, int bound) {
	final TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer,
			SWT.NONE);
	final TreeColumn column = viewerColumn.getColumn();
	column.setText(title);
	column.setWidth(bound);
	column.setResizable(true);
	column.setMoveable(true);
	return viewerColumn;
}
 
源代码11 项目: nebula   文件: SortTreeColumnSelectionListener.java
@Override
protected void sort(SelectionEvent e) {
	// 1) Get tree column which fire this selection event
	TreeColumn treeColumn = (TreeColumn) e.getSource();
	// 2) Get the owner tree
	Tree tree = treeColumn.getParent();
	// 3) Modify the SWT Tree sort
	tree.setSortColumn(treeColumn);
	tree.setSortDirection(getSortDirection());
}
 
源代码12 项目: elexis-3-core   文件: DocumentsView.java
private void applyUsersColumnWidthSetting(){
	TreeColumn[] treeColumns = table.getColumns();
	String[] userColWidth = colWidth.split(",");
	/*if (CoreHub.userCfg.get(PreferencePage.SAVE_COLUM_WIDTH, false)) {
		String ucw = CoreHub.userCfg.get(PreferencePage.USR_COLUMN_WIDTH_SETTINGS, colWidth);
		userColWidth = ucw.split(",");
	}*/
	
	for (int i = 0; i < treeColumns.length; i++) {
		treeColumns[i].setWidth(Integer.parseInt(userColWidth[i]));
	}
}
 
源代码13 项目: elexis-3-core   文件: DocumentsView.java
private void sortViewer(int propertyIdx, int direction){
	TreeColumn column = viewer.getTree().getColumn(propertyIdx);
	ovComparator.setColumn(propertyIdx);
	ovComparator.setDirection(direction);
	viewer.getTree().setSortDirection(ovComparator.getDirection());
	viewer.getTree().setSortColumn(column);
	viewer.refresh();
}
 
源代码14 项目: nebula   文件: XViewer.java
public int getCurrentColumnWidth(XViewerColumn xCol) {
   for (TreeColumn col : getTree().getColumns()) {
      if (col.getText().equals(xCol.getName())) {
         return col.getWidth();
      }
   }
   return 0;
}
 
源代码15 项目: nebula   文件: XViewer.java
/**
 * Will be called when Alt-Left-Click is done within table cell
 *
 * @return true if handled
 */
public boolean handleAltLeftClick(TreeColumn treeColumn, TreeItem treeItem) {
   if (treeColumn.getData() instanceof XViewerColumn) {
      if ((XViewerColumn) treeColumn.getData() instanceof IAltLeftClickProvider) {
         return ((IAltLeftClickProvider) (XViewerColumn) treeColumn.getData()).handleAltLeftClick(treeColumn,
            treeItem);
      }
   }
   return false;
}
 
源代码16 项目: uima-uimaj   文件: AbstractSection.java
/**
 * Pack tree.
 *
 * @param p_tree the tree
 */
public void packTree(Tree p_tree) {
  TreeColumn[] columns = p_tree.getColumns();
  for (int i = 0; i < columns.length; i++) {
    columns[i].pack();
  }
}
 
源代码17 项目: Pydev   文件: AbstractPackageManager.java
public void updateTree(Tree tree, List<String[]> listed) {
    TreeColumn column = tree.getColumn(0);
    column.setText("Library (" + getPackageManagerName() + " | " + listed.size() + " found)");
    for (String[] s : listed) {
        TreeItem item = new TreeItem(tree, SWT.None);
        item.setText(s);
    }
}
 
源代码18 项目: nebula   文件: XViewer.java
public TreeColumn getColumnUnderMouseClick(Point point) throws ArrayIndexOutOfBoundsException {
   Integer columnNumber = getColumnNumberUnderMouseClick(point);
   if (columnNumber == null) {
      return null;
   }
   return getTree().getColumn(columnNumber);
}
 
源代码19 项目: nebula   文件: XViewerCustomMenu.java
public void updateEditMenu(MenuManager mm) {
   final Collection<TreeItem> selectedTreeItems = Arrays.asList(xViewer.getTree().getSelection());
   Set<TreeColumn> editableColumns = ColumnMultiEditAction.getEditableTreeColumns(xViewer, selectedTreeItems);
   MenuManager editMenuManager =
      createEditMenuManager(xViewer, XViewerText.get("menu.edit.multi"), selectedTreeItems, editableColumns); //$NON-NLS-1$
   mm.add(editMenuManager);
}
 
源代码20 项目: nebula   文件: XViewerCustomMenu.java
protected void handleAddComputedColumn() {
   TreeColumn insertTreeCol = xViewer.getRightClickSelectedColumn();
   XViewerColumn insertXCol = (XViewerColumn) insertTreeCol.getData();
   XCheckFilteredTreeDialog dialog = new XCheckFilteredTreeDialog("", //$NON-NLS-1$
      XViewerText.get("dialog.add_column.prompt", insertXCol.getName(), //$NON-NLS-1$
         insertXCol.getId()),
      patternFilter, new ArrayTreeContentProvider(), new XViewerColumnLabelProvider(), new XViewerColumnSorter());
   Collection<XViewerComputedColumn> computedCols = xViewer.getComputedColumns(insertXCol);
   if (computedCols.isEmpty()) {
      XViewerLib.popup(XViewerText.get("error"), XViewerText.get("error.no_computed")); //$NON-NLS-1$ //$NON-NLS-2$
      return;
   }
   dialog.setInput(computedCols);
   if (dialog.open() == 0) {
      //         System.out.println("Selected " + dialog.getChecked());
      //         System.out.println("Selected column to add before " + insertXCol);
      CustomizeData custData = xViewer.getCustomizeMgr().generateCustDataFromTable();
      List<XViewerColumn> xCols = custData.getColumnData().getColumns();
      List<XViewerColumn> newXCols = new ArrayList<>();
      for (XViewerColumn currXCol : xCols) {
         if (currXCol.equals(insertXCol)) {
            for (Object obj : dialog.getChecked()) {
               XViewerComputedColumn newComputedXCol = ((XViewerComputedColumn) obj).copy();
               newComputedXCol.setShow(true);
               newComputedXCol.setSourceXViewerColumn(insertXCol);
               newComputedXCol.setXViewer(xViewer);
               newXCols.add(newComputedXCol);
            }
         }
         newXCols.add(currXCol);
      }
      custData.getColumnData().setColumns(newXCols);
      xViewer.getCustomizeMgr().loadCustomization(custData);
      xViewer.refresh();
   }
}
 
源代码21 项目: nebula   文件: XViewerCustomMenu.java
protected void handleSumColumn() {
   TreeColumn treeCol = xViewer.getRightClickSelectedColumn();
   XViewerColumn xCol = (XViewerColumn) treeCol.getData();
   if (!xCol.isSummable()) {
      XViewerLib.popup("Invalid Selection for Sum",
         String.format("Sum not available for column [%s]", xCol.getName()));
      return;
   }

   TreeItem[] items = xViewer.getTree().getSelection();
   if (items.length == 0) {
      items = xViewer.getTree().getItems();
   }
   if (items.length == 0) {
      XViewerLib.popup(XViewerText.get("error"), XViewerText.get("error.no_items.sum")); //$NON-NLS-1$ //$NON-NLS-2$
      return;
   }
   List<String> values = new ArrayList<>();
   for (TreeItem item : items) {
      for (int x = 0; x < xViewer.getTree().getColumnCount(); x++) {
         if (xViewer.getTree().getColumn(x).equals(treeCol)) {
            values.add(((IXViewerLabelProvider) xViewer.getLabelProvider()).getColumnText(item.getData(), x));
         }
      }
   }
   XViewerLib.popup(XViewerText.get("menu.sum.prompt"), xCol.sumValues(values)); //$NON-NLS-1$
}
 
源代码22 项目: nebula   文件: XViewerCustomMenu.java
protected void handleAverageColumn() {
   TreeColumn treeCol = xViewer.getRightClickSelectedColumn();
   XViewerColumn xCol = (XViewerColumn) treeCol.getData();
   if (!xCol.isSummable()) {
      XViewerLib.popup("Invalid Selection for Average",
         String.format("Average not available for column [%s]", xCol.getName()));
      return;
   }

   TreeItem[] items = xViewer.getTree().getSelection();
   if (items.length == 0) {
      items = xViewer.getTree().getItems();
   }
   if (items.length == 0) {
      XViewerLib.popup(XViewerText.get("error"), XViewerText.get("error.no_items.average")); //$NON-NLS-1$ //$NON-NLS-2$
      return;
   }
   List<String> values = new ArrayList<>();
   for (TreeItem item : items) {
      for (int x = 0; x < xViewer.getTree().getColumnCount(); x++) {
         if (xViewer.getTree().getColumn(x).equals(treeCol)) {
            values.add(((IXViewerLabelProvider) xViewer.getLabelProvider()).getColumnText(item.getData(), x));
         }
      }
   }
   XViewerLib.popup(XViewerText.get("menu.sum.prompt"), xCol.averageValues(values)); //$NON-NLS-1$
}
 
源代码23 项目: nebula   文件: XViewerCustomMenu.java
@Override
public String getText(Object element) {
   if (element instanceof TreeColumn) {
      return ((TreeColumn) element).getText();
   }
   return XViewerText.get("error.unknown_element"); //$NON-NLS-1$
}
 
源代码24 项目: nebula   文件: CustomizeManager.java
public List<XViewerColumn> getCurrentTableColumnsInOrder() {
   List<XViewerColumn> columns = new ArrayList<>(15);
   for (Integer index : xViewer.getTree().getColumnOrder()) {
      TreeColumn treeCol = xViewer.getTree().getColumn(index);
      XViewerColumn xCol = (XViewerColumn) treeCol.getData();
      columns.add(xCol);
   }
   return columns;
}
 
源代码25 项目: bonita-studio   文件: TreeExplorer.java
public void setLeftHeader(final String title) {
    leftTree.getTree().setHeaderVisible(true);
    final TreeColumn columnName = new TreeColumn(leftTree.getTree(), SWT.NONE);
    columnName.setText(title);
    final TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(1, 300));
    leftTree.getTree().setLayout(layout);
}
 
源代码26 项目: nebula   文件: CustomizeManager.java
public int getColumnNumFromXViewerColumn(XViewerColumn xCol) {
   for (Integer index : xViewer.getTree().getColumnOrder()) {
      TreeColumn treeCol = xViewer.getTree().getColumn(index);
      XViewerColumn treeXCol = (XViewerColumn) treeCol.getData();
      if (xCol.equals(treeXCol)) {
         return index;
      }
   }
   return 0;
}
 
源代码27 项目: nebula   文件: CustomizeManager.java
public Pair<XViewerColumn, Integer> getColumnNumFromXViewerColumn(String columnId) {
   if (!xViewer.getTree().isDisposed()) {
      for (Integer index : xViewer.getTree().getColumnOrder()) {
         TreeColumn treeCol = xViewer.getTree().getColumn(index);
         XViewerColumn treeXCol = (XViewerColumn) treeCol.getData();
         if (treeXCol.getId().equals(columnId)) {
            return new Pair<>(treeXCol, index);
         }
      }
   }
   return null;
}
 
源代码28 项目: olca-app   文件: Trees.java
@Override
public void controlResized(ControlEvent e) {
	if (!enabled && initialized)
		return;
	double width = tree.getSize().x - 25;
	if (width <= 0)
		return;
	TreeColumn[] columns = tree.getColumns();
	int indexOfLargest = -1;
	double max = 0;
	double diff = 0;
	for (int i = 0; i < columns.length; i++) {
		if (i >= percents.length)
			break;
		double colWidth = percents[i] * width;
		if (max < colWidth) {
			max = colWidth;
			indexOfLargest = i;
		}
		if (colWidth < minimum) {
			colWidth = minimum;
			diff += minimum - colWidth;
		}
		columns[i].setWidth((int) colWidth);
	}
	if (diff > 0) {
		columns[indexOfLargest].setWidth((int) (max - diff));
	}
	initialized = true;
}
 
源代码29 项目: nebula   文件: XViewerColumnSorter.java
@Override
public int compare(Viewer viewer, Object e1, Object e2) {
   if (e1 instanceof XViewerColumn) {
      return getComparator().compare(((XViewerColumn) e1).getName(), ((XViewerColumn) e2).getName());
   } else if ((e1 instanceof TreeColumn) && ((TreeColumn) e1).getData() instanceof XViewerColumn) {

      return getComparator().compare(((XViewerColumn) ((TreeColumn) e1).getData()).toString(),
         ((XViewerColumn) ((TreeColumn) e2).getData()).toString());
   } else {
      return 0;
   }
}
 
源代码30 项目: olca-app   文件: TreeClipboard.java
private static void copyHeaders(Tree tree, int levels, StringBuilder text) {
	int cols = tree.getColumnCount();
	if (cols < 1)
		return;
	text.append(tree.getColumn(0).getText());
	for (int level = 0; level < levels; level++)
		text.append('\t');
	for (int col = 1; col < cols; col++) {
		TreeColumn column = tree.getColumn(col);
		text.append(column.getText());
		if (col != (cols - 1))
			text.append('\t');
	}
	text.append('\n');
}
 
 类所在包
 同包方法