
org.apache.geronimo.samples.daytrader.client.TradeClientGUIProperties Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of daytrader-streamer Show documentation
Show all versions of daytrader-streamer Show documentation
Streamer Application for Day Trader
The newest version!
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.geronimo.samples.daytrader.client;
import java.awt.event.*;
import javax.swing.*;
public class TradeClientGUIProperties extends JDialog implements ActionListener, WindowListener {
private JTextField updateInterval, maxPerSecond;
private JButton okButton;
private TradeClient client;
public TradeClientGUIProperties(TradeClient client, TradeClientGUI gui) {
super(gui, true);
this.client = client;
JPanel buttonPanel = new JPanel();
okButton = new JButton("OK");
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
buttonPanel.add(okButton);
okButton.addActionListener(this);
JPanel mainPanel = new JPanel();
mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS));
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
JLabel label1 = new JLabel("Update Interval:");
updateInterval = new JTextField(String.valueOf(client.getUpdateInterval()), 3);
panel.add(label1);
panel.add(updateInterval);
mainPanel.add(panel);
mainPanel.add(buttonPanel);
getContentPane().add(mainPanel, java.awt.BorderLayout.CENTER);
setDefaultCloseOperation(HIDE_ON_CLOSE);
addWindowListener(this);
setTitle("Trade Streamer Client Configuration Properties");
}
private void updateUpdateInterval() {
String udi = updateInterval.getText().trim();
int udii = TradeClient.DEFAULT_UPDATE_INTERVAL;
try {
udii = Integer.parseInt(udi);
}
catch (NumberFormatException nfe) {
updateInterval.setText(String.valueOf(udii));
}
client.setUpdateInterval(udii);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == okButton) {
updateUpdateInterval();
setVisible(false);
}
}
public void windowClosing(WindowEvent e) {
updateUpdateInterval();
}
public void windowOpened(WindowEvent e) {}
public void windowClosed(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowActivated(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy