package com.vci.client.portal.UI.v3.comptdesign.compt.popupcompt;
|
|
import java.awt.BorderLayout;
|
import java.awt.Color;
|
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionListener;
|
import java.awt.event.MouseAdapter;
|
import java.awt.event.MouseEvent;
|
|
import javax.swing.JRootPane;
|
import javax.swing.border.LineBorder;
|
|
import com.vci.client.portal.UI.v3.comptdesign.UIComptDesignDialog;
|
import com.vci.client.ui.swing.VCISwingUtil;
|
import com.vci.client.ui.swing.components.VCIJButton;
|
import com.vci.client.ui.swing.components.VCIJOptionPane;
|
import com.vci.client.ui.swing.components.VCIJPanel;
|
import com.vci.client.ui.swing.components.VCIJTextField;
|
import com.vci.corba.omd.ltm.LinkType;
|
import com.vci.mw.ClientContextVariable;
|
|
public class LinkTypePopupDialog extends BasePopupDialog {
|
|
/**
|
*
|
*/
|
private static final long serialVersionUID = -8179948797311106093L;
|
|
|
private VCIJTextField btmLinKTypeTxt = null;
|
private LinkTypePopupTablePanel linkTypeTablePanel = null;
|
|
private VCIJButton btnOk = VCISwingUtil.createVCIJButton("ok", "确定", "确定",
|
"accept.png", new ActionListener() {
|
@Override
|
public void actionPerformed(ActionEvent e) {
|
btnOk_actionPerformed(e, true);
|
}
|
});
|
private VCIJButton btnCancel = VCISwingUtil.createVCIJButton("cancel",
|
"取消", "取消", "cancel.png", new ActionListener() {
|
@Override
|
public void actionPerformed(ActionEvent e) {
|
btnCancel_actionPerformed(e);
|
}
|
});
|
|
public LinkTypePopupDialog(UIComptDesignDialog ownedUIComptDesignDialog,
|
VCIJTextField searchInputTxt,
|
VCIJTextField btmLinkTypeTxt){
|
super(ownedUIComptDesignDialog, searchInputTxt);
|
this.btmLinKTypeTxt = btmLinkTypeTxt;
|
}
|
|
@Override
|
public void buildDialog(){
|
init();
|
super.setBuildCompleted(true);
|
}
|
|
|
private void init() {
|
initUI();
|
}
|
|
private void initUI() {
|
setUndecorated(true);
|
getRootPane().setWindowDecorationStyle(JRootPane.NONE);
|
setLayout(new BorderLayout());
|
|
VCIJPanel pal = new VCIJPanel(new BorderLayout());
|
pal.setBorder(new LineBorder(Color.black));
|
|
linkTypeTablePanel = new LinkTypePopupTablePanel(this);
|
linkTypeTablePanel.buildTablePanel();
|
linkTypeTablePanel.getTablePanel().getTable()
|
.addMouseListener(new MouseAdapter() {
|
public void mouseClicked(MouseEvent e) {
|
int row = linkTypeTablePanel.getTablePanel().getTable()
|
.rowAtPoint(e.getPoint());
|
int column = linkTypeTablePanel.getTablePanel()
|
.getTable().columnAtPoint(e.getPoint());
|
if (row < 0 || column <= 0) {
|
return;
|
}
|
setBtmTypeNameTableRowIndex(row);
|
}
|
});
|
pal.add(linkTypeTablePanel, BorderLayout.CENTER);
|
pal.add(getSouthButtonPanel(), BorderLayout.SOUTH);
|
add(pal, BorderLayout.CENTER);
|
}
|
|
private VCIJPanel getSouthButtonPanel() {
|
VCIJPanel pal = new VCIJPanel();
|
pal.add(btnOk);
|
pal.add(btnCancel);
|
return pal;
|
}
|
|
private void btnOk_actionPerformed(ActionEvent e, boolean fromBtnOk) {
|
if (fromBtnOk) {
|
LinkType[] sels = linkTypeTablePanel.getTablePanel()
|
.getSelectedRowObjectsList().toArray(new LinkType[] {});
|
if (sels.length == 0 && !isSelected()) {
|
VCIJOptionPane.showMessage(ClientContextVariable.getFrame(), "请先选择数据");
|
return;
|
}
|
if (sels.length >= 2) {
|
VCIJOptionPane
|
.showMessage(
|
ClientContextVariable.getFrame(), "只能选择一条数据");
|
return;
|
}
|
setSelectedLinkTypeName(sels[0]);
|
close(DialogResult.OK);
|
} else {
|
int row = linkTypeTablePanel.getTablePanel().getTable()
|
.getSelectedRow();
|
setBtmTypeNameTableRowIndex(row);
|
}
|
}
|
|
private void setBtmTypeNameTableRowIndex(int rowIndex) {
|
if (rowIndex >= 0
|
&& rowIndex < linkTypeTablePanel.getTablePanel()
|
.getTableModel().getList().size()) {
|
LinkType vi = linkTypeTablePanel.getTablePanel()
|
.getSpecialObjectByRowIndex(rowIndex);
|
setSelectedLinkTypeName(vi);
|
close(DialogResult.OK);
|
}
|
}
|
|
private void setSelectedLinkTypeName(LinkType lt) {
|
selectedPortalVIName = lt.name;
|
}
|
|
private String selectedPortalVIName = "";
|
public String getSelectedPortalVIName() {
|
return selectedPortalVIName;
|
}
|
|
private boolean isSelected() {
|
return linkTypeTablePanel.getTablePanel().getTable().getSelectedRow() >= 0;
|
}
|
|
private void btnCancel_actionPerformed(ActionEvent e) {
|
close(DialogResult.CANCEL);
|
}
|
|
private void close(DialogResult dialogRes) {
|
setDialogResult(dialogRes);
|
if (getDialogCallback() != null) {
|
getDialogCallback().run();
|
}
|
setVisible(false);
|
}
|
|
public LinkTypePopupTablePanel getLinkTypeTablePanel() {
|
return linkTypeTablePanel;
|
}
|
|
@Override
|
public void loadData() {
|
linkTypeTablePanel.getTablePanel().refreshTableData();
|
}
|
|
public VCIJTextField getBtmLinKTypeTxt() {
|
return btmLinKTypeTxt;
|
}
|
|
}
|