/* * Copyright (c) 2018, 7u83 <7u83@mail.ru> * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * * Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ package opensesim.gui.AssetEditor; import com.sun.rowset.internal.Row; import java.awt.Frame; import java.awt.Window; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.JFrame; import javax.swing.SwingUtilities; import opensesim.gui.EscDialog; import opensesim.sesim.Assets.BasicAsset; import opensesim.util.IDGenerator.Id; import org.json.JSONObject; /** * * @author 7u83 <7u83@mail.ru> */ public class AssetListDialog extends EscDialog { String getMyName(){ return "Miau!"; } /** * Creates new form EditAssetsDialog */ public AssetListDialog(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); java.awt.event.MouseAdapter l = new java.awt.event.MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) { doEdit(); } } }; this.assetListPanel.assetTable.addMouseListener(l); } /** * 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") // //GEN-BEGIN:initComponents private void initComponents() { jButton1 = new javax.swing.JButton(); newButton = new javax.swing.JButton(); jButton3 = new javax.swing.JButton(); editButton = new javax.swing.JButton(); assetListPanel = new opensesim.gui.AssetEditor.AssetListPanel(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Edit Assets"); setModal(true); jButton1.setText("Done"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); newButton.setText("New ..."); newButton.setToolTipText("Creates a new Asset"); newButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { newButtonActionPerformed(evt); } }); jButton3.setText("Delete"); editButton.setText("Edit ..."); editButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { editButtonActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(0, 250, Short.MAX_VALUE) .addComponent(jButton3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(editButton) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(newButton) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton1)) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(assetListPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(assetListPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 282, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(newButton) .addComponent(jButton1) .addComponent(jButton3) .addComponent(editButton)) .addContainerGap()) ); pack(); }// //GEN-END:initComponents private void newButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_newButtonActionPerformed //AssetEditorDialog.runDialog(this, null); this.assetListPanel.reload(); /* javax.swing.JOptionPane.showMessageDialog(this, "Hello", "Error", javax.swing.JOptionPane.ERROR_MESSAGE);*/ /* Id id = AssteEditorDialog.runDialog(this, null); if (id != null) { assetList1.addAsset(id); } */ this.repaint(); // JFrame frame = (JFrame) SwingUtilities.getWindowAncestor(this); /* // CreateAssetDialog dlg = new CreateAssetDialog(); CreateAssetDialog.runDialog(this); javax.swing.JOptionPane.showMessageDialog(this, "Hello", "Error", javax.swing.JOptionPane.ERROR_MESSAGE); frame = (JFrame) SwingUtilities.getAncestorOfClass(Frame.class, this); dialog = new CreateAssetDialog(frame, false); dialog.setModal(true); this.setModal(true); this.setModalityType(ModalityType.DOCUMENT_MODAL); // addPropertyChangeListener(new ValuePropertyHandler(dialog)); //dialog.setAlwaysOnTop(true); //this.setVisible(false); dialog.setLocationRelativeTo(this); dialog.setModalityType(ModalityType.DOCUMENT_MODAL); dialog.setModal(true); // dialog.setVisible(true); dialog.show(); Id id = dialog.getCreatedId(); this.setModal(true); this.setVisible(true); dialog.dispose(); if (id != null) { assetList1.addAsset(id); } this.repaint(); */ }//GEN-LAST:event_newButtonActionPerformed private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed dispose(); }//GEN-LAST:event_jButton1ActionPerformed private void doEdit() { JSONObject o = assetListPanel.getSelectedObject(); System.out.printf("JON: %s",o.toString(4)); AssetEditorDialog.runDialog(this, o); } private void editButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_editButtonActionPerformed doEdit(); // Id selId = (Id)assetList1.assetList.getValueAt(row, 0); /* BasicAsset a = BasicAsset.getAsset(selId); Id id = AssteEditorDialog.runDialog(this, a); if (id != null) { // assetList1.addAsset(id); } this.assetList1.reload(); this.repaint(); */ }//GEN-LAST:event_editButtonActionPerformed /** * @param args the command line arguments */ public static void main(String args[]) { /* Set the Nimbus look and feel */ // /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(AssetListDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(AssetListDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(AssetListDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(AssetListDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } // // /* Create and display the dialog */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { AssetListDialog dialog = new AssetListDialog(new javax.swing.JFrame(), true); dialog.addWindowListener(new java.awt.event.WindowAdapter() { @Override public void windowClosing(java.awt.event.WindowEvent e) { System.exit(0); } }); dialog.setVisible(true); } }); } // Variables declaration - do not modify//GEN-BEGIN:variables private opensesim.gui.AssetEditor.AssetListPanel assetListPanel; private javax.swing.JButton editButton; private javax.swing.JButton jButton1; private javax.swing.JButton jButton3; private javax.swing.JButton newButton; // End of variables declaration//GEN-END:variables }