--- a/PLCOpenEditor.py Fri Apr 06 18:06:00 2007 +0200
+++ b/PLCOpenEditor.py Tue Apr 10 18:02:40 2007 +0200
@@ -345,6 +345,38 @@
self._init_utils()
self.SetClientSize(wx.Size(1000, 600))
self.SetMenuBar(self.menuBar1)
+
+ self.splitterWindow1 = wx.SplitterWindow(id=wxID_PLCOPENEDITORSPLITTERWINDOW1,
+ name='splitterWindow1', parent=self, point=wx.Point(0, 0),
+ size=wx.Size(-1, -1), style=wx.SP_3D)
+ self.splitterWindow1.SetNeedUpdating(True)
+ self.splitterWindow1.SetMinimumPaneSize(1)
+
+ self.EditorPanel = wx.Panel(id=wxID_PLCOPENEDITOREDITORPANEL,
+ name='TabPanel', parent=self.splitterWindow1, pos=wx.Point(0, 0),
+ size=wx.Size(-1, -1), style=wx.TAB_TRAVERSAL)
+
+ self.TabsOpened = wx.Notebook(id=wxID_PLCOPENEDITORTABSOPENED,
+ name='TabsOpened', parent=self.EditorPanel, pos=wx.Point(0,
+ 0), size=wx.Size(-1, -1), style=0)
+ self.TabsOpened.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED,
+ self.OnPouSelectedChanged, id=wxID_PLCOPENEDITORTABSOPENED)
+
+ self.ToolBar = wxToolBar(id=wxID_PLCOPENEDITORTOOLBAR, name='ToolBar',
+ parent=self.EditorPanel, pos=wx.Point(0, 0), size=wx.Size(0, 40),
+ style=wxTB_HORIZONTAL | wxNO_BORDER)
+ self.ToolBar.AddRadioTool(wxID_PLCOPENEDITORTOOLBARITEMS0,
+ wxBitmap(os.path.join(CWD, 'Images/select.png')), wxNullBitmap, "Select an object")
+ self.Bind(wx.EVT_TOOL, self.OnSelectionTool,
+ id=wxID_PLCOPENEDITORTOOLBARITEMS0)
+
+ self.ProjectTree = wx.TreeCtrl(id=wxID_PLCOPENEDITORPROJECTTREE,
+ name='treeCtrl1', parent=self.splitterWindow1, pos=wx.Point(0, 0),
+ size=wx.Size(-1, -1),
+ style=wx.TR_HAS_BUTTONS|wx.TR_EDIT_LABELS|wx.TR_SINGLE|wx.SUNKEN_BORDER)
+ self.Bind(wx.EVT_RIGHT_UP, self.OnProjectTreeRightUp)
+ self.Bind(wx.EVT_TREE_BEGIN_DRAG, self.OnProjectTreeBeginDrag,
+ id=wxID_PLCOPENEDITORPROJECTTREE)
self.Bind(wx.EVT_TREE_BEGIN_LABEL_EDIT, self.OnProjectTreeItemBeginEdit,
id=wxID_PLCOPENEDITORPROJECTTREE)
self.Bind(wx.EVT_TREE_END_LABEL_EDIT, self.OnProjectTreeItemEndEdit,
@@ -353,36 +385,6 @@
id=wxID_PLCOPENEDITORPROJECTTREE)
self.Bind(wx.EVT_TREE_SEL_CHANGED, self.OnProjectTreeItemSelected,
id=wxID_PLCOPENEDITORPROJECTTREE)
-
- self.splitterWindow1 = wx.SplitterWindow(id=wxID_PLCOPENEDITORSPLITTERWINDOW1,
- name='splitterWindow1', parent=self, point=wx.Point(0, 0),
- size=wx.Size(-1, -1), style=wx.SP_3D)
- self.splitterWindow1.SetNeedUpdating(True)
- self.splitterWindow1.SetMinimumPaneSize(1)
-
- self.EditorPanel = wx.Panel(id=wxID_PLCOPENEDITOREDITORPANEL,
- name='TabPanel', parent=self.splitterWindow1, pos=wx.Point(0, 0),
- size=wx.Size(-1, -1), style=wx.TAB_TRAVERSAL)
-
- self.TabsOpened = wx.Notebook(id=wxID_PLCOPENEDITORTABSOPENED,
- name='TabsOpened', parent=self.EditorPanel, pos=wx.Point(0,
- 0), size=wx.Size(-1, -1), style=0)
- self.TabsOpened.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED,
- self.OnPouSelectedChanged, id=wxID_PLCOPENEDITORTABSOPENED)
-
- self.ToolBar = wxToolBar(id=wxID_PLCOPENEDITORTOOLBAR, name='ToolBar',
- parent=self.EditorPanel, pos=wx.Point(0, 0), size=wx.Size(0, 40),
- style=wxTB_HORIZONTAL | wxNO_BORDER)
- self.ToolBar.AddRadioTool(wxID_PLCOPENEDITORTOOLBARITEMS0,
- wxBitmap(os.path.join(CWD, 'Images/select.png')), wxNullBitmap, "Select an object")
- self.Bind(wx.EVT_TOOL, self.OnSelectionTool,
- id=wxID_PLCOPENEDITORTOOLBARITEMS0)
-
- self.ProjectTree = wx.TreeCtrl(id=wxID_PLCOPENEDITORPROJECTTREE,
- name='treeCtrl1', parent=self.splitterWindow1, pos=wx.Point(0, 0),
- size=wx.Size(-1, -1),
- style=wx.TR_HAS_BUTTONS|wx.TR_EDIT_LABELS|wx.TR_SINGLE|wx.SUNKEN_BORDER)
- self.ProjectTree.Bind(wx.EVT_RIGHT_UP, self.OnProjectTreeRightUp)
self.splitterWindow1.SplitVertically(self.ProjectTree, self.EditorPanel,
200)
@@ -662,7 +664,7 @@
def OnLDBlockTool(self, event):
selected = self.TabsOpened.GetSelection()
if selected != -1:
- pass
+ self.TabsOpened.GetPage(selected).AddBlock()
event.Skip()
def OnLDBranchTool(self, event):
@@ -688,6 +690,15 @@
self.RefreshToolBar()
event.Skip()
+ def OnProjectTreeBeginDrag(self, event):
+ item = event.GetItem()
+ if self.ProjectTree.GetPyData(item) == ITEM_VARIABLE:
+ data = wxTextDataObject(self.ProjectTree.GetItemText(item))
+ dragSource = wxDropSource(self.ProjectTree)
+ dragSource.SetData(data)
+ dragSource.DoDragDrop()
+ event.Skip()
+
def OnProjectTreeItemEndEdit(self, event):
message = None
abort = False