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

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

源代码1 项目: bonita-studio   文件: UsersWizardPage.java
private void addUserNameColumn(final StructuredViewer viewer) {
    final TableViewerColumn column = new TableViewerColumn((TableViewer) viewer, SWT.FILL);
    final TableColumn usernameColumn = column.getColumn();
    column.getColumn().setText(Messages.userName);
    column.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(final Object element) {
            return ((User) element).getUserName();
        }
    });

    column.getColumn().setWidth(90);
    column.getColumn().setMoveable(false);
    column.getColumn().setResizable(true);

    final TableColumnSorter sorter = new TableColumnSorter((TableViewer) viewer);
    sorter.setColumn(usernameColumn);
}
 
源代码2 项目: translationstudio8   文件: TBXMakerDialog.java
/**
 * 设置列属性 ;
 */
private void setColumnType() {
	if (cols < 2) {
		MessageDialog.openInformation(getShell(), Messages.getString("dialog.TBXMakerDialog.msgTitle"),
				Messages.getString("dialog.TBXMakerDialog.msg2"));
		return;
	}
	Vector<ColProperties> colTypes = new Vector<ColProperties>(cols);
	for (int i = 0; i < cols; i++) {
		colTypes.add((ColProperties) table.getColumn(i).getData());
	}

	ColumnTypeDialog selector = new ColumnTypeDialog(getShell(), colTypes, template, imagePath);
	if (selector.open() == IDialogConstants.OK_ID) {
		for (int i = 0; i < cols; i++) {
			TableColumn col = table.getColumn(i);
			ColProperties type = colTypes.get(i);
			if (!type.getColName().equals("") && !type.getLanguage().equals("")) { //$NON-NLS-1$ //$NON-NLS-2$
				col.setText(type.getColName());
			}
		}
	}
}
 
源代码3 项目: tracecompass   文件: TmfEventsTable.java
/**
 * Pack the columns.
 *
 * @return true if this is the first call to pack columns
 *
 * @since 2.0
 */
protected boolean packColumns() {
    boolean packDone = fPackDone;
    fTable.setRedraw(false);
    try {
        int horizontalPos = fTable.getHorizontalBar().getSelection();
        TableColumn tableColumns[] = fTable.getColumns();
        for (int i = 0; i < tableColumns.length; i++) {
            final TableColumn column = tableColumns[i];
            if (Objects.equals(column.getData(Key.WIDTH), SWT.DEFAULT)) {
                packSingleColumn(i, column);
            }
        }
        if (!IS_WIN32) {
            /* Bug 410369: Cannot programmatically scroll on Windows */
            fTable.getHorizontalBar().setSelection(horizontalPos);
        }
    } finally {
        // Make sure that redraw is always enabled.
        fTable.setRedraw(true);
    }
    fPackDone = true;
    return !packDone;
}
 
源代码4 项目: elexis-3-core   文件: MedicationViewerHelper.java
public static TableViewerColumn createDosageColumn(TableViewer viewer,
	TableColumnLayout layout, int columnIndex){
	TableViewerColumn ret = new TableViewerColumn(viewer, SWT.NONE);
	ret.setLabelProvider(new MedicationCellLabelProvider() {
		
		@Override
		public String getText(Object element){
			MedicationTableViewerItem pres = (MedicationTableViewerItem) element;
			String dosis = pres.getDosis();
			return (dosis.equals(StringConstants.ZERO) ? Messages.MedicationComposite_stopped
					: dosis);
		}
	});
	TableColumn tblclmnDosage = ret.getColumn();
	tblclmnDosage.setToolTipText(Messages.TherapieplanComposite_tblclmnDosage_toolTipText);
	tblclmnDosage.addSelectionListener(getSelectionAdapter(viewer, tblclmnDosage, columnIndex));
	layout.setColumnData(tblclmnDosage, new ColumnPixelData(60, true, true));
	ret.getColumn().setText(Messages.TherapieplanComposite_tblclmnDosage_text);
	return ret;
}
 
private void createComparisonTable(Composite composite) {
	GridData tableGridData = new GridData();
	tableGridData.horizontalSpan = 2;
	tableGridData.heightHint = 100;
	tableGridData.horizontalAlignment = GridData.FILL;
	tableGridData.grabExcessHorizontalSpace = true;

	this.comparisonTable = new Table(composite, SWT.SINGLE | SWT.BORDER
			| SWT.FULL_SELECTION);
	this.comparisonTable.setLayoutData(tableGridData);
	this.comparisonTable.setHeaderVisible(true);
	this.comparisonTable.setLinesVisible(true);

	TableColumn referencedColumn = new TableColumn(this.comparisonTable,
			SWT.NONE);
	referencedColumn.setWidth(COLUMN_WIDTH);
	referencedColumn.setText(ResourceString
			.getResourceString("label.reference.column"));

	TableColumn foreignKeyColumn = new TableColumn(this.comparisonTable,
			SWT.NONE);
	foreignKeyColumn.setWidth(COLUMN_WIDTH);
	foreignKeyColumn.setText(ResourceString
			.getResourceString("label.foreign.key"));
}
 
源代码6 项目: elexis-3-core   文件: MedicationViewerHelper.java
public static TableViewerColumn createStopColumn(TableViewer viewer, TableColumnLayout layout,
	int columnIndex){
	TableViewerColumn ret = new TableViewerColumn(viewer, SWT.CENTER);
	TableColumn tblclmnStop = ret.getColumn();
	ColumnPixelData stopColumnPixelData = new ColumnPixelData(60, true, true);
	layout.setColumnData(tblclmnStop, stopColumnPixelData);
	tblclmnStop.setImage(Images.resize(Images.IMG_ARROWSTOP_WO_SHADOW.getImage(),
		ImageSize._12x12_TableColumnIconSize));
	tblclmnStop.setToolTipText(Messages.MedicationComposite_column_sortBy + " "
		+ Messages.MedicationComposite_column_endDate);
	tblclmnStop.addSelectionListener(getSelectionAdapter(viewer, tblclmnStop, columnIndex));
	ret.setLabelProvider(new MedicationCellLabelProvider() {
		@Override
		public String getText(Object element){
			MedicationTableViewerItem pres = (MedicationTableViewerItem) element;
			if (pres.getEntryType() != EntryType.RECIPE
				&& pres.getEntryType() != EntryType.SELF_DISPENSED) {
				return pres.getEndDate();
			}
			return "";
		}
	});
	return ret;
}
 
源代码7 项目: tracecompass   文件: TmfEventsTable.java
/**
 * Returns true if the column is expanded to take extra available space.
 * This is the last non-zero-width visible column in the column order on
 * Linux. This column's width should not be persisted.
 *
 * @param column
 *            the column
 * @return true if the column is expanded.
 */
private static boolean isExpanded(TableColumn column) {
    if (IS_LINUX) {
        Table table = column.getParent();
        int[] order = table.getColumnOrder();
        for (int i = order.length - 1; i >= 0; i--) {
            TableColumn col = table.getColumn(order[i]);
            if (col == column) {
                return true;
            }
            if (col.getWidth() > 0) {
                return false;
            }
        }
    }
    return false;
}
 
源代码8 项目: eclipse-cs   文件: EnhancedTableViewer.java
/**
 * Saves the sorting state to the dialog settings.
 */
private void saveState() {

  IDialogSettings settings = mSettingsProvider != null ? mSettingsProvider.getTableSettings()
          : null;

  if (settings == null) {
    return;
  }

  settings.put(TAG_COLUMN_INDEX, mSortedColumnIndex);
  settings.put(TAG_SORT_DIRECTION, mSortDirection);

  // store the column widths
  TableColumn[] columns = this.getTable().getColumns();
  for (int i = 0, size = columns.length; i < size; i++) {
    int width = columns[i].getWidth();
    if (width > 0) {
      settings.put(TAG_COLUMN_WIDTH + i, width);
    }
  }

  // store the selection
  settings.put(TAG_CURRENT_SELECTION, this.getTable().getSelectionIndex());
}
 
源代码9 项目: translationstudio8   文件: TableCombo.java
/**
 * Defines what columns the drop down table will have.
 * @param columnHeaders
 * @param columnBounds
 */
private void defineColumnsInternal(String[] columnHeaders, int[] columnBounds, int totalColumnsToBeCreated) {

	checkWidget();

	int totalColumnHeaders = columnHeaders == null ? 0 : columnHeaders.length;
	int totalColBounds = columnBounds == null ? 0 : columnBounds.length;

	if (totalColumnsToBeCreated > 0) {

		for (int index = 0; index < totalColumnsToBeCreated; index++) {
			TableColumn column = new TableColumn(table, SWT.NONE);

			if (index < totalColumnHeaders) {
				column.setText(columnHeaders[index]);
			}

			if (index < totalColBounds) {
				column.setWidth(columnBounds[index]);
			}

			column.setResizable(true);
			column.setMoveable(true);
		}
	}
}
 
源代码10 项目: depan   文件: NodeKindTableControl.java
private void setSortColumn(
    TableColumn column, int colIndex, int direction) {

  ITableLabelProvider labelProvider =
      (ITableLabelProvider) kindViewer.getLabelProvider();
  ViewerComparator sorter = new AlphabeticSorter(
      new LabelProviderToString(labelProvider, colIndex));
  if (SWT.UP == direction) {
    sorter = new InverseSorter(sorter);
  }

  Table tableControl = (Table) kindViewer.getControl();
  kindViewer.setComparator(sorter);
  tableControl.setSortColumn(column);
  tableControl.setSortDirection(direction);
}
 
源代码11 项目: tuxguitar   文件: SWTTable.java
public void adjustColumnWidth(TableColumn column) {
	int minimumWidth = 0;
	
	String headerText = column.getText();
	if( headerText != null && headerText.length() > 0 ) {
		GC gc = new GC(this.getControl());
		minimumWidth = (gc.stringExtent(headerText).x + (TABLE_COLUMN_MARGIN * 2));
		gc.dispose();
	}
	
	column.pack();
	if( column.getWidth() < minimumWidth ) {
		column.setWidth(minimumWidth);
	}
	
}
 
源代码12 项目: ermasterr   文件: IndexTabWrapper.java
private void initTable(final Composite parent) {
    final GridData gridData = new GridData();
    gridData.horizontalSpan = 3;
    gridData.grabExcessHorizontalSpace = true;
    gridData.horizontalAlignment = GridData.FILL;
    gridData.heightHint = 200;

    indexTable = new Table(parent, SWT.BORDER | SWT.HIDE_SELECTION);

    indexTable.setHeaderVisible(true);
    indexTable.setLayoutData(gridData);
    indexTable.setLinesVisible(true);

    CompositeFactory.createTableColumn(indexTable, "label.column.name", -1);
    final TableColumn separatorColumn = CompositeFactory.createTableColumn(indexTable, "", 3);
    separatorColumn.setResizable(false);
}
 
private void addPackListener() {
    getControl().addListener(SWT.SetData, new Listener() {
        @Override
        public void handleEvent(@Nullable Event event) {
            // Remove the listener before the pack
            getControl().removeListener(SWT.SetData, this);

            // Pack the column the first time data is set
            TableViewer tableViewer = getTableViewer();
            if (tableViewer != null) {
                for (TableColumn col : tableViewer.getTable().getColumns()) {
                    col.pack();
                }
            }
        }
    });
}
 
源代码14 项目: arx   文件: ComponentFilterTable.java
/**
 * Clears the table.
 */
public void clear() {
    this.selectedKey = null;
    this.keys = null;
    this.selectedProperty = null;
    this.keyProperties = null;
    this.properties = null;
    this.permitted = null;
    this.pageableTable.setRedraw(false);
    for (TableColumn c : this.pageableTable.getViewer().getTable().getColumns()) {
    	c.dispose();
    }
    this.pageableTable.setRedraw(true);
}
 
源代码15 项目: pentaho-kettle   文件: DataGridDialog.java
@Override
public void cellFocusLost( int rowIndex ) {
  List<Integer> nonEmptyIndexesBeforeChanges = wFields.getNonEmptyIndexes();
  wFields.nrNonEmpty();
  List<Integer> nonEmptyIndexesAfterChanges = wFields.getNonEmptyIndexes();
  if ( CollectionUtils.isEqualCollection( nonEmptyIndexesBeforeChanges, nonEmptyIndexesAfterChanges ) ) {
    //count of fields rows didn't change
    return;
  }
  Collection<Integer>
    disjunction = CollectionUtils.disjunction( nonEmptyIndexesBeforeChanges, nonEmptyIndexesAfterChanges );
  Integer disjunctionIdx = (Integer) disjunction.toArray()[0];
  if ( nonEmptyIndexesAfterChanges.contains( disjunctionIdx ) ) {
    // new Field was added
    Integer idxByValue = getIdxByValue( nonEmptyIndexesAfterChanges, disjunctionIdx );
    if ( idxByValue == null ) {
      return; //can not happen (preventing warnings)
    }

    idxByValue++; //data table have one technical column
    TableColumn column = new TableColumn( wData.table, SWT.NONE, idxByValue );
    column.pack();
  } else {
    // Field was deleted
    Integer removeColumn = getIdxByValue( nonEmptyIndexesBeforeChanges, disjunctionIdx );
    if ( removeColumn == null ) {
      return; //can not happen (preventing warnings)
    }
    removeColumn++;  //data table have one technical column
    wData.table.getColumn( removeColumn ).dispose();
    wFields.nrNonEmpty();
  }
}
 
private void createColumns() {
    TableLayout layout = new TableLayout();
    getTable().setLayout(layout);
    getTable().setHeaderVisible(true);
    for (int i = 0; i < columnHeaders.length; i++) {
        layout.addColumnData(columnLayouts[i]);
        TableColumn tc = new TableColumn(getTable(), SWT.NONE,i);
        tc.setResizable(columnLayouts[i].resizable);
        tc.setText(columnHeaders[i]);
    }
}
 
源代码17 项目: nebula   文件: AbstractNativeHeader.java
private void initializeColumns() {
    this.tableColumns = new ArrayList();
    for (int i = 0; i < columnLabelStrings.length; i++) {
        TableColumn column = new TableColumn(headerTable, columnAlignments[i]);
        column.setMoveable(movable);
        column.setResizable(resizable);
        column.setText(columnLabelStrings[i]);
        this.tableColumns.add(column);
        column.addControlListener(columnControlListener);
        column.addSelectionListener(columnSelectionListener);
    }
}
 
源代码18 项目: gama   文件: PopulationInspectView.java
private TableViewerColumn createTableViewerColumn(final String title, final int bound, final int colNumber) {
	final TableViewerColumn viewerColumn = new TableViewerColumn(viewer, SWT.NONE);
	final TableColumn column = viewerColumn.getColumn();
	column.setText(title);
	column.setWidth(bound);
	column.setResizable(true);
	column.setMoveable(true);
	column.addSelectionListener(getSelectionAdapter(column, title));
	viewerColumn.setLabelProvider(getColumnLabelProvider(title));
	return viewerColumn;
}
 
源代码19 项目: cppcheclipse   文件: TableEditor.java
public void addColumn(ExtendedTableColumn column) {
	TableColumn tc = new TableColumn(tableViewer.getTable(),
			column.getStyle());
	tc.setText(column.getLabel());
	tc.setWidth(column.getWidth());
	tc.setMoveable(true);
	
	new TableColumnSorter(tableViewer, tc, columnIndex++);
}
 
源代码20 项目: logbook   文件: ResourceChartDialogEx.java
/**
 * テーブルヘッダーをセットする
 */
private void setTableHeader() {
    for (int i = 0; i < this.header.length; i++) {
        TableColumn col = new TableColumn(this.table, SWT.LEFT);
        col.setText(this.header[i]);
    }
    this.packTableHeader();
}
 
源代码21 项目: elexis-3-core   文件: DiagnosenDisplay.java
private TableViewerColumn createTableViewerColumn(String title, int weight, int colNumber,
	int style){
	final TableViewerColumn viewerColumn = new TableViewerColumn(viewer, style);
	final TableColumn column = viewerColumn.getColumn();
	column.setText(title);
	column.setResizable(true);
	column.setMoveable(false);
	tableLayout.setColumnData(column, new ColumnWeightData(weight));
	return viewerColumn;
}
 
源代码22 项目: JDeodorant   文件: FeatureEnvy.java
private void saveResults() {
	FileDialog fd = new FileDialog(getSite().getWorkbenchWindow().getShell(), SWT.SAVE);
	fd.setText("Save Results");
	String[] filterExt = { "*.txt" };
	fd.setFilterExtensions(filterExt);
	String selected = fd.open();
	if(selected != null) {
		try {
			BufferedWriter out = new BufferedWriter(new FileWriter(selected));
			Table table = tableViewer.getTable();
			TableColumn[] columns = table.getColumns();
			for(int i=0; i<columns.length; i++) {
				if(i == columns.length-1)
					out.write(columns[i].getText());
				else
					out.write(columns[i].getText() + "\t");
			}
			out.newLine();
			for(int i=0; i<table.getItemCount(); i++) {
				TableItem tableItem = table.getItem(i);
				for(int j=0; j<table.getColumnCount(); j++) {
					if(j == table.getColumnCount()-1)
						out.write(tableItem.getText(j));
					else
						out.write(tableItem.getText(j) + "\t");
				}
				out.newLine();
			}
			out.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}
 
源代码23 项目: nebula   文件: PaginationExampleTab.java
private static TableViewerColumn createTableViewerColumn(
		TableViewer viewer, String title, int bound) {
	final TableViewerColumn viewerColumn = new TableViewerColumn(viewer,
			SWT.NONE);
	final TableColumn column = viewerColumn.getColumn();
	column.setText(title);
	column.setWidth(bound);
	column.setResizable(true);
	column.setMoveable(true);
	return viewerColumn;
}
 
源代码24 项目: olca-app   文件: CausalFactorTable.java
private void addColumn(Exchange product) {
	Column newColumn = new Column(product);
	Table table = viewer.getTable();
	TableColumn tableColumn = new TableColumn(table, SWT.VIRTUAL);
	tableColumn.setText(newColumn.getTitle());
	tableColumn.setToolTipText(newColumn.getTitle());
	tableColumn.setWidth(80);
	Column[] newColumns = new Column[columns.length + 1];
	System.arraycopy(columns, 0, newColumns, 0, columns.length);
	newColumns[columns.length] = newColumn;
	columns = newColumns;
	if (editor.hasAnyComment("allocationFactors")) {
		new TableColumn(table, SWT.VIRTUAL).setWidth(24);
	}
}
 
源代码25 项目: elexis-3-core   文件: InvoiceListView.java
@Override
public void widgetSelected(SelectionEvent e){
	TableColumn sortColumn = tableViewerInvoiceList.getTable().getSortColumn();
	TableColumn selectedColumn = (TableColumn) e.widget;
	int sortDirection = tableViewerInvoiceList.getTable().getSortDirection();
	if (sortColumn == selectedColumn) {
		sortDirection = sortDirection == SWT.UP ? SWT.DOWN : SWT.UP;
	} else {
		tableViewerInvoiceList.getTable().setSortColumn(selectedColumn);
		sortDirection = SWT.UP;
	}
	
	setSortOrder(selectedColumn, sortDirection);
}
 
源代码26 项目: bonita-studio   文件: SWTBotTableComboColumn.java
/**
 * Constructs a new instance of this object.
 * 
 * @param w the widget.
 * @throws WidgetNotFoundException if the widget is <code>null</code> or widget has been disposed.
 * @since 2.0
 */
public SWTBotTableComboColumn(final TableColumn w) throws WidgetNotFoundException {
	this(w, UIThreadRunnable.syncExec(new WidgetResult<Table>() {
		public Table run() {
			return w.getParent();
		}
	}));
}
 
源代码27 项目: tuxguitar   文件: SWTTable.java
public void setColumnName(int column, String name) {
	if( column >= 0 && column < this.getColumns() ) {
		this.getControl().setHeaderVisible(true);
		
		TableColumn tableColumn = this.getControl().getColumn(column);
		tableColumn.setText(name);
		
		if( this.isVisible() ) {
			this.updateManager.setUpdateRequired();
		}
	}
}
 
private static TableViewerColumn createTableViewerColumn(
		TableViewer viewer, String title, int bound) {
	final TableViewerColumn viewerColumn = new TableViewerColumn(viewer,
			SWT.NONE);
	final TableColumn column = viewerColumn.getColumn();
	column.setText(title);
	column.setWidth(bound);
	column.setResizable(true);
	column.setMoveable(true);
	return viewerColumn;
}
 
private Control createTable(Composite parent) {
	Composite c= new Composite(parent, SWT.NONE);
	GridLayout gl= new GridLayout();
	gl.numColumns= 2;
	gl.marginWidth= 0;
	gl.marginHeight= 0;
	c.setLayout(gl);


	fTable= new Table(c, SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION | SWT.HIDE_SELECTION | SWT.BORDER);
	fTable.setFont(parent.getFont());

	GridData tableGD= new GridData(GridData.FILL_BOTH);
	tableGD.heightHint= SWTUtil.getTableHeightHint(fTable, ROW_COUNT);
	//tableGD.widthHint= 40;
	fTable.setLayoutData(tableGD);

	fTable.setLinesVisible(true);

	TableLayout layout= new TableLayout();
	fTable.setLayout(layout);
	fTable.setHeaderVisible(true);

	ColumnLayoutData[] columnLayoutData= new ColumnLayoutData[SIZE];
	columnLayoutData[STATE_PROP]= new ColumnPixelData(18, false, true);
	columnLayoutData[KEY_PROP]= new ColumnWeightData(40, true);
	columnLayoutData[VAL_PROP]= new ColumnWeightData(40, true);

	for (int i= 0; i < fgTitles.length; i++) {
		TableColumn tc= new TableColumn(fTable, SWT.NONE, i);
		tc.setText(fgTitles[i]);
		layout.addColumnData(columnLayoutData[i]);
		tc.setResizable(columnLayoutData[i].resizable);
	}

	createButtonComposite(c);
	return c;
}
 
源代码30 项目: nebula   文件: SortTableColumnSelectionListener.java
@Override
protected Table getParent(SelectionEvent e) {
	// 1) Get table column which fire this selection event
	TableColumn tableColumn = (TableColumn) e.getSource();
	// 2) Get the owner table
	return tableColumn.getParent();
}
 
 类所在包
 同包方法