1 |
1 |
2 import wx |
2 import wx |
3 |
3 |
4 from subindextable import EditingPanel |
4 from subindextable import EditingPanel |
5 from networkedit import NetworkEditorTemplate |
5 from networkedit import NetworkEditorTemplate |
6 from controls import EditorPanel |
6 from ConfTreeNodeEditor import ConfTreeNodeEditor |
7 |
7 |
8 [ID_NETWORKEDITOR, |
8 [ID_NETWORKEDITOR, |
9 ] = [wx.NewId() for _init_ctrls in range(1)] |
9 ] = [wx.NewId() for _init_ctrls in range(1)] |
10 |
10 |
11 [ID_NETWORKEDITORCONFNODEMENUADDSLAVE, ID_NETWORKEDITORCONFNODEMENUREMOVESLAVE, |
11 [ID_NETWORKEDITORCONFNODEMENUADDSLAVE, ID_NETWORKEDITORCONFNODEMENUREMOVESLAVE, |
20 [ID_NETWORKEDITORADDMENUSDOSERVER, ID_NETWORKEDITORADDMENUSDOCLIENT, |
20 [ID_NETWORKEDITORADDMENUSDOSERVER, ID_NETWORKEDITORADDMENUSDOCLIENT, |
21 ID_NETWORKEDITORADDMENUPDOTRANSMIT, ID_NETWORKEDITORADDMENUPDORECEIVE, |
21 ID_NETWORKEDITORADDMENUPDOTRANSMIT, ID_NETWORKEDITORADDMENUPDORECEIVE, |
22 ID_NETWORKEDITORADDMENUMAPVARIABLE, ID_NETWORKEDITORADDMENUUSERTYPE, |
22 ID_NETWORKEDITORADDMENUMAPVARIABLE, ID_NETWORKEDITORADDMENUUSERTYPE, |
23 ] = [wx.NewId() for _init_coll_AddMenu_Items in range(6)] |
23 ] = [wx.NewId() for _init_coll_AddMenu_Items in range(6)] |
24 |
24 |
25 class NetworkEditor(EditorPanel, NetworkEditorTemplate): |
25 class NetworkEditor(ConfTreeNodeEditor, NetworkEditorTemplate): |
26 |
26 |
27 ID = ID_NETWORKEDITOR |
27 ID = ID_NETWORKEDITOR |
28 |
28 |
29 def _init_coll_MainSizer_Items(self, parent): |
29 def _init_coll_MainSizer_Items(self, parent): |
30 parent.AddWindow(self.NetworkNodes, 0, border=5, flag=wx.GROW|wx.ALL) |
30 parent.AddWindow(self.NetworkNodes, 0, border=5, flag=wx.GROW|wx.ALL) |
37 self.MainSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=1, vgap=0) |
37 self.MainSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=1, vgap=0) |
38 |
38 |
39 self._init_coll_MainSizer_Items(self.MainSizer) |
39 self._init_coll_MainSizer_Items(self.MainSizer) |
40 self._init_coll_MainSizer_Growables(self.MainSizer) |
40 self._init_coll_MainSizer_Growables(self.MainSizer) |
41 |
41 |
42 self.Editor.SetSizer(self.MainSizer) |
42 self.ConfNodeEditor.SetSizer(self.MainSizer) |
43 |
43 |
44 def _init_Editor(self, prnt): |
44 def _init_ConfNodeEditor(self, prnt): |
45 self.Editor = wx.Panel(id=-1, parent=prnt, pos=wx.Point(0, 0), |
45 self.ConfNodeEditor = wx.Panel(id=-1, parent=prnt, pos=wx.Point(0, 0), |
46 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
46 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
47 |
47 |
48 NetworkEditorTemplate._init_ctrls(self, self.Editor) |
48 NetworkEditorTemplate._init_ctrls(self, self.ConfNodeEditor) |
49 |
49 |
50 self._init_sizers() |
50 self._init_sizers() |
51 |
51 |
52 def __init__(self, parent, controler, window): |
52 def __init__(self, parent, controler, window): |
53 EditorPanel.__init__(self, parent, "", window, controler) |
53 ConfTreeNodeEditor.__init__(self, parent, controler, window) |
54 NetworkEditorTemplate.__init__(self, controler, window, False) |
54 NetworkEditorTemplate.__init__(self, controler, window, False) |
55 |
55 |
56 img = wx.Bitmap(controler.GetIconPath(), wx.BITMAP_TYPE_PNG).ConvertToImage() |
|
57 self.SetIcon(wx.BitmapFromImage(img.Rescale(16, 16))) |
|
58 |
|
59 self.RefreshNetworkNodes() |
56 self.RefreshNetworkNodes() |
60 self.RefreshBufferState() |
57 self.RefreshBufferState() |
61 |
58 |
62 def __del__(self): |
59 def __del__(self): |
63 self.Controler.OnCloseEditor(self) |
60 self.Controler.OnCloseEditor(self) |
95 pass |
92 pass |
96 |
93 |
97 def RefreshConfNodeMenu(self, confnode_menu): |
94 def RefreshConfNodeMenu(self, confnode_menu): |
98 confnode_menu.Enable(ID_NETWORKEDITORCONFNODEMENUMASTER, self.NetworkNodes.GetSelection() == 0) |
95 confnode_menu.Enable(ID_NETWORKEDITORCONFNODEMENUMASTER, self.NetworkNodes.GetSelection() == 0) |
99 |
96 |
100 def GetTitle(self): |
|
101 fullname = self.Controler.CTNFullName() |
|
102 if not self.Manager.CurrentIsSaved(): |
|
103 return "~%s~" % fullname |
|
104 return fullname |
|
105 |
|
106 def RefreshView(self): |
97 def RefreshView(self): |
|
98 ConfTreeNodeEditor.RefreshView(self) |
107 self.RefreshCurrentIndexList() |
99 self.RefreshCurrentIndexList() |
108 |
100 |
109 def RefreshBufferState(self): |
101 def RefreshBufferState(self): |
110 NetworkEditorTemplate.RefreshBufferState(self) |
102 NetworkEditorTemplate.RefreshBufferState(self) |
111 self.ParentWindow.RefreshTitle() |
103 self.ParentWindow.RefreshTitle() |