<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/jcommon-1.0.14.jar</filename>
    </added>
    <added>
      <filename>lib/jfreechart-1.0.11.jar</filename>
    </added>
    <added>
      <filename>lib/log4j.jar</filename>
    </added>
    <added>
      <filename>src/gd/gui/resources/real_mona.jpg</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -21,6 +21,8 @@ dist.dir=dist
 dist.jar=${dist.dir}/GeneticDrawing.jar
 dist.javadoc.dir=${dist.dir}/javadoc
 excludes=
+file.reference.jcommon-1.0.14.jar=lib/jcommon-1.0.14.jar
+file.reference.jfreechart-1.0.11.jar=lib/jfreechart-1.0.11.jar
 file.reference.jgap.jar=lib/jgap.jar
 file.reference.log4j.jar=lib/log4j.jar
 includes=**
@@ -29,7 +31,9 @@ javac.classpath=\
     ${libs.swing-app-framework.classpath}:\
     ${libs.swing-layout.classpath}:\
     ${file.reference.jgap.jar}:\
-    ${file.reference.log4j.jar}
+    ${file.reference.log4j.jar}:\
+    ${file.reference.jcommon-1.0.14.jar}:\
+    ${file.reference.jfreechart-1.0.11.jar}
 # Space-separated list of extra javac options
 javac.compilerargs=
 javac.deprecation=false</diff>
      <filename>nbproject/project.properties</filename>
    </modified>
    <modified>
      <diff>@@ -10,7 +10,9 @@ import org.jgap.gp.GPFitnessFunction;
 import org.jgap.gp.IGPProgram;
 
 /**
- *
+ * Computes the fitness of a program as the Least-Mean-Sqare distance between 
+ * the image it generates and the target image.
+ * 
  * @author lokee
  */
 public class LMSFitnessFunction</diff>
      <filename>src/gd/core/LMSFitnessFunction.java</filename>
    </modified>
    <modified>
      <diff>@@ -9,10 +9,14 @@ import gd.core.DrawingGPProgramRunner;
 import gd.core.DrawingProblem;
 import java.awt.Graphics;
 import java.awt.image.BufferedImage;
+import org.jfree.chart.JFreeChart;
+import org.jfree.data.xy.XYSeries;
+import org.jfree.data.xy.XYSeriesCollection;
 import org.jgap.Configuration;
 import org.jgap.InvalidConfigurationException;
 import org.jgap.event.GeneticEvent;
 import org.jgap.event.GeneticEventListener;
+import org.jgap.event.IEventManager;
 import org.jgap.gp.GPProblem;
 import org.jgap.gp.IGPProgram;
 import org.jgap.gp.impl.GPGenotype;
@@ -34,13 +38,32 @@ public class EvolutionRunnable implements Runnable {
     public void run() {
         Configuration.reset();
         try {
-            final DrawingGPConfiguration conf = new DrawingGPConfiguration(m_view.getTargetImage());
+            final DrawingGPConfiguration conf =
+                    new DrawingGPConfiguration(m_view.getTargetImage());
 
+            IEventManager eventManager = conf.getEventManager();
+            eventManager.addEventListener(GeneticEvent.GPGENOTYPE_EVOLVED_EVENT,
+                    new GeneticEventListener() {
 
-            GPProblem problem = new DrawingProblem(conf);
-            GPGenotype gp = problem.create();
-            gp.setVerboseOutput(true);
-            conf.getEventManager().addEventListener(GeneticEvent.GPGENOTYPE_NEW_BEST_SOLUTION,
+                        /**
+                         * Updates the chart in the main view.
+                         * 
+                         */
+                        public void geneticEventFired(GeneticEvent a_firedEvent) {
+                            GPGenotype genotype = (GPGenotype) a_firedEvent.getSource();
+                            int evno = genotype.getGPConfiguration().getGenerationNr();
+
+                            if (evno % 25 == 0) {
+                                double best = genotype.getFittestProgram().getFitnessValue();
+                                JFreeChart chart = m_view.getChart();
+                                XYSeriesCollection sc = (XYSeriesCollection) chart.getXYPlot().getDataset();
+                                XYSeries series = sc.getSeries(0);
+                                series.add(evno, best);
+                            }
+
+                        }
+                    });
+            eventManager.addEventListener(GeneticEvent.GPGENOTYPE_NEW_BEST_SOLUTION,
                     new GeneticEventListener() {
 
                         private DrawingGPProgramRunner gpProgramRunner = new DrawingGPProgramRunner(conf);
@@ -58,6 +81,10 @@ public class EvolutionRunnable implements Runnable {
                         }
                     });
 
+            GPProblem problem = new DrawingProblem(conf);
+            GPGenotype gp = problem.create();
+            gp.setVerboseOutput(true);
+
             while (m_view.isEvolutionActivated()) {
                 gp.evolve();
                 gp.calcFitness();</diff>
      <filename>src/gd/gui/EvolutionRunnable.java</filename>
    </modified>
    <modified>
      <diff>@@ -13,9 +13,9 @@
               &lt;Group type=&quot;102&quot; attributes=&quot;0&quot;&gt;
                   &lt;Group type=&quot;103&quot; groupAlignment=&quot;0&quot; attributes=&quot;0&quot;&gt;
                       &lt;Group type=&quot;102&quot; attributes=&quot;0&quot;&gt;
-                          &lt;EmptySpace max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                          &lt;EmptySpace min=&quot;-2&quot; pref=&quot;47&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
                           &lt;Component id=&quot;chooseImage&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
-                          &lt;EmptySpace pref=&quot;93&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
+                          &lt;EmptySpace type=&quot;unrelated&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
                           &lt;Component id=&quot;startEvolution&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
                       &lt;/Group&gt;
                       &lt;Group type=&quot;102&quot; alignment=&quot;0&quot; attributes=&quot;0&quot;&gt;
@@ -23,6 +23,8 @@
                           &lt;Component id=&quot;targetImageLabel&quot; min=&quot;-2&quot; pref=&quot;172&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
                       &lt;/Group&gt;
                   &lt;/Group&gt;
+                  &lt;EmptySpace min=&quot;-2&quot; pref=&quot;38&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                  &lt;Component id=&quot;chartPanel&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
                   &lt;EmptySpace max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
               &lt;/Group&gt;
           &lt;/Group&gt;
@@ -31,11 +33,16 @@
           &lt;Group type=&quot;103&quot; groupAlignment=&quot;0&quot; attributes=&quot;0&quot;&gt;
               &lt;Group type=&quot;102&quot; alignment=&quot;1&quot; attributes=&quot;0&quot;&gt;
                   &lt;EmptySpace max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
-                  &lt;Component id=&quot;targetImageLabel&quot; pref=&quot;194&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
-                  &lt;EmptySpace type=&quot;separate&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
-                  &lt;Group type=&quot;103&quot; groupAlignment=&quot;3&quot; attributes=&quot;0&quot;&gt;
-                      &lt;Component id=&quot;chooseImage&quot; alignment=&quot;3&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
-                      &lt;Component id=&quot;startEvolution&quot; alignment=&quot;3&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                  &lt;Group type=&quot;103&quot; groupAlignment=&quot;1&quot; attributes=&quot;0&quot;&gt;
+                      &lt;Component id=&quot;chartPanel&quot; alignment=&quot;0&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
+                      &lt;Group type=&quot;102&quot; alignment=&quot;1&quot; attributes=&quot;0&quot;&gt;
+                          &lt;Component id=&quot;targetImageLabel&quot; pref=&quot;202&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
+                          &lt;EmptySpace max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                          &lt;Group type=&quot;103&quot; groupAlignment=&quot;3&quot; attributes=&quot;0&quot;&gt;
+                              &lt;Component id=&quot;startEvolution&quot; alignment=&quot;3&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                              &lt;Component id=&quot;chooseImage&quot; alignment=&quot;3&quot; min=&quot;-2&quot; max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
+                          &lt;/Group&gt;
+                      &lt;/Group&gt;
                   &lt;/Group&gt;
                   &lt;EmptySpace max=&quot;-2&quot; attributes=&quot;0&quot;/&gt;
               &lt;/Group&gt;
@@ -61,7 +68,6 @@
               &lt;action class=&quot;gd.gui.GeneticDrawingView&quot; id=&quot;startEvolution&quot; methodName=&quot;startEvolution&quot;/&gt;
             &lt;/Property&gt;
             &lt;Property name=&quot;text&quot; type=&quot;java.lang.String&quot; resourceKey=&quot;startEvolution.text&quot;/&gt;
-            &lt;Property name=&quot;enabled&quot; type=&quot;boolean&quot; value=&quot;false&quot;/&gt;
             &lt;Property name=&quot;name&quot; type=&quot;java.lang.String&quot; value=&quot;startEvolution&quot; noResource=&quot;true&quot;/&gt;
           &lt;/Properties&gt;
         &lt;/Component&gt;
@@ -72,6 +78,33 @@
             &lt;Property name=&quot;name&quot; type=&quot;java.lang.String&quot; value=&quot;targetImageLabel&quot; noResource=&quot;true&quot;/&gt;
           &lt;/Properties&gt;
         &lt;/Component&gt;
+        &lt;Container class=&quot;javax.swing.JPanel&quot; name=&quot;chartPanel&quot;&gt;
+          &lt;Properties&gt;
+            &lt;Property name=&quot;border&quot; type=&quot;javax.swing.border.Border&quot; editor=&quot;org.netbeans.modules.form.editors2.BorderEditor&quot;&gt;
+              &lt;Border info=&quot;org.netbeans.modules.form.compat2.border.EtchedBorderInfo&quot;&gt;
+                &lt;EtchetBorder/&gt;
+              &lt;/Border&gt;
+            &lt;/Property&gt;
+            &lt;Property name=&quot;name&quot; type=&quot;java.lang.String&quot; value=&quot;chartPanel&quot; noResource=&quot;true&quot;/&gt;
+          &lt;/Properties&gt;
+          &lt;AuxValues&gt;
+            &lt;AuxValue name=&quot;JavaCodeGenerator_CreateCodeCustom&quot; type=&quot;java.lang.String&quot; value=&quot;new ChartPanel(chart)&quot;/&gt;
+            &lt;AuxValue name=&quot;JavaCodeGenerator_CreateCodePre&quot; type=&quot;java.lang.String&quot; value=&quot;JFreeChart chart = ChartFactory.createXYLineChart( &amp;#xa;                &amp;quot;Fitness versus Generation&amp;quot;, &amp;#xa;                &amp;quot;Generation&amp;quot;, &amp;#xa;                &amp;quot;Fitness&amp;quot;, &amp;#xa;                new XYSeriesCollection(new XYSeries(&amp;quot;&amp;quot;)), &amp;#xa;                org.jfree.chart.plot.PlotOrientation.VERTICAL, &amp;#xa;                true, &amp;#xa;                false, &amp;#xa;                false);&quot;/&gt;
+          &lt;/AuxValues&gt;
+
+          &lt;Layout&gt;
+            &lt;DimensionLayout dim=&quot;0&quot;&gt;
+              &lt;Group type=&quot;103&quot; groupAlignment=&quot;0&quot; attributes=&quot;0&quot;&gt;
+                  &lt;EmptySpace min=&quot;0&quot; pref=&quot;399&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
+              &lt;/Group&gt;
+            &lt;/DimensionLayout&gt;
+            &lt;DimensionLayout dim=&quot;1&quot;&gt;
+              &lt;Group type=&quot;103&quot; groupAlignment=&quot;0&quot; attributes=&quot;0&quot;&gt;
+                  &lt;EmptySpace min=&quot;0&quot; pref=&quot;234&quot; max=&quot;32767&quot; attributes=&quot;0&quot;/&gt;
+              &lt;/Group&gt;
+            &lt;/DimensionLayout&gt;
+          &lt;/Layout&gt;
+        &lt;/Container&gt;
       &lt;/SubComponents&gt;
     &lt;/Container&gt;
     &lt;Container class=&quot;javax.swing.JMenuBar&quot; name=&quot;menuBar&quot;&gt;
@@ -141,9 +174,6 @@
     &lt;Property name=&quot;menuBar&quot; type=&quot;javax.swing.JMenuBar&quot; editor=&quot;org.netbeans.modules.form.ComponentChooserEditor&quot;&gt;
       &lt;ComponentRef name=&quot;menuBar&quot;/&gt;
     &lt;/Property&gt;
-    &lt;Property name=&quot;statusBar&quot; type=&quot;javax.swing.JComponent&quot; editor=&quot;org.netbeans.modules.form.ComponentChooserEditor&quot;&gt;
-      &lt;ComponentRef name=&quot;default&quot;/&gt;
-    &lt;/Property&gt;
   &lt;/Properties&gt;
   &lt;AuxValues&gt;
     &lt;AuxValue name=&quot;FormSettings_autoResourcing&quot; type=&quot;java.lang.Integer&quot; value=&quot;2&quot;/&gt;
@@ -155,6 +185,6 @@
     &lt;AuxValue name=&quot;FormSettings_listenerGenerationStyle&quot; type=&quot;java.lang.Integer&quot; value=&quot;0&quot;/&gt;
     &lt;AuxValue name=&quot;FormSettings_variablesLocal&quot; type=&quot;java.lang.Boolean&quot; value=&quot;false&quot;/&gt;
     &lt;AuxValue name=&quot;FormSettings_variablesModifier&quot; type=&quot;java.lang.Integer&quot; value=&quot;2&quot;/&gt;
-    &lt;AuxValue name=&quot;designerSize&quot; type=&quot;java.awt.Dimension&quot; value=&quot;-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,1,-112&quot;/&gt;
+    &lt;AuxValue name=&quot;designerSize&quot; type=&quot;java.awt.Dimension&quot; value=&quot;-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,44,0,0,3,21&quot;/&gt;
   &lt;/AuxValues&gt;
 &lt;/Form&gt;</diff>
      <filename>src/gd/gui/GeneticDrawingView.form</filename>
    </modified>
    <modified>
      <diff>@@ -15,6 +15,12 @@ import javax.swing.ImageIcon;
 import javax.swing.JDialog;
 import javax.swing.JFileChooser;
 import javax.swing.JFrame;
+import org.jdesktop.application.ResourceMap;
+import org.jfree.chart.ChartFactory;
+import org.jfree.chart.ChartPanel;
+import org.jfree.chart.JFreeChart;
+import org.jfree.data.xy.XYSeries;
+import org.jfree.data.xy.XYSeriesCollection;
 
 /**
  * The application's main frame.
@@ -25,8 +31,16 @@ public class GeneticDrawingView extends FrameView {
         super(app);
 
         initComponents();
+
+        ResourceMap resourceMap = getResourceMap();
+        ImageIcon imageIcon = resourceMap.getImageIcon(&quot;targetImageLabel.icon&quot;);
+        targetImage = new BufferedImage(imageIcon.getIconWidth(),
+                imageIcon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
+        imageIcon.paintIcon(null, targetImage.getGraphics(), 0, 0);
+
         fittestDrawingView = new FittestDrawingView();
         fittestDrawingView.setVisible(false);
+        fittestDrawingView.setSize(targetImage.getWidth(), targetImage.getHeight());
     }
 
     @Action
@@ -48,7 +62,6 @@ public class GeneticDrawingView extends FrameView {
         File file = fc.getSelectedFile();
         targetImage = ImageIO.read(file);
         targetImageLabel.setIcon(scaleToImageLabel(targetImage));
-        startEvolution.setEnabled(true);
         fittestDrawingView.setSize(targetImage.getWidth(), targetImage.getHeight());
     }
 
@@ -57,13 +70,15 @@ public class GeneticDrawingView extends FrameView {
         if (targetImage == null) {
             return;
         }
-
+        ResourceMap resourceMap = getResourceMap();
         if (isEvolutionActivated == false) {
+            startEvolution.setText(resourceMap.getString(&quot;stopEvolution.text&quot;));
             fittestDrawingView.setVisible(true);
             isEvolutionActivated = true;
             Thread t = new Thread(new EvolutionRunnable(this));
             t.start();
         } else {
+            startEvolution.setText(resourceMap.getString(&quot;startEvolution.text&quot;));
             isEvolutionActivated = false;
         }
     }
@@ -75,10 +90,12 @@ public class GeneticDrawingView extends FrameView {
         ImageIcon scaled = new ImageIcon(image);
 
         if (scaled.getIconHeight() &gt; targetImageLabel.getHeight()) {
-            scaled = new ImageIcon(image.getScaledInstance(-1, targetImageLabel.getHeight(), Image.SCALE_FAST));
+            scaled = new ImageIcon(image.getScaledInstance(
+                    -1, targetImageLabel.getHeight(), Image.SCALE_FAST));
         }
         if (scaled.getIconWidth() &gt; targetImageLabel.getWidth()) {
-            scaled = new ImageIcon(image.getScaledInstance(targetImageLabel.getWidth(), -1, Image.SCALE_FAST));
+            scaled = new ImageIcon(image.getScaledInstance(
+                    targetImageLabel.getWidth(), -1, Image.SCALE_FAST));
         }
 
         return scaled;
@@ -96,6 +113,11 @@ public class GeneticDrawingView extends FrameView {
         return fittestDrawingView;
     }
 
+    public JFreeChart getChart() {
+        ChartPanel cp = (ChartPanel) chartPanel;
+        return cp.getChart();
+    }
+
     /** This method is called from within the constructor to
      * initialize the form.
      * WARNING: Do NOT modify this code. The content of this method is
@@ -109,6 +131,16 @@ public class GeneticDrawingView extends FrameView {
         chooseImage = new javax.swing.JButton();
         startEvolution = new javax.swing.JToggleButton();
         targetImageLabel = new javax.swing.JLabel();
+        JFreeChart chart = ChartFactory.createXYLineChart(
+            &quot;Fitness versus Generation&quot;,
+            &quot;Generation&quot;,
+            &quot;Fitness&quot;,
+            new XYSeriesCollection(new XYSeries(&quot;&quot;)),
+            org.jfree.chart.plot.PlotOrientation.VERTICAL,
+            true,
+            false,
+            false);
+        chartPanel = new ChartPanel(chart);
         menuBar = new javax.swing.JMenuBar();
         javax.swing.JMenu fileMenu = new javax.swing.JMenu();
         javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem();
@@ -125,13 +157,26 @@ public class GeneticDrawingView extends FrameView {
 
         startEvolution.setAction(actionMap.get(&quot;startEvolution&quot;)); // NOI18N
         startEvolution.setText(resourceMap.getString(&quot;startEvolution.text&quot;)); // NOI18N
-        startEvolution.setEnabled(false);
         startEvolution.setName(&quot;startEvolution&quot;); // NOI18N
 
         targetImageLabel.setIcon(resourceMap.getIcon(&quot;targetImageLabel.icon&quot;)); // NOI18N
         targetImageLabel.setText(resourceMap.getString(&quot;targetImageLabel.text&quot;)); // NOI18N
         targetImageLabel.setName(&quot;targetImageLabel&quot;); // NOI18N
 
+        chartPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+        chartPanel.setName(&quot;chartPanel&quot;); // NOI18N
+
+        org.jdesktop.layout.GroupLayout chartPanelLayout = new org.jdesktop.layout.GroupLayout(chartPanel);
+        chartPanel.setLayout(chartPanelLayout);
+        chartPanelLayout.setHorizontalGroup(
+            chartPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+            .add(0, 399, Short.MAX_VALUE)
+        );
+        chartPanelLayout.setVerticalGroup(
+            chartPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
+            .add(0, 234, Short.MAX_VALUE)
+        );
+
         org.jdesktop.layout.GroupLayout mainPanelLayout = new org.jdesktop.layout.GroupLayout(mainPanel);
         mainPanel.setLayout(mainPanelLayout);
         mainPanelLayout.setHorizontalGroup(
@@ -139,24 +184,29 @@ public class GeneticDrawingView extends FrameView {
             .add(mainPanelLayout.createSequentialGroup()
                 .add(mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                     .add(mainPanelLayout.createSequentialGroup()
-                        .addContainerGap()
+                        .add(47, 47, 47)
                         .add(chooseImage)
-                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 93, Short.MAX_VALUE)
+                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
                         .add(startEvolution))
                     .add(mainPanelLayout.createSequentialGroup()
                         .add(108, 108, 108)
                         .add(targetImageLabel, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 172, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
+                .add(38, 38, 38)
+                .add(chartPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                 .addContainerGap())
         );
         mainPanelLayout.setVerticalGroup(
             mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
             .add(org.jdesktop.layout.GroupLayout.TRAILING, mainPanelLayout.createSequentialGroup()
                 .addContainerGap()
-                .add(targetImageLabel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 194, Short.MAX_VALUE)
-                .add(18, 18, 18)
-                .add(mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(chooseImage)
-                    .add(startEvolution))
+                .add(mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
+                    .add(org.jdesktop.layout.GroupLayout.LEADING, chartPanel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .add(mainPanelLayout.createSequentialGroup()
+                        .add(targetImageLabel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 202, Short.MAX_VALUE)
+                        .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+                        .add(mainPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
+                            .add(startEvolution)
+                            .add(chooseImage))))
                 .addContainerGap())
         );
 
@@ -187,6 +237,7 @@ public class GeneticDrawingView extends FrameView {
     }// &lt;/editor-fold&gt;//GEN-END:initComponents
 
     // Variables declaration - do not modify//GEN-BEGIN:variables
+    private javax.swing.JPanel chartPanel;
     private javax.swing.JButton chooseImage;
     private javax.swing.JPanel mainPanel;
     private javax.swing.JMenuBar menuBar;</diff>
      <filename>src/gd/gui/GeneticDrawingView.java</filename>
    </modified>
    <modified>
      <diff>@@ -32,8 +32,9 @@ StatusBar.busyIcons[13] = busyicons/busy-icon13.png
 StatusBar.busyIcons[14] = busyicons/busy-icon14.png
 jButton1.AccessibleContext.accessibleName=Choose Image
 startEvolution.text=Start Evolution!
+stopEvolution.text=Stop Evolution
 chooseImage.text=Choose Image
 defaultTargetImage=mona.png
 targetImageLabel.text=jLabel1
 #NOI18N
-targetImageLabel.icon=mona.png
+targetImageLabel.icon=real_mona.jpg</diff>
      <filename>src/gd/gui/resources/GeneticDrawingView.properties</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d469b43ca607b3750f7aa4623185b4343967f3f9</id>
    </parent>
  </parents>
  <author>
    <name>Yann Dauphin</name>
    <email>dhaemon@gmail.com</email>
  </author>
  <url>http://github.com/ynd/genetic-drawing/commit/292841a2381cdd7bc7983846843b4d3c1e6f6c05</url>
  <id>292841a2381cdd7bc7983846843b4d3c1e6f6c05</id>
  <committed-date>2008-12-17T14:04:05-08:00</committed-date>
  <authored-date>2008-12-17T14:04:05-08:00</authored-date>
  <message>Added a chart to the GUI.</message>
  <tree>4bee33f0efe81982c1a9649edcbfc7726ee31fd2</tree>
  <committer>
    <name>Yann Dauphin</name>
    <email>dhaemon@gmail.com</email>
  </committer>
</commit>
