Better chart options
This commit is contained in:
parent
44b7c68d73
commit
246871f588
@ -8,60 +8,10 @@
|
|||||||
<Property name="useNullLayout" type="boolean" value="true"/>
|
<Property name="useNullLayout" type="boolean" value="true"/>
|
||||||
</Layout>
|
</Layout>
|
||||||
<SubComponents>
|
<SubComponents>
|
||||||
<Menu class="javax.swing.JMenu" name="jMenu1">
|
<Menu class="javax.swing.JMenu" name="compMenu">
|
||||||
<Properties>
|
<Properties>
|
||||||
<Property name="text" type="java.lang.String" value="Compression"/>
|
<Property name="text" type="java.lang.String" value="Compression"/>
|
||||||
</Properties>
|
</Properties>
|
||||||
<SubComponents>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp5s">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="5 s"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp5sActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp1m">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="1 min"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp1mActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp5min">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="5 min"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp5minActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp1h">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="1 h"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp1hActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp4h">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="4 h"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp4hActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem class="javax.swing.JMenuItem" name="ctxMenuComp1d">
|
|
||||||
<Properties>
|
|
||||||
<Property name="text" type="java.lang.String" value="1 d"/>
|
|
||||||
</Properties>
|
|
||||||
<Events>
|
|
||||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="ctxMenuComp1dActionPerformed"/>
|
|
||||||
</Events>
|
|
||||||
</MenuItem>
|
|
||||||
</SubComponents>
|
|
||||||
</Menu>
|
</Menu>
|
||||||
</SubComponents>
|
</SubComponents>
|
||||||
</Container>
|
</Container>
|
||||||
|
@ -17,6 +17,7 @@ import java.text.SimpleDateFormat;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
import javax.swing.JMenuItem;
|
||||||
import javax.swing.Scrollable;
|
import javax.swing.Scrollable;
|
||||||
import sesim.MinMax;
|
import sesim.MinMax;
|
||||||
|
|
||||||
@ -42,7 +43,7 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
public final void initChart() {
|
public final void initChart() {
|
||||||
// data = new OHLCData(60000*30);
|
// data = new OHLCData(60000*30);
|
||||||
//data = new OHLCData(60000*30);
|
//data = new OHLCData(60000*30);
|
||||||
data = Globals.se.getOHLCdata(60000 * 30);
|
//data = Globals.se.getOHLCdata(60000 * 30);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -51,6 +52,7 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
public Chart() {
|
public Chart() {
|
||||||
initComponents();
|
initComponents();
|
||||||
initChart();
|
initChart();
|
||||||
|
initCtxMenu();
|
||||||
//setCompression(60000);
|
//setCompression(60000);
|
||||||
if (Globals.se == null) {
|
if (Globals.se == null) {
|
||||||
return;
|
return;
|
||||||
@ -60,12 +62,50 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String [] ctxMenuCompressionText = {
|
||||||
|
"5 s", "10 s", "15 s", "30 s",
|
||||||
|
"1 m", "2 m", "5 m", "10 m", "15 m", "30 m",
|
||||||
|
"1 h", "2 h", "4 h",
|
||||||
|
"1 d", "2 d"
|
||||||
|
};
|
||||||
|
private Integer[] ctxMenuCompressionValues ={
|
||||||
|
5*1000, 10*1000, 15*1000, 30*1000,
|
||||||
|
60*1000, 2*60*1000, 5*60*1000, 10*60*1000, 15*60*1000, 30*60*1000,
|
||||||
|
1*3600*1000,2*3600*1000, 4*3600*1000,
|
||||||
|
1*24*3600*1000, 2*24*3600*1000
|
||||||
|
};
|
||||||
|
|
||||||
|
void initCtxMenu() {
|
||||||
|
for (int i=0; i<this.ctxMenuCompressionValues.length;i++){
|
||||||
|
JMenuItem item=new JMenuItem(this.ctxMenuCompressionText[i]);
|
||||||
|
|
||||||
|
|
||||||
|
item.addActionListener((java.awt.event.ActionEvent evt) -> {
|
||||||
|
ctxMenuCompActionPerformed(evt);
|
||||||
|
});
|
||||||
|
this.compMenu.add(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ctxMenuCompActionPerformed(java.awt.event.ActionEvent evt) {
|
||||||
|
String cmd = evt.getActionCommand();
|
||||||
|
for (int i=0;i<this.ctxMenuCompressionText.length;i++){
|
||||||
|
if (this.ctxMenuCompressionText[i].equals(cmd)){
|
||||||
|
System.out.printf("Equality to %s\n", cmd);
|
||||||
|
this.setCompression(this.ctxMenuCompressionValues[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.out.printf("ACtion %s\n",cmd);
|
||||||
|
//this.setCompression(1000 * 5);
|
||||||
|
}
|
||||||
|
|
||||||
OHLCData data;
|
OHLCData data;
|
||||||
|
|
||||||
OHLCDataItem current = null;
|
OHLCDataItem current = null;
|
||||||
|
|
||||||
//void drawCandle(Graphics2D g, OHLCData d, int x, int y) {
|
//void drawCandle(Graphics2D g, OHLCData d, int x, int y) {
|
||||||
//
|
//
|
||||||
|
|
||||||
// }
|
// }
|
||||||
@Override
|
@Override
|
||||||
public Dimension getPreferredScrollableViewportSize() {
|
public Dimension getPreferredScrollableViewportSize() {
|
||||||
@ -426,65 +466,10 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
private void initComponents() {
|
private void initComponents() {
|
||||||
|
|
||||||
ctxMenu = new javax.swing.JPopupMenu();
|
ctxMenu = new javax.swing.JPopupMenu();
|
||||||
jMenu1 = new javax.swing.JMenu();
|
compMenu = new javax.swing.JMenu();
|
||||||
ctxMenuComp5s = new javax.swing.JMenuItem();
|
|
||||||
ctxMenuComp1m = new javax.swing.JMenuItem();
|
|
||||||
ctxMenuComp5min = new javax.swing.JMenuItem();
|
|
||||||
ctxMenuComp1h = new javax.swing.JMenuItem();
|
|
||||||
ctxMenuComp4h = new javax.swing.JMenuItem();
|
|
||||||
ctxMenuComp1d = new javax.swing.JMenuItem();
|
|
||||||
|
|
||||||
jMenu1.setText("Compression");
|
compMenu.setText("Compression");
|
||||||
|
ctxMenu.add(compMenu);
|
||||||
ctxMenuComp5s.setText("5 s");
|
|
||||||
ctxMenuComp5s.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp5sActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp5s);
|
|
||||||
|
|
||||||
ctxMenuComp1m.setText("1 min");
|
|
||||||
ctxMenuComp1m.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp1mActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp1m);
|
|
||||||
|
|
||||||
ctxMenuComp5min.setText("5 min");
|
|
||||||
ctxMenuComp5min.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp5minActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp5min);
|
|
||||||
|
|
||||||
ctxMenuComp1h.setText("1 h");
|
|
||||||
ctxMenuComp1h.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp1hActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp1h);
|
|
||||||
|
|
||||||
ctxMenuComp4h.setText("4 h");
|
|
||||||
ctxMenuComp4h.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp4hActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp4h);
|
|
||||||
|
|
||||||
ctxMenuComp1d.setText("1 d");
|
|
||||||
ctxMenuComp1d.addActionListener(new java.awt.event.ActionListener() {
|
|
||||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
||||||
ctxMenuComp1dActionPerformed(evt);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jMenu1.add(ctxMenuComp1d);
|
|
||||||
|
|
||||||
ctxMenu.add(jMenu1);
|
|
||||||
|
|
||||||
setBackground(java.awt.Color.white);
|
setBackground(java.awt.Color.white);
|
||||||
setBorder(null);
|
setBorder(null);
|
||||||
@ -525,30 +510,6 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
repaint();
|
repaint();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ctxMenuComp1mActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp1mActionPerformed
|
|
||||||
this.setCompression(60000);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp1mActionPerformed
|
|
||||||
|
|
||||||
private void ctxMenuComp1hActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp1hActionPerformed
|
|
||||||
this.setCompression(60000*60);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp1hActionPerformed
|
|
||||||
|
|
||||||
private void ctxMenuComp4hActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp4hActionPerformed
|
|
||||||
this.setCompression(60000*60*4);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp4hActionPerformed
|
|
||||||
|
|
||||||
private void ctxMenuComp1dActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp1dActionPerformed
|
|
||||||
this.setCompression(60000*60*24);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp1dActionPerformed
|
|
||||||
|
|
||||||
private void ctxMenuComp5sActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp5sActionPerformed
|
|
||||||
this.setCompression(1000*5);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp5sActionPerformed
|
|
||||||
|
|
||||||
private void ctxMenuComp5minActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_ctxMenuComp5minActionPerformed
|
|
||||||
this.setCompression(60*1000*5);
|
|
||||||
}//GEN-LAST:event_ctxMenuComp5minActionPerformed
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void UpdateQuote(Quote q) {
|
public void UpdateQuote(Quote q) {
|
||||||
// System.out.print("Quote Received\n");
|
// System.out.print("Quote Received\n");
|
||||||
@ -561,13 +522,7 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
|||||||
|
|
||||||
|
|
||||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||||
|
private javax.swing.JMenu compMenu;
|
||||||
private javax.swing.JPopupMenu ctxMenu;
|
private javax.swing.JPopupMenu ctxMenu;
|
||||||
private javax.swing.JMenuItem ctxMenuComp1d;
|
|
||||||
private javax.swing.JMenuItem ctxMenuComp1h;
|
|
||||||
private javax.swing.JMenuItem ctxMenuComp1m;
|
|
||||||
private javax.swing.JMenuItem ctxMenuComp4h;
|
|
||||||
private javax.swing.JMenuItem ctxMenuComp5min;
|
|
||||||
private javax.swing.JMenuItem ctxMenuComp5s;
|
|
||||||
private javax.swing.JMenu jMenu1;
|
|
||||||
// End of variables declaration//GEN-END:variables
|
// End of variables declaration//GEN-END:variables
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user