[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
r5840 - trunk/gnue-designer/src/forms/LayoutEditor
From: |
btami |
Subject: |
r5840 - trunk/gnue-designer/src/forms/LayoutEditor |
Date: |
Thu, 27 May 2004 16:22:45 -0500 (CDT) |
Author: btami
Date: 2004-05-27 16:22:44 -0500 (Thu, 27 May 2004)
New Revision: 5840
Modified:
trunk/gnue-designer/src/forms/LayoutEditor/LayoutEditor.py
trunk/gnue-designer/src/forms/LayoutEditor/ReorderFocus.py
trunk/gnue-designer/src/forms/LayoutEditor/WidgetFocusTab.py
Log:
implemented "Reset Focus Order by Position" in designer
Modified: trunk/gnue-designer/src/forms/LayoutEditor/LayoutEditor.py
===================================================================
--- trunk/gnue-designer/src/forms/LayoutEditor/LayoutEditor.py 2004-05-27
20:54:41 UTC (rev 5839)
+++ trunk/gnue-designer/src/forms/LayoutEditor/LayoutEditor.py 2004-05-27
21:22:44 UTC (rev 5840)
@@ -114,6 +114,7 @@
'ObjectDeleted' : self.onDeleteObject,
'LayoutEditor:ZoomIn' : self.zoomIn,
'LayoutEditor:ZoomOut': self.zoomOut,
+ 'LayoutEditor:AutoArrange' : self.onAutoArrange,
'LayoutEditor:FocusOrder': self.beginFocusOrder,
'Cancel:LayoutEditor:FocusOrder': self.endFocusOrder,
'LayoutEditor:Prepositioning':
self.beginPrePositioningTemplate,
@@ -798,7 +799,25 @@
self.dispatchEvent('LayoutEditor:Select')
self.__wizardrunner.positioned_run(x=x, y=y, width=width, height=height)
+ def onAutoArrange(self, event):
+ mode = self.mode
+ self.mode = 'refocus'
+ if mode == 'move':
+ event.dispatchAfter('Cancel:LayoutEditor:Select')
+ elif mode == 'positioning':
+ self.__wizardrunner.cancel()
+ # Yes, you are reading this right...
+ # I'm triggering the exact event that
+ # triggered this method. Blame it on
+ # the Tuesday night atmospheric crack
+ # levels.
+ self.dispatchEvent('LayoutEditor:AutoArrange')
+ return
+ self.reorderfocus.start(self.page)
+ self.reorderfocus.autoArrange()
+ self.dispatchEvent('LayoutEditor:FocusOrder')
+
def beginFocusOrder(self, event):
mode = self.mode
self.mode = 'refocus'
Modified: trunk/gnue-designer/src/forms/LayoutEditor/ReorderFocus.py
===================================================================
--- trunk/gnue-designer/src/forms/LayoutEditor/ReorderFocus.py 2004-05-27
20:54:41 UTC (rev 5839)
+++ trunk/gnue-designer/src/forms/LayoutEditor/ReorderFocus.py 2004-05-27
21:22:44 UTC (rev 5840)
@@ -43,7 +43,10 @@
i = 0
for tab in self.list:
- tab.setOrder(i)
+ if hasattr(tab.widget, 'focusorder'):
+ tab.setOrder(tab.widget.focusorder)
+ else:
+ tab.setOrder(i)
i += 1
def _buildList(self, object):
@@ -53,7 +56,25 @@
self.list.append(WidgetFocusTab(self.instance, object))
def end(self):
- for object in self.list:
+ while len(self.list):
+ object = self.list.pop()
object.close()
- self.list = []
+ def autoArrange(self):
+ self.list.sort(self.myCmp)
+ i = 0
+ for tab in self.list:
+ tab.setOrder(i)
+ i += 1
+
+ def myCmp(self, a, b):
+ if a.y < b.y:
+ return -1
+ elif a.y > b.y:
+ return 1
+ elif a.x < b.x:
+ return -1
+ elif a.x > b.x:
+ return 1
+ else:
+ return 0
Modified: trunk/gnue-designer/src/forms/LayoutEditor/WidgetFocusTab.py
===================================================================
--- trunk/gnue-designer/src/forms/LayoutEditor/WidgetFocusTab.py
2004-05-27 20:54:41 UTC (rev 5839)
+++ trunk/gnue-designer/src/forms/LayoutEditor/WidgetFocusTab.py
2004-05-27 21:22:44 UTC (rev 5840)
@@ -42,17 +42,18 @@
self.instance = instance
panel = self.instance.visualEditor.panel
self.widget = widget
- x, y = widget._widgetHandler.widget.GetPositionTuple()
- print x,y
- self.label = wxStaticText(panel, -1, "0", pos=(x,y-10))
+ self.x, self.y = widget._widgetHandler.widget.GetPositionTuple()
+ print self.x, self.y
+ self.label = wxStaticText(panel, -1, "0", pos=(self.x, self.y-10))
def setOrder(self, position):
self.position = position
- self.label.SetLabel("%s" % (position+1))
- print "Setting order to %s" % (position+1)
+ self.label.SetLabel("%s" % (position))
+ self.widget.focusorder = position
+ print "Setting order to %s" % (position)
def close(self):
self.instance = None
self.widget = None
-## self.Destroy()
+ self.label.Destroy()
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- r5840 - trunk/gnue-designer/src/forms/LayoutEditor,
btami <=