[Avida-cvs] [avida-svn] r796 - branches/developers/avida-edward/source/python/AvidaGui2

gerrishj@myxo.css.msu.edu gerrishj at myxo.css.msu.edu
Tue Jul 4 11:28:06 PDT 2006


Author: gerrishj
Date: 2006-07-04 14:28:05 -0400 (Tue, 04 Jul 2006)
New Revision: 796

Modified:
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphView.ui
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_PetriDishView.ui
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeView.ui
   branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrg_ScopeCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeView2.py
   branches/developers/avida-edward/source/python/AvidaGui2/pyTimeline.py
   branches/developers/avida-edward/source/python/AvidaGui2/to-do_list
Log:
Fixed resizing issues with analyze mode population box.
Bunch of small changes noted in to-do_list
Reading tasks from test cpu now, plotting them on the timeline.


Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphCtrl.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphCtrl.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -96,9 +96,7 @@
     self.layout.m_del_button.close(True)
     del self.parent.m_combo_boxes[self.label]
     self.parent.modeActivatedSlot()
-    self.parent.population_box_widget.resize(
-      self.parent.population_box_widget.sizeHint())
-    self.parent.resize(self.parent.sizeHint())
+    self.parent.my_resize()
 
   def change_color_slot(self):
     "User selected a new color"
@@ -113,7 +111,7 @@
     self.parent.modeActivatedSlot()
 
 class pyOneAna_GraphCtrl(pyOneAna_GraphView):
-
+  "The main graph control"
   def __init__(self, parent = None, name = None, fl = 0):
     pyOneAna_GraphView.__init__(self,parent,name,fl)
     self.m_avida_stats_interface = pyAvidaStatsInterface()
@@ -121,6 +119,7 @@
 
   def construct_box(self, widget):
     "Initialize new combo box group with stat information"
+    self.m_first_graph = True
     widget.layout.m_combo_box_1_color.clear()
     for color in self.m_Colors:
       widget.layout.m_combo_box_1_color.insertItem(color.name)
@@ -140,33 +139,29 @@
     self.connect(widget.layout.m_del_button, SIGNAL("clicked()"),
                  widget.del_population_slot)
 
-    print widget.parent.population_box_widget.sizeHint().width()
-    print widget.parent.population_box_widget.sizeHint().height()
-    
-    
-
     # Show the contents
     widget.layout.m_population.show()
     widget.layout.m_combo_box_1_color.show()
     widget.layout.m_del_button.show()
     widget.parent.population_box_widget.show()
-    print widget.parent.population_box_widget.sizeHint().width()
-    print widget.parent.population_box_widget.sizeHint().height()
-    widget.parent.population_box_widget.resize(widget.parent.population_box_widget.sizeHint())
-    self.resize(self.sizeHint())
 
   def construct(self, session_mdl):
     self.m_session_mdl = session_mdl
     self.m_avida = None
 
-    self.population_box.setOrientation(Qt.Vertical)
+    self.toolButton31_2.hide()
+    # m_first_graph is true if we have graphed any population
+    self.m_first_graph = False
+
+    # Setup the population controls group box
+    self.population_box.setColumnLayout(1, Qt.Vertical)
     self.population_box_widget = QWidget(self.population_box,
                                          "population_box_widget")
     self.population_box_widget.setSizePolicy(
-      QSizePolicy(QSizePolicy.Preferred, QSizePolicy.MinimumExpanding))
-    self.population_box_widget.setGeometry(QRect(5, 15, 310, 90))
+      QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Minimum))
+    self.population_box_widget.setGeometry(QRect(5, 15, 310, 50))
     self.population_box_widget.setMinimumWidth(310)
-    self.population_box_widget.setMinimumHeight(90)
+    self.population_box_widget.setMinimumHeight(20)
     self.population_box_layout = QVBoxLayout(self.population_box_widget, 2, 1,
                                              "population_box_layout")
 
@@ -222,7 +217,8 @@
     self.connect(self.m_session_mdl.m_session_mdtr,
                  PYSIGNAL("freezerItemDroppedInOneAnalyzeSig"),
                  self.petriDropped)
-    self.m_graph_ctrl.setAxisTitle(QwtPlot.xBottom, "Time (updates)")
+    self.x_axis_title = "Time (updates)"
+    self.m_graph_ctrl.setAxisTitle(QwtPlot.xBottom, self.x_axis_title)
     self.m_graph_ctrl.setAxisAutoScale(QwtPlot.xBottom)
 
     # Start the left with second graph mode -- "Average Fitness"
@@ -231,8 +227,6 @@
     # Start the right with zeroth mode -- "None"
     self.m_combo_box_2.setCurrentItem(0)
 
-    self.population_box_widget.resize(self.population_box_widget.sizeHint())
-
   def check_file(self, path):
     "Check for a valid population file"
     if self.m_combo_box_1.currentItem():
@@ -254,7 +248,7 @@
         else:
           print "error: there is no data file in the directory to load from"
           self.m_graph_ctrl.setTitle(
-            self.m_avida_stats_interface.m_entries[0].name)
+            self.m_avida_stats_interface.m_entries[0].name + " vs. " + self.x_axis_title)
           self.m_graph_ctrl.setAxisTitle(
             QwtPlot.yLeft, self.m_avida_stats_interface.m_entries[0].name)
           self.m_graph_ctrl.replot()
@@ -279,7 +273,7 @@
         self.m_graph_ctrl.setCurveYAxis(row.m_curve_1, QwtPlot.yLeft)
         if not self.m_combo_box_2.currentItem():
           self.m_graph_ctrl.enableYRightAxis(False)
-          self.m_graph_ctrl.setTitle(stat_1.name)
+          self.m_graph_ctrl.setTitle(stat_1.name + " vs. " + self.x_axis_title)
       else:
         self.m_graph_ctrl.enableYLeftAxis(False)
 
@@ -304,14 +298,14 @@
           self.m_graph_ctrl.setCurvePen(row.m_curve_2, QPen(self.m_Colors[row.layout.m_combo_box_1_color.currentItem()].qt_color))
         self.m_graph_ctrl.setCurveYAxis(row.m_curve_2, QwtPlot.yRight)
         if not self.m_combo_box_1.currentItem():
-          self.m_graph_ctrl.setTitle(stat_2.name)
+          self.m_graph_ctrl.setTitle(stat_2.name + " vs. " + self.x_axis_title)
 
 
       self.m_graph_ctrl.setAxisAutoScale(QwtPlot.xBottom)
 
       if self.m_combo_box_1.currentItem() and self.m_combo_box_2.currentItem():
         self.m_graph_ctrl.setTitle(self.m_avida_stats_interface.m_entries[self.m_combo_box_1.currentItem()].name + ' (' + self.pen_styles[self.m_combo_box_1_style.currentItem()] \
-        + ') and ' + self.m_avida_stats_interface.m_entries[self.m_combo_box_2.currentItem()].name + ' (' +  self.pen_styles[self.m_combo_box_2_style.currentItem()] +')')
+        + ') and ' + self.m_avida_stats_interface.m_entries[self.m_combo_box_2.currentItem()].name + ' (' +  self.pen_styles[self.m_combo_box_2_style.currentItem()] +') vs. ' + self.x_axis_title)
         bounding_rect_1 = self.m_graph_ctrl.curve(row.m_curve_1).boundingRect()
         bounding_rect_2 = self.m_graph_ctrl.curve(row.m_curve_2).boundingRect()
         bounding_rect = bounding_rect_1.unite(bounding_rect_2)
@@ -323,7 +317,7 @@
       self.m_graph_ctrl.m_zoomer.setZoomBase(bounding_rect)
   
     else:   # goes with '   if self.m_combo_box_1.currentItem() or row.layout.m_combo_box_2.currentItem():'
-       self.m_graph_ctrl.setTitle(self.m_avida_stats_interface.m_entries[0].name)
+       self.m_graph_ctrl.setTitle(self.m_avida_stats_interface.m_entries[0].name + " vs. " + self.x_axis_title)
        self.m_graph_ctrl.setAxisTitle(QwtPlot.yLeft, self.m_avida_stats_interface.m_entries[0].name)
 
   def modeActivatedSlot(self, selected = None, index = None):

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphView.ui
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphView.ui	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_GraphView.ui	2006-07-04 18:28:05 UTC (rev 796)
@@ -45,7 +45,7 @@
                     <property name="sizeHint">
                         <size>
                             <width>1</width>
-                            <height>32</height>
+                            <height>1</height>
                         </size>
                     </property>
                 </spacer>
@@ -99,6 +99,9 @@
                             <property name="name">
                                 <cstring>toolButton31_2</cstring>
                             </property>
+                            <property name="enabled">
+                                <bool>false</bool>
+                            </property>
                             <property name="font">
                                 <font>
                                     <pointsize>10</pointsize>
@@ -169,7 +172,7 @@
                     <property name="sizePolicy">
                         <sizepolicy>
                             <hsizetype>5</hsizetype>
-                            <vsizetype>3</vsizetype>
+                            <vsizetype>1</vsizetype>
                             <horstretch>0</horstretch>
                             <verstretch>0</verstretch>
                         </sizepolicy>
@@ -185,7 +188,7 @@
                     <property name="sizePolicy">
                         <sizepolicy>
                             <hsizetype>5</hsizetype>
-                            <vsizetype>5</vsizetype>
+                            <vsizetype>1</vsizetype>
                             <horstretch>0</horstretch>
                             <verstretch>0</verstretch>
                         </sizepolicy>
@@ -399,6 +402,16 @@
         <property type="0">-1</property>
         <property type="1">pyGraphCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyGraphCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGraphCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGraphCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGraphCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGraphCtrl</property>
+        <property type="0">-1</property>
         <property type="pyGraphCtrl"></property>
         <property type="-1">1</property>
     </customwidget>

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_PetriDishView.ui
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_PetriDishView.ui	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneAna_PetriDishView.ui	2006-07-04 18:28:05 UTC (rev 796)
@@ -85,50 +85,6 @@
                         <string>Name of population dragged in to analyze</string>
                     </property>
                 </widget>
-                <widget class="QLayoutWidget">
-                    <property name="name">
-                        <cstring>layout178</cstring>
-                    </property>
-                    <vbox>
-                        <property name="name">
-                            <cstring>unnamed</cstring>
-                        </property>
-                        <spacer>
-                            <property name="name">
-                                <cstring>spacer126</cstring>
-                            </property>
-                            <property name="orientation">
-                                <enum>Vertical</enum>
-                            </property>
-                            <property name="sizeType">
-                                <enum>Minimum</enum>
-                            </property>
-                            <property name="sizeHint">
-                                <size>
-                                    <width>1</width>
-                                    <height>1</height>
-                                </size>
-                            </property>
-                        </spacer>
-                        <spacer>
-                            <property name="name">
-                                <cstring>spacer126_2</cstring>
-                            </property>
-                            <property name="orientation">
-                                <enum>Vertical</enum>
-                            </property>
-                            <property name="sizeType">
-                                <enum>Minimum</enum>
-                            </property>
-                            <property name="sizeHint">
-                                <size>
-                                    <width>1</width>
-                                    <height>1</height>
-                                </size>
-                            </property>
-                        </spacer>
-                    </vbox>
-                </widget>
             </hbox>
         </widget>
         <widget class="QLayoutWidget">
@@ -144,12 +100,12 @@
                         <cstring>m_ana_petri_dish_ctrl</cstring>
                     </property>
                     <property name="enabled">
-                        <bool>true</bool>
+                        <bool>false</bool>
                     </property>
                     <property name="sizePolicy">
                         <sizepolicy>
                             <hsizetype>3</hsizetype>
-                            <vsizetype>3</vsizetype>
+                            <vsizetype>1</vsizetype>
                             <horstretch>5</horstretch>
                             <verstretch>0</verstretch>
                         </sizepolicy>
@@ -159,10 +115,13 @@
                     <property name="name">
                         <cstring>m_ana_gradient_scale_ctrl</cstring>
                     </property>
+                    <property name="enabled">
+                        <bool>false</bool>
+                    </property>
                     <property name="sizePolicy">
                         <sizepolicy>
                             <hsizetype>5</hsizetype>
-                            <vsizetype>5</vsizetype>
+                            <vsizetype>1</vsizetype>
                             <horstretch>1</horstretch>
                             <verstretch>0</verstretch>
                         </sizepolicy>
@@ -197,7 +156,7 @@
                     <property name="sizeHint">
                         <size>
                             <width>10</width>
-                            <height>10</height>
+                            <height>2</height>
                         </size>
                     </property>
                 </spacer>
@@ -205,6 +164,9 @@
                     <property name="name">
                         <cstring>m_ana_live_controls_ctrl</cstring>
                     </property>
+                    <property name="enabled">
+                        <bool>false</bool>
+                    </property>
                     <property name="sizePolicy">
                         <sizepolicy>
                             <hsizetype>0</hsizetype>
@@ -216,7 +178,7 @@
                     <property name="minimumSize">
                         <size>
                             <width>0</width>
-                            <height>50</height>
+                            <height>10</height>
                         </size>
                     </property>
                 </widget>
@@ -233,7 +195,7 @@
                     <property name="sizeHint">
                         <size>
                             <width>10</width>
-                            <height>10</height>
+                            <height>2</height>
                         </size>
                     </property>
                 </spacer>
@@ -308,6 +270,14 @@
         <property type="0">-1</property>
         <property type="1">pyPetriDishCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyPetriDishCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyPetriDishCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyPetriDishCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyPetriDishCtrl</property>
+        <property type="0">-1</property>
         <property type="pyPetriDishCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
@@ -377,6 +347,14 @@
         <property type="0">-1</property>
         <property type="1">pyGradientScaleCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyGradientScaleCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGradientScaleCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGradientScaleCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyGradientScaleCtrl</property>
+        <property type="0">-1</property>
         <property type="pyGradientScaleCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
@@ -402,22 +380,28 @@
         <property type="3">-1</property>
         <property type="1">pyAnalyzeControlsCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyAnalyzeControlsCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyAnalyzeControlsCtrl</property>
+        <property type="0">-1</property>
+        <property type="1">pyAnalyzeControlsCtrl</property>
+        <property type="0">-1</property>
         <property type="pyAnalyzeControlsCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
 </customwidgets>
 <images>
     <image name="image0">
-        <data format="PNG" length="2166">89504e470d0a1a0a0000000d4948445200000020000000200806000000737a7af40000083d49444154789ced965d6c1cd515c7ffe7de99d9d94f7bbdfe88d71b6c123b350492b4e13340534844092204a2d2d2873685f6a55511a52d502168d5022a0d1105aa3e205024d440118516a9a050a08a8302095875e4382190388eedaced6ce2d8bbeb9dd999d9b9f7f481354a281508a9ea0b7fe9e8ce9566747ee77f8fee19e00bfd9f459fe7a3dede5e239148c4b4d63600b22ccbb36ddbedebebabfd4f00d6adbb36bd62c585975ebefaca65cb572cef1124b3c2b46dcb22101154a851ab05810afdc2c1a1fdc3834383075ff9fbdf76edd8b163ea7303343636e2baeb367cf9d65b6fbb6971f7791747ac0831989818600d8260800800181a520a862012c48665515c854a14a6f2fd8f3df6f09fb76d7bbaaf52a9e8cf0cb06cd9f2962d5b9eb8a367f1b24b49082622822408225b9a463c547e42a9c0545082344108c164183553d82e42ed1986884ac99284505ab12a4c8ff7fff887b7dcdfd7b7e3e8a7026cdc78d3d2dffdf689fb8561a749486870bc16786dfcfe60c63564cc4f35722dd02ca5412c04c0820166a5439206211a89503c1155f164836b9b56516be52985596173f1f1471f78e8a1071fdc797a3e79fa66f!
 d861b7b376fdeba458568508c983b37d3633cf7444fe2d73f6d8cbef8ac55b87203478d2681532cec50520862d38ec194364cc3264346692e1260944eca5967c60a1ca7811447416645d528bc62ed555f65e58dec7efbedf1ff00685db020f2e49f5efcbd509166a752e928ce16cea955dc78707286e6b29d5ceeea6671f93a54a74be4557c049e0fb325c9562402614821a4c1920c7a3db69736d356da2107490651ee0e72e6ececa916210d82b2e6d65c73e545bb76ee782d7fec980b00c63cc05df7dc7375636b36373b796aa15b2d9d659971862541abafd3200841822d098ee55a95d64c81d6306c0b441244202249028295ef5167b599cbb24a29cf228e986c99292a1767737e508dc168f9e02777fde25bbb6fb8fe8f67f4c0beb1f1479853ebcbf9e35da68812910121084402009160b01586a23ae1906148f896e24436c362c621cd048a0aa86482df8dbf4f5c03a7c3283afc6648925a2a12cc1ab59a031911f9444b6af7b95d999bcf708028d6599e2c74466482200488058429191a421069105330576537f0c854041d8bb2a998bcb22212125eb50a95b1f41f8ce7c5341fa7b4d98847dd3bd4cb4dfdc66e0ca0432fe0ebdd8bb8c76dcd7a65af13401440751ec09cce9fe848990d426b01410299dddba9e9b9a7a46ecb626ed555287ded7a4e0f0fa0c94e70ada!
 583fdb616f695a64a8c35c21a0bdb204ff8942d26a0559449d7286d36e0b03!
 986823f8
58ae1d04c75096cab9b2a4e2927848868ad3f0288e99a9f86252009440651faf597608e1c068d8fa2d0bb82d2837bd0facbdb05b382d79ea38967778571af0a3b1227a3c91035db56b163a362ebe165ba965983627bbb1629139b0a6bf5517f094d739117193922084023a9b58e02281a00048048b9e49a0d51909416136be42fbf86d0d90bbb788abd4bd7726acfebe458064c2d515e7c0e9b8641e15c48811342b90a5e86a9e3f9271179f11941a601ebea1bd8b9e5365effab3b299416fc454b28fffd35ac88c0b66d0a216cadb531ef8071f88323a149315e98eb427ae81da40e0c40b5b6ebe08a35f0969cc7c34b73b0bebd49c7a7cb64b005a14145edb3960a61d54326d1c5aa3029825814863450cdb4c1ca8fc118fe8064a8402387801fdcaddca04a3293545a6b02401f35e1b1c9d1c3d90567779b91495ef4d236b277fe83c888d0f1af6fe0e9b5ab717bec11e1441d64dbb2b86ff6bb6ae55b2f5376600f6a6d3978e7af44592ee289079ed2ba5c044f8e01a934a2a18fb11bbfa78dc97162a78892ef09470b71a4ffdd3100b579000610eeec7be5d54b56ad5b973f3a4103c926ea5e9043cc7330b762151fb2a7c8a1392862b8ce2c3ad04a89e7b69218d84351d380bbfe6646ef4a12c2603466981a3204300f26c7e581a59771b35e8feca80d77a24076b2815f7d!
 e19957018400c27980eabebdeff4ed1bdaf3afee6ccfca63975ccdde3737216ec6d0d09ce5aed9227ee4dec0d3b248920d6d9a3ee6c240c8540aa652a8f42c65a54230334002cc3580857859be8df766f68a6bdd5530fc76c4b4c5232307c6dfd8fe97bf02f000e8f98bc800d09a6e6abee0de4d3f7fb21d686d5d7416389164ce75217b78088d634761c7e35cb96c1d54ba9545a54455cb625d2913271a20e2093048b10e85ef7b54f55d1e8d4d88b6482369669cc817513e72aafcf0963bef181b1dfe2780e300fcf959a00128afea7a7b8787f69d7feef24bdadbda5261a281a014b94e85665bda68ca0fe888afa9367280e8e9c705bdb95de8fc119a5c740edc23efd389916139911fa3d98a43b1a42dce4eb4515246415585f143a3852d9befbe6f7474f84d00d3009c8f4fc31040e8ba4ef9adfdfd6f253299f6cef357e60c82e0aa4ba11fa0e478989249764f16e864ac09854c0ef9641bcf5871aa0e0e90373e8edad424e95a8d626dcdb0a3124ed9516fbcb6bdffc1dffcecdee3c727fbeb95973fba8171a608401c4006404bd7d9dd176ffcc677367e75f5b517472276d42939e244c9070a79a852112208a02c0b685d80c8a1fd90cc2002f4c22e9deae90a0e1eecdff7fc0bdb5e786fffe02e000500a700ccd51dff448079450034d4231d8f27ba565e78d9055f3a!
 f72bcb524d1d67b52f5cbc2062462d3004b32668a57ca7549b1a3978e2647e!
 647264f2
e8d0d0c1bd7bcae5d208801280627dadd69bfe8c8aff9b043e1c180900b1ba337100b610221e8dc6929615b18904825ae057dd8aa3949aab27a902a80070eb67ed02509f94e4b3fc15130013805577c6acafa21e5c7fa7860ffbc8af3ffb00828f57fc79003e2e715ae034005d0ffeb4a45fe80b9dae7f030cdbe8df8fa444040000000049454e44ae426082</data>
+        <data format="PNG" length="2166">89504e470d0a1a0a0000000d4948445200000020000000200806000000737a7af40000083d494441545885ed965d6c1cd515c7ffe7de99d9d94f7bbdfe88d71b6c123b350492b4e13340534844092204a2d2d2873685f6a55511a52d502168d5022a0d1105aa3e205024d440118516a9a050a08a8302095875e4382190388eedaced6ce2d8bbeb9dd999d9b9f7f481354a281508a9ea0b7fe9e8ce9566747ee77f8fee19e00bfd9f459fe7a3dede5e239148c4b4d63600b22ccbb36ddbedebebabfd4f00d6adbb36bd62c585975ebefaca65cb572cef1124b3c2b46dcb22101154a851ab05810afdc2c1a1fdc3834383075ff9fbdf76edd8b163ea7303343636e2baeb367cf9d65b6fbb6971f7791747ac0831989818600d8260800800181a520a862012c48665515c854a14a6f2fd8f3df6f09fb76d7bbaaf52a9e8cf0cb06cd9f2962d5b9eb8a367f1b24b49082622822408225b9a463c547e42a9c0545082344108c164183553d82e42ed1986884ac99284505ab12a4c8ff7fff887b7dcdfd7b7e3e8a7026cdc78d3d2dffdf689fb8561a749486870bc16786dfcfe60c63564cc4f35722dd02ca5412c04c0820166a5439206211a89503c1155f164836b9b56516be52985596173f1f1471f78e8a1071fdc797a3e79fa66f!
 d861b7b376fdeba458568508c983b37d3633cf7444fe2d73f6d8cbef8ac55b87203478d2681532cec50520862d38ec194364cc3264346692e1260944eca5967c60a1ca7811447416645d528bc62ed555f65e58dec7efbedf1ff00685db020f2e49f5efcbd509166a752e928ce16cea955dc78707286e6b29d5ceeea6671f93a54a74be4557c049e0fb325c9562402614821a4c1920c7a3db69736d356da2107490651ee0e72e6ececa916210d82b2e6d65c73e545bb76ee782d7fec980b00c63cc05df7dc7375636b36373b796aa15b2d9d659971862541abafd3200841822d098ee55a95d64c81d6306c0b441244202249028295ef5167b599cbb24a29cf228e986c99292a1767737e508dc168f9e02777fde25bbb6fb8fe8f67f4c0beb1f1479853ebcbf9e35da68812910121084402009160b01586a23ae1906148f896e24436c362c621cd048a0aa86482df8dbf4f5c03a7c3283afc6648925a2a12cc1ab59a031911f9444b6af7b95d999bcf708028d6599e2c74466482200488058429191a421069105330576537f0c854041d8bb2a998bcb22212125eb50a95b1f41f8ce7c5341fa7b4d98847dd3bd4cb4dfdc66e0ca0432fe0ebdd8bb8c76dcd7a65af13401440751ec09cce9fe848990d426b01410299dddba9e9b9a7a46ecb626ed555287ded7a4e0f0fa0c94e70ada!
 583fdb616f695a64a8c35c21a0bdb204ff8942d26a0559449d7286d36e0b03!
 986823f8
58ae1d04c75096cab9b2a4e2927848868ad3f0288e99a9f86252009440651faf597608e1c068d8fa2d0bb82d2837bd0facbdb05b382d79ea38967778571af0a3b1227a3c91035db56b163a362ebe165ba965983627bbb1629139b0a6bf5517f094d739117193922084023a9b58e02281a00048048b9e49a0d51909416136be42fbf86d0d90bbb788abd4bd7726acfebe458064c2d515e7c0e9b8641e15c48811342b90a5e86a9e3f9271179f11941a601ebea1bd8b9e5365effab3b299416fc454b28fffd35ac88c0b66d0a216cadb531ef8071f88323a149315e98eb427ae81da40e0c40b5b6ebe08a35f0969cc7c34b73b0bebd49c7a7cb64b005a14145edb3960a61d54326d1c5aa3029825814863450cdb4c1ca8fc118fe8064a8402387801fdcaddca04a3293545a6b02401f35e1b1c9d1c3d90567779b91495ef4d236b277fe83c888d0f1af6fe0e9b5ab717bec11e1441d64dbb2b86ff6bb6ae55b2f5376600f6a6d3978e7af44592ee289079ed2ba5c044f8e01a934a2a18fb11bbfa78dc97162a78892ef09470b71a4ffdd3100b579000610eeec7be5d54b56ad5b973f3a4103c926ea5e9043cc7330b762151fb2a7c8a1392862b8ce2c3ad04a89e7b69218d84351d380bbfe6646ef4a12c2603466981a3204300f26c7e581a59771b35e8feca80d77a24076b2815f7d!
 e19957018400c27980eabebdeff4ed1bdaf3afee6ccfca63975ccdde3737216ec6d0d09ce5aed9227ee4dec0d3b248920d6d9a3ee6c240c8540aa652a8f42c65a54230334002cc3580857859be8df766f68a6bdd5530fc76c4b4c5232307c6dfd8fe97bf02f000e8f98bc800d09a6e6abee0de4d3f7fb21d686d5d7416389164ce75217b78088d634761c7e35cb96c1d54ba9545a54455cb625d2913271a20e2093048b10e85ef7b54f55d1e8d4d88b6482369669cc817513e72aafcf0963bef181b1dfe2780e300fcf959a00128afea7a7b8787f69d7feef24bdadbda5261a281a014b94e85665bda68ca0fe888afa9367280e8e9c705bdb95de8fc119a5c740edc23efd389916139911fa3d98a43b1a42dce4eb4515246415585f143a3852d9befbe6f7474f84d00d3009c8f4fc31040e8ba4ef9adfdfd6f253299f6cef357e60c82e0aa4ba11fa0e478989249764f16e864ac09854c0ef9641bcf5871aa0e0e90373e8edad424e95a8d626dcdb0a3124ed9516fbcb6bdffc1dffcecdee3c727fbeb95973fba8171a608401c4006404bd7d9dd176ffcc677367e75f5b517472276d42939e244c9070a79a852112208a02c0b685d80c8a1fd90cc2002f4c22e9deae90a0e1eecdff7fc0bdb5e786fffe02e000500a700ccd51dff448079450034d4231d8f27ba565e78d9055f3a!
 f72bcb524d1d67b52f5cbc2062462d3004b32668a57ca7549b1a3978e2647e!
 647264f2
e8d0d0c1bd7bcae5d208801280627dadd69bfe8c8aff9b043e1c180900b1ba337100b610221e8dc6929615b18904825ae057dd8aa3949aab27a902a80070eb67ed02509f94e4b3fc15130013805577c6acafa21e5c7fa7860ffbc8af3ffb00828f57fc79003e2e715ae034005d0ffeb4a45fe80b9dae7f030cdbe8df8596ae200000000049454e44ae426082</data>
     </image>
     <image name="image1">
-        <data format="PNG" length="1002">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000003b149444154789cad945f4c5b551cc73fe7dc4b7b4bcba0762d45c43114323599ee6192609c51d883892ce083f1718b3ebb185f8dc91e972cf39d2d2a2f1af664b6f1e0fe3863a0718969700eb0c52142da0242a1bd6d696f7bcff101585203ceb8fd9ece39f99dcff9fe7edf939f88c562ec465f5f9fe609442c161362173c3e3eae7b7a7ac8e7f36432196cdbfe4f907c3e4f2291201e8fe338cec3737357e9e8e828aded1e229d650e1f2d51754b082110124c13a4dc5ea341eb9dc284c0558a853f3ce8cb0677ef500fde7d39d2596679e326597b8e9abb85d7a770ab16ab6983ec5a05b487a70e36f0f4e10afe408d6a558310980108478dba4a1e8233990c5d474b64ed39aa3a8fe5f3317fbf81dbd70bccfeb205947632fd74f6589c1c6ea2f70d03a58ba0c1f2c9bdc1b66de3b8256a6e11cbe7e3ee1d181b590124fe2693aeee08d223c82c3a2c24b7b874bec8f26288774f7bd054504aef0dde6e99c0eb83f9fb266323cb80a27fb0958141836044605a2ee5523393371cc646fee2da37195aa35d0c0c5b4859ac03d7e91712dcaac5adab3650a3ff9d08ef7dd8404bb48869e5d958b5b87dadc4c9a1464e9f0d0326df7!
 ebd86bd2e310cb1bf62d384d59441f2d70a070e1c60e09489929b988681bdd9cc97170bcc4c65595f71f8e0e3301337fc24a7732467831875a47f289652b0be5e4151e6d07316c1b0c0340d8ab92023e76d66a6b2840e36d2fb7a13fee632475e6edc367ea98a90fb98b7dd6310ca0328a44761582e1bab41befabcc0ec940d28bc5e93b68e064cab84e1d9beaeb48934eac1f53b01c1b000fca496aa54b61a99fcde61662a4b4b4b23d1680be9d426173e4df3602a48ea411989a4fd590f52a8fd156b05ed9d350e3defe3cfdf4b4c7ce770ea7d3fb9f520afbe1620daeee5c26735d20b9b9cfb6811a754a439e4e5c5639a4caa1e5caf586bfc0197b78702005cb9b4cae4cd3267ce8638fe964bd72b393e39d74928d242617303a756a37f284447770dcdbffc6384a05a85de1306e9a52057c7527c7131c3c42d3f475eb2303c82d4fc3276d6811db37efeb148723082d9b08f79f97c1e5729109a9a28307cc622d2d6cdf52b2b24efe548dedb00142009862cfa879ee1a71f6cec928353511472fbf4389148b0b0e0c108081412458dfe21c9f11351e67e7358595468246d1d1e5e38a6e9e851bc39d84ab502a669331dafec0d8ec7e3e8cb06e1a881d727d1ae40180a434a8c9db129a54126ad48a7358c2b4c5352c8c374bcccdab2bb37d8719cba79fab8211f9df218e05!
 82c261e95f8bfc04f1a1e8bc5c4dfe0a19017a725d8c60000000049454e44a!
 e426082<
/data>
+        <data format="PNG" length="1002">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000003b149444154388dad945f4c5b551cc73fe7dc4b7b4bcba0762d45c43114323599ee6192609c51d883892ce083f1718b3ebb185f8dc91e972cf39d2d2a2f1af664b6f1e0fe3863a0718969700eb0c52142da0242a1bd6d696f7bcff101585203ceb8fd9ece39f99dcff9fe7edf939f88c562ec465f5f9fe609442c161362173c3e3eae7b7a7ac8e7f36432196cdbfe4f907c3e4f2291201e8fe338cec3737357e9e8e828aded1e229d650e1f2d51754b082110124c13a4dc5ea341eb9dc284c0558a853f3ce8cb0677ef500fde7d39d2596679e326597b8e9abb85d7a770ab16ab6983ec5a05b487a70e36f0f4e10afe408d6a558310980108478dba4a1e8233990c5d474b64ed39aa3a8fe5f3317fbf81dbd70bccfeb205947632fd74f6589c1c6ea2f70d03a58ba0c1f2c9bdc1b66de3b8256a6e11cbe7e3ee1d181b590124fe2693aeee08d223c82c3a2c24b7b874bec8f26288774f7bd054504aef0dde6e99c0eb83f9fb266323cb80a27fb0958141836044605a2ee5523393371cc646fee2da37195aa35d0c0c5b4859ac03d7e91712dcaac5adab3650a3ff9d08ef7dd8404bb48869e5d958b5b87dadc4c9a1464e9f0d0326df7!
 ebd86bd2e310cb1bf62d384d59441f2d70a070e1c60e09489929b988681bdd9cc97170bcc4c65595f71f8e0e3301337fc24a7732467831875a47f289652b0be5e4151e6d07316c1b0c0340d8ab92023e76d66a6b2840e36d2fb7a13fee632475e6edc367ea98a90fb98b7dd6310ca0328a44761582e1bab41befabcc0ec940d28bc5e93b68e064cab84e1d9beaeb48934eac1f53b01c1b000fca496aa54b61a99fcde61662a4b4b4b23d1680be9d426173e4df3602a48ea411989a4fd590f52a8fd156b05ed9d350e3defe3cfdf4b4c7ce770ea7d3fb9f520afbe1620daeee5c26735d20b9b9cfb6811a754a439e4e5c5639a4caa1e5caf586bfc0197b78702005cb9b4cae4cd3267ce8638fe964bd72b393e39d74928d242617303a756a37f284447770dcdbffc6384a05a85de1306e9a52057c7527c7131c3c42d3f475eb2303c82d4fc3276d6811db37efeb148723082d9b08f79f97c1e5729109a9a28307cc622d2d6cdf52b2b24efe548dedb00142009862cfa879ee1a71f6cec928353511472fbf4389148b0b0e0c108081412458dfe21c9f11351e67e7358595468246d1d1e5e38a6e9e851bc39d84ab502a669331dafec0d8ec7e3e8cb06e1a881d727d1ae40180a434a8c9db129a54126ad48a7358c2b4c5352c8c374bcccdab2bb37d8719cba79fab8211f9df218e05!
 82c261e95f8bfc04f1a1e8bc5c4dfe0a190172af6a9690000000049454e44a!
 e426082<
/data>
     </image>
 </images>
 <layoutdefaults spacing="6" margin="11"/>
 <includehints>
-    <includehint>pypetridishctrl.h</includehint>
-    <includehint>pygradientscalectrl.h</includehint>
-    <includehint>pyanalyzecontrolsctrl.h</includehint>
+    <includehint>1</includehint>
+    <includehint>1</includehint>
+    <includehint>1</includehint>
 </includehints>
 </UI>

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeCtrl.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeCtrl.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -81,7 +81,9 @@
       freezer_item_name = str(e.encodedData("text/plain"))
       if os.path.exists(freezer_item_name) == False:
         print "that was not a valid path(3)" 
-      else: 
+      else:
+        if self.m_one_ana_graph_ctrl.check_file(freezer_item_name):
+          self.m_one_ana_petri_ctrl.m_one_ana_pop_name.setText("")
         self.emit(PYSIGNAL("freezerItemDroppedInOneAnalyzeSig"), (e,))
 
   def freezerItemDoubleClicked(self, freezer_item_name):
@@ -89,6 +91,8 @@
       print "that was not a valid path(3)"
     else:
       if self.isVisible():
+        if self.m_one_ana_graph_ctrl.check_file(freezer_item_name):
+          self.m_one_ana_petri_ctrl.m_one_ana_pop_name.setText("")
         self.emit(PYSIGNAL("freezerItemDoubleClickedOnInOneAnaSig"), 
           (freezer_item_name,))
 

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeView.ui
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeView.ui	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneAnalyzeView.ui	2006-07-04 18:28:05 UTC (rev 796)
@@ -46,15 +46,21 @@
                         <property name="name">
                             <cstring>m_one_ana_stats_ctrl</cstring>
                         </property>
+                        <property name="enabled">
+                            <bool>false</bool>
+                        </property>
                     </widget>
                     <widget class="pyOneAna_PetriDishCtrl">
                         <property name="name">
                             <cstring>m_one_ana_petri_ctrl</cstring>
                         </property>
+                        <property name="enabled">
+                            <bool>true</bool>
+                        </property>
                         <property name="sizePolicy">
                             <sizepolicy>
                                 <hsizetype>3</hsizetype>
-                                <vsizetype>3</vsizetype>
+                                <vsizetype>1</vsizetype>
                                 <horstretch>0</horstretch>
                                 <verstretch>0</verstretch>
                             </sizepolicy>
@@ -116,6 +122,8 @@
         <property type="3">-1</property>
         <property type="1">pyOneAna_GraphCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyOneAna_GraphCtrl</property>
+        <property type="0">-1</property>
         <property type="pyOneAna_GraphCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
@@ -141,6 +149,8 @@
         <property type="3">-1</property>
         <property type="1">pyOneAna_PetriDishCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyOneAna_PetriDishCtrl</property>
+        <property type="0">-1</property>
         <property type="pyOneAna_PetriDishCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
@@ -166,6 +176,8 @@
         <property type="3">-1</property>
         <property type="1">pyOneAna_StatsCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyOneAna_StatsCtrl</property>
+        <property type="0">-1</property>
         <property type="pyOneAna_StatsCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
@@ -191,20 +203,22 @@
         <property type="3">-1</property>
         <property type="1">pyOneAna_TimelineCtrl</property>
         <property type="0">-1</property>
+        <property type="1">pyOneAna_TimelineCtrl</property>
+        <property type="0">-1</property>
         <property type="pyOneAna_TimelineCtrl"></property>
         <property type="-1">1</property>
     </customwidget>
 </customwidgets>
 <images>
     <image name="image0">
-        <data format="PNG" length="1002">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000003b149444154789cad945f4c5b551cc73fe7dc4b7b4bcba0762d45c43114323599ee6192609c51d883892ce083f1718b3ebb185f8dc91e972cf39d2d2a2f1af664b6f1e0fe3863a0718969700eb0c52142da0242a1bd6d696f7bcff101585203ceb8fd9ece39f99dcff9fe7edf939f88c562ec465f5f9fe609442c161362173c3e3eae7b7a7ac8e7f36432196cdbfe4f907c3e4f2291201e8fe338cec3737357e9e8e828aded1e229d650e1f2d51754b082110124c13a4dc5ea341eb9dc284c0558a853f3ce8cb0677ef500fde7d39d2596679e326597b8e9abb85d7a770ab16ab6983ec5a05b487a70e36f0f4e10afe408d6a558310980108478dba4a1e8233990c5d474b64ed39aa3a8fe5f3317fbf81dbd70bccfeb205947632fd74f6589c1c6ea2f70d03a58ba0c1f2c9bdc1b66de3b8256a6e11cbe7e3ee1d181b590124fe2693aeee08d223c82c3a2c24b7b874bec8f26288774f7bd054504aef0dde6e99c0eb83f9fb266323cb80a27fb0958141836044605a2ee5523393371cc646fee2da37195aa35d0c0c5b4859ac03d7e91712dcaac5adab3650a3ff9d08ef7dd8404bb48869e5d958b5b87dadc4c9a1464e9f0d0326df7!
 ebd86bd2e310cb1bf62d384d59441f2d70a070e1c60e09489929b988681bdd9cc97170bcc4c65595f71f8e0e3301337fc24a7732467831875a47f289652b0be5e4151e6d07316c1b0c0340d8ab92023e76d66a6b2840e36d2fb7a13fee632475e6edc367ea98a90fb98b7dd6310ca0328a44761582e1bab41befabcc0ec940d28bc5e93b68e064cab84e1d9beaeb48934eac1f53b01c1b000fca496aa54b61a99fcde61662a4b4b4b23d1680be9d426173e4df3602a48ea411989a4fd590f52a8fd156b05ed9d350e3defe3cfdf4b4c7ce770ea7d3fb9f520afbe1620daeee5c26735d20b9b9cfb6811a754a439e4e5c5639a4caa1e5caf586bfc0197b78702005cb9b4cae4cd3267ce8638fe964bd72b393e39d74928d242617303a756a37f284447770dcdbffc6384a05a85de1306e9a52057c7527c7131c3c42d3f475eb2303c82d4fc3276d6811db37efeb148723082d9b08f79f97c1e5729109a9a28307cc622d2d6cdf52b2b24efe548dedb00142009862cfa879ee1a71f6cec928353511472fbf4389148b0b0e0c108081412458dfe21c9f11351e67e7358595468246d1d1e5e38a6e9e851bc39d84ab502a669331dafec0d8ec7e3e8cb06e1a881d727d1ae40180a434a8c9db129a54126ad48a7358c2b4c5352c8c374bcccdab2bb37d8719cba79fab8211f9df218e05!
 82c261e95f8bfc04f1a1e8bc5c4dfe0a19017a725d8c60000000049454e44a!
 e426082<
/data>
+        <data format="PNG" length="1002">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000003b149444154388dad945f4c5b551cc73fe7dc4b7b4bcba0762d45c43114323599ee6192609c51d883892ce083f1718b3ebb185f8dc91e972cf39d2d2a2f1af664b6f1e0fe3863a0718969700eb0c52142da0242a1bd6d696f7bcff101585203ceb8fd9ece39f99dcff9fe7edf939f88c562ec465f5f9fe609442c161362173c3e3eae7b7a7ac8e7f36432196cdbfe4f907c3e4f2291201e8fe338cec3737357e9e8e828aded1e229d650e1f2d51754b082110124c13a4dc5ea341eb9dc284c0558a853f3ce8cb0677ef500fde7d39d2596679e326597b8e9abb85d7a770ab16ab6983ec5a05b487a70e36f0f4e10afe408d6a558310980108478dba4a1e8233990c5d474b64ed39aa3a8fe5f3317fbf81dbd70bccfeb205947632fd74f6589c1c6ea2f70d03a58ba0c1f2c9bdc1b66de3b8256a6e11cbe7e3ee1d181b590124fe2693aeee08d223c82c3a2c24b7b874bec8f26288774f7bd054504aef0dde6e99c0eb83f9fb266323cb80a27fb0958141836044605a2ee5523393371cc646fee2da37195aa35d0c0c5b4859ac03d7e91712dcaac5adab3650a3ff9d08ef7dd8404bb48869e5d958b5b87dadc4c9a1464e9f0d0326df7!
 ebd86bd2e310cb1bf62d384d59441f2d70a070e1c60e09489929b988681bdd9cc97170bcc4c65595f71f8e0e3301337fc24a7732467831875a47f289652b0be5e4151e6d07316c1b0c0340d8ab92023e76d66a6b2840e36d2fb7a13fee632475e6edc367ea98a90fb98b7dd6310ca0328a44761582e1bab41befabcc0ec940d28bc5e93b68e064cab84e1d9beaeb48934eac1f53b01c1b000fca496aa54b61a99fcde61662a4b4b4b23d1680be9d426173e4df3602a48ea411989a4fd590f52a8fd156b05ed9d350e3defe3cfdf4b4c7ce770ea7d3fb9f520afbe1620daeee5c26735d20b9b9cfb6811a754a439e4e5c5639a4caa1e5caf586bfc0197b78702005cb9b4cae4cd3267ce8638fe964bd72b393e39d74928d242617303a756a37f284447770dcdbffc6384a05a85de1306e9a52057c7527c7131c3c42d3f475eb2303c82d4fc3276d6811db37efeb148723082d9b08f79f97c1e5729109a9a28307cc622d2d6cdf52b2b24efe548dedb00142009862cfa879ee1a71f6cec928353511472fbf4389148b0b0e0c108081412458dfe21c9f11351e67e7358595468246d1d1e5e38a6e9e851bc39d84ab502a669331dafec0d8ec7e3e8cb06e1a881d727d1ae40180a434a8c9db129a54126ad48a7358c2b4c5352c8c374bcccdab2bb37d8719cba79fab8211f9df218e05!
 82c261e95f8bfc04f1a1e8bc5c4dfe0a190172af6a9690000000049454e44a!
 e426082<
/data>
     </image>
 </images>
 <layoutdefaults spacing="6" margin="11"/>
 <includehints>
-    <includehint>pyoneana_statsctrl.h</includehint>
-    <includehint>pyoneana_petridishctrl.h</includehint>
-    <includehint>pyoneana_graphctrl.h</includehint>
-    <includehint>pyoneana_timelinectrl.h</includehint>
+    <includehint>1</includehint>
+    <includehint>1</includehint>
+    <includehint>1</includehint>
+    <includehint>1</includehint>
 </includehints>
 </UI>

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrg_ScopeCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrg_ScopeCtrl.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOneOrg_ScopeCtrl.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -23,8 +23,9 @@
 
     # TODO: example to show flags, need to hook into TestCPU to get proper
     # organism events
-    self.m_timeline.addFlag(Flag("timeline_arrow.png", 86, "First write into child"))
-    self.m_timeline.addFlag(Flag("timeline_arrow.png", 385, "Organism divide"))
+#    self.m_timeline.addFlag(Flag("timeline_arrow.png", 86, "First write into child"))
+#    self.m_timeline.addFlag(Flag("timeline_arrow.png", 385, "Organism divide"))
+    self.m_organism_scope_ctrl.m_timeline = self.m_timeline
 
     self.connect(
       self.m_execution_step_slider, qt.SIGNAL("valueChanged(int)"),

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeCtrl.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -3,7 +3,7 @@
 from pyOrganismScopeView2 import pyOrganismScopeView2
 from AvidaCore import cAnalyzeGenotype, cGenome, cInstruction, cInstUtil, cString
 from pyHardwareTracer import pyHardwareTracer
-
+from pyTimeline import pyTimeline, Flag
 from qt import *
 
 import os
@@ -155,6 +155,9 @@
       self.setOps(ops)
       self.setFrames(hardware_tracer.m_hardware_trace)
 
+      self.m_timeline.reset()
+      self.flagEvents()
+
       progress_callback.clear()
       self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("statusBarClearSig"), ())
 
@@ -212,4 +215,24 @@
   def HardwareIndicatorSBValueChangedSlot(self, value):
     self.anim.setHardwareIndicatorSBValueChanged(value)
 
-
+  def flagEvents(self):
+    "Flag events on timeline"
+    if self.m_frames is not None:
+      # task_completed holds frame number for when a task was first completed
+      task_completed = []
+      task_lib = self.m_avida.m_environment.GetTaskLib()
+      num_tasks = task_lib.GetSize()
+      print "num_tasks: %d" % (num_tasks)
+      for task in xrange(num_tasks):
+        task_completed.append(False)
+      for task in xrange(num_tasks):
+        for frame in xrange(self.m_frames.getSnapshotCount()):
+          if self.m_frames.m_tasks_info[frame][task] > 0:
+            if task_completed[task] == False:
+              task_completed[task] = True
+              self.m_timeline.addFlag(
+                Flag("timeline_arrow.png", frame,
+                     "Completed first %s task" % (task_lib.GetTask(task).GetDesc())))
+              # Task completed, don't need to search any more frames for this
+              # task
+              break

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeView2.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeView2.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyOrganismScopeView2.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -420,6 +420,7 @@
 
     if self.m_frames is not None and frame_number < self.m_frames.m_gestation_time:
       #self.debug_displayHardwareCPUSnapshot(frame_number)
+
       self.m_current_frame_number = frame_number
       self.m_current_genome = self.m_frames.m_genome_info[self.m_current_frame_number]
       displayed_genome_size = max(self.last_copied_instruction_cache[self.m_current_frame_number] + 1, self.m_parent_size)

Modified: branches/developers/avida-edward/source/python/AvidaGui2/pyTimeline.py
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/pyTimeline.py	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/pyTimeline.py	2006-07-04 18:28:05 UTC (rev 796)
@@ -47,6 +47,8 @@
         self.move_flag(flag)
         if self.maxValue() == 0.0:
             flag.widget.hide()
+        else:
+            flag.widget.show()
 
     def move_flag(self, flag):
         "Draw the flag in the proper location"
@@ -61,12 +63,13 @@
         # TODO: figure out proper geometry code
         a = self.width() - 418
         mult = a / (self.maxValue() - self.minValue())
-#        print self.height()
-#        print "frameGeometry: %d" % (self.frameSize().width())
-#        print "size: %d" % (self.width())
-#        print flag.pos * mult
-#        print adj
-#        print borders
+#         print "frameGeometry: %d" % (self.frameSize().width())
+#         print "size: %d" % (self.width())
+#         print flag.pos * mult
+#         print adj
+#         print borders
+#         print "maxValue(): %d" % (self.maxValue())
+#         print "final value: %f" % ((flag.pos * mult) + adj + borders)
         flag.widget.move((flag.pos * mult) + adj + borders, 2)
 
     def removeFlag(self, pos):
@@ -104,4 +107,5 @@
     def reset(self):
         "Reset the timeline, hiding all flags"
         for flag in self.flags:
-            flag.widget.hide()
+            flag.widget.close(True)
+        self.flags = []

Modified: branches/developers/avida-edward/source/python/AvidaGui2/to-do_list
===================================================================
--- branches/developers/avida-edward/source/python/AvidaGui2/to-do_list	2006-07-03 20:22:12 UTC (rev 795)
+++ branches/developers/avida-edward/source/python/AvidaGui2/to-do_list	2006-07-04 18:28:05 UTC (rev 796)
@@ -114,11 +114,7 @@
 
 08-Jun-06 Add printing/saving images to organism and population stats view.
 
-03-Jul-06 Fix analysis mode pop box resizing issues
 03-Jul-06 Delete extra whitespace at top of analysis-mode
-03-Jul-06 Change title to y-axis vs. x-axis
-03-Jul-06 Remove "Drag a Full Petri Dish..." after first dish is dragged
-03-Jul-06 Remove flip arrow on analyze mode
 
 ************Other*****************
 a.	Under the sliders with ranges put a few values in grey that tell you the range min and max (non)
@@ -196,6 +192,10 @@
 30-May-06 Printing of petri dish and of color scale -- Finished 06-Jun-06
 30-May-06 Fill out save image dialog with default filename that includes update and other info -- Finished 19-Jun-06
 12-Jun-06 Add ability to analyze more than one population. -- Finished 22-Jun-06
+03-Jul-06 Fix analysis mode pop box resizing issues -- Finished 04-Jul-06
+03-Jul-06 Remove flip arrow on analyze mode -- Finished 04-Jul-06
+03-Jul-06 Change title to y-axis vs. x-axis -- Finished 04-Jul-06
+03-Jul-06 Remove "Drag a Full Petri Dish..." after first dish is graphed -- Finished 04-Jul-06
 
 
 *************Jeff********************




More information about the Avida-cvs mailing list