[Avida-cvs] [Avida2-svn] r80 - trunk/source/python/AvidaGui2
jclune at myxo.css.msu.edu
jclune at myxo.css.msu.edu
Mon Mar 28 12:30:48 PST 2005
Author: jclune
Date: 2005-03-28 15:30:48 -0500 (Mon, 28 Mar 2005)
New Revision: 80
Modified:
trunk/source/python/AvidaGui2/checkuic.py
trunk/source/python/AvidaGui2/pyOnePop_StatsCtrl.py
trunk/source/python/AvidaGui2/pyOnePop_StatsView.ui
trunk/source/python/AvidaGui2/pyPetriDishCtrl.py
Log:
Added the ability to click on an organism and have it tell you about the organism. It no longer crashes pre-run...and it also updates the info every update...and lets you know if youc licked on a blank cell.
Modified: trunk/source/python/AvidaGui2/checkuic.py
===================================================================
--- trunk/source/python/AvidaGui2/checkuic.py 2005-03-28 19:48:49 UTC (rev 79)
+++ trunk/source/python/AvidaGui2/checkuic.py 2005-03-28 20:30:48 UTC (rev 80)
@@ -42,7 +42,7 @@
if time_diff > 0:
print ui_name + ' ' + time.ctime(ui_stat.st_mtime)
print py_name + ' ' + time.ctime(py_stat.st_mtime)
- command = "pyuic " + ui_name + " > " + py_name
+ command = "./pyuic " + ui_name + " > " + py_name
response = raw_input(command + "? (y/n) ")
response = response.upper()
response = response.strip()
@@ -50,7 +50,7 @@
os.system(command)
else:
print "No file " + py_name + " exists"
- command = "pyuic " + ui_name + " > " + py_name
+ command = "./pyuic " + ui_name + " > " + py_name
response = raw_input(command + "? (y/n) ")
response = response.upper()
response = response.strip()
Modified: trunk/source/python/AvidaGui2/pyOnePop_StatsCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyOnePop_StatsCtrl.py 2005-03-28 19:48:49 UTC (rev 79)
+++ trunk/source/python/AvidaGui2/pyOnePop_StatsCtrl.py 2005-03-28 20:30:48 UTC (rev 80)
@@ -15,6 +15,10 @@
self.connect(
self.m_session_mdl.m_session_mdtr, PYSIGNAL("setAvidaSig"),
self.setAvidaSlot)
+ self.connect(
+ self.m_session_mdl.m_session_mdtr, PYSIGNAL("orgClickedOnSig"),
+ self.updateOrgReportSlot)
+ self.clickedCellNumber = -99
def setAvidaSlot(self, avida):
old_avida = self.m_avida
@@ -103,3 +107,58 @@
self.m_num_equals.setText(QString("yes"))
else:
self.m_num_equals.setText(QString("no"))
+
+ if self.clickedCellNumber>= 0:
+ self.updateOrgReportSlot(self.clickedCellNumber)
+
+
+
+ def updateOrgReportSlot(self, clickedCellNum):
+ print "an organism was just clicked on!"
+
+ self.clickedCellNumber = clickedCellNum
+
+ clickedCell = self.m_avida.m_population.GetCell(int(clickedCellNum))
+
+ print "clickedCell.IsOccupied() returns "
+ print clickedCell.IsOccupied()
+
+ if not clickedCell.IsOccupied():
+ #PAINT the stats fields empty
+ self.m_org_name.setText('empty cell')
+ self.m_org_fitness.setText('-')
+# self.m_cur_task_count.setText('-')
+# self.m_org_genome_length.setText('-')
+ self.m_org_gestation_time.setText('-')
+ self.m_org_age.setText('-')
+ return
+
+ organism = clickedCell.GetOrganism()
+ phenotype = organism.GetPhenotype()
+ genotype = organism.GetGenotype()
+
+ m_org_fitness = phenotype.GetFitness()
+ self.m_org_fitness.setText(QString("%1").arg(m_org_fitness))
+
+ m_org_name = genotype.GetName()
+ self.m_org_name.setText(str(m_org_name))
+
+# self.m_org_name.setText(('-'))
+
+# m_cur_task_count = phenotype.GetCurTaskCount().GetSize()
+# print "m_cur_task_count is "
+# print m_cur_task_count(1)
+
+# if we want to display length
+# m_org_genome_length = phenotype.GetGenomeLength()
+# print "m_org_genome_length is %f" %(m_org_genome_length)
+# self.m_org_genome_length.setText(QString("%1").arg(m_org_genome_length))
+
+ m_org_gestation_time = phenotype.GetGestationTime()
+ self.m_org_gestation_time.setText(QString("%1").arg(m_org_gestation_time))
+
+ m_org_age = phenotype.GetAge()
+ self.m_org_age.setText(QString("%1").arg(m_org_age))
+
+
+
Modified: trunk/source/python/AvidaGui2/pyOnePop_StatsView.ui
===================================================================
--- trunk/source/python/AvidaGui2/pyOnePop_StatsView.ui 2005-03-28 19:48:49 UTC (rev 79)
+++ trunk/source/python/AvidaGui2/pyOnePop_StatsView.ui 2005-03-28 20:30:48 UTC (rev 80)
@@ -23,498 +23,99 @@
<property name="caption">
<string>pyOnePop_StatsView</string>
</property>
- <vbox>
+ <hbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<property name="name">
- <cstring>layout55</cstring>
+ <cstring>layout46</cstring>
</property>
- <hbox>
+ <vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QLayoutWidget">
+ <widget class="QGroupBox">
<property name="name">
- <cstring>layout54</cstring>
+ <cstring>groupBox3</cstring>
</property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="title">
+ <string>Task Outlook</string>
+ </property>
<vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QGroupBox">
+ <widget class="QLayoutWidget">
<property name="name">
- <cstring>groupBox3</cstring>
+ <cstring>layout53</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="font">
- <font>
- <pointsize>10</pointsize>
- </font>
- </property>
- <property name="title">
- <string>Task Outlook</string>
- </property>
<vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<property name="name">
- <cstring>layout53</cstring>
+ <cstring>layout20</cstring>
</property>
- <vbox>
+ <hbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QLayoutWidget">
+ <widget class="QLabel">
<property name="name">
- <cstring>layout20</cstring>
+ <cstring>textLabel14</cstring>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel14</cstring>
- </property>
- <property name="font">
- <font>
- <bold>1</bold>
- <underline>1</underline>
- </font>
- </property>
- <property name="text">
- <string>Task</string>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel14_2</cstring>
- </property>
- <property name="font">
- <font>
- <bold>1</bold>
- <underline>1</underline>
- </font>
- </property>
- <property name="text">
- <string>being done?</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout51</cstring>
+ <property name="font">
+ <font>
+ <bold>1</bold>
+ <underline>1</underline>
+ </font>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel14_3</cstring>
- </property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>not</string>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_not</cstring>
- </property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout52</cstring>
+ <property name="text">
+ <string>Task</string>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel4</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>nand</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_nand</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
</widget>
- <widget class="QLayoutWidget">
+ <widget class="QLabel">
<property name="name">
- <cstring>layout9</cstring>
+ <cstring>textLabel14_2</cstring>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel6</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>and</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_and</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout10</cstring>
+ <property name="font">
+ <font>
+ <bold>1</bold>
+ <underline>1</underline>
+ </font>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel17</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>ornot</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_ornot</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout11</cstring>
+ <property name="text">
+ <string>being done?</string>
</property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel10</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>or</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_or</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
</widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout12</cstring>
- </property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel12</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>andnot</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_andnot</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout13</cstring>
- </property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel14_4</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>nor</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_nor</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout14</cstring>
- </property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel16</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>xor</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_xor</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- <widget class="QLayoutWidget">
- <property name="name">
- <cstring>layout15</cstring>
- </property>
- <hbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
- <widget class="QLabel">
- <property name="name">
- <cstring>textLabel18</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>equals</string>
- </property>
- <property name="alignment">
- <set>WordBreak|AlignVCenter|AlignLeft</set>
- </property>
- </widget>
- <widget class="QLabel">
- <property name="name">
- <cstring>m_num_equals</cstring>
- </property>
- <property name="font">
- <font>
- </font>
- </property>
- <property name="text">
- <string>-</string>
- </property>
- </widget>
- </hbox>
- </widget>
- </vbox>
+ </hbox>
</widget>
- <spacer>
- <property name="name">
- <cstring>spacer1</cstring>
- </property>
- <property name="orientation">
- <enum>Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>Minimum</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- </spacer>
- </vbox>
- </widget>
- <widget class="QGroupBox">
- <property name="name">
- <cstring>groupBox5</cstring>
- </property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="font">
- <font>
- <pointsize>11</pointsize>
- </font>
- </property>
- <property name="title">
- <string>Statistics</string>
- </property>
- <vbox>
- <property name="name">
- <cstring>unnamed</cstring>
- </property>
<widget class="QLayoutWidget">
<property name="name">
- <cstring>layout11</cstring>
+ <cstring>layout51</cstring>
</property>
- <grid>
+ <hbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QLabel" row="2" column="0">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_2_2</cstring>
+ <cstring>textLabel14_3</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -524,24 +125,17 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
- </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Num. Orgs:</string>
+ <string>not</string>
</property>
</widget>
- <widget class="QLabel" row="1" column="1">
+ <widget class="QLabel">
<property name="name">
- <cstring>m_dom_merit</cstring>
+ <cstring>m_num_not</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -553,183 +147,334 @@
</property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>0000</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="0" column="1">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout52</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>m_avg_merit</cstring>
+ <cstring>textLabel4</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
+ <property name="text">
+ <string>nand</string>
+ </property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_nand</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>0000</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="1" column="0">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout9</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_2</cstring>
+ <cstring>textLabel6</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
+ <property name="text">
+ <string>and</string>
</property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_and</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Dom. Merit:</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="2" column="1">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout10</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>m_num_orgs</cstring>
+ <cstring>textLabel17</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
+ <property name="text">
+ <string>ornot</string>
+ </property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_ornot</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>0000</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="0" column="0">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout11</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3</cstring>
+ <cstring>textLabel10</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
+ <property name="text">
+ <string>or</string>
</property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_or</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Avg. Merit:</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="3" column="0">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout12</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_2_2_2</cstring>
+ <cstring>textLabel12</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
+ <property name="text">
+ <string>andnot</string>
</property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_andnot</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Avg. Gest:</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="3" column="1">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout13</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>m_avg_gest</cstring>
+ <cstring>textLabel14_4</cstring>
</property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>5</hsizetype>
- <vsizetype>5</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <property name="font">
+ <font>
+ </font>
</property>
+ <property name="text">
+ <string>nor</string>
+ </property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_nor</cstring>
+ </property>
<property name="font">
<font>
- <pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>0000</string>
+ <string>-</string>
</property>
</widget>
- </grid>
+ </hbox>
</widget>
- <spacer>
+ <widget class="QLayoutWidget">
<property name="name">
- <cstring>spacer1_2</cstring>
+ <cstring>layout14</cstring>
</property>
- <property name="orientation">
- <enum>Vertical</enum>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>textLabel16</cstring>
+ </property>
+ <property name="font">
+ <font>
+ </font>
+ </property>
+ <property name="text">
+ <string>xor</string>
+ </property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_xor</cstring>
+ </property>
+ <property name="font">
+ <font>
+ </font>
+ </property>
+ <property name="text">
+ <string>-</string>
+ </property>
+ </widget>
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout15</cstring>
</property>
- <property name="sizeType">
- <enum>Minimum</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
- </spacer>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>textLabel18</cstring>
+ </property>
+ <property name="font">
+ <font>
+ </font>
+ </property>
+ <property name="text">
+ <string>equals</string>
+ </property>
+ <property name="alignment">
+ <set>WordBreak|AlignVCenter|AlignLeft</set>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_num_equals</cstring>
+ </property>
+ <property name="font">
+ <font>
+ </font>
+ </property>
+ <property name="text">
+ <string>-</string>
+ </property>
+ </widget>
+ </hbox>
+ </widget>
</vbox>
</widget>
+ <spacer>
+ <property name="name">
+ <cstring>spacer1</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Minimum</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>16</width>
+ <height>16</height>
+ </size>
+ </property>
+ </spacer>
</vbox>
</widget>
<widget class="QGroupBox">
<property name="name">
- <cstring>groupBox4</cstring>
+ <cstring>groupBox5</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -745,23 +490,251 @@
</font>
</property>
<property name="title">
- <string>Org Report</string>
+ <string>Statistics</string>
</property>
+ <grid>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel" row="1" column="1">
+ <property name="name">
+ <cstring>m_dom_merit</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>0000</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="0" column="1">
+ <property name="name">
+ <cstring>m_avg_merit</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>0000</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="1" column="0">
+ <property name="name">
+ <cstring>textLabel14_3_3_2</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Dom. Merit:</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="2" column="1">
+ <property name="name">
+ <cstring>m_num_orgs</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>0000</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="0" column="0">
+ <property name="name">
+ <cstring>textLabel14_3_3</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Avg. Merit:</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="3" column="0">
+ <property name="name">
+ <cstring>textLabel14_3_3_2_2_2</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Avg. Gest:</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="3" column="1">
+ <property name="name">
+ <cstring>m_avg_gest</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>0000</string>
+ </property>
+ </widget>
+ <widget class="QLabel" row="2" column="0">
+ <property name="name">
+ <cstring>textLabel14_3_3_2_2</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Num. Orgs:</string>
+ </property>
+ </widget>
+ </grid>
+ </widget>
+ </vbox>
+ </widget>
+ <widget class="QGroupBox">
+ <property name="name">
+ <cstring>groupBox4</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>5</hsizetype>
+ <vsizetype>5</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>11</pointsize>
+ </font>
+ </property>
+ <property name="title">
+ <string>Org Report</string>
+ </property>
+ <vbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout32</cstring>
+ </property>
<vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
<widget class="QLayoutWidget">
<property name="name">
- <cstring>layout11_2</cstring>
+ <cstring>layout26</cstring>
</property>
- <grid>
+ <hbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="QLabel" row="2" column="0">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_2_2_3</cstring>
+ <cstring>textLabel14_3_3_3</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -783,12 +756,12 @@
</font>
</property>
<property name="text">
- <string>Age:</string>
+ <string>Name:</string>
</property>
</widget>
- <widget class="QLabel" row="1" column="1">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_3_3_2</cstring>
+ <cstring>m_org_name</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -804,12 +777,22 @@
</font>
</property>
<property name="text">
- <string>not, not, not</string>
+ <string>abcdef</string>
</property>
</widget>
- <widget class="QLabel" row="0" column="1">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout27</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_3_2_2</cstring>
+ <cstring>textLabel14_3_3_2_3</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -819,18 +802,24 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>abcdef</string>
+ <string>Tasks:</string>
</property>
</widget>
- <widget class="QLabel" row="1" column="0">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_2_3</cstring>
+ <cstring>textLabel14_3_3_3_3_2</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -840,24 +829,28 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
- </property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Tasks:</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="2" column="1">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout29</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_3_3_3_2</cstring>
+ <cstring>textLabel14_3_3_2_2_3</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -867,18 +860,24 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
+ <property name="maximumSize">
+ <size>
+ <width>32767</width>
+ <height>40</height>
+ </size>
+ </property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>20 gen.</string>
+ <string>Fitness:</string>
</property>
</widget>
- <widget class="QLabel" row="0" column="0">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_3</cstring>
+ <cstring>m_org_fitness</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -888,22 +887,26 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
- <property name="maximumSize">
- <size>
- <width>32767</width>
- <height>40</height>
- </size>
- </property>
<property name="font">
<font>
<pointsize>10</pointsize>
</font>
</property>
<property name="text">
- <string>Name:</string>
+ <string>-</string>
</property>
</widget>
- <widget class="QLabel" row="3" column="0">
+ </hbox>
+ </widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout30</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
<property name="name">
<cstring>textLabel14_3_3_2_2_2_2</cstring>
</property>
@@ -927,12 +930,12 @@
</font>
</property>
<property name="text">
- <string>Clones:</string>
+ <string>Gestation:</string>
</property>
</widget>
- <widget class="QLabel" row="3" column="1">
+ <widget class="QLabel">
<property name="name">
- <cstring>textLabel14_3_3_3_3_4_2</cstring>
+ <cstring>m_org_gestation_time</cstring>
</property>
<property name="sizePolicy">
<sizepolicy>
@@ -948,11 +951,47 @@
</font>
</property>
<property name="text">
- <string>13 in pop.</string>
+ <string>-</string>
</property>
</widget>
- </grid>
+ </hbox>
</widget>
+ <widget class="QLayoutWidget">
+ <property name="name">
+ <cstring>layout31</cstring>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>textLabel1</cstring>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>Age:</string>
+ </property>
+ </widget>
+ <widget class="QLabel">
+ <property name="name">
+ <cstring>m_org_age</cstring>
+ </property>
+ <property name="font">
+ <font>
+ <pointsize>10</pointsize>
+ </font>
+ </property>
+ <property name="text">
+ <string>-</string>
+ </property>
+ </widget>
+ </hbox>
+ </widget>
<spacer>
<property name="name">
<cstring>spacer1_2_2</cstring>
@@ -972,9 +1011,9 @@
</spacer>
</vbox>
</widget>
- </hbox>
+ </vbox>
</widget>
- </vbox>
+ </hbox>
</widget>
<layoutdefaults spacing="6" margin="11"/>
</UI>
Modified: trunk/source/python/AvidaGui2/pyPetriDishCtrl.py
===================================================================
--- trunk/source/python/AvidaGui2/pyPetriDishCtrl.py 2005-03-28 19:48:49 UTC (rev 79)
+++ trunk/source/python/AvidaGui2/pyPetriDishCtrl.py 2005-03-28 20:30:48 UTC (rev 80)
@@ -1,3 +1,4 @@
+
# -*- coding: utf-8 -*-
from AvidaCore import cConfig
@@ -20,6 +21,7 @@
self.resize(QSize(202,202).expandedTo(self.minimumSizeHint()))
self.clearWState(Qt.WState_Polished)
+
def setAvidaSlot(self, avida):
print "pyPetriDishCtrl.setAvidaSlot() : called."
old_avida = self.m_avida
@@ -57,31 +59,29 @@
self.m_cell_info[x][y].setPen(QPen(QColor(x*255/world_w, y*255/world_h, x*y*255/(world_w*world_h))))
self.m_cell_info[x][y].show()
-
-
def mousePressEvent(self,e):
if e.button() != Qt.LeftButton:
return
print "mouse pressed"
+
+ #if the run has not started yet, do nothing
+ if self.m_avida == None:
+ return
+
a = e.x()
b = e.y()
world_w = cConfig.GetWorldX()
world_h = cConfig.GetWorldY()
- print "world_w is %d, world_h is %d" %(world_w,world_h)
-
-
- print "e.x is %f, e.y is %f" %(a,b)
-
-
- clicked_map_cell_w = round(float(e.x())/2.0)
+ clicked_map_cell_w = round(float(e.x())/2.0)
clicked_map_cell_h = round(float(e.y())/2.0)
-
- print "clicked_map_cell_w is %f, clicked_map_cell_h is %f" %(clicked_map_cell_w,clicked_map_cell_h)
-
-
+ #if the user clicks outside the area that has organisms, do nothing
+ if (clicked_map_cell_w > world_w) or (clicked_map_cell_h > world_h):
+ return
+
+
#get the cell number in avida that corresponds to this coordinate
world_w_mid = world_w/2
world_h_mid = world_h/2
@@ -97,44 +97,17 @@
clickedCellNum = ( (clicked_map_cell_h - (world_h_mid + 1))*world_w ) + world_h_mid + clicked_map_cell_w
elif clicked_map_cell_h < world_h_mid: #if below the spilt
clickedCellNum = ( bottom_left_cell + ( ((clicked_map_cell_h - 1)* world_w) + clicked_map_cell_w) )
- else:
- print "ERROR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
- print "clickedCellNum is %f" %(clickedCellNum)
-# clickedCell = self.m_avida.m_population.GetCell(int(clickedCellNum))
-# print "clickedCell.IsOccupied() returns "
+ clickedCell = self.m_avida.m_population.GetCell(int(clickedCellNum))
+ #broadcast that an organism was clicked on
+ self.m_session_mdl.m_session_mdtr.emit(PYSIGNAL("orgClickedOnSig"), (clickedCellNum,))
- #get the cell number in avida that corresponds to this coordinate
-# world_w_mid = world_w/2
-# world_h_mid = world_h/2
-
-# if clicked_map_cell_h == world_h_mid: #if it is on the y midpoint line that gets split...
-# if clicked_map_cell_w >= world_w_mid: #and it is after the origin (first avida cell)
-# clickedCellNum = clicked_map_cell_w - world_w_mid
-# else:
-# clickedCellNum = (world_h*world_w)+BOTTOMLEFT+clicked_map_cell_w
-# elif clicked_map_cell_h > world_h_mid: #if above the split
-# clickedCellNum = ( (clicked_map_cell_h - (world_h_mid + 1))*world_w ) + clicked_map_cell_w
-# elif clicked_map_cell_h < world_h_mid: #if below the spilt
-# clickedCellNum = ( ( ( (world_h+1)-world_w_mid)*world_w) - world_w_mid) + clicked_map_cell_w
-# else:
-# print "ERROR!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
- clickedCellNum = 20000
- print "clickedCellNum is %f" %(clickedCellNum)
-
- #the line below does not work, delete
- #clickedCell = self.m_avida.m_population.GetCell(int(clicked_map_cell_w) + world_w*int(clicked_map_cell_h))
- clickedCell = self.m_avida.m_population.GetCell(int(clickedCellNum))
- print "clickedCell.IsOccupied() returns "
- print clickedCell.IsOccupied()
-
-
def construct(self, session_mdl):
self.m_session_mdl = session_mdl
self.m_avida = None
More information about the Avida-cvs
mailing list