private void addRightPanel() {
JPanel rightPanel = new JPanel();
rightPanel.setLayout(new GridLayout(2,1));
JPanel upperPanel = new JPanel();
upperPanel.setLayout(new BorderLayout());
JLabel upperLabel = new JLabel("Contents of Tabbed Pane", SwingConstants.CENTER);
Vector tabCont = new Vector();
for ( int i = 0; i < 20; i++ ) {
tabCont.add("" + (i+1) + ": ");
}
JList contList = new JList( tabCont );
upperPanel.add(upperLabel, BorderLayout.NORTH);
upperPanel.add(new JScrollPane(contList), BorderLayout.CENTER);
JPanel lowerPanel = new JPanel();
lowerPanel.setLayout(new BorderLayout());
JLabel lowerLabel = new JLabel("Messages from Server", SwingConstants.CENTER);
JTextArea messageArea = new JTextArea(10, 20);
messageArea.setEditable(false);
lowerPanel.add(lowerLabel, BorderLayout.NORTH);
lowerPanel.add(new JScrollPane(messageArea), BorderLayout.CENTER);
rightPanel.add(upperPanel);
rightPanel.add(lowerPanel);
container.add( rightPanel, BorderLayout.EAST );
}
private void addBottomPanel() {
JPanel bottomPanel = new JPanel();
bottomPanel.setLayout( new BorderLayout() );
JPanel selectionPanel = new JPanel();
selectionPanel.setLayout( new BorderLayout() );
displayPanel = new JPanel();
displayPanel.setLayout( new BorderLayout() );
bottomPanel.add( selectionPanel, BorderLayout.WEST );
bottomPanel.add( displayPanel, BorderLayout.CENTER );
//bottomPanel.add( tabbedPane, BorderLayout.CENTER );
JTabbedPane tabbedPane = new JTabbedPane();
//bottomPanel.add( tabbedPane, BorderLayout.CENTER );
// JLabel label1 = new JLabel("panel 1", SwingConstants.CENTER);
JPanel panel1 = new JPanel();
JPanel panel4 = new JPanel();
// panel1.add( label1 );
panel1.setLayout( new GridLayout(1,8) );
panel1.add( new JButton( "Symbol" ) );
panel1.add( new JButton( "Last Trade" ) );
panel1.add( new JButton( "Trade Time" ) );
panel1.add( new JButton( "Change" ) );
panel1.add( new JButton( "Prev Close" ) );
panel1.add( new JButton( "Open" ) );
panel1.add( new JButton( "1y Target Est" ) );
panel1.add( new JButton( "Day's Range" ) );
// tabbedPane.addTab( "Tab1", panel1 );
panel4.setLayout( new BorderLayout() );
panel4.add(panel1,BorderLayout.NORTH);
panel4.add(table,BorderLayout.CENTER);
tabbedPane.addTab( "Tab1", panel4 );
// JLabel label2 = new JLabel("panel 2", SwingConstants.CENTER);
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
// panel2.add( label2 );
panel2.setLayout( new GridLayout(1,8) );
// panel2.setLayout( new FlowLayout() );
panel2.add( new JButton( "Symbol" ) );
panel2.add( new JButton( "52WK_range" ) );
panel2.add( new JButton( "Volume" ) );
panel2.add( new JButton( "Avg Vol" ) );
panel2.add( new JButton( "Market Cap" ) );
panel2.add( new JButton( "P/E (ttm)" ) );
panel2.add( new JButton( "EPS (ttm)" ) );
panel2.add( new JButton( "Div & Yield" ) );
//displayPanel.setLayout( new GridLayout(2,1) );
// displayPanel.add( table, BorderLayout.CENTER );
// tabbedPane.addTab( "Tab2", panel2 );
// panel2.setLayout( new BorderLayout() );
// panel2.add(table,BorderLayout.CENTER);
panel3.setLayout( new BorderLayout() );
panel3.add(panel2,BorderLayout.NORTH);
panel3.add(table2,BorderLayout.CENTER);
tabbedPane.addTab( "Tab2", panel3 );
// displayPanel.add(panel2);
//displayPanel.add( table);
container.add( tabbedPane, BorderLayout.CENTER );
//tabbedPane.addActionListener();
//int index =tabbedPane.getSelectedIndex();
// if (tabbedPane.getSelectedIndex() == tabbedPane.indexOfTab(Tab1))
// System.out.println(1);
// if (tabbedPane.getSelectedIndex() == tabbedPane.indexOfTab(Tab2))
// System.out.println(2);
JLabel selectionLabel =
new JLabel( " Select Stocks" );
selectionPanel.add( selectionLabel, BorderLayout.NORTH );
//displayPanel.add( titlePanel, BorderLayout.NORTH );
displayPanel.add( tabbedPane, BorderLayout.NORTH );
//displayPanel.add(panel2, BorderLayout.NORTH );
//displayPanel.add(tabbedPane.BorderLayout.NORTH);
//bottomPanel.add( tabbedPane, BorderLayout.NORTH );
stockList = new JList( stockName );
selectionPanel.add( new JScrollPane( stockList ),
BorderLayout.CENTER );
JButton getStockButton = new JButton( "Get Stocks" );
JButton delStockButton = new JButton( "Delete Stocks" );
JButton submitButton = new JButton( "Submit" );
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout( new GridLayout(1,3) );
buttonPanel.add( getStockButton );
buttonPanel.add( delStockButton );
buttonPanel.add( submitButton );
selectionPanel.add( buttonPanel, BorderLayout.SOUTH );
getStockButton.addActionListener(
new ActionListener() {
public void actionPerformed( ActionEvent event ) {
getStocks();
}
}
); // end call to addActionListener
delStockButton.addActionListener(
new ActionListener() {
public void actionPerformed( ActionEvent event ) {
updateStocks();
}
}
);
// tabbedPane.add(table2,BorderLayout.CENTER);
//displayPanel.add( table, BorderLayout.CENTER );
container.add( bottomPanel, BorderLayout.SOUTH );
}
public void getStocks() {
// retrieve selected indices
int selectedIndices[] = stockList.getSelectedIndices();
for ( int i = 0; i < selectedIndices.length; i++ ) {
String[] currentRow = {
stockSymbol[ selectedIndices[ i ] ],
stockData[ selectedIndices[ i ] ][ 0 ],
stockData[ selectedIndices[ i ] ][ 1 ],
stockData[ selectedIndices[ i ] ][ 2 ],
stockData[ selectedIndices[ i ] ][ 3 ],
stockData[ selectedIndices[ i ] ][ 4 ],
stockData[ selectedIndices[ i ] ][ 5 ],
stockData[ selectedIndices[ i ] ][ 6 ],
stockData[ selectedIndices[ i ] ][ 7 ],
stockData[ selectedIndices[ i ] ][ 8 ],
stockData[ selectedIndices[ i ] ][ 9 ],
stockData[ selectedIndices[ i ] ][ 10 ],
stockData[ selectedIndices[ i ] ][ 11 ],
stockData[ selectedIndices[ i ] ][ 12 ],
stockData[ selectedIndices[ i ] ][ 13 ]
};
if ( !selectedSymbol.contains(
stockSymbol[ selectedIndices[ i ] ]) ) {
stockInfo.addRow( currentRow );
selectedSymbol.add( stockSymbol[ selectedIndices[ i ] ] );
rowsData.add( currentRow );
}
}
} // end method getStocks
JPanel rightPanel = new JPanel();
rightPanel.setLayout(new GridLayout(2,1));
JPanel upperPanel = new JPanel();
upperPanel.setLayout(new BorderLayout());
JLabel upperLabel = new JLabel("Contents of Tabbed Pane", SwingConstants.CENTER);
Vector tabCont = new Vector();
for ( int i = 0; i < 20; i++ ) {
tabCont.add("" + (i+1) + ": ");
}
JList contList = new JList( tabCont );
upperPanel.add(upperLabel, BorderLayout.NORTH);
upperPanel.add(new JScrollPane(contList), BorderLayout.CENTER);
JPanel lowerPanel = new JPanel();
lowerPanel.setLayout(new BorderLayout());
JLabel lowerLabel = new JLabel("Messages from Server", SwingConstants.CENTER);
JTextArea messageArea = new JTextArea(10, 20);
messageArea.setEditable(false);
lowerPanel.add(lowerLabel, BorderLayout.NORTH);
lowerPanel.add(new JScrollPane(messageArea), BorderLayout.CENTER);
rightPanel.add(upperPanel);
rightPanel.add(lowerPanel);
container.add( rightPanel, BorderLayout.EAST );
}
private void addBottomPanel() {
JPanel bottomPanel = new JPanel();
bottomPanel.setLayout( new BorderLayout() );
JPanel selectionPanel = new JPanel();
selectionPanel.setLayout( new BorderLayout() );
displayPanel = new JPanel();
displayPanel.setLayout( new BorderLayout() );
bottomPanel.add( selectionPanel, BorderLayout.WEST );
bottomPanel.add( displayPanel, BorderLayout.CENTER );
//bottomPanel.add( tabbedPane, BorderLayout.CENTER );
JTabbedPane tabbedPane = new JTabbedPane();
//bottomPanel.add( tabbedPane, BorderLayout.CENTER );
// JLabel label1 = new JLabel("panel 1", SwingConstants.CENTER);
JPanel panel1 = new JPanel();
JPanel panel4 = new JPanel();
// panel1.add( label1 );
panel1.setLayout( new GridLayout(1,8) );
panel1.add( new JButton( "Symbol" ) );
panel1.add( new JButton( "Last Trade" ) );
panel1.add( new JButton( "Trade Time" ) );
panel1.add( new JButton( "Change" ) );
panel1.add( new JButton( "Prev Close" ) );
panel1.add( new JButton( "Open" ) );
panel1.add( new JButton( "1y Target Est" ) );
panel1.add( new JButton( "Day's Range" ) );
// tabbedPane.addTab( "Tab1", panel1 );
panel4.setLayout( new BorderLayout() );
panel4.add(panel1,BorderLayout.NORTH);
panel4.add(table,BorderLayout.CENTER);
tabbedPane.addTab( "Tab1", panel4 );
// JLabel label2 = new JLabel("panel 2", SwingConstants.CENTER);
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
// panel2.add( label2 );
panel2.setLayout( new GridLayout(1,8) );
// panel2.setLayout( new FlowLayout() );
panel2.add( new JButton( "Symbol" ) );
panel2.add( new JButton( "52WK_range" ) );
panel2.add( new JButton( "Volume" ) );
panel2.add( new JButton( "Avg Vol" ) );
panel2.add( new JButton( "Market Cap" ) );
panel2.add( new JButton( "P/E (ttm)" ) );
panel2.add( new JButton( "EPS (ttm)" ) );
panel2.add( new JButton( "Div & Yield" ) );
//displayPanel.setLayout( new GridLayout(2,1) );
// displayPanel.add( table, BorderLayout.CENTER );
// tabbedPane.addTab( "Tab2", panel2 );
// panel2.setLayout( new BorderLayout() );
// panel2.add(table,BorderLayout.CENTER);
panel3.setLayout( new BorderLayout() );
panel3.add(panel2,BorderLayout.NORTH);
panel3.add(table2,BorderLayout.CENTER);
tabbedPane.addTab( "Tab2", panel3 );
// displayPanel.add(panel2);
//displayPanel.add( table);
container.add( tabbedPane, BorderLayout.CENTER );
//tabbedPane.addActionListener();
//int index =tabbedPane.getSelectedIndex();
// if (tabbedPane.getSelectedIndex() == tabbedPane.indexOfTab(Tab1))
// System.out.println(1);
// if (tabbedPane.getSelectedIndex() == tabbedPane.indexOfTab(Tab2))
// System.out.println(2);
JLabel selectionLabel =
new JLabel( " Select Stocks" );
selectionPanel.add( selectionLabel, BorderLayout.NORTH );
//displayPanel.add( titlePanel, BorderLayout.NORTH );
displayPanel.add( tabbedPane, BorderLayout.NORTH );
//displayPanel.add(panel2, BorderLayout.NORTH );
//displayPanel.add(tabbedPane.BorderLayout.NORTH);
//bottomPanel.add( tabbedPane, BorderLayout.NORTH );
stockList = new JList( stockName );
selectionPanel.add( new JScrollPane( stockList ),
BorderLayout.CENTER );
JButton getStockButton = new JButton( "Get Stocks" );
JButton delStockButton = new JButton( "Delete Stocks" );
JButton submitButton = new JButton( "Submit" );
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout( new GridLayout(1,3) );
buttonPanel.add( getStockButton );
buttonPanel.add( delStockButton );
buttonPanel.add( submitButton );
selectionPanel.add( buttonPanel, BorderLayout.SOUTH );
getStockButton.addActionListener(
new ActionListener() {
public void actionPerformed( ActionEvent event ) {
getStocks();
}
}
); // end call to addActionListener
delStockButton.addActionListener(
new ActionListener() {
public void actionPerformed( ActionEvent event ) {
updateStocks();
}
}
);
// tabbedPane.add(table2,BorderLayout.CENTER);
//displayPanel.add( table, BorderLayout.CENTER );
container.add( bottomPanel, BorderLayout.SOUTH );
}
public void getStocks() {
// retrieve selected indices
int selectedIndices[] = stockList.getSelectedIndices();
for ( int i = 0; i < selectedIndices.length; i++ ) {
String[] currentRow = {
stockSymbol[ selectedIndices[ i ] ],
stockData[ selectedIndices[ i ] ][ 0 ],
stockData[ selectedIndices[ i ] ][ 1 ],
stockData[ selectedIndices[ i ] ][ 2 ],
stockData[ selectedIndices[ i ] ][ 3 ],
stockData[ selectedIndices[ i ] ][ 4 ],
stockData[ selectedIndices[ i ] ][ 5 ],
stockData[ selectedIndices[ i ] ][ 6 ],
stockData[ selectedIndices[ i ] ][ 7 ],
stockData[ selectedIndices[ i ] ][ 8 ],
stockData[ selectedIndices[ i ] ][ 9 ],
stockData[ selectedIndices[ i ] ][ 10 ],
stockData[ selectedIndices[ i ] ][ 11 ],
stockData[ selectedIndices[ i ] ][ 12 ],
stockData[ selectedIndices[ i ] ][ 13 ]
};
if ( !selectedSymbol.contains(
stockSymbol[ selectedIndices[ i ] ]) ) {
stockInfo.addRow( currentRow );
selectedSymbol.add( stockSymbol[ selectedIndices[ i ] ] );
rowsData.add( currentRow );
}
}
} // end method getStocks
// retrieve selected indices
int selectedIndices[] = stockList.getSelectedIndices();
for ( int i = 0; i < selectedIndices.length; i++ ) {
String[] currentRow = {
stockSymbol[ selectedIndices[ i ] ],
stockData[ selectedIndices[ i ] ][ 0 ],
stockData[ selectedIndices[ i ] ][ 1 ],
stockData[ selectedIndices[ i ] ][ 2 ],
stockData[ selectedIndices[ i ] ][ 3 ],
stockData[ selectedIndices[ i ] ][ 4 ],
stockData[ selectedIndices[ i ] ][ 5 ],
stockData[ selectedIndices[ i ] ][ 6 ],
stockData[ selectedIndices[ i ] ][ 7 ],
stockData[ selectedIndices[ i ] ][ 8 ],
stockData[ selectedIndices[ i ] ][ 9 ],
stockData[ selectedIndices[ i ] ][ 10 ],
stockData[ selectedIndices[ i ] ][ 11 ],
stockData[ selectedIndices[ i ] ][ 12 ],
stockData[ selectedIndices[ i ] ][ 13 ]
};
if ( !selectedSymbol.contains(
stockSymbol[ selectedIndices[ i ] ]) ) {
stockInfo.addRow( currentRow );
selectedSymbol.add( stockSymbol[ selectedIndices[ i ] ] );
rowsData.add( currentRow );
}
}
} // end method getStocks
public void updateStocks() {
// retrieve selected indices
int selectedIndices[] = table.getSelectedRows();
int m = selectedIndices.length;
for ( int i = m-1; i > -1; i-- ) {
selectedSymbol.removeElementAt( selectedIndices[ i ] );
rowsData.removeElementAt( selectedIndices[ i ] );
stockInfo.removeRow( selectedIndices[ i ] );
}
} // end method updateStocks
// execute StockServiceClient
public static void main( String args[] ) {
StockServiceClient client = null;
// if no sever IP address or host name specified,
// use "localhost"; otherwise use specified host
if ( args.length == 0 )
client = new StockServiceClient( "localhost" );
else
client = new StockServiceClient( args[ 0 ] );
// configure and display application window
client.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
// client.pack();
// client.setResizable( true );
// client.setVisible( true );
}
}