[chronojump] fixed bug on not disappearing a test when is deleted



commit 06b86d84afec23550c02cfcd21852ef26dbf5327
Author: Xavier de Blas <xaviblas gmail com>
Date:   Tue Dec 1 22:18:13 2009 +0100

    fixed bug on not disappearing a test when is deleted
    (iter parent was invalid)
    also improved close button on stats

 glade/chronojump.glade |    6 +++---
 src/treeViewEvent.cs   |   14 +++++++++++++-
 2 files changed, 16 insertions(+), 4 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 88a661b..ddd999a 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -3367,6 +3367,7 @@ options</property>
     <child>
       <widget class="GtkVBox" id="vbox_stats">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <property name="spacing">5</property>
         <child>
           <widget class="GtkNotebook" id="notebook1">
@@ -3999,6 +4000,7 @@ options</property>
                     <child>
                       <widget class="GtkVBox" id="vbox196">
                         <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">7</property>
                         <child>
                           <widget class="GtkHBox" id="hbox375">
@@ -4592,8 +4594,6 @@ options</property>
                     <signal name="clicked" handler="on_button_close_clicked"/>
                   </widget>
                   <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
                     <property name="pack_type">end</property>
                     <property name="position">0</property>
                   </packing>
@@ -7661,8 +7661,8 @@ suitable for agility tests)</property>
                                         <property name="receives_default">False</property>
                                         <property name="tooltip" translatable="yes">Edit selected person (E)</property>
                                         <signal name="clicked" handler="on_edit_current_person_clicked"/>
-                                        <accelerator key="E" signal="clicked"/>
                                         <accelerator key="e" signal="clicked" modifiers="GDK_SHIFT_MASK"/>
+                                        <accelerator key="E" signal="clicked"/>
                                         <child>
                                           <widget class="GtkImage" id="image1977">
                                             <property name="visible">True</property>
diff --git a/src/treeViewEvent.cs b/src/treeViewEvent.cs
index c2e6057..24f677f 100644
--- a/src/treeViewEvent.cs
+++ b/src/treeViewEvent.cs
@@ -300,6 +300,14 @@ public class TreeViewEvent
 	{
 		TreeIter iter = new TreeIter();
 		treeview.Model.GetIterFirst ( out iter ) ;
+
+		/*
+		  new GTK# makes IterNext point to an invalid iter if there's no next
+		  then we cannot find parent of iter
+		  with the iterValid, we have the last valid children iter
+		  and we use it to find parent
+		  */
+		TreeIter iterValid = new TreeIter();
 		
 		do {
 			if( treeview.Model.IterHasChild(iter) ) {
@@ -320,8 +328,12 @@ public class TreeViewEvent
 
 						return;
 					}
+					iterValid = iter;
 				} while (treeview.Model.IterNext (ref iter));
-				treeview.Model.IterParent (out iter, iter);
+					
+				iter= iterValid;
+				//bool ok=treeview.Model.IterParent (out iter, iter);
+				bool ok=treeview.Model.IterParent (out iter, iter);
 			}
 		} while (treeview.Model.IterNext (ref iter));
 	}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]