/* * AmazonServices.java * */ package myamazonclient; import java.util.Vector; import java.awt.*; import javax.swing.*; public class AmazonServices extends javax.swing.JFrame { /** Creates new form AmazonServices */ public AmazonServices() { initComponents(); screenNumber =0; showScreen(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents buttonsPanel = new javax.swing.JPanel(); backButton = new javax.swing.JButton(); nextButton = new javax.swing.JButton(); lablePanel = new javax.swing.JPanel(); screenLable = new javax.swing.JLabel(); setTitle("Amazon Web Services Client."); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { exitForm(evt); } }); buttonsPanel.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.RIGHT)); backButton.setText("Back"); backButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { backButtonActionPerformed(evt); } }); buttonsPanel.add(backButton); nextButton.setText("Next"); nextButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { nextButtonActionPerformed(evt); } }); buttonsPanel.add(nextButton); getContentPane().add(buttonsPanel, java.awt.BorderLayout.SOUTH); lablePanel.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT, 20, 10)); screenLable.setFont(new java.awt.Font("Lucida Console", 1, 14)); screenLable.setForeground(new java.awt.Color(0, 102, 255)); screenLable.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); screenLable.setText("Java Book Shelf"); screenLable.setVerticalAlignment(javax.swing.SwingConstants.BOTTOM); lablePanel.add(screenLable); getContentPane().add(lablePanel, java.awt.BorderLayout.NORTH); pack(); }//GEN-END:initComponents private void backButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_backButtonActionPerformed // Add your handling code here: --screenNumber; this.showScreen(); }//GEN-LAST:event_backButtonActionPerformed private void showScreen() { if (screenNumber <= 0 ) { backButton.setEnabled(false); screenNumber = 0; } if (screenNumber >= 2 ){ nextButton.setEnabled(false); screenNumber=2; } myamazonclient.AmazonProxy amp = new AmazonProxy(); switch(screenNumber) { case 0: backButton.setEnabled(false); cp = new CategoryPanel(); if (bdp!= null){ getContentPane().remove(bdp); } getContentPane().add(cp,BorderLayout.CENTER); getContentPane().paintAll(getContentPane().getGraphics()); // bookName=cp.getSelectedBookName(); nextButton.setEnabled(true); break; case 1: backButton.setEnabled(true); bdp = new BooksDetailsPanel(); bdp.showContents(amp.getBookNames(bookName),amp.getImageURL()); reviewItems = bdp.getReviewItems(); bookReviews = amp.getBookReviews(); if(cp != null) { getContentPane().remove(cp); } if (erp != null) { getContentPane().remove(erp); } getContentPane().add(bdp,BorderLayout.CENTER); getContentPane().paintAll(getContentPane().getGraphics()); nextButton.setEnabled(true); break; case 2: if(bdp != null) { getContentPane().remove(bdp); } backButton.setEnabled(true); erp = new EditorialReviewPanel(); erp.showReviews(bookReviews,reviewItems); getContentPane().add(erp); nextButton.setEnabled(false); getContentPane().paintAll(getContentPane().getGraphics()); break; default: break; } } private void nextButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_nextButtonActionPerformed // Add your handling code here: ++screenNumber; this.showScreen(); }//GEN-LAST:event_nextButtonActionPerformed /** Exit the Application */ private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm System.exit(0); }//GEN-LAST:event_exitForm private Dimension getScreenSize() { return Toolkit.getDefaultToolkit().getScreenSize(); } /** * @param args the command line arguments */ public static void main(String args[]) { AmazonServices as = new AmazonServices(); as.setSize(as.getScreenSize().width/2,as.getScreenSize().height/2); //as.pack(); as.show(); } private BooksDetailsPanel bdp; private CategoryPanel cp; private EditorialReviewPanel erp; private int screenNumber; public static String bookName; private String[] bookReviews; private boolean[] reviewItems; // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JLabel screenLable; private javax.swing.JButton backButton; private javax.swing.JPanel lablePanel; private javax.swing.JButton nextButton; private javax.swing.JPanel buttonsPanel; // End of variables declaration//GEN-END:variables }