public ComResDlg(Window parent, CommitteeResolutionData comResLocally, AuditManager am) throws ClipsException {
super(parent, "Ввод решения комиссии",am);
initComponents();
this.comResLocal = comResLocally;
panelSelColl.addContentStateListener(new ContentStateListener() {
@Override
public void contentStateChanged() {
comResLocal.setCollaborator(panelSelColl.getSelectedItem());
}
});
//заполняем комбобокс
DirectoryCommitteeResolution directory = DirectoryLocator.getDirectory(DirectoryCommitteeResolution.class);
SelectorEditableExceptional<DirectoryCommitteeResolutionItem> items = directory.getItems();
for (int i = 0; i < items.size(); i++) {
cbResTypes.addItem(items.get(i));
}
//слушатель для комбобокса типов решения
cbResTypes.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
if (((DirectoryItem)cbResTypes.getSelectedItem()).getID() == 0) {
btOK.setEnabled(false);
}
else {
try {
comResLocal.setType( (DirectoryCommitteeResolutionItem) cbResTypes.getSelectedItem());
btOK.setEnabled(true);
} catch (ClipsException ex) {
MessageBox.showException(ex);
}
}
}
});
cbResTypes.setSelectedItem(comResLocal.getType());
//слушатель для ComRes.description
taResDesc.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void insertUpdate(DocumentEvent arg0) {
setField(arg0.getDocument());
}
@Override
public void removeUpdate(DocumentEvent arg0) {
setField(arg0.getDocument());
}
@Override
public void changedUpdate(DocumentEvent arg0) {
}
private void setField(Document doc) {
try {
comResLocal.setDescription(doc.getText(0, doc.getLength()));
} catch (ClipsException ex) {
MessageBox.showException(ex);
} catch (BadLocationException ex) {
MessageBox.showException(ex);
}
}
});
pmkbDiagnosis.addContentStateListener(new ContentStateListener() {
@Override
public void contentStateChanged() {
comResLocal.setMkb(pmkbDiagnosis.getSelectedItem());
}