commit-gnue
[Top][All Lists]
Advanced

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

gnue/designer BUGS src/LayoutEditor.py


From: Jason Cater
Subject: gnue/designer BUGS src/LayoutEditor.py
Date: Sat, 28 Jul 2001 21:36:30 -0700

CVSROOT:        /home/cvs
Module name:    gnue
Changes by:     Jason Cater <address@hidden>    01/07/28 21:36:30

Modified files:
        designer       : BUGS 
        designer/src   : LayoutEditor.py 

Log message:
        Fixed Drop-Down page selection combo bug (i.e., segfaulting when using 
Page dropdown); fixed bug on object creation that caused the previously 
selected objects in the layout editor to continue be selected after new object 
created; misc other fixes.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/BUGS.diff?cvsroot=OldCVS&tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/LayoutEditor.py.diff?cvsroot=OldCVS&tr1=1.19&tr2=1.20&r1=text&r2=text

Patches:
Index: gnue/designer/BUGS
diff -u gnue/designer/BUGS:1.2 gnue/designer/BUGS:1.3
--- gnue/designer/BUGS:1.2      Sun Jul  1 17:38:23 2001
+++ gnue/designer/BUGS  Sat Jul 28 21:36:30 2001
@@ -1,10 +1,5 @@
-These are known issues with Designer 0.0.1 
+These are known issues with Designer 0.0.2 
 
-* Using the dropdown page selector box on the layout screen may cause
-  a segfault. 
-
-* Sometimes (but not always) right clicking an object and selecting 
-  "Edit Properties..." will lock up the application. 
 
 * The Events tab on the "Property Editor" window is not functional. 
   It currently displays the same information as on the "Properties" 
Index: gnue/designer/src/LayoutEditor.py
diff -u gnue/designer/src/LayoutEditor.py:1.19 
gnue/designer/src/LayoutEditor.py:1.20
--- gnue/designer/src/LayoutEditor.py:1.19      Sat Jul 28 21:12:14 2001
+++ gnue/designer/src/LayoutEditor.py   Sat Jul 28 21:36:30 2001
@@ -81,14 +81,18 @@
     if hasattr(object, '_widgetHandler'): 
       self.propBar.setCurrentObject(object)
     if handler != __name__: 
-      if isinstance(object, GFObjects.GFPage) and object != self.page: 
-        if self.panel != None: 
-          self.panel.Destroy()
-          self.drawPage(object)
-      else: 
-        for o in self._currentSelection.keys():
-          o.setSelected(0)
-        object.walk(self.__setCurrentObject)
+      self.getPages()
+      self._setCurrentPage(object)
+
+  def _setCurrentPage(self, object): 
+    if isinstance(object, GFObjects.GFPage) and object != self.page: 
+      if self.panel != None: 
+        self.panel.Destroy()
+        self.drawPage(object)
+    else: 
+      for o in self._currentSelection.keys():
+        o.setSelected(0)
+      object.walk(self.__setCurrentObject)
 
   def __setCurrentObject(self,object): 
     if hasattr(object, '_widgetHandler'): 
@@ -96,6 +100,7 @@
       object._widgetHandler.setSelected(1)
 
   def onCreateObject (self, object, handler):
+    self._currentSelection = {}
     if object == None: 
       return
     if handler != __name__:
@@ -130,8 +135,6 @@
                  self.panelColor.Green()+16,    
                  self.panelColor.Blue()+16)
 
-    self.getPages()
-
     UIwxpython.initFont(self.panel)
 
     maxWidth, maxHeight, maxDescent, maxLeading = [0,0,0,0]
@@ -231,7 +234,8 @@
   def OnPageSelected(self, event): 
     p = self._instance._pages[event.GetSelection()]
     if p != self.page:
-      self._instance.onSetCurrentObject(p, None)
+      self._instance.onSetCurrentObject(p, __name__)
+    self._setCurrentPage(p)
 
 
   def OnBlockSelected(self, event): 
@@ -253,8 +257,6 @@
        self._currentObject.findParentOfType('GFPage')
     block = self._currentObject.getObjectType() == 'GFBlock' and 
self._currentObject or \
        self._currentObject.findParentOfType('GFBlock')
-
-    print form, page, block   
 
     menu.AppendMenu(wxNewId(), 'Form', PageMenu(self._instance, form, x, y))
     if page: 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]