package com.vci.client.tool.panel; import java.awt.BorderLayout; import java.util.List; import com.vci.client.portal.utility.PRMItem; import com.vci.client.tool.FormAttrSettingPanel; import com.vci.client.tool.wrapper.PRMItemWrapper; import com.vci.client.ui.swing.components.VCIJPanel; import com.vci.client.ui.swing.components.table.AbstractVCIJTableDataProvider; import com.vci.client.ui.swing.components.table.VCIJTableNode; import com.vci.client.ui.swing.components.table.VCIJTablePanel; import com.vci.corba.portal.data.PortalVI; public class PRMItemTablePanel extends VCIJPanel { /** * */ private static final long serialVersionUID = 505872486350680754L; private List portalVIList = null; private FormAttrSettingPanel ownedPanel = null; public PRMItemTablePanel(FormAttrSettingPanel ownedPanel){ this.ownedPanel = ownedPanel; init(); } private void init(){ initUI(); } private void initUI(){ setLayout(new BorderLayout()); add(getNorthPanel(), BorderLayout.SOUTH); add(getWestPanel(), BorderLayout.WEST); add(getCenterPanel(), BorderLayout.CENTER); add(getEastPanel(), BorderLayout.EAST); add(getSouthPanel(), BorderLayout.SOUTH); } private VCIJPanel getNorthPanel(){ VCIJPanel pal = new VCIJPanel(); return pal; } private VCIJPanel getWestPanel(){ VCIJPanel pal = new VCIJPanel(); return pal; } class DataProvider extends AbstractVCIJTableDataProvider{ @Override public PRMItemWrapper[] getDatas(int arg0, int arg1) { PRMItemWrapper[] res = new PRMItemWrapper[0]; List vis = getPortalVIList(); if(vis.size() <= 0) return res; return new PRMItemFinder().find(vis); } @Override public VCIJTableNode getNewRowNode(PRMItemWrapper obj) { VCIJTableNode node = new VCIJTableNode(obj); int i = 0; String[] names = getSpecialColumns(); PRMItem item = obj.getPrmItem(); node.setPropertyValue(names[i++], item.getItemField()); node.setPropertyValue(names[i++], item.getItemName()); return node; } @Override public String[] getSpecialColumns() { return "使用字段,显示名称, ".split(","); } @Override public int getTotal() { return super.total; } } private VCIJTablePanel tablePanel = null; private VCIJPanel getCenterPanel(){ VCIJPanel pal = new VCIJPanel(new BorderLayout()); tablePanel = new VCIJTablePanel(new DataProvider()); tablePanel.setShowColumnSetting(false); tablePanel.setColumnDefaultWidth(150); tablePanel.buildTablePanel(); pal.add(tablePanel, BorderLayout.CENTER); return pal; } private VCIJPanel getEastPanel(){ VCIJPanel pal = new VCIJPanel(); return pal; } private VCIJPanel getSouthPanel(){ VCIJPanel pal = new VCIJPanel(); return pal; } public FormAttrSettingPanel getOwnedPanel() { return ownedPanel; } public void setOwnedPanel(FormAttrSettingPanel ownedPanel) { this.ownedPanel = ownedPanel; } public VCIJTablePanel getTablePanel() { return tablePanel; } public void setTablePanel(VCIJTablePanel tablePanel) { this.tablePanel = tablePanel; } public List getPortalVIList() { return portalVIList; } public void setPortalVIList(List portalVIList) { this.portalVIList = portalVIList; } }