Moved mouse events from Chart to MainChart
This commit is contained in:
parent
bfefc1598e
commit
5b9f21876c
@ -20,6 +20,9 @@
|
||||
<Property name="text" type="java.lang.String" value="Log Scale"/>
|
||||
<Property name="toolTipText" type="java.lang.String" value=""/>
|
||||
</Properties>
|
||||
<Events>
|
||||
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jCheckBoxMenuItem1ActionPerformed"/>
|
||||
</Events>
|
||||
</MenuItem>
|
||||
</SubComponents>
|
||||
</Container>
|
||||
@ -37,11 +40,6 @@
|
||||
</Property>
|
||||
<Property name="requestFocusEnabled" type="boolean" value="false"/>
|
||||
</Properties>
|
||||
<Events>
|
||||
<EventHandler event="mouseWheelMoved" listener="java.awt.event.MouseWheelListener" parameters="java.awt.event.MouseWheelEvent" handler="formMouseWheelMoved"/>
|
||||
<EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="formMousePressed"/>
|
||||
<EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="formMouseReleased"/>
|
||||
</Events>
|
||||
<AuxValues>
|
||||
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
|
||||
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
|
||||
|
@ -157,6 +157,14 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// height of xlegend in em
|
||||
private int xlegend_height=9;
|
||||
|
||||
protected void setXLegendHeight(int h){
|
||||
this.x_legend_height=h;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Draw the one and only one X legend
|
||||
@ -719,6 +727,11 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
||||
jCheckBoxMenuItem1.setSelected(true);
|
||||
jCheckBoxMenuItem1.setText("Log Scale");
|
||||
jCheckBoxMenuItem1.setToolTipText("");
|
||||
jCheckBoxMenuItem1.addActionListener(new java.awt.event.ActionListener() {
|
||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||
jCheckBoxMenuItem1ActionPerformed(evt);
|
||||
}
|
||||
});
|
||||
ctxMenu.add(jCheckBoxMenuItem1);
|
||||
|
||||
setBackground(java.awt.Color.white);
|
||||
@ -726,19 +739,6 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
||||
setOpaque(false);
|
||||
setPreferredSize(new java.awt.Dimension(300, 300));
|
||||
setRequestFocusEnabled(false);
|
||||
addMouseWheelListener(new java.awt.event.MouseWheelListener() {
|
||||
public void mouseWheelMoved(java.awt.event.MouseWheelEvent evt) {
|
||||
formMouseWheelMoved(evt);
|
||||
}
|
||||
});
|
||||
addMouseListener(new java.awt.event.MouseAdapter() {
|
||||
public void mousePressed(java.awt.event.MouseEvent evt) {
|
||||
formMousePressed(evt);
|
||||
}
|
||||
public void mouseReleased(java.awt.event.MouseEvent evt) {
|
||||
formMouseReleased(evt);
|
||||
}
|
||||
});
|
||||
|
||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
||||
this.setLayout(layout);
|
||||
@ -752,60 +752,11 @@ public class Chart extends javax.swing.JPanel implements QuoteReceiver, Scrollab
|
||||
);
|
||||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
private void formMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMousePressed
|
||||
System.out.printf("There was a mosue event\n");
|
||||
private void jCheckBoxMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCheckBoxMenuItem1ActionPerformed
|
||||
// TODO add your handling code here:
|
||||
}//GEN-LAST:event_jCheckBoxMenuItem1ActionPerformed
|
||||
|
||||
if (!evt.isPopupTrigger() || true) {
|
||||
System.out.printf("But there was no pupe trigger\n");
|
||||
return;
|
||||
}
|
||||
|
||||
// this.invalidate();
|
||||
this.ctxMenu.setVisible(true);
|
||||
this.ctxMenu.show(this, evt.getX(), evt.getY());
|
||||
|
||||
this.invalidate();
|
||||
this.repaint();
|
||||
|
||||
|
||||
}//GEN-LAST:event_formMousePressed
|
||||
|
||||
private void formMouseWheelMoved(java.awt.event.MouseWheelEvent evt) {//GEN-FIRST:event_formMouseWheelMoved
|
||||
|
||||
double n = evt.getPreciseWheelRotation() * (-1.0);
|
||||
|
||||
if (n < 0) {
|
||||
if (this.x_unit_width > 0.3) {
|
||||
this.x_unit_width += 0.1 * n;
|
||||
}
|
||||
} else {
|
||||
this.x_unit_width += 0.1 * n;
|
||||
}
|
||||
|
||||
this.invalidate();
|
||||
this.repaint();
|
||||
}//GEN-LAST:event_formMouseWheelMoved
|
||||
|
||||
private void formMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMouseReleased
|
||||
|
||||
System.out.printf("There was a mosue event released\n");
|
||||
|
||||
if (!evt.isPopupTrigger()) {
|
||||
System.out.printf("But there was no pupe trigger\n");
|
||||
return;
|
||||
}
|
||||
|
||||
// this.invalidate();
|
||||
this.ctxMenu.setVisible(true);
|
||||
this.ctxMenu.show(this, evt.getX(), evt.getY());
|
||||
|
||||
this.invalidate();
|
||||
this.repaint();
|
||||
|
||||
|
||||
}//GEN-LAST:event_formMouseReleased
|
||||
|
||||
void setCompression(int timeFrame) {
|
||||
protected void setCompression(int timeFrame) {
|
||||
javax.swing.SwingUtilities.invokeLater(() -> {
|
||||
data = Globals.se.getOHLCdata(timeFrame);
|
||||
invalidate();
|
||||
|
@ -1,6 +1,34 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
|
||||
<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
|
||||
<NonVisualComponents>
|
||||
<Container class="javax.swing.JPopupMenu" name="ctxMenu">
|
||||
|
||||
<Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout">
|
||||
<Property name="useNullLayout" type="boolean" value="true"/>
|
||||
</Layout>
|
||||
<SubComponents>
|
||||
<Menu class="javax.swing.JMenu" name="compMenu">
|
||||
<Properties>
|
||||
<Property name="text" type="java.lang.String" value="Compression"/>
|
||||
</Properties>
|
||||
</Menu>
|
||||
<MenuItem class="javax.swing.JCheckBoxMenuItem" name="jCheckBoxMenuItem1">
|
||||
<Properties>
|
||||
<Property name="mnemonic" type="int" value="108"/>
|
||||
<Property name="selected" type="boolean" value="true"/>
|
||||
<Property name="text" type="java.lang.String" value="Log Scale"/>
|
||||
<Property name="toolTipText" type="java.lang.String" value=""/>
|
||||
</Properties>
|
||||
</MenuItem>
|
||||
</SubComponents>
|
||||
</Container>
|
||||
</NonVisualComponents>
|
||||
<Events>
|
||||
<EventHandler event="mouseWheelMoved" listener="java.awt.event.MouseWheelListener" parameters="java.awt.event.MouseWheelEvent" handler="formMouseWheelMoved"/>
|
||||
<EventHandler event="mousePressed" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="formMousePressed"/>
|
||||
<EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="formMouseReleased"/>
|
||||
</Events>
|
||||
<AuxValues>
|
||||
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
|
||||
<AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/>
|
||||
|
@ -5,6 +5,8 @@
|
||||
*/
|
||||
package gui;
|
||||
|
||||
import javax.swing.JMenuItem;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author 7u83 <7u83@mail.ru>
|
||||
@ -16,6 +18,51 @@ public class MainChart extends chart.Chart {
|
||||
*/
|
||||
public MainChart() {
|
||||
initComponents();
|
||||
|
||||
initCtxMenu();
|
||||
}
|
||||
|
||||
private void showCtxMenu(java.awt.event.MouseEvent evt) {
|
||||
// this.invalidate();
|
||||
this.ctxMenu.setVisible(true);
|
||||
this.ctxMenu.show(this, evt.getX(), evt.getY());
|
||||
|
||||
invalidate();
|
||||
repaint();
|
||||
}
|
||||
private final 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 final 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
|
||||
};
|
||||
|
||||
private 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)) {
|
||||
|
||||
setCompression(this.ctxMenuCompressionValues[i]);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@ -27,6 +74,33 @@ public class MainChart extends chart.Chart {
|
||||
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
||||
private void initComponents() {
|
||||
|
||||
ctxMenu = new javax.swing.JPopupMenu();
|
||||
compMenu = new javax.swing.JMenu();
|
||||
jCheckBoxMenuItem1 = new javax.swing.JCheckBoxMenuItem();
|
||||
|
||||
compMenu.setText("Compression");
|
||||
ctxMenu.add(compMenu);
|
||||
|
||||
jCheckBoxMenuItem1.setMnemonic('l');
|
||||
jCheckBoxMenuItem1.setSelected(true);
|
||||
jCheckBoxMenuItem1.setText("Log Scale");
|
||||
jCheckBoxMenuItem1.setToolTipText("");
|
||||
ctxMenu.add(jCheckBoxMenuItem1);
|
||||
|
||||
addMouseWheelListener(new java.awt.event.MouseWheelListener() {
|
||||
public void mouseWheelMoved(java.awt.event.MouseWheelEvent evt) {
|
||||
formMouseWheelMoved(evt);
|
||||
}
|
||||
});
|
||||
addMouseListener(new java.awt.event.MouseAdapter() {
|
||||
public void mousePressed(java.awt.event.MouseEvent evt) {
|
||||
formMousePressed(evt);
|
||||
}
|
||||
public void mouseReleased(java.awt.event.MouseEvent evt) {
|
||||
formMouseReleased(evt);
|
||||
}
|
||||
});
|
||||
|
||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
||||
this.setLayout(layout);
|
||||
layout.setHorizontalGroup(
|
||||
@ -39,7 +113,39 @@ public class MainChart extends chart.Chart {
|
||||
);
|
||||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
private void formMouseWheelMoved(java.awt.event.MouseWheelEvent evt) {//GEN-FIRST:event_formMouseWheelMoved
|
||||
double n = evt.getPreciseWheelRotation() * (-1.0);
|
||||
|
||||
if (n < 0) {
|
||||
if (this.x_unit_width > 0.3) {
|
||||
this.x_unit_width += 0.1 * n;
|
||||
}
|
||||
} else {
|
||||
this.x_unit_width += 0.1 * n;
|
||||
}
|
||||
|
||||
this.invalidate();
|
||||
this.repaint();
|
||||
}//GEN-LAST:event_formMouseWheelMoved
|
||||
|
||||
private void formMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMouseReleased
|
||||
if (!evt.isPopupTrigger()) {
|
||||
return;
|
||||
}
|
||||
showCtxMenu(evt);
|
||||
}//GEN-LAST:event_formMouseReleased
|
||||
|
||||
private void formMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_formMousePressed
|
||||
if (!evt.isPopupTrigger()) {
|
||||
return;
|
||||
}
|
||||
showCtxMenu(evt);
|
||||
}//GEN-LAST:event_formMousePressed
|
||||
|
||||
|
||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||
private javax.swing.JMenu compMenu;
|
||||
private javax.swing.JPopupMenu ctxMenu;
|
||||
private javax.swing.JCheckBoxMenuItem jCheckBoxMenuItem1;
|
||||
// End of variables declaration//GEN-END:variables
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user