minor changes:
1. fixed un-toggle button on toolbar when by X window closed 2. introduced property for connection
This commit is contained in:
parent
0e62e5b58f
commit
bb9e0d1bee
|
@ -92,6 +92,16 @@ public class SystemProperties {
|
|||
return Integer.parseInt(prop.getProperty("peer.discovery.port"));
|
||||
}
|
||||
|
||||
public String activePeerIP(){
|
||||
if(prop.isEmpty()) return "54.201.28.117";
|
||||
return prop.getProperty("peer.active.ip");
|
||||
}
|
||||
|
||||
public int activePeerPort(){
|
||||
if(prop.isEmpty()) return 30303;
|
||||
return Integer.parseInt(prop.getProperty("peer.active.port"));
|
||||
}
|
||||
|
||||
public String samplesDir(){
|
||||
if(prop.isEmpty()) return "samples";
|
||||
return prop.getProperty("samples.dir");
|
||||
|
|
|
@ -6,13 +6,11 @@ import org.ethereum.manager.MainData;
|
|||
import javax.swing.*;
|
||||
import javax.swing.table.DefaultTableCellRenderer;
|
||||
import javax.swing.table.TableCellRenderer;
|
||||
import javax.tools.Tool;
|
||||
import java.awt.*;
|
||||
import java.awt.datatransfer.Clipboard;
|
||||
import java.awt.datatransfer.StringSelection;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.awt.event.*;
|
||||
|
||||
/**
|
||||
* www.ethereumJ.com
|
||||
|
@ -27,7 +25,12 @@ public class BlockChainTable extends JFrame {
|
|||
|
||||
private int lastFindIndex = 0;
|
||||
|
||||
public BlockChainTable() {
|
||||
ToolBar toolBar;
|
||||
|
||||
public BlockChainTable(ToolBar toolBar) {
|
||||
|
||||
this.toolBar = toolBar;
|
||||
addCloseAction();
|
||||
|
||||
final BlockChainTable blockChainTable = this;
|
||||
|
||||
|
@ -126,8 +129,20 @@ public class BlockChainTable extends JFrame {
|
|||
topPanel.add(scrollPane, BorderLayout.CENTER);
|
||||
}
|
||||
|
||||
public void addCloseAction(){
|
||||
this.addWindowListener( new WindowAdapter()
|
||||
{
|
||||
public void windowClosing(WindowEvent e)
|
||||
{
|
||||
toolBar.chainToggle.setSelected(false);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public static void main(String args[]){
|
||||
BlockChainTable mainFrame = new BlockChainTable();
|
||||
BlockChainTable mainFrame = new BlockChainTable(null);
|
||||
mainFrame.setVisible(true);
|
||||
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
}
|
||||
|
|
|
@ -3,14 +3,20 @@ package org.ethereum.gui;
|
|||
import java.awt.*;
|
||||
import java.awt.event.ComponentAdapter;
|
||||
import java.awt.event.ComponentEvent;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.net.InetAddress;
|
||||
import java.net.UnknownHostException;
|
||||
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.*;
|
||||
import javax.tools.Tool;
|
||||
|
||||
import org.ethereum.config.SystemProperties;
|
||||
import org.ethereum.net.client.ClientPeer;
|
||||
import org.fife.ui.rsyntaxtextarea.*;
|
||||
import org.fife.ui.rtextarea.RTextScrollPane;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* A simple example showing how to modify the fonts and colors used in an
|
||||
|
@ -25,12 +31,17 @@ import org.fife.ui.rtextarea.RTextScrollPane;
|
|||
*/
|
||||
public class ConnectionConsoleWindow extends JFrame implements PeerListener{
|
||||
|
||||
Logger logger = LoggerFactory.getLogger(getClass());
|
||||
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private boolean autoScroll = false;
|
||||
|
||||
private RSyntaxTextArea textArea;
|
||||
|
||||
ToolBar toolBar = null;
|
||||
|
||||
/**
|
||||
* ERROR (exceptions) WARN (when something happens that's not supposed to)
|
||||
* INFO (wire output)
|
||||
|
@ -38,13 +49,15 @@ public class ConnectionConsoleWindow extends JFrame implements PeerListener{
|
|||
* TRACE (start/end method)
|
||||
*/
|
||||
|
||||
public ConnectionConsoleWindow() {
|
||||
public ConnectionConsoleWindow(ToolBar toolBar) {
|
||||
final ConnectionConsoleWindow thisConsole = this;
|
||||
this.toolBar = toolBar;
|
||||
|
||||
java.net.URL url = ClassLoader.getSystemResource("ethereum-icon.png");
|
||||
Toolkit kit = Toolkit.getDefaultToolkit();
|
||||
Image img = kit.createImage(url);
|
||||
this.setIconImage(img);
|
||||
addCloseAction();
|
||||
|
||||
JPanel cp = new JPanel(new BorderLayout());
|
||||
|
||||
|
@ -68,11 +81,7 @@ public class ConnectionConsoleWindow extends JFrame implements PeerListener{
|
|||
pack();
|
||||
setLocation(775, 390);
|
||||
|
||||
this.addComponentListener(new ComponentAdapter() {
|
||||
|
||||
@Override
|
||||
public void componentShown(ComponentEvent e) {
|
||||
Thread t = new Thread() {
|
||||
Thread t = new Thread() {
|
||||
public void run() {
|
||||
|
||||
// Peer Server Zero: peer discovery
|
||||
|
@ -91,18 +100,20 @@ public class ConnectionConsoleWindow extends JFrame implements PeerListener{
|
|||
// new ClientPeer(thisConsole).connect("54.204.10.41", 30303);
|
||||
|
||||
// RomanJ
|
||||
new ClientPeer(thisConsole).connect("54.211.14.10", 40404);
|
||||
|
||||
// new ClientPeer(thisConsole).connect("54.211.14.10", 40404);
|
||||
|
||||
new ClientPeer(thisConsole).connect(SystemProperties.CONFIG.activePeerIP(),
|
||||
SystemProperties.CONFIG.activePeerPort());
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
t.start();
|
||||
}
|
||||
});
|
||||
};
|
||||
t.start();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void console(final String output) {
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
|
@ -153,13 +164,24 @@ public class ConnectionConsoleWindow extends JFrame implements PeerListener{
|
|||
}
|
||||
|
||||
|
||||
public void addCloseAction(){
|
||||
this.addWindowListener( new WindowAdapter()
|
||||
{
|
||||
public void windowClosing(WindowEvent e)
|
||||
{
|
||||
toolBar.logToggle.setSelected(false);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
// Start all Swing applications on the EDT.
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
new ConnectionConsoleWindow().setVisible(true);
|
||||
new ConnectionConsoleWindow(null).setVisible(true);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
@ -3,15 +3,12 @@ package org.ethereum.gui;
|
|||
import org.ethereum.manager.MainData;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.util.Timer;
|
||||
import java.util.TimerTask;
|
||||
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTable;
|
||||
import javax.swing.ListSelectionModel;
|
||||
import javax.swing.SwingConstants;
|
||||
import javax.swing.*;
|
||||
import javax.swing.table.DefaultTableCellRenderer;
|
||||
import javax.swing.table.TableCellRenderer;
|
||||
|
||||
|
@ -30,9 +27,13 @@ public class PeersTableWindow extends JFrame{
|
|||
private JScrollPane scrollPane;
|
||||
private Timer updater = new Timer();
|
||||
|
||||
private ToolBar toolBar;
|
||||
|
||||
// Constructor of main frame
|
||||
public PeersTableWindow() {
|
||||
public PeersTableWindow(ToolBar toolBar) {
|
||||
|
||||
this.toolBar = toolBar;
|
||||
addCloseAction();
|
||||
|
||||
// Set the frame characteristics
|
||||
setTitle("Ethereum Peers");
|
||||
|
@ -96,9 +97,21 @@ public class PeersTableWindow extends JFrame{
|
|||
MainData.instance.startPeerDiscovery();
|
||||
}
|
||||
|
||||
public void addCloseAction(){
|
||||
this.addWindowListener( new WindowAdapter()
|
||||
{
|
||||
public void windowClosing(WindowEvent e)
|
||||
{
|
||||
toolBar.peersToggle.setSelected(false);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public static void main(String args[]) {
|
||||
|
||||
PeersTableWindow mainFrame = new PeersTableWindow();
|
||||
PeersTableWindow mainFrame = new PeersTableWindow(null);
|
||||
mainFrame.setVisible(true);
|
||||
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
}
|
||||
|
|
|
@ -6,10 +6,7 @@ import org.fife.ui.rtextarea.RTextScrollPane;
|
|||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.InputEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.*;
|
||||
import java.io.*;
|
||||
import java.util.Scanner;
|
||||
import java.util.regex.Matcher;
|
||||
|
@ -75,8 +72,12 @@ public class SerpentEditor extends JFrame {
|
|||
final JPanel contentPane;
|
||||
JFileChooser fileChooser = null;
|
||||
|
||||
public SerpentEditor() {
|
||||
ToolBar toolBar = null;
|
||||
|
||||
public SerpentEditor(ToolBar toolBar) {
|
||||
|
||||
this.toolBar = toolBar;
|
||||
addCloseAction();
|
||||
contentPane = new JPanel(new BorderLayout());
|
||||
final JFrame mainWindow = this;
|
||||
|
||||
|
@ -329,15 +330,13 @@ public class SerpentEditor extends JFrame {
|
|||
public void actionPerformed(ActionEvent e) {
|
||||
|
||||
File file = null;
|
||||
if (fileChooser == null) file = callFileChooser();
|
||||
if (fileChooser == null || fileChooser.getSelectedFile() == null) {
|
||||
file = callFileChooser();
|
||||
if (fileChooser.getSelectedFile() == null)
|
||||
return;
|
||||
}
|
||||
else{
|
||||
|
||||
if (fileChooser.getSelectedFile() == null){
|
||||
file = callFileChooser();
|
||||
}else{
|
||||
|
||||
file = fileChooser.getSelectedFile();
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
|
@ -492,11 +491,23 @@ public class SerpentEditor extends JFrame {
|
|||
return file;
|
||||
}
|
||||
|
||||
public void addCloseAction(){
|
||||
this.addWindowListener( new WindowAdapter()
|
||||
{
|
||||
public void windowClosing(WindowEvent e)
|
||||
{
|
||||
toolBar.editorToggle.setSelected(false);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
// Start all Swing applications on the EDT.
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
new SerpentEditor().setVisible(true);
|
||||
new SerpentEditor(null).setVisible(true);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import org.slf4j.Logger;
|
|||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.tools.Tool;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.event.ItemEvent;
|
||||
|
@ -29,6 +30,12 @@ public class ToolBar extends JFrame {
|
|||
WalletWindow walletWindow = null;
|
||||
SerpentEditor serpentEditor = null;
|
||||
|
||||
JToggleButton editorToggle;
|
||||
JToggleButton logToggle;
|
||||
JToggleButton peersToggle;
|
||||
JToggleButton chainToggle;
|
||||
JToggleButton walletToggle;
|
||||
|
||||
|
||||
public ToolBar() throws HeadlessException {
|
||||
|
||||
|
@ -82,7 +89,7 @@ public class ToolBar extends JFrame {
|
|||
ImageIcon image_5 = new ImageIcon(imageURL_5);
|
||||
|
||||
|
||||
JToggleButton editorToggle = new JToggleButton("");
|
||||
editorToggle = new JToggleButton("");
|
||||
editorToggle.setIcon(image_1);
|
||||
editorToggle.setContentAreaFilled(true);
|
||||
editorToggle.setToolTipText("Serpent Editor");
|
||||
|
@ -97,7 +104,7 @@ public class ToolBar extends JFrame {
|
|||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
if (serpentEditor == null)
|
||||
serpentEditor = new SerpentEditor();
|
||||
serpentEditor = new SerpentEditor(ToolBar.this);
|
||||
serpentEditor.setVisible(true);
|
||||
}
|
||||
});
|
||||
|
@ -107,7 +114,7 @@ public class ToolBar extends JFrame {
|
|||
}
|
||||
});
|
||||
|
||||
JToggleButton logToggle = new JToggleButton();
|
||||
logToggle = new JToggleButton();
|
||||
logToggle.setIcon(image_2);
|
||||
logToggle.setToolTipText("Log Console");
|
||||
logToggle.setContentAreaFilled(true);
|
||||
|
@ -123,7 +130,7 @@ public class ToolBar extends JFrame {
|
|||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
if (connectionConsoleWindow == null)
|
||||
connectionConsoleWindow = new ConnectionConsoleWindow();
|
||||
connectionConsoleWindow = new ConnectionConsoleWindow(ToolBar.this);
|
||||
connectionConsoleWindow.setVisible(true);
|
||||
}
|
||||
});
|
||||
|
@ -133,7 +140,7 @@ public class ToolBar extends JFrame {
|
|||
}
|
||||
});
|
||||
|
||||
JToggleButton peersToggle = new JToggleButton();
|
||||
peersToggle = new JToggleButton();
|
||||
peersToggle.setIcon(image_3);
|
||||
peersToggle.setToolTipText("Peers");
|
||||
peersToggle.setContentAreaFilled(true);
|
||||
|
@ -148,7 +155,7 @@ public class ToolBar extends JFrame {
|
|||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
if (mainFrame == null)
|
||||
mainFrame = new PeersTableWindow();
|
||||
mainFrame = new PeersTableWindow(ToolBar.this);
|
||||
mainFrame.setVisible( true );
|
||||
}
|
||||
});
|
||||
|
@ -158,7 +165,7 @@ public class ToolBar extends JFrame {
|
|||
}
|
||||
});
|
||||
|
||||
JToggleButton chainToggle = new JToggleButton();
|
||||
chainToggle = new JToggleButton();
|
||||
chainToggle.setIcon(image_4);
|
||||
chainToggle.setToolTipText("Block Chain");
|
||||
chainToggle.setContentAreaFilled(true);
|
||||
|
@ -174,7 +181,7 @@ public class ToolBar extends JFrame {
|
|||
public void run() {
|
||||
|
||||
if (blockChainWindow == null)
|
||||
blockChainWindow = new BlockChainTable();
|
||||
blockChainWindow = new BlockChainTable(ToolBar.this);
|
||||
blockChainWindow.setVisible(true);
|
||||
}
|
||||
});
|
||||
|
@ -184,7 +191,7 @@ public class ToolBar extends JFrame {
|
|||
}
|
||||
});
|
||||
|
||||
JToggleButton walletToggle = new JToggleButton();
|
||||
walletToggle = new JToggleButton();
|
||||
walletToggle.setIcon(image_5);
|
||||
walletToggle.setToolTipText("Wallet");
|
||||
walletToggle.setContentAreaFilled(true);
|
||||
|
@ -200,7 +207,7 @@ public class ToolBar extends JFrame {
|
|||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
if (walletWindow == null)
|
||||
walletWindow = new WalletWindow();
|
||||
walletWindow = new WalletWindow(ToolBar.this);
|
||||
walletWindow.setVisible(true);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -53,7 +53,7 @@ public class WalletSumPanel extends JPanel{
|
|||
payOutLabel.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
System.out.println("boom");
|
||||
JOptionPane.showMessageDialog(null, "Under construction");
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -5,10 +5,13 @@ import org.ethereum.core.Wallet;
|
|||
import org.ethereum.manager.MainData;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.tools.Tool;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.awt.event.WindowAdapter;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.net.URL;
|
||||
|
||||
/**
|
||||
|
@ -19,8 +22,12 @@ import java.net.URL;
|
|||
public class WalletWindow extends JFrame implements Wallet.WalletListener{
|
||||
|
||||
WalletWindow walletWindow;
|
||||
ToolBar toolBar;
|
||||
|
||||
public WalletWindow() {
|
||||
public WalletWindow(ToolBar toolBar) {
|
||||
|
||||
addCloseAction();
|
||||
this.toolBar = toolBar;
|
||||
|
||||
walletWindow = this;
|
||||
java.net.URL url = ClassLoader.getSystemResource("ethereum-icon.png");
|
||||
|
@ -92,6 +99,18 @@ public class WalletWindow extends JFrame implements Wallet.WalletListener{
|
|||
contentPane.repaint();
|
||||
}
|
||||
|
||||
public void addCloseAction(){
|
||||
this.addWindowListener( new WindowAdapter()
|
||||
{
|
||||
public void windowClosing(WindowEvent e)
|
||||
{
|
||||
toolBar.walletToggle.setSelected(false);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void valueChanged() {
|
||||
loadWallet();
|
||||
|
|
|
@ -8,4 +8,6 @@ log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
|
|||
log4j.appender.stdout.layout.ConversionPattern= %d{HH:mm:ss} [%c{1}] %m%n
|
||||
|
||||
# filter noisy classes
|
||||
log4j.logger.org.ethereum.net.peerdiscovery = WARN
|
||||
log4j.logger.org.ethereum.net.peerdiscovery = WARN
|
||||
log4j.logger.java.nio = WARN
|
||||
log4j.logger.io.netty = WARN
|
|
@ -10,6 +10,14 @@ server.acceptConnections = false
|
|||
peer.discovery.ip = 54.201.28.117
|
||||
peer.discovery.port = 30303
|
||||
|
||||
|
||||
# active peer ip and port
|
||||
# that is the peer through
|
||||
# we get the chain: [54.201.28.117] port: [30303]
|
||||
peer.active.ip = 151.64.223.120
|
||||
peer.active.port = 30304
|
||||
|
||||
|
||||
# specify if the mechanism
|
||||
# to discover more and more
|
||||
# peers and check the already
|
||||
|
|
Loading…
Reference in New Issue