From b64464040c3054c729c8f898208b6a1231a1b2e9 Mon Sep 17 00:00:00 2001 From: Heng Sin Low Date: Sat, 8 Mar 2008 00:18:18 +0000 Subject: [PATCH] [ 1909902 ] Attachment upload dialog should support multi selection --- client/src/org/compiere/apps/Attachment.java | 46 +++++++++++--------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/client/src/org/compiere/apps/Attachment.java b/client/src/org/compiere/apps/Attachment.java index 38bb97857e..249ab73b07 100644 --- a/client/src/org/compiere/apps/Attachment.java +++ b/client/src/org/compiere/apps/Attachment.java @@ -398,36 +398,42 @@ public final class Attachment extends CDialog JFileChooser chooser = new JFileChooser(); chooser.setDialogType(JFileChooser.OPEN_DIALOG); chooser.setDialogTitle(Msg.getMsg(Env.getCtx(), "AttachmentNew")); + chooser.setMultiSelectionEnabled(true); int returnVal = chooser.showOpenDialog(this); if (returnVal != JFileChooser.APPROVE_OPTION) return; // - String fileName = chooser.getSelectedFile().getName(); - log.config(fileName); - File file = chooser.getSelectedFile(); - int cnt = m_attachment.getEntryCount(); - - //update - for (int i = 0; i < cnt; i++) - { - if (m_attachment.getEntryName(i).equals(fileName)) + File[] files = chooser.getSelectedFiles(); + for (File file : files) { + int cnt = m_attachment.getEntryCount(); + + //update + boolean add = true; + for (int i = 0; i < cnt; i++) { - if (m_attachment.updateEntry(i, file)) + if (m_attachment.getEntryName(i).equals(file.getName())) { - cbContent.setSelectedItem(fileName); + if (m_attachment.updateEntry(i, file)) + { + cbContent.setSelectedItem(file.getName()); + m_change = true; + } + add = false; + break; + } + } + + if (add) + { + //new + if (m_attachment.addEntry(file)) + { + cbContent.addItem(file.getName()); + cbContent.setSelectedIndex(cbContent.getItemCount()-1); m_change = true; } - return; } } - - //new - if (m_attachment.addEntry(file)) - { - cbContent.addItem(fileName); - cbContent.setSelectedIndex(cbContent.getItemCount()-1); - m_change = true; - } } // getFileName /**