private void initGUI() {
		try {
			String iniPath = SBStringUtils.getAppPath("ini");
			BoxLayout thisLayout = new BoxLayout(this.getContentPane(), javax.swing.BoxLayout.Y_AXIS);
			this.getContentPane().setLayout(thisLayout);
			{
				aboutTabPanel = new JTabbedPane();
				this.getContentPane().add(aboutTabPanel);				
				{
					aboutPanel = new JPanel();
					BoxLayout aboutPanelLayout = new BoxLayout(aboutPanel, javax.swing.BoxLayout.Y_AXIS);
					aboutPanel.setLayout(aboutPanelLayout);
					aboutTabPanel.addTab("About", null, aboutPanel, null);
					{
						splashPanel = new JPanel();
						FlowLayout splashPanelLayout = new FlowLayout();
						splashPanel.setLayout(splashPanelLayout);
						aboutPanel.add(splashPanel);
												
						java.net.URL imgURL = StrangeBrew.class.getResource("splash.gif");						
						JLabel splashLabel = new JLabel(new ImageIcon(imgURL));						
						splashPanel.add(splashLabel);
						
					}
					{
						versionLabel = new JLabel();
						aboutPanel.add(versionLabel);
						
						versionLabel.setText("<html>Version: " + SBVersion.VERSION + "<br />" +
								"Build Date: " + SBVersion.BUILDDATE + "<br />" +
								"Build: " + SBVersion.BUILDNUMBER + "</html>");
								
							
					}
					{
						emailLabel = new JLabel();
						aboutPanel.add(emailLabel);
						emailLabel.setText("Contact: doug.edey@gmail.com");
					}
					{
						copyrightLabel = new JLabel();
						aboutPanel.add(copyrightLabel);
						copyrightLabel.setText("(c) 2005-2006 Drew Avis");
					}
				}
				{
					readmePanel = new JPanel();
					BorderLayout readmePanelLayout = new BorderLayout();
					readmePanel.setLayout(readmePanelLayout);
					aboutTabPanel.addTab("Readme", null, readmePanel, null);
					{
						jScrollPane1 = new JScrollPane();
						jScrollPane1.setAutoscrolls(true);
						readmePanel.add(jScrollPane1, BorderLayout.CENTER);						
						jScrollPane1.setPreferredSize(new java.awt.Dimension(3, 19));
						{
							readmeTextArea = new JTextArea();
							jScrollPane1.setViewportView(readmeTextArea);
							readmeTextArea.setText("jTextArea1");							
							readmeTextArea.setWrapStyleWord(true);
							try {
								
								File readme = new File(iniPath + "readme");
								FileReader in = new FileReader(readme);
								BufferedReader inb = new BufferedReader(in);
								String c;
								String s="";
								// TODO: what if there's no readme file?
						        while ((c = inb.readLine()) != null){
						        	s = s + c + "\n";
						        }					           
						        readmeTextArea.setText(s);
						        readmeTextArea.setLineWrap(true);
	
						        in.close();
							} catch (FileNotFoundException e) {
								
							}
						}
					}
				}
				{
					licensePanel = new JPanel();
					BorderLayout licensePanelLayout = new BorderLayout();
					licensePanel.setLayout(licensePanelLayout);
					aboutTabPanel.addTab("License", null, licensePanel, null);
					{
						jScrollPane2 = new JScrollPane();
						licensePanel.add(jScrollPane2, BorderLayout.CENTER);
												{
							licenseTextArea = new JTextArea();
							jScrollPane2.setViewportView(licenseTextArea);
							licenseTextArea.setText("jTextArea1");
							File readme = new File(iniPath + "gpl.txt");
							FileReader in = new FileReader(readme);
							BufferedReader inb = new BufferedReader(in);
							String c;
							String s="";
							// TODO: what if there's no readme file?
					        while ((c = inb.readLine()) != null){
					        	s = s + c + "\n";
					        }
					        licenseTextArea.setText(s);
					        licenseTextArea.setLineWrap(true);
					        
					        in.close();
						}
					}
				}
			}
			{
				buttonPanel = new JPanel();
				FlowLayout jPanel1Layout = new FlowLayout();
				jPanel1Layout.setAlignment(FlowLayout.RIGHT);
				buttonPanel.setLayout(jPanel1Layout);
				this.getContentPane().add(buttonPanel);
				buttonPanel.add(getUpdateButton());
				buttonPanel.add(getOkButton());				
				
			}
			this.setSize(518, 372);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}