1 6 7 package com.memoire.vainstall.gui; 8 9 import java.awt.*; 10 import javax.swing.*; 11 import javax.swing.border.*; 12 import com.memoire.vainstall.VAGlobals; 13 import com.memoire.vainstall.VAStats; 14 import com.memoire.vainstall.VAEndStep; 15 16 20 21 public class VAEndPanel 22 extends VAPanel 23 implements VAEndStep 24 { 25 JTextArea taReport_; 26 27 public VAEndPanel() 28 { 29 super(); 30 31 setLayout(new BoxLayout(this, BoxLayout.X_AXIS)); 32 33 JPanel pnMain=new JPanel(); 34 pnMain.setBorder(new CompoundBorder(new EtchedBorder(), 35 new EmptyBorder(new Insets(5, 5, 5, 5)))); 36 pnMain.setLayout(new BorderLayout()); 37 38 JLabel lbTitle=new JLabel(VAGlobals.i18n("UI_End")); 39 lbTitle.setFont(lbTitle.getFont().deriveFont(Font.BOLD, 20)); 40 lbTitle.setOpaque(true); 41 lbTitle.setBorder(new EmptyBorder(new Insets(5, 0, 5, 0))); 42 lbTitle.setBackground(pnMain.getBackground().darker()); 43 lbTitle.setForeground(Color.white); 44 45 taReport_=new JTextArea(); 46 taReport_.setEditable(false); 47 taReport_.setBackground(pnMain.getBackground()); 48 JScrollPane spReport=new JScrollPane(taReport_); 49 50 JPanel pnBas=new JPanel(); 51 pnBas.setLayout(new BorderLayout()); 52 JPanel pnText=new JPanel(); 53 pnText.setLayout(new BoxLayout(pnText, BoxLayout.Y_AXIS)); 54 JLabel lb=new JLabel(VAGlobals.i18n("UI_SoftwareHas")); 55 Font f=lb.getFont().deriveFont(Font.BOLD, lb.getFont().getSize()+2); 56 lb.setFont(f); 57 pnText.add(lb); 58 switch( VAGlobals.OPERATION ) { 59 case VAGlobals.INSTALL: { 60 lb=new JLabel(VAGlobals.i18n("UI_SuccessfullyInstalled")); 61 lb.setFont(f); 62 pnText.add(lb); 63 break; 64 } 65 case VAGlobals.UPDATE: { 66 lb=new JLabel(VAGlobals.i18n("UI_SuccessfullyUpdated")); 67 lb.setFont(f); 68 pnText.add(lb); 69 break; 70 } 71 case VAGlobals.UNINSTALL: { 72 lb=new JLabel(VAGlobals.i18n("UI_SuccessfullyUninstalled")); 73 lb.setFont(f); 74 pnText.add(lb); 75 break; 76 } 77 } 78 pnText.add(new JLabel(" ")); 79 pnBas.add(BorderLayout.NORTH, pnText); 80 JLabel lbStatus=new JLabel(VAGlobals.i18n("UI_ClickFinishToExit")); 81 lbStatus.setOpaque(true); 82 lbStatus.setBackground(pnMain.getBackground().brighter()); 83 pnBas.add(BorderLayout.SOUTH, lbStatus); 84 85 pnMain.add(BorderLayout.NORTH, lbTitle); 86 pnMain.add(BorderLayout.CENTER, spReport); 87 pnMain.add(BorderLayout.SOUTH, pnBas); 88 89 JComponent pnImage=VAImagePanel.IMAGE_PANEL; 90 add(pnImage); 91 add(pnMain); 92 } 93 94 public void setStats(VAStats stats) 95 { 96 String text=""; 97 switch( VAGlobals.OPERATION ) { 98 case VAGlobals.INSTALL: { 99 text+=VAGlobals.i18n("UI_InstallationReport")+"\n"; 100 text+="-------------------------------\n\n"; 101 break; 102 } 103 case VAGlobals.UPDATE: { 104 text+=VAGlobals.i18n("UI_UpdateReport")+"\n"; 105 text+="-------------------------------\n\n"; 106 break; 107 } 108 case VAGlobals.UNINSTALL: { 109 text+=VAGlobals.i18n("UI_UninstallationReport")+"\n"; 110 text+="-------------------------------\n\n"; 111 break; 112 } 113 } 114 text+=stats.getSuccessReport(); 115 text+="\n"; 116 text+=stats.getFailureReport(); 117 text+="\n"; 118 text+=stats.getExecutablesReport(); 119 taReport_.setText(text); 120 taReport_.setCaretPosition(0); 121 } 122 } 123 | Popular Tags |