From bd10e727566274891c926147cd08bf125b3faf9c Mon Sep 17 00:00:00 2001 From: tobias Date: Fri, 27 Jan 2017 23:34:00 +0100 Subject: [PATCH] more --- pom.xml | 12 ++- src/main/java/chart/FullChart.form | 2 +- src/main/java/gui/EditTradingStrategies.form | 89 +++++++++------- src/main/java/gui/EditTradingStrategies.java | 100 ++++++++++++------ src/main/java/sesim/AutoTraderConfig.java | 2 +- src/main/java/sesim/AutoTraderLoader.java | 21 +++- src/main/java/traders/RandomTraderConfig.java | 2 +- .../java/traders/RandomTraderConfigForm.form | 51 ++------- .../java/traders/RandomTraderConfigForm.java | 37 ++----- src/main/java/traders/SuperTraderConfig.java | 2 +- 10 files changed, 168 insertions(+), 150 deletions(-) diff --git a/pom.xml b/pom.xml index cbb900f..9d7de6a 100644 --- a/pom.xml +++ b/pom.xml @@ -23,11 +23,6 @@ json 20160810 - - com.seaglasslookandfeel - seaglasslookandfeel - 0.2.1 - UTF-8 @@ -35,4 +30,11 @@ 1.8 SeSim + + + unknown-jars-temp-repo + A temporary repository created by NetBeans for libraries and jars it could not identify. Please replace the dependencies in this repository with correct ones and delete this repository. + file:${project.basedir}/lib + + \ No newline at end of file diff --git a/src/main/java/chart/FullChart.form b/src/main/java/chart/FullChart.form index 369b180..1ffd4f4 100644 --- a/src/main/java/chart/FullChart.form +++ b/src/main/java/chart/FullChart.form @@ -16,7 +16,7 @@ - + diff --git a/src/main/java/gui/EditTradingStrategies.form b/src/main/java/gui/EditTradingStrategies.form index a72f609..1b58a6d 100644 --- a/src/main/java/gui/EditTradingStrategies.form +++ b/src/main/java/gui/EditTradingStrategies.form @@ -24,18 +24,15 @@ + - - - - - - - - + - + + + + @@ -44,13 +41,13 @@ - + - + - + @@ -75,32 +72,52 @@ - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/gui/EditTradingStrategies.java b/src/main/java/gui/EditTradingStrategies.java index 8430b19..dab46bc 100644 --- a/src/main/java/gui/EditTradingStrategies.java +++ b/src/main/java/gui/EditTradingStrategies.java @@ -26,6 +26,7 @@ package gui; import java.util.ArrayList; +import javax.swing.JPanel; import sesim.AutoTraderConfig; /** @@ -40,22 +41,20 @@ public class EditTradingStrategies extends javax.swing.JDialog { public EditTradingStrategies(java.awt.Frame parent, boolean modal) { super(parent, modal); initComponents(); - + this.jComboBox1.removeAllItems(); - ArrayList sn = Globals.tloader.getDefaultStrategyNames(); - for(int i=0; i sn = Globals.tloader.getDefaultStrategyNames(); + for (int i = 0; i < sn.size(); i++) { this.jComboBox1.addItem(sn.get(i)); - + } - + } - - void setStrategy(String strategy){ - ArrayList > s = Globals.tloader.getTraders(); - - + + void setStrategy(String strategy) { + ArrayList> s = Globals.tloader.getTraders(); + } - /** * This method is called from within the constructor to initialize the form. @@ -67,8 +66,10 @@ public class EditTradingStrategies extends javax.swing.JDialog { private void initComponents() { jComboBox1 = new javax.swing.JComboBox<>(); - jPanel1 = new javax.swing.JPanel(); - jButton1 = new javax.swing.JButton(); + jToggleButton1 = new javax.swing.JToggleButton(); + guiPanel = new javax.swing.JPanel(); + defaultGuiPanel = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); @@ -79,36 +80,45 @@ public class EditTradingStrategies extends javax.swing.JDialog { } }); - jPanel1.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jToggleButton1.setText("jToggleButton1"); - javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); - jPanel1.setLayout(jPanel1Layout); - jPanel1Layout.setHorizontalGroup( - jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGap(0, 0, Short.MAX_VALUE) + guiPanel.setLayout(new java.awt.BorderLayout()); + + jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER); + jLabel1.setText("No config available"); + + javax.swing.GroupLayout defaultGuiPanelLayout = new javax.swing.GroupLayout(defaultGuiPanel); + defaultGuiPanel.setLayout(defaultGuiPanelLayout); + defaultGuiPanelLayout.setHorizontalGroup( + defaultGuiPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(defaultGuiPanelLayout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 492, Short.MAX_VALUE) + .addContainerGap()) ); - jPanel1Layout.setVerticalGroup( - jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGap(0, 270, Short.MAX_VALUE) + defaultGuiPanelLayout.setVerticalGroup( + defaultGuiPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(defaultGuiPanelLayout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE) + .addContainerGap()) ); - jButton1.setText("jButton1"); + guiPanel.add(defaultGuiPanel, java.awt.BorderLayout.CENTER); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() + .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGap(99, 99, 99) - .addComponent(jComboBox1, 0, 411, Short.MAX_VALUE)) - .addGroup(layout.createSequentialGroup() - .addContainerGap() - .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addComponent(guiPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addGap(0, 0, Short.MAX_VALUE) - .addComponent(jButton1))) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jToggleButton1, javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jComboBox1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 361, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addContainerGap()) ); layout.setVerticalGroup( @@ -117,9 +127,9 @@ public class EditTradingStrategies extends javax.swing.JDialog { .addContainerGap() .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(guiPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jButton1) + .addComponent(jToggleButton1) .addContainerGap()) ); @@ -128,6 +138,26 @@ public class EditTradingStrategies extends javax.swing.JDialog { private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBox1ActionPerformed System.out.printf("Now Strategie Dialog to open\n"); + AutoTraderConfig ac = Globals.tloader.getStrategy((String) this.jComboBox1.getSelectedItem()); + if (ac == null) { + return; + } + JPanel gui = ac.getGui(); + guiPanel.removeAll(); + if (gui != null) { + // javax.swing.GroupLayout guil = (javax.swing.GroupLayout) this.guiPanel.getLayout(); + + guiPanel.add(gui, java.awt.BorderLayout.CENTER); + + // this.guiPanel; + gui.setVisible(true); + + } else { + guiPanel.add(this.defaultGuiPanel, java.awt.BorderLayout.CENTER); + } + this.revalidate(); + System.out.printf("Setted the dings\n", ""); + this.repaint(); }//GEN-LAST:event_jComboBox1ActionPerformed /** @@ -173,8 +203,10 @@ public class EditTradingStrategies extends javax.swing.JDialog { } // Variables declaration - do not modify//GEN-BEGIN:variables - private javax.swing.JButton jButton1; + private javax.swing.JPanel defaultGuiPanel; + private javax.swing.JPanel guiPanel; private javax.swing.JComboBox jComboBox1; - private javax.swing.JPanel jPanel1; + private javax.swing.JLabel jLabel1; + private javax.swing.JToggleButton jToggleButton1; // End of variables declaration//GEN-END:variables } diff --git a/src/main/java/sesim/AutoTraderConfig.java b/src/main/java/sesim/AutoTraderConfig.java index 5dd3212..567b875 100644 --- a/src/main/java/sesim/AutoTraderConfig.java +++ b/src/main/java/sesim/AutoTraderConfig.java @@ -34,6 +34,6 @@ import javax.swing.JPanel; public abstract interface AutoTraderConfig { public abstract AutoTrader createTrader(Exchange se, double money, double shares); public abstract String getName(); - public abstract JPanel getConfigEditor(); + public abstract JPanel getGui(); } diff --git a/src/main/java/sesim/AutoTraderLoader.java b/src/main/java/sesim/AutoTraderLoader.java index 4ffd982..b1002d4 100644 --- a/src/main/java/sesim/AutoTraderLoader.java +++ b/src/main/java/sesim/AutoTraderLoader.java @@ -193,21 +193,34 @@ public class AutoTraderLoader { trclasses = this.getTraders(); ArrayList ret = new ArrayList<>(); trclasses = getTraders(); - + for (int i = 0; i < trclasses.size(); i++) { try { AutoTraderConfig ac = trclasses.get(i).newInstance(); ret.add(ac.getName()); } catch (Exception ex) { - - } - + + } } return ret; } + public AutoTraderConfig getStrategy(String name) { + ArrayList> traders = this.getTraders(); + for (int i = 0; i < traders.size(); i++) { + try { + AutoTraderConfig ac = traders.get(i).newInstance(); + if (ac.getName().endsWith(name)) { + return ac; + } + } catch (Exception ex) { + } + } + return null; + } + public ArrayList getTraders(String dir) { File f = new File(dir); File[] ff = f.listFiles(); diff --git a/src/main/java/traders/RandomTraderConfig.java b/src/main/java/traders/RandomTraderConfig.java index f768a5c..7342522 100644 --- a/src/main/java/traders/RandomTraderConfig.java +++ b/src/main/java/traders/RandomTraderConfig.java @@ -57,7 +57,7 @@ public class RandomTraderConfig implements AutoTraderConfig { } @Override - public JPanel getConfigEditor() { + public JPanel getGui() { return new RandomTraderConfigForm(); } } diff --git a/src/main/java/traders/RandomTraderConfigForm.form b/src/main/java/traders/RandomTraderConfigForm.form index 14472ff..956ad9d 100644 --- a/src/main/java/traders/RandomTraderConfigForm.form +++ b/src/main/java/traders/RandomTraderConfigForm.form @@ -1,6 +1,6 @@ -
+ @@ -16,60 +16,31 @@ - - - - - - - - - - + + + - - - - - - - - + + + - + - - - - - - - - - - - - - - - - - + + + - - - diff --git a/src/main/java/traders/RandomTraderConfigForm.java b/src/main/java/traders/RandomTraderConfigForm.java index 4c8670c..3065e0d 100644 --- a/src/main/java/traders/RandomTraderConfigForm.java +++ b/src/main/java/traders/RandomTraderConfigForm.java @@ -47,48 +47,31 @@ public class RandomTraderConfigForm extends javax.swing.JPanel { // //GEN-BEGIN:initComponents private void initComponents() { - jTextField1 = new javax.swing.JTextField(); - jRadioButton1 = new javax.swing.JRadioButton(); - jComboBox1 = new javax.swing.JComboBox<>(); + jFormattedTextField1 = new javax.swing.JFormattedTextField(); - jTextField1.setText("jTextField1"); - - jRadioButton1.setText("jRadioButton1"); - - jComboBox1.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" })); + jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#0.00%")))); + jFormattedTextField1.setHorizontalAlignment(javax.swing.JTextField.RIGHT); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 197, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap()) .addGroup(layout.createSequentialGroup() - .addGap(83, 83, 83) - .addComponent(jRadioButton1) - .addGap(37, 37, 37) - .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(98, Short.MAX_VALUE)) + .addGap(115, 115, 115) + .addComponent(jFormattedTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 94, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(197, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() - .addContainerGap() - .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(40, 40, 40) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jRadioButton1) - .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addContainerGap(202, Short.MAX_VALUE)) + .addGap(24, 24, 24) + .addComponent(jFormattedTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(249, Short.MAX_VALUE)) ); }// //GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables - private javax.swing.JComboBox jComboBox1; - private javax.swing.JRadioButton jRadioButton1; - private javax.swing.JTextField jTextField1; + private javax.swing.JFormattedTextField jFormattedTextField1; // End of variables declaration//GEN-END:variables } diff --git a/src/main/java/traders/SuperTraderConfig.java b/src/main/java/traders/SuperTraderConfig.java index f19deff..0261f55 100644 --- a/src/main/java/traders/SuperTraderConfig.java +++ b/src/main/java/traders/SuperTraderConfig.java @@ -52,7 +52,7 @@ public class SuperTraderConfig implements AutoTraderConfig{ } @Override - public JPanel getConfigEditor() { + public JPanel getGui() { return null; }