[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/designer/src LayoutEditor.py MenuBar.py Tr...
From: |
Jason Cater |
Subject: |
gnue/designer/src LayoutEditor.py MenuBar.py Tr... |
Date: |
Thu, 12 Jul 2001 15:51:08 -0700 |
CVSROOT: /home/cvs
Module name: gnue
Changes by: Jason Cater <address@hidden> 01/07/12 15:51:08
Modified files:
designer/src : LayoutEditor.py MenuBar.py TreeView.py
Added files:
designer/src : PopupMenu.py
Log message:
Fixed 'Right-Click|Edit Properties...' locking bug; removed Popup menu
code from MenuBar.py and placed in its own file; fixed misc focus bugs
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/PopupMenu.py?cvsroot=OldCVS&rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/LayoutEditor.py.diff?cvsroot=OldCVS&tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/MenuBar.py.diff?cvsroot=OldCVS&tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/designer/src/TreeView.py.diff?cvsroot=OldCVS&tr1=1.6&tr2=1.7&r1=text&r2=text
Patches:
Index: gnue/designer/src/LayoutEditor.py
diff -u gnue/designer/src/LayoutEditor.py:1.15
gnue/designer/src/LayoutEditor.py:1.16
--- gnue/designer/src/LayoutEditor.py:1.15 Tue Jul 3 18:43:11 2001
+++ gnue/designer/src/LayoutEditor.py Thu Jul 12 15:51:08 2001
@@ -299,13 +299,14 @@
for widget in self.mainWidget.widgets:
widget.SetCursor (wxSTANDARD_CURSOR)
- if isinstance(widget, wxControl):
+ if isinstance(widget, wxWindow):
widget.Enable(0)
self.setAllChildren(EVT_KEY_UP, widget, self.instance.keyTrap)
self.setAllChildren(EVT_SET_FOCUS, widget, self.focusGainedTrap)
self.setAllChildren(EVT_KILL_FOCUS, widget, self.focusLostTrap)
self.setAllChildren(EVT_LEFT_UP, widget, self.OnLeftUp)
self.setAllChildren(EVT_LEFT_DOWN, widget, self.OnLeftDown)
+ self.setAllChildren(EVT_RIGHT_DOWN, widget, self.OnRightDown)
self.setAllChildren(EVT_RIGHT_UP, widget, self.OnRightUp)
self.setAllChildren(EVT_MOTION, widget, self.instance.OnMotion)
@@ -353,10 +354,12 @@
self.setAllChildren(event, child, trap)
def focusGainedTrap(self, event):
+ self.instance.panel.SetFocus()
pass
+# event.Skip()
def focusLostTrap(self, event):
- pass
+ event.Skip()
def OnLeftDown(self, event):
# self.instance.panel.CaptureMouse()
@@ -377,9 +380,12 @@
def OnLeftUp(self, event):
pass
# self.instance.panel.ReleaseMouse()
+
+ def OnRightDown(self, event):
+ pass
def OnRightUp(self, event):
- pt = event.GetPosition()
+ pt = event.GetPositionTuple()
self.instance._instance.onSetCurrentObject(self.object, None)
wxPyTypeCast(event.GetEventObject(),'wxWindow') \
.PopupMenu(self.object._popupMenu, pt)
Index: gnue/designer/src/MenuBar.py
diff -u gnue/designer/src/MenuBar.py:1.10 gnue/designer/src/MenuBar.py:1.11
--- gnue/designer/src/MenuBar.py:1.10 Thu Jul 12 11:53:26 2001
+++ gnue/designer/src/MenuBar.py Thu Jul 12 15:51:08 2001
@@ -98,185 +98,3 @@
def lastToolAdded(self):
self._window.AppendSeparator()
-
-class ObjectMenu(wxMenu):
- def __init__(self, instance, object):
- wxMenu.__init__(self, "Object Tasks...")
-
- self.object = object
- self.instance = instance
- self._newMap = {}
-
- if object == None:
- id = wxNewId()
- self.Append(id, "New Data Source")
- EVT_MENU(self, id, self.OnCreateDataSource)
- id = wxNewId()
- self.Append(id, "New Shared Trigger")
- EVT_MENU(self, id, self.OnCreateNamedTrigger)
- id = wxNewId()
- self.Append(id, "New Layout Page")
- EVT_MENU(self, id, self.OnCreatePage)
- else:
-
- # New >
-
- menu = wxMenu("New...")
-
- id = wxNewId()
- menu.Append(id, "Data Source")
- EVT_MENU(menu, id, self.OnCreateDataSource)
- id = wxNewId()
- menu.Append(id, "Shared Trigger")
- EVT_MENU(menu, id, self.OnCreateNamedTrigger)
- id = wxNewId()
- menu.Append(id, "Layout Page")
- EVT_MENU(menu, id, self.OnCreatePage)
-
- menu.AppendSeparator()
-
- tag = string.lower(object.getObjectType()[2:])
- if Incubator.elementMapping.has_key(tag):
- Incubator.elementMapping[tag].sort()
- for element in Incubator.elementMapping[tag]:
- tid = wxNewId()
- self._newMap[tid] = element
- menu.Append(tid, element)
- EVT_MENU(menu, tid, self.OnCreateObject)
- self.AppendMenu(wxNewId(), "&New", menu)
-
- # Properties
- id = wxNewId()
- self.Append(id, "&Properties...")
- EVT_MENU(self, id, self.OnEditProperties)
-
- if not isinstance (object, GFForm.GFForm):
- # Delete
- id = wxNewId()
- self.Append(id, "&Delete %s" % object.getObjectType()[2:])
- EVT_MENU(self, id, self.OnDeleteObject)
-
- self.AppendSeparator()
-
- # Events >
- if isinstance (object, GFTrigger.GFTriggerAware):
- menu = wxMenu("Events...")
- self._triggerMap = {}
- keys = GFTrigger.VALIDTRIGGERS.keys()
- keys.sort()
- for trigger in (keys):
- tid = wxNewId()
- self._triggerMap[tid] = trigger
- menu.Append(tid, GFTrigger.VALIDTRIGGERS[trigger] + "...")
- EVT_MENU(menu, tid, self.OnEditEvent)
- self.AppendMenu(wxNewId(), "&Events", menu)
-
- self.AppendSeparator()
-
- if isinstance(object, GFObjects.GFPage) or \
- isinstance(object, GFObjects.GFBlock):
- # Reorder
- id = wxNewId()
- self.Append(id, "&Reorder by Location")
- EVT_MENU(self, id, self.OnReorderLayout)
-
- def OnEditProperties(self, event):
- self.instance.propertyEditorWindow.Show(1)
- self.instance.propertyEditorWindow.Raise()
-
- def OnEditEvent(self, event):
- pass
-
- def OnDeleteObject(self, event):
- Incubator.deleteObject(self.instance, self.instance._form, self.object)
-
- def OnReorderLayout(self, event):
- unqId = 0
- hiddenObjects = []
- boxObjects = {}
- navObjects = {}
- blockObjects = {}
- self.object._upperX = 99999
- self.object._upperY = 99999
-
- # Handle each child (note we are working from a copy
- # because self.oject._children will be morphing
- for object in self.object._children[:]:
- if hasattr(object, 'hidden') and object.hidden:
- hiddenObjects.append(object)
- elif object.getObjectType() == 'GFBlock':
- object._popupMenu.OnReorderLayout(event)
- object.__savedChildren = object._children[:]
- for o2 in object.__savedChildren:
- self.instance.onDeleteObject(o2, __name__)
-
- oid = "%5d.%5d.%5d" % (object._upperY, object._upperX, unqId)
- unqId = unqId + 1
- blockObjects[oid] = object
-
- else:
- if hasattr(object,'y') and object.y < self.object._upperY:
- self.object._upperY = object.y
- if hasattr(object,'x') and object.x < self.object._upperX:
- self.object._upperX = object.x
-
- oid = "%5d.%5d.%5d" % (object.y, object.x, unqId)
- unqId = unqId + 1
- if object.getObjectType() == 'GFBox':
- boxObjects[oid] = object
- else:
- navObjects[oid] = object
-
- # Notify everyone that this object was deleted
- self.instance.onDeleteObject(object, __name__)
-
- self.object._children = []
- # First, add back hidden objects all
- for object in hiddenObjects:
- self.object._children.append(object)
- self.instance.onCreateObject(object, __name__)
-
- # Now, add hidden objects
- boxes = boxObjects.keys()
- boxes.sort()
- for box in boxes:
- self.object._children.append(boxObjects[box])
- self.instance.onCreateObject(boxObjects[box], __name__)
-
- # The rest of the objects (other than blocks) go here
- nav = navObjects.keys()
- nav.sort()
- for n in nav:
- self.object._children.append(navObjects[n])
- self.instance.onCreateObject(navObjects[n], __name__)
-
- # And, finally, any child blocks
- blocks = blockObjects.keys()
- blocks.sort()
- for block in blocks:
- children = blockObjects[block].__savedChildren[:]
- self.object._children.append(blockObjects[block])
- self.instance.onCreateObject(blockObjects[block], __name__)
- for child in children:
- blockObjects[block]._children.append(child)
- self.instance.onCreateObject(child,__name__)
-
-
- def OnCreateObject(self, event):
- GDebug.printMesg(3, "Creating Object")
- tag = self._newMap[event.GetId()]
- Incubator.createObject(self.instance, self.instance._form, tag,
- parentHint=self.object)
-
- def OnCreateDataSource(self, event):
- Incubator.createObject(self.instance, self.instance._form, 'datasource')
-
- def OnCreateNamedTrigger(self, event):
- Incubator.createObject(self.instance, self.instance._form, 'trigger')
-
- def OnCreatePage(self, event):
- Incubator.createObject(self.instance, self.instance._form, 'page')
-
-
-
-
Index: gnue/designer/src/TreeView.py
diff -u gnue/designer/src/TreeView.py:1.6 gnue/designer/src/TreeView.py:1.7
--- gnue/designer/src/TreeView.py:1.6 Fri Jun 22 06:16:35 2001
+++ gnue/designer/src/TreeView.py Thu Jul 12 15:51:08 2001
@@ -31,7 +31,7 @@
from gnue.common import GDebug, GConfig
from gnue.forms import GFForm, GFInstance, GFParser, GFObjects, GFTrigger,
GFLibrary, UIwxpython
from GFDesigner import *
-from MenuBar import ObjectMenu
+from PopupMenu import ObjectMenu
class TreeView (wxTreeCtrl):
def __init__(self, instance, form, parent):
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/designer/src LayoutEditor.py MenuBar.py Tr...,
Jason Cater <=