📄 popedomchooser.java
字号:
package com.ciash.bms.gui.impl;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.TreeSet;
import java.util.Vector;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import com.ciash.bms.entity.Popedom;
import com.ciash.bms.entity.User;
import com.ciash.bms.gui.search.loader.PopedomLoaderPanel;
import com.ciash.bms.gui.selecter.PopedomSelecter;
import com.ciash.bms.gui.selecter.PopedomSelecterPanel;
import com.ciash.bms.gui.selecter.UserSelecter;
import com.ciash.common.gui.GroupPanel;
/**
* <p>
* Title: BMS
* </p>
* <p>
* Description:
* </p>
* <p>
* Copyright: Copyright (c) 2009
* </p>
* <p>
* Company: Cigarette Ash Inc.
* </p>
*
* @author Cigarette Ash
* @version 1.0
*/
public class PopedomChooser extends PopedomLoaderPanel implements
PopedomSelecter, UserSelecter {
private JLabel jLabel1 = new JLabel();
private GroupPanel jPanel4 = new GroupPanel();
private GridBagLayout gridBagLayout3 = new GridBagLayout();
private JComboBox PopBox = new JComboBox();
private HashMap popMap = new HashMap();
public GridBagLayout gridBagLayout1 = new GridBagLayout();
private PopedomSelecterPanel popSelecter;
private Vector changeUsers = new Vector();
public PopedomChooser(PopedomSelecterPanel selecter) {
setPopedomSelecter(selecter);
popSelecter.setEditable(false);
jbInit();
}
private void jbInit() {
this.setLayout(gridBagLayout1);
jLabel1.setText("权限名");
jPanel4.setLayout(gridBagLayout3);
jPanel4.add(jLabel1, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(
14, 12, 13, 10), 5, 0));
jPanel4.add(PopBox, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0,
GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(
0, 0, 0, 0), 100, 0));
this.add(popSelecter, new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0,
GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
0, -2, 2, 1), 2, -16));
this.add(jPanel4, new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,
GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
0, -2, 0, 1), 90, 4));
PopBox.addItemListener(new BoxListener());
}
private class BoxListener implements ItemListener {
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
Popedom p = (Popedom) popMap.get(PopBox.getSelectedItem());
if (p != null) {
popSelecter.setSelectPop(p);
}
if (currentUser != null) {
currentUser.setPopedom(PopBox.getSelectedItem().toString());
if (changeUsers.contains(currentUser)) {
changeUsers.remove(currentUser);
}
changeUsers.add(currentUser);
}
}
}
}
public PopedomSelecterPanel getPopedomSelecter() {
return this.popSelecter;
}
public void setPopedomSelecter(PopedomSelecterPanel bookSelecter) {
this.popSelecter = bookSelecter;
this.add(popSelecter, new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0,
GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
0, -2, 2, 1), 2, -16));
}
public void clearResult() {
popMap.clear();
PopBox.removeAllItems();
}
public void install(Collection c) {
Iterator it = c.iterator();
while (it.hasNext()) {
Popedom p = (Popedom) it.next();
popMap.put(p.getPopedom(), p);
PopBox.addItem(p.getPopedom());
}
}
public Collection uninstall() {
Collection c = popMap.values();
clearResult();
return c;
}
public void setSelectPop(Popedom pop) {
PopBox.setSelectedItem(pop.getPopedom());
popSelecter.setSelectPop(pop);
}
public Popedom getSelectPop() {
return popSelecter.getSelectPop();
}
public Collection getAll() {
return popMap.values();
}
public User getSelectUser() {
return null;
}
public void setSelectUser(User user) {
this.currentUser = user;
Popedom p = (Popedom) popMap.get(user.getPopedom());
setSelectPop(p);
}
public Collection getChangeUser(){
return changeUsers;
}
private User currentUser;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -