package cz.cvut.fel.restauracefel.smeny.smeny_gui; import java.io.FileNotFoundException; import java.rmi.NotBoundException; import java.rmi.RemoteException; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JTextField; import cz.cvut.fel.restauracefel.library.service.EmptyListException; import cz.cvut.fel.restauracefel.smeny.SmenyController.SmenyController; import javax.swing.JTable; //import cz.cvut.fel.restauracefel.smeny_service.ServiceFacade; /** * Trida vytvarejici dialog pro vyber stolu, k nemuz bude ucet nalezet. * * @author Martin Kosek */ public class ChooseTemplateDialog extends AbstractDialog { private JTable targetTable = null; /** * Konstruktor tridy ChooseTableDialog * * @param parent instance tridy MainFrame jenz vytvorila tento formular * @param modal * @param target textove vstupni pole, do ktereho se bude zapisovat vysledek * * @throws java.rmi.RemoteException * @throws java.rmi.NotBoundException * @throws java.io.FileNotFoundException */ public ChooseTemplateDialog(MainFrame parent, boolean modal, JTable targetTable) throws EmptyListException, RemoteException, NotBoundException, FileNotFoundException { super(parent, modal); this.targetTable = targetTable; initComponents(); setDefaultCloseOperation(DISPOSE_ON_CLOSE); refresh(); } /** * Metoda provadi aktualizaci seznamu vsech stolu. * * @throws java.rmi.RemoteException * @throws java.rmi.NotBoundException * @throws java.io.FileNotFoundException */ protected void refresh() throws EmptyListException, RemoteException, NotBoundException, FileNotFoundException { //String[] tables = ServiceFacade.getInstance().getTableNames(); //if (tables==null) throw new EmptyListException("Žádné stoly", "V systému nejsou momentálně evidovány žádné stoly."); //shifts for delete - odkaz na pole nebo list by mel byt predan konstruktorem nebo nejakou set metodou //String[] tables = new String[]{"První šablona", "Druhá šablona", "Třetí šablona", "Čtvrtá šablona", "Pátá šablona", "Šestá šablona", "Sedmá šablona", "Osmá šablona"}; //jList1.setListData(tables); SmenyController.getInstance().generateDataListTemplates(); jList1.setListData(SmenyController.getInstance().getDataListTemplates()); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jPanel1 = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); jList1 = new javax.swing.JList(); jButtonBack = new javax.swing.JButton(); jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setModal(true); setResizable(false); setUndecorated(true); jPanel1.setBackground(new java.awt.Color(255, 255, 255)); jPanel1.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); jScrollPane1.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); jList1.setFont(new java.awt.Font("Tahoma", 1, 18)); jList1.setModel(new javax.swing.AbstractListModel() { String[] strings = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18" }; public int getSize() { return strings.length; } public Object getElementAt(int i) { return strings[i]; } }); jList1.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); jList1.setAlignmentX(2.0F); jList1.setFixedCellHeight(50); jList1.setFixedCellWidth(400); jList1.setFocusCycleRoot(true); jList1.setLayoutOrientation(javax.swing.JList.HORIZONTAL_WRAP); jList1.setSelectionBackground(javax.swing.UIManager.getDefaults().getColor("InternalFrame.inactiveTitleGradient")); jList1.setVisibleRowCount(-1); jList1.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { clicked(evt); } }); jScrollPane1.setViewportView(jList1); jButtonBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/cz/cvut/fel/restauracefel/buttons/ko.png"))); // NOI18N jButtonBack.setText(" Zavřít"); jButtonBack.setToolTipText("Vymazat pole stůl"); jButtonBack.setBorder(null); jButtonBack.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonBackActionPerformed(evt); } }); jLabel1.setFont(new java.awt.Font("Tahoma", 1, 18)); jLabel1.setText("Přidat ze šablony"); jLabel2.setText("Kliknutím přidáte směny z vybrané šablony"); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(20, 20, 20) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 371, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel1))) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addContainerGap(31, Short.MAX_VALUE) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 419, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jButtonBack, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(206, 206, 206))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(18, 18, 18) .addComponent(jLabel1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jLabel2) .addGap(18, 18, 18) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 262, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(30, 30, 30) .addComponent(jButtonBack, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 479, javax.swing.GroupLayout.PREFERRED_SIZE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) ); pack(); }// </editor-fold>//GEN-END:initComponents private void jButtonBackActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonBackActionPerformed //target.setText(""); dispose(); }//GEN-LAST:event_jButtonBackActionPerformed private void clicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_clicked try { SmenyController.getInstance().addWorkShiftFromTemplate((String)jList1.getSelectedValue()); targetTable.setModel(SmenyController.getInstance().getModelWorkShift()); } catch (FileNotFoundException ex) { Logger.getLogger(ChooseTemplateDialog.class.getName()).log(Level.SEVERE, null, ex); } catch (RemoteException ex) { Logger.getLogger(ChooseTemplateDialog.class.getName()).log(Level.SEVERE, null, ex); } catch (NotBoundException ex) { Logger.getLogger(ChooseTemplateDialog.class.getName()).log(Level.SEVERE, null, ex); } dispose(); }//GEN-LAST:event_clicked // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButtonBack; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JList jList1; private javax.swing.JPanel jPanel1; private javax.swing.JScrollPane jScrollPane1; // End of variables declaration//GEN-END:variables }