--- a/Dialogs.py Thu Aug 23 09:50:35 2007 +0200
+++ b/Dialogs.py Mon Aug 27 17:37:50 2007 +0200
@@ -296,24 +296,25 @@
dc = wx.ClientDC(self.Preview)
dc.Clear()
item = self.TypeTree.GetSelection()
- pydata = self.TypeTree.GetPyData(item)
- if pydata["type"] == CATEGORY:
- self.Block = None
- else:
- blocktype = self.TypeTree.GetItemText(item)
- if blocktype:
- self.Block = FBD_Block(self.Preview, blocktype, self.Name.GetValue(), extension = self.Inputs.GetValue(), inputs = pydata["inputs"])
- width, height = self.MinBlockSize
- min_width, min_height = self.Block.GetMinSize()
- width, height = max(min_width, width), max(min_height, height)
- self.Block.SetSize(width, height)
- clientsize = self.Preview.GetClientSize()
- x = (clientsize.width - width) / 2
- y = (clientsize.height - height) / 2
- self.Block.SetPosition(x, y)
- self.Block.Draw(dc)
+ if item.IsOk():
+ pydata = self.TypeTree.GetPyData(item)
+ if pydata["type"] == CATEGORY:
+ self.Block = None
else:
- self.Block = None
+ blocktype = self.TypeTree.GetItemText(item)
+ if blocktype:
+ self.Block = FBD_Block(self.Preview, blocktype, self.Name.GetValue(), extension = self.Inputs.GetValue(), inputs = pydata["inputs"])
+ width, height = self.MinBlockSize
+ min_width, min_height = self.Block.GetMinSize()
+ width, height = max(min_width, width), max(min_height, height)
+ self.Block.SetSize(width, height)
+ clientsize = self.Preview.GetClientSize()
+ x = (clientsize.width - width) / 2
+ y = (clientsize.height - height) / 2
+ self.Block.SetPosition(x, y)
+ self.Block.Draw(dc)
+ else:
+ self.Block = None
def OnPaint(self, event):
if self.Block:
@@ -1363,10 +1364,11 @@
[ID_TRANSITIONCONTENTDIALOG, ID_TRANSITIONCONTENTDIALOGSPACER,
ID_TRANSITIONCONTENTDIALOGREFERENCE, ID_TRANSITIONCONTENTDIALOGINLINE,
- ID_TRANSITIONCONTENTDIALOGPREVIEW, ID_TRANSITIONCONTENTDIALOGRADIOBUTTON1,
- ID_TRANSITIONCONTENTDIALOGRADIOBUTTON2, ID_TRANSITIONCONTENTDIALOGRADIOBUTTON3,
- ID_TRANSITIONCONTENTDIALOGSTATICTEXT1, ID_TRANSITIONCONTENTDIALOGSTATICTEXT2,
-] = [wx.NewId() for _init_ctrls in range(10)]
+ ID_TRANSITIONCONTENTDIALOGPRIORITY, ID_TRANSITIONCONTENTDIALOGPREVIEW,
+ ID_TRANSITIONCONTENTDIALOGRADIOBUTTON1, ID_TRANSITIONCONTENTDIALOGRADIOBUTTON2,
+ ID_TRANSITIONCONTENTDIALOGRADIOBUTTON3, ID_TRANSITIONCONTENTDIALOGSTATICTEXT1,
+ ID_TRANSITIONCONTENTDIALOGSTATICTEXT2, ID_TRANSITIONCONTENTDIALOGSTATICTEXT3,
+] = [wx.NewId() for _init_ctrls in range(12)]
class TransitionContentDialog(wx.Dialog):
def _init_coll_flexGridSizer1_Items(self, parent):
@@ -1388,6 +1390,8 @@
parent.AddWindow(self.radioButton2, 0, border=0, flag=wx.GROW)
parent.AddWindow(self.Inline, 0, border=0, flag=wx.GROW)
parent.AddWindow(self.radioButton3, 0, border=0, flag=wx.GROW)
+ parent.AddWindow(self.staticText3, 0, border=0, flag=wx.GROW)
+ parent.AddWindow(self.Priority, 0, border=0, flag=wx.GROW)
parent.AddWindow(self.Spacer, 0, border=0, flag=wx.GROW)
def _init_coll_LeftGridSizer_Growables(self, parent):
@@ -1405,7 +1409,7 @@
def _init_sizers(self):
self.flexGridSizer1 = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10)
self.MainSizer = wx.BoxSizer(wx.HORIZONTAL)
- self.LeftGridSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=7, vgap=5)
+ self.LeftGridSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=9, vgap=5)
self.RightGridSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
self._init_coll_flexGridSizer1_Items(self.flexGridSizer1)
@@ -1421,9 +1425,9 @@
def _init_ctrls(self, prnt):
wx.Dialog.__init__(self, id=ID_TRANSITIONCONTENTDIALOG,
name='ProjectDialog', parent=prnt, pos=wx.Point(376, 223),
- size=wx.Size(350, 260), style=wx.DEFAULT_DIALOG_STYLE,
+ size=wx.Size(350, 300), style=wx.DEFAULT_DIALOG_STYLE,
title='Edit transition')
- self.SetClientSize(wx.Size(350, 260))
+ self.SetClientSize(wx.Size(350, 300))
self.staticText1 = wx.StaticText(id=ID_TRANSITIONCONTENTDIALOGSTATICTEXT1,
label='Type:', name='staticText1', parent=self,
@@ -1433,6 +1437,10 @@
label='Preview:', name='staticText2', parent=self,
pos=wx.Point(0, 0), size=wx.Size(0, 17), style=0)
+ self.staticText3 = wx.StaticText(id=ID_TRANSITIONCONTENTDIALOGSTATICTEXT3,
+ label='Priority:', name='staticText3', parent=self,
+ pos=wx.Point(0, 0), size=wx.Size(0, 17), style=0)
+
self.radioButton1 = wx.RadioButton(id=ID_TRANSITIONCONTENTDIALOGRADIOBUTTON1,
label='Reference', name='radioButton1', parent=self,
pos=wx.Point(0, 0), size=wx.Size(0, 24), style=0)
@@ -1463,6 +1471,11 @@
if not self.Connection:
self.radioButton3.Hide()
+ self.Priority = wx.SpinCtrl(id=ID_TRANSITIONCONTENTDIALOGPRIORITY,
+ name='Priority', parent=self, pos=wx.Point(0, 0),
+ size=wx.Size(0, 24), style=wx.SP_ARROW_KEYS, min=0)
+ self.Bind(wx.EVT_TEXT, self.OnPriorityChanged, id=ID_TRANSITIONCONTENTDIALOGPRIORITY)
+
self.Preview = wx.Panel(id=ID_TRANSITIONCONTENTDIALOGPREVIEW,
name='Preview', parent=self, pos=wx.Point(0, 0),
size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL|wx.SIMPLE_BORDER)
@@ -1541,6 +1554,11 @@
self.RefreshPreview()
event.Skip()
+ def OnPriorityChanged(self, event):
+ self.Element.SetPriority(int(self.Priority.GetValue()))
+ self.RefreshPreview()
+ event.Skip()
+
def SetTransitions(self, transitions):
self.Reference.Append("")
for transition in transitions:
@@ -1570,10 +1588,11 @@
self.Reference.Enable(False)
self.Inline.Enable(False)
self.Element.SetType("connection")
+ self.Element.SetPriority(values["priority"])
self.RefreshPreview()
def GetValues(self):
- values = {}
+ values = {"priority" : int(self.Priority.GetValue())}
if self.radioButton1.GetValue():
values["type"] = "reference"
values["value"] = self.Reference.GetStringSelection()