package com.vci.client.auth2.view;
|
|
import java.awt.BorderLayout;
|
import java.awt.Dimension;
|
import java.awt.FlowLayout;
|
import java.awt.GridBagConstraints;
|
import java.awt.GridBagLayout;
|
import java.awt.Insets;
|
import java.awt.Rectangle;
|
import java.awt.Toolkit;
|
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionListener;
|
import java.awt.event.MouseEvent;
|
import java.awt.event.MouseListener;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.swing.BorderFactory;
|
import javax.swing.JButton;
|
import javax.swing.JComboBox;
|
import javax.swing.JComponent;
|
import javax.swing.JLabel;
|
import javax.swing.JList;
|
import javax.swing.JOptionPane;
|
import javax.swing.JPanel;
|
import javax.swing.JScrollPane;
|
import javax.swing.JSplitPane;
|
import javax.swing.JTabbedPane;
|
import javax.swing.JTable;
|
import javax.swing.JTextField;
|
import javax.swing.ScrollPaneConstants;
|
import javax.swing.border.TitledBorder;
|
import javax.swing.table.JTableHeader;
|
import javax.swing.tree.DefaultMutableTreeNode;
|
import javax.swing.tree.TreePath;
|
import javax.swing.tree.TreeSelectionModel;
|
|
import org.jdesktop.swingx.JXTable;
|
import org.jdesktop.swingx.decorator.HighlighterFactory;
|
|
import com.vci.client.auth2.action.ToLeftSubjectAction;
|
import com.vci.client.auth2.action.ToRightSubjectAction;
|
import com.vci.client.auth2.model.BooleanTableModel;
|
import com.vci.client.auth2.utils.IRightConstant;
|
import com.vci.client.auth2.utils.RightManagerHelper;
|
import com.vci.client.auth2.vo.EnumItem;
|
import com.vci.client.auth2.vo.OpItem;
|
import com.vci.client.omd.btm.wrapper.BtmItemWrapper;
|
import com.vci.client.oq.ui.ConditionPanel;
|
import com.vci.client.ui.swing.VCISwingUtil;
|
import com.vci.corba.framework.data.GrandValue;
|
import com.vci.corba.omd.btm.BtmItem;
|
|
public class RightMainPanel extends JPanel {
|
|
/**
|
*
|
*/
|
private static final long serialVersionUID = 6600527909636238174L;
|
// 规则列表
|
private JTable ruleTable = new JXTable();
|
// 主体工具条
|
private JPanel subjectPanelToolBar = new JPanel();
|
// 用户列表
|
private JXTable userTable = new JXTable();
|
// 用户组列表
|
private JXTable userGroupTable = new JXTable();
|
|
// 角色列表
|
private JXTable roleTable = new JXTable();
|
// 授权主体列表
|
private JList choosedSubjectList = new JList();
|
// 规则名称文本框
|
private JTextField ruleNameTextField = new JTextField(45);
|
private JComboBox ruleTypeCombbox = new JComboBox();
|
// 客体规则面板
|
private JPanel objectPanelConditionPanel = new JPanel();
|
|
private Map<String, JPanel> conditionPanelMap = new HashMap<String, JPanel>();
|
// 一般操作面板
|
private JPanel ordinaryOpPanel = new OrdinaryOpPanel();
|
// 一般操作面板
|
private JPanel linkAndStateOpPanel = new RelationAndLifeCycleOpPanel();
|
// 操作面板工具条
|
private JPanel operationPanelToolBar = new JPanel();
|
|
private JPanel rightCenterToolBar = new JPanel();
|
|
// 选中向左移动按钮
|
ToLeftSubjectAction left = new ToLeftSubjectAction("<");
|
// 选中向右移动按钮
|
ToRightSubjectAction right = new ToRightSubjectAction(">");
|
|
// 客体主面板
|
private JPanel objectMain = new JPanel();
|
private final int TABLE_HEADER_HEIGHT = 25;
|
private final int ROW_HEIGHT = 30;
|
private AbstractUIFunclet funclet;
|
// action
|
private JButton[] operationActions;
|
private JButton[] subjectActions;
|
|
public ToLeftSubjectAction getLeft() {
|
return left;
|
}
|
|
public ToRightSubjectAction getRight() {
|
return right;
|
}
|
|
public JButton[] getOperationActions() {
|
return operationActions;
|
}
|
|
public void setOperationActions(JButton[] operationActions) {
|
this.operationActions = operationActions;
|
updateOperationMenu();
|
}
|
|
public void updateOperationMenu() {
|
for (JButton b : operationActions) {
|
operationPanelToolBar.add(b);
|
}
|
}
|
|
public JPanel getRightCenterToolBar() {
|
return rightCenterToolBar;
|
}
|
|
public void setRightCenterToolBar(JPanel rightCenterToolBar) {
|
this.rightCenterToolBar = rightCenterToolBar;
|
}
|
|
public JPanel getObjectMain() {
|
return objectMain;
|
}
|
|
public void setObjectMain(JPanel objectMain) {
|
this.objectMain = objectMain;
|
}
|
|
public AbstractUIFunclet getFunclet() {
|
return funclet;
|
}
|
|
public void setFunclet(AbstractUIFunclet funclet) {
|
this.funclet = funclet;
|
}
|
|
public JPanel getOrdinaryOpPanel() {
|
return ordinaryOpPanel;
|
}
|
|
public void setOrdinaryOpPanel(JPanel ordinaryOpPanel) {
|
this.ordinaryOpPanel = ordinaryOpPanel;
|
}
|
|
public JComboBox getRuleTypeCombbox() {
|
return ruleTypeCombbox;
|
}
|
|
public JTextField getRuleNameTextField() {
|
return ruleNameTextField;
|
}
|
|
public String getRuleName() {
|
return ruleNameTextField.getText();
|
}
|
|
public JXTable getUserTable() {
|
return userTable;
|
}
|
|
public void setUserTable(JXTable userTable) {
|
this.userTable = userTable;
|
}
|
|
public JTable getRuleTable() {
|
return ruleTable;
|
}
|
|
public void setRuleTable(JXTable ruleTable) {
|
this.ruleTable = ruleTable;
|
}
|
|
public JPanel getRightRulePanel() {
|
return objectPanelConditionPanel;
|
}
|
|
public void setRightRulePanel(JPanel objectPanelConditionPanel) {
|
this.objectPanelConditionPanel = objectPanelConditionPanel;
|
}
|
|
public JPanel getRelationAndLifeCycleOpPanel() {
|
return linkAndStateOpPanel;
|
}
|
|
public void setRelationAndLifeCycleOpPanel(JPanel linkAndStateOpPanel) {
|
this.linkAndStateOpPanel = linkAndStateOpPanel;
|
}
|
|
public JXTable getUserGroupTable() {
|
return userGroupTable;
|
}
|
|
public void setUserGroupTable(JXTable userGroupTable) {
|
this.userGroupTable = userGroupTable;
|
}
|
|
public JXTable getRoleTable() {
|
return roleTable;
|
}
|
|
public void setRoleTable(JXTable roleTable) {
|
this.roleTable = roleTable;
|
}
|
|
public JList getSelectedSubjectComponent() {
|
if (choosedSubjectList != null) {
|
choosedSubjectList.setOpaque(false);
|
}
|
return choosedSubjectList;
|
}
|
|
public void setRuleType(String ruleType) {
|
getRuleTypeCombbox().setSelectedIndex(Integer.valueOf(ruleType));
|
}
|
|
public String getRuleType() {
|
EnumItem item = (EnumItem) getRuleTypeCombbox().getSelectedItem();
|
return (String) item.getKey();
|
}
|
|
public void setModel() {
|
|
}
|
|
public RightMainPanel(AbstractUIFunclet funclet) {
|
super();
|
this.funclet = funclet;
|
initUI();
|
|
}
|
|
public RightMainPanel() {
|
super();
|
initUI();
|
}
|
|
public void addRuleTableSelectListener() {
|
// 设置规则Table选择事件监听器
|
JTable ruletable = this.getRuleTable();
|
ruletable.addMouseListener(new MouseListener() {
|
|
@Override
|
public void mouseReleased(MouseEvent e) {
|
}
|
|
@Override
|
public void mousePressed(MouseEvent e) {
|
}
|
|
@Override
|
public void mouseExited(MouseEvent e) {
|
}
|
|
@Override
|
public void mouseEntered(MouseEvent e) {
|
}
|
|
@Override
|
public void mouseClicked(MouseEvent e) {
|
JTable source = (JTable) e.getSource();
|
int row = source.getSelectedRow();
|
if (row == -1)
|
return;
|
BooleanTableModel ruleModel = (BooleanTableModel) source.getModel();
|
GrandValue value = ((List<GrandValue>) ruleModel.getConditionValueAt(row)).get(0);
|
BtmItem btm = RightManagerHelper.getResourceType(getFunclet());
|
if (btm == null || value == null) {
|
return;
|
}
|
// 提示
|
// initTipPanel(null,funclet);
|
// 设置条件表达式
|
RightManagerHelper.setRuleConditionDatas(getFunclet(), row, value, btm.name);
|
// 设置主体的信息
|
RightManagerHelper.setSubjectDatas(getFunclet(), value);
|
// 设置一般操作
|
List<OpItem> ops = new ArrayList<OpItem>();
|
for (int column = 2; column < ruleModel.getColumnCount(); column++) {
|
OpItem op = new OpItem();
|
op.setName(ruleModel.getColumnName(column));
|
op.setValue(ruleModel.getValueAt(row, column));
|
ops.add(op);
|
}
|
RightManagerHelper.setOpDatas(getFunclet(), ops);
|
}
|
});
|
}
|
|
public void setSubjectActions(JButton[] subjectActions) {
|
this.subjectActions = subjectActions;
|
updateSubjectMenu();
|
}
|
|
public JButton[] getSubjectActions() {
|
return subjectActions;
|
}
|
|
public void updateSubjectMenu() {
|
for (JButton b : subjectActions) {
|
subjectPanelToolBar.add(b);
|
}
|
}
|
|
private void initUI() {
|
this.setLayout(new BorderLayout());
|
|
JScrollPane rightNorthPanel = new JScrollPane();
|
JPanel rightCenterPanel = new JPanel();
|
rightCenterPanel.setLayout(new BorderLayout());
|
JPanel rightCenterDownPanel = new JPanel();
|
// JPanel rightSouthPanel = new JPanel();
|
rightCenterPanel.add(rightCenterToolBar, BorderLayout.NORTH);
|
rightCenterPanel.add(rightCenterDownPanel, BorderLayout.CENTER);
|
this.add(rightNorthPanel, BorderLayout.NORTH);
|
this.add(rightCenterPanel, BorderLayout.CENTER);
|
// this.add(rightSouthPanel, BorderLayout.SOUTH);
|
|
ruleTable.setRowHeight(ROW_HEIGHT);
|
ruleTable.setShowGrid(true);
|
ruleTable.getAutoResizeMode();
|
ruleTable.setOpaque(false);
|
// ruleTable.setHorizontalScrollEnabled(false);
|
ruleTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
|
// ((JXTable)ruleTable).setHighlighters(HighlighterFactory.createAlternateStriping());
|
((JXTable) ruleTable).setSortable(true);
|
((JXTable) ruleTable).setDragEnabled(true);
|
// ((JXTable)ruleTable).setForeground(Color.gray);
|
// updateHorizontalAction(ruleTable);
|
// JTableHeader tableHeader = ruleTable.getTableHeader();
|
// Dimension size = tableHeader.getPreferredSize();
|
// size.height = TABLE_HEADER_HEIGHT;
|
// size.width = TABLE_HEADER_HEIGHT;
|
// tableHeader.setPreferredSize(size);
|
rightNorthPanel.setViewportView(ruleTable);
|
this.add(getSplitPane(JSplitPane.VERTICAL_SPLIT, rightNorthPanel, rightCenterPanel));
|
|
// center down tab
|
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.LEFT, JTabbedPane.SCROLL_TAB_LAYOUT);
|
tabbedPane.addTab("主体", VCISwingUtil.createImageIcon("product.gif"), getSubjectPanel(), "主体配置");
|
tabbedPane.addTab("客体", VCISwingUtil.createImageIcon("product.gif"), getExpressionPanel(), "表达式配置");
|
tabbedPane.addTab("操作", VCISwingUtil.createImageIcon("product.gif"), getOperationPanel(), "操作配置");
|
/*
|
* tabbedPane.addTab("ip密级设置", VCISwingUtil.createImageIcon("product.gif"),
|
* getIPSecurityPanel(), "ip密级设置");
|
*/
|
rightCenterDownPanel.setLayout(new GridBagLayout());
|
GridBagConstraints gbc = new GridBagConstraints();
|
gbc.gridx = 0;
|
gbc.gridy = 0;
|
gbc.weightx = 1.0;
|
gbc.weighty = 1.0;
|
gbc.fill = GridBagConstraints.BOTH;
|
rightCenterDownPanel.add(tabbedPane, gbc);
|
// center top tool bar
|
rightCenterToolBar.setLayout(new FlowLayout(FlowLayout.RIGHT, 0, 0));
|
// 增加规则table监听器
|
this.addRuleTableSelectListener();
|
}
|
// private void updateHorizontalAction(JXTable table)
|
// {
|
// Action showHorizontal = table.getActionMap().get("column.horizontalScroll");
|
//
|
// if (showHorizontal instanceof BoundAction)
|
// ((BoundAction)showHorizontal).setSelected(true);
|
// }
|
|
private JPanel getOperationPanel() {
|
// 主操作面板-
|
JPanel operationMain = new JPanel();
|
operationMain.setLayout(new BorderLayout());
|
// 操作面板
|
JScrollPane ordjsp = new JScrollPane();
|
ordjsp.getViewport().add(ordinaryOpPanel);
|
JScrollPane Wraper = new JScrollPane(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
|
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
|
Wraper.setVisible(true);
|
Wraper.setViewportView(linkAndStateOpPanel);
|
Wraper.revalidate();
|
// 一般操作
|
ordinaryOpPanel.setBorder(BorderFactory.createTitledBorder("一般操作"));
|
|
ordinaryOpPanel.setLayout(new GridBagLayout());
|
|
operationPanelToolBar.setLayout(new FlowLayout(FlowLayout.RIGHT, 0, 0));
|
|
// 链接和状态
|
|
linkAndStateOpPanel.setBorder(BorderFactory.createTitledBorder("关系和跃迁"));
|
linkAndStateOpPanel.setLayout(new GridBagLayout());
|
|
operationMain.add(operationPanelToolBar, BorderLayout.NORTH);
|
JScrollPane centerjsp = new JScrollPane();
|
JSplitPane centerPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT, ordjsp, Wraper);
|
centerPanel.setDividerLocation(200);
|
// 是否可以展开
|
centerPanel.setOneTouchExpandable(true);
|
centerjsp.getViewport().add(centerPanel);
|
operationMain.add(centerjsp, BorderLayout.CENTER);
|
|
return operationMain;
|
}
|
|
private JPanel getIPSecurityPanel() {
|
JPanel ipPanel = new JPanel();
|
ipPanel.setLayout(new BorderLayout());
|
JPanel northPanel = new JPanel();
|
northPanel.setLayout(new GridBagLayout());
|
GridBagConstraints gbc = new GridBagConstraints();
|
gbc.gridy = 0;
|
gbc.gridx = 0;
|
JTextField comp = new JTextField(40);
|
comp.setText("secret<=${CURRENTMACHINE.SECRET}");
|
comp.setEditable(false);
|
northPanel.add(comp, gbc);
|
ipPanel.add(northPanel, BorderLayout.NORTH);
|
return ipPanel;
|
}
|
|
private JPanel getExpressionPanel() {
|
objectMain.setLayout(new BorderLayout());
|
JPanel topMainPanel = new JPanel();
|
topMainPanel.setLayout(new GridBagLayout());
|
|
// centerPanel.updateUI();
|
|
objectMain.add(topMainPanel, BorderLayout.NORTH);
|
|
JLabel ruleName = new JLabel("规则名称: ");
|
|
GridBagConstraints g_mpnl = new GridBagConstraints();
|
g_mpnl.insets = new Insets(5, 5, 5, 5);
|
g_mpnl.anchor = GridBagConstraints.EAST;
|
g_mpnl.gridx = 0;
|
g_mpnl.gridy = 0;
|
|
topMainPanel.add(ruleName, g_mpnl);
|
g_mpnl.gridx = 1;
|
topMainPanel.add(ruleNameTextField, g_mpnl);
|
JLabel ruleTypeLable = new JLabel("规则类型");
|
g_mpnl.gridx = 3;
|
EnumItem allNotHas = new EnumItem(IRightConstant.RULETYPE_ALL_NOTHAS, "全部拒绝");
|
EnumItem notHas = new EnumItem(IRightConstant.RULETYPE__NOTHAS, "拒绝权限");
|
EnumItem allHas = new EnumItem(IRightConstant.RULETYPE_ALL_HAS, "全部允许");
|
EnumItem has = new EnumItem(IRightConstant.RULETYPE__HAS, "允许权限");
|
|
ruleTypeCombbox.setPreferredSize(new Dimension(150, 25));
|
ruleTypeCombbox.addItem(allHas);
|
ruleTypeCombbox.addItem(has);
|
ruleTypeCombbox.addItem(allNotHas);
|
ruleTypeCombbox.addItem(notHas);
|
|
ruleTypeCombbox.setSelectedIndex(0);
|
ruleTypeCombbox.addActionListener(new ActionListener() {
|
|
@Override
|
public void actionPerformed(ActionEvent e) {
|
JComboBox combbox = (JComboBox) e.getSource();
|
EnumItem item = (EnumItem) combbox.getSelectedItem();
|
String ruleType = (String) item.getKey();
|
if (ruleType.equals(IRightConstant.RULETYPE__NOTHAS) || ruleType.equals(IRightConstant.RULETYPE__HAS)) {
|
|
TreeSelectionModel model = (TreeSelectionModel) funclet.getResourceTree().getSelectionModel();
|
TreePath path = model.getSelectionPath();
|
if (null == path) {
|
JOptionPane.showMessageDialog(com.vci.client.LogonApplication.frame, "请选择业务类型",
|
"提示", JOptionPane.WARNING_MESSAGE);
|
return;
|
}
|
DefaultMutableTreeNode node = (DefaultMutableTreeNode) path.getLastPathComponent();
|
if (node.isRoot()) {
|
JOptionPane.showMessageDialog(com.vci.client.LogonApplication.frame,
|
"您当前选择的是根类型,请选择具体的业务类型", "提示", JOptionPane.WARNING_MESSAGE);
|
return;
|
}
|
if (!(node.getUserObject() instanceof BtmItemWrapper)) {
|
return;
|
}
|
BtmItemWrapper btmWrap = (BtmItemWrapper) node.getUserObject();
|
if (null == btmWrap || btmWrap.btmItem == null) {
|
return;
|
}
|
objectMain.remove(objectPanelConditionPanel);
|
// objectMain.updateUI();
|
if (conditionPanelMap.get(ruleType) == null) {
|
conditionPanelMap.put(ruleType, new ConditionPanel(btmWrap.btmItem, true));
|
|
}
|
objectPanelConditionPanel = conditionPanelMap.get(ruleType);
|
((ConditionPanel) objectPanelConditionPanel).updateUI(btmWrap.btmItem);
|
objectMain.add(objectPanelConditionPanel, BorderLayout.CENTER);
|
|
objectPanelConditionPanel.updateUI();
|
ruleNameTextField.setText(((ConditionPanel) objectPanelConditionPanel).getSelectedQTDName());
|
} else {
|
objectMain.remove(objectPanelConditionPanel);
|
// objectMain.updateUI();
|
if (conditionPanelMap.get(ruleType) == null) {
|
conditionPanelMap.put(ruleType, new JPanel());
|
|
}
|
objectPanelConditionPanel = conditionPanelMap.get(ruleType);
|
objectPanelConditionPanel = new JPanel();
|
objectMain.add(objectPanelConditionPanel, BorderLayout.CENTER);
|
objectPanelConditionPanel.updateUI();
|
ruleNameTextField.setText("");
|
}
|
}
|
});
|
|
g_mpnl.gridx = 2;
|
topMainPanel.add(ruleTypeLable, g_mpnl);
|
g_mpnl.gridx = 3;
|
topMainPanel.add(ruleTypeCombbox, g_mpnl);
|
return objectMain;
|
}
|
|
private JPanel getSubjectPanel() {
|
JPanel subjectMain = new JPanel();
|
subjectMain.setLayout(new BorderLayout());
|
subjectPanelToolBar.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
|
// 主体面板
|
JPanel subject = new JPanel();
|
subjectMain.add(subjectPanelToolBar, BorderLayout.NORTH);
|
subjectMain.add(subject, BorderLayout.CENTER);
|
subject.setBorder(BorderFactory.createTitledBorder("主体"));
|
subject.setAutoscrolls(true);
|
subject.setLayout(new BorderLayout());
|
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT);
|
tabbedPane.addTab("用户", VCISwingUtil.createImageIcon("product.gif"), getUserPanel(), "用户配置");
|
tabbedPane.addTab("角色", VCISwingUtil.createImageIcon("product.gif"), getRolePanel(), "角色配置");
|
tabbedPane.addTab("部门", VCISwingUtil.createImageIcon("product.gif"), getUserGroupPanel(), "用户组配置");
|
Dimension dimension = new Dimension(Toolkit.getDefaultToolkit().getScreenSize().width * 4 / 5 * 2 / 5,
|
Toolkit.getDefaultToolkit().getScreenSize().height * 6 / 25);
|
tabbedPane.setPreferredSize(dimension);
|
subject.setAutoscrolls(true);
|
subject.add(tabbedPane, BorderLayout.WEST);
|
// subject.add(tabbedPane, g_mpnl);
|
|
// buttons
|
JPanel buttons = new JPanel();
|
// ToLeftSubjectAction left = new ToLeftSubjectAction("<");
|
left.setMainUI(this);
|
|
// ToLeftAllSubjectAction leftAll = new ToLeftAllSubjectAction("<<");
|
// leftAll.setFunclet(this);
|
|
// ToRightSubjectAction right = new ToRightSubjectAction(">");
|
right.setMainUI(this);
|
// JButton rightAll = new JButton(">>");
|
|
buttons.setLayout(new GridBagLayout());
|
// // 网格布局常量
|
GridBagConstraints g_mpnl = new GridBagConstraints();
|
g_mpnl.insets = new Insets(10, 10, 10, 10);
|
g_mpnl.anchor = GridBagConstraints.EAST;
|
g_mpnl.gridx = 0;
|
g_mpnl.gridy = 0;
|
g_mpnl.gridheight = 1;
|
g_mpnl.gridwidth = 1;
|
buttons.add(right, g_mpnl);
|
g_mpnl.gridy = 1;
|
// buttons.add(leftAll);
|
buttons.add(left, g_mpnl);
|
|
// buttons.add(rightAll);
|
// g_mpnl.gridx = 1;
|
// subject.add(buttons);
|
subject.add(buttons, BorderLayout.CENTER);
|
// 授权主体列表
|
|
JScrollPane choosedSubject = new JScrollPane();
|
choosedSubject.setPreferredSize(dimension);
|
choosedSubject.setBounds(new Rectangle(330, 50, 210, 300));
|
choosedSubject.setBorder(new TitledBorder("授权主体"));
|
choosedSubject.getViewport().add(getSelectedSubjectComponent());
|
// g_mpnl.gridx = 2;
|
subject.add(choosedSubject, BorderLayout.EAST);
|
|
return subjectMain;
|
}
|
|
private JComponent getRolePanel() {
|
|
JScrollPane rolepane = new JScrollPane();
|
|
roleTable.setRowHeight(ROW_HEIGHT);
|
roleTable.setHorizontalScrollEnabled(true);
|
roleTable.setHighlighters(HighlighterFactory.createAlternateStriping());
|
roleTable.setSortable(true);
|
roleTable.setOpaque(false);
|
roleTable.setEditable(false);
|
JTableHeader tableHeader = roleTable.getTableHeader();
|
Dimension size = tableHeader.getPreferredSize();
|
size.height = TABLE_HEADER_HEIGHT;
|
tableHeader.setPreferredSize(size);
|
rolepane.setViewportView(roleTable);
|
|
return rolepane;
|
}
|
|
private JComponent getUserPanel() {
|
JScrollPane userpane = new JScrollPane();
|
|
userTable.setRowHeight(ROW_HEIGHT);
|
userTable.setHorizontalScrollEnabled(true);
|
userTable.setHighlighters(HighlighterFactory.createAlternateStriping());
|
userTable.setSortable(true);
|
userTable.setOpaque(false);
|
userTable.setEditable(false);
|
JTableHeader tableHeader = userTable.getTableHeader();
|
Dimension size = tableHeader.getPreferredSize();
|
size.height = TABLE_HEADER_HEIGHT;
|
tableHeader.setPreferredSize(size);
|
userpane.setViewportView(userTable);
|
return userpane;
|
}
|
|
private JComponent getUserGroupPanel() {
|
JScrollPane userGpane = new JScrollPane();
|
|
userGroupTable.setRowHeight(ROW_HEIGHT);
|
userGroupTable.setHorizontalScrollEnabled(true);
|
userGroupTable.setHighlighters(HighlighterFactory.createAlternateStriping());
|
userGroupTable.setSortable(true);
|
userGroupTable.setOpaque(false);
|
userGroupTable.setEditable(false);
|
JTableHeader tableHeader = userGroupTable.getTableHeader();
|
Dimension size = tableHeader.getPreferredSize();
|
size.height = TABLE_HEADER_HEIGHT;
|
tableHeader.setPreferredSize(size);
|
userGpane.setViewportView(userGroupTable);
|
|
return userGpane;
|
}
|
|
private JSplitPane getSplitPane(int type, JComponent one, JComponent other) {
|
// split (JSplitPane.HORIZONTAL_SPLIT)
|
JSplitPane centerPanel = new JSplitPane(type, one, other);
|
if (type == JSplitPane.HORIZONTAL_SPLIT) {
|
centerPanel.setDividerLocation(Toolkit.getDefaultToolkit().getScreenSize().width / 5);
|
} else {
|
centerPanel.setDividerLocation(Toolkit.getDefaultToolkit().getScreenSize().height * 2 / 5);
|
}
|
|
return centerPanel;
|
}
|
|
}
|