📄 columnsorderdialog.java
字号:
/**
* Simon Lei, CopyLeft 2005
*/
package net.sf.component.table;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.eclipse.jface.dialogs.TitleAreaDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
/**
* $Id: ColumnsOrderDialog.java 843 2005-09-12 02:54:04Z yflei $
* Created Date: 2005-7-17
* @author SimonLei
*/
public class ColumnsOrderDialog extends TitleAreaDialog {
public ColumnsOrderDialog(Shell parentShell) {
super(parentShell);
setShellStyle( getShellStyle() | SWT.RESIZE);
}
@Override
protected Control createContents(Composite parent) {
Control control = super.createContents(parent);
setTitle( "列属性修改");
setMessage( "修改本表各列的属性:");
return control;
}
@Override
protected Point getInitialSize() {
return new Point( 600, 400);
}
private IBindedTableModel model;
private List<Map> colsFromModel;
public IBindedTableModel getModel() {
return model;
}
public void setModel(IBindedTableModel model) {
this.model = model;
}
@Override
protected Control createDialogArea(Composite parent) {
Composite control = (Composite)super.createDialogArea(parent);
control.setLayout( new GridLayout());
colsFromModel = getColsFromModel();
IBindedTableModel colsModel = new MapBindedTableModel( colsFromModel);
BindedTableColumn column = new TextBindedTableColumn( "name");
column.setShowName( "名称");
column.setEditable( false);
colsModel.addColumn( column);
column = new TextBindedTableColumn( "showName");
column.setShowName( "显示名称");
column.setEditable( false);
colsModel.addColumn( column);
/* column = new BindedTableColumn( "style");
column.setShowName( "对齐");
column.setEditable( false);
model.addColumn( column);
*/ column = new CheckBindedTableColumn( "editable");
column.setShowName( "是否可编辑?");
column.setEditable( true);
colsModel.addColumn( column);
column = new CheckBindedTableColumn( "visible");
column.setShowName( "是否可见?");
column.setEditable( true);
colsModel.addColumn( column);
final BindedTableViewer bindedTableViewer = new BindedTableViewer( control, SWT.NONE);
bindedTableViewer.setModel( colsModel);
bindedTableViewer.setRowCreateRemovable( false);
bindedTableViewer.setRowsOrderable( true);
bindedTableViewer.create();
bindedTableViewer.setLayoutData( new GridData(GridData.FILL_BOTH));
return control;
}
private List<Map> getColsFromModel() {
List<Map> cols = new ArrayList<Map>();
int colCounts = model.getColumnCount();
for (int i = 0; i < colCounts; i++) {
BindedTableColumn col = model.getColumn( i);
Map map = new HashMap();
map.put( "name", col.getName());
map.put( "showName", col.getShowName());
map.put( "visible", col.isVisible());
map.put( "editable", col.isEditable());
cols.add( map);
}
return cols;
}
public List<Map> getColumns() {
return colsFromModel;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -