objdictgen/objdictedit.py
changeset 418 64a8c24b61a5
parent 410 cbed250c4303
child 485 24b506ea314b
equal deleted inserted replaced
417:ae068232859c 418:64a8c24b61a5
   109 
   109 
   110 [ID_OBJDICTEDIT, ID_OBJDICTEDITFILEOPENED, 
   110 [ID_OBJDICTEDIT, ID_OBJDICTEDITFILEOPENED, 
   111  ID_OBJDICTEDITHELPBAR,
   111  ID_OBJDICTEDITHELPBAR,
   112 ] = [wx.NewId() for _init_ctrls in range(3)]
   112 ] = [wx.NewId() for _init_ctrls in range(3)]
   113 
   113 
   114 [ID_OBJDICTEDITADDMENUITEMS0, ID_OBJDICTEDITADDMENUITEMS1, 
   114 [ID_OBJDICTEDITFILEMENUIMPORTEDS, ID_OBJDICTEDITFILEMENUEXPORTEDS, 
   115  ID_OBJDICTEDITADDMENUITEMS2, ID_OBJDICTEDITADDMENUITEMS3, 
   115  ID_OBJDICTEDITFILEMENUEXPORTC,
   116  ID_OBJDICTEDITADDMENUITEMS4, ID_OBJDICTEDITADDMENUITEMS5, 
   116 ] = [wx.NewId() for _init_coll_FileMenu_Items in range(3)]
       
   117 
       
   118 [ID_OBJDICTEDITEDITMENUNODEINFOS, ID_OBJDICTEDITEDITMENUDS301PROFILE, 
       
   119  ID_OBJDICTEDITEDITMENUDS302PROFILE, ID_OBJDICTEDITEDITMENUOTHERPROFILE, 
       
   120 ] = [wx.NewId() for _init_coll_EditMenu_Items in range(4)]
       
   121 
       
   122 [ID_OBJDICTEDITADDMENUSDOSERVER, ID_OBJDICTEDITADDMENUSDOCLIENT, 
       
   123  ID_OBJDICTEDITADDMENUPDOTRANSMIT, ID_OBJDICTEDITADDMENUPDORECEIVE, 
       
   124  ID_OBJDICTEDITADDMENUMAPVARIABLE, ID_OBJDICTEDITADDMENUUSERTYPE, 
   117 ] = [wx.NewId() for _init_coll_AddMenu_Items in range(6)]
   125 ] = [wx.NewId() for _init_coll_AddMenu_Items in range(6)]
   118 
   126 
   119 [ID_OBJDICTEDITFILEMENUITEMS0, ID_OBJDICTEDITFILEMENUITEMS1, 
       
   120  ID_OBJDICTEDITFILEMENUITEMS2, ID_OBJDICTEDITFILEMENUITEMS4, 
       
   121  ID_OBJDICTEDITFILEMENUITEMS5, ID_OBJDICTEDITFILEMENUITEMS6, 
       
   122  ID_OBJDICTEDITFILEMENUITEMS7, ID_OBJDICTEDITFILEMENUITEMS8,
       
   123  ID_OBJDICTEDITFILEMENUITEMS9,
       
   124 ] = [wx.NewId() for _init_coll_FileMenu_Items in range(9)]
       
   125 
       
   126 [ID_OBJDICTEDITEDITMENUITEMS0, ID_OBJDICTEDITEDITMENUITEMS1, 
       
   127  ID_OBJDICTEDITEDITMENUITEMS2, ID_OBJDICTEDITEDITMENUITEMS4, 
       
   128  ID_OBJDICTEDITEDITMENUITEMS6, ID_OBJDICTEDITEDITMENUITEMS7, 
       
   129  ID_OBJDICTEDITEDITMENUITEMS8, 
       
   130 ] = [wx.NewId() for _init_coll_EditMenu_Items in range(7)]
       
   131 
       
   132 [ID_OBJDICTEDITHELPMENUITEMS0, ID_OBJDICTEDITHELPMENUITEMS1,
       
   133  ID_OBJDICTEDITHELPMENUITEMS2,
       
   134 ] = [wx.NewId() for _init_coll_HelpMenu_Items in range(3)]
       
   135 
       
   136 class objdictedit(wx.Frame):
   127 class objdictedit(wx.Frame):
   137     def _init_coll_menuBar1_Menus(self, parent):
   128     def _init_coll_MenuBar_Menus(self, parent):
   138         parent.Append(menu=self.FileMenu, title='File')
   129         parent.Append(menu=self.FileMenu, title='File')
   139         parent.Append(menu=self.EditMenu, title='Edit')
   130         parent.Append(menu=self.EditMenu, title='Edit')
   140         parent.Append(menu=self.AddMenu, title='Add')
   131         parent.Append(menu=self.AddMenu, title='Add')
   141         parent.Append(menu=self.HelpMenu, title='Help')
   132         parent.Append(menu=self.HelpMenu, title='Help')
   142 
   133 
       
   134     def _init_coll_FileMenu_Items(self, parent):
       
   135         parent.Append(help='', id=wx.ID_NEW,
       
   136               kind=wx.ITEM_NORMAL, text='New\tCTRL+N')
       
   137         parent.Append(help='', id=wx.ID_OPEN,
       
   138               kind=wx.ITEM_NORMAL, text='Open\tCTRL+O')
       
   139         parent.Append(help='', id=wx.ID_CLOSE,
       
   140               kind=wx.ITEM_NORMAL, text='Close\tCTRL+W')
       
   141         parent.AppendSeparator()
       
   142         parent.Append(help='', id=wx.ID_SAVE,
       
   143               kind=wx.ITEM_NORMAL, text='Save\tCTRL+S')
       
   144         parent.Append(help='', id=wx.ID_SAVEAS,
       
   145               kind=wx.ITEM_NORMAL, text='Save As...\tALT+S')
       
   146         parent.AppendSeparator()
       
   147         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUIMPORTEDS,
       
   148               kind=wx.ITEM_NORMAL, text='Import EDS file')
       
   149         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUEXPORTEDS,
       
   150               kind=wx.ITEM_NORMAL, text='Export to EDS file')
       
   151         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUEXPORTC,
       
   152               kind=wx.ITEM_NORMAL, text='Build Dictionary\tCTRL+B')
       
   153         parent.AppendSeparator()
       
   154         parent.Append(help='', id=wx.ID_EXIT,
       
   155               kind=wx.ITEM_NORMAL, text='Exit')
       
   156         self.Bind(wx.EVT_MENU, self.OnNewMenu, id=wx.ID_NEW)
       
   157         self.Bind(wx.EVT_MENU, self.OnOpenMenu, id=wx.ID_OPEN)
       
   158         self.Bind(wx.EVT_MENU, self.OnCloseMenu, id=wx.ID_CLOSE)
       
   159         self.Bind(wx.EVT_MENU, self.OnSaveMenu, id=wx.ID_SAVE)
       
   160         self.Bind(wx.EVT_MENU, self.OnSaveAsMenu, id=wx.ID_SAVEAS)
       
   161         self.Bind(wx.EVT_MENU, self.OnImportEDSMenu,
       
   162               id=ID_OBJDICTEDITFILEMENUIMPORTEDS)
       
   163         self.Bind(wx.EVT_MENU, self.OnExportEDSMenu,
       
   164               id=ID_OBJDICTEDITFILEMENUEXPORTEDS)
       
   165         self.Bind(wx.EVT_MENU, self.OnExportCMenu,
       
   166               id=ID_OBJDICTEDITFILEMENUEXPORTC)
       
   167         self.Bind(wx.EVT_MENU, self.OnQuitMenu, id=wx.ID_EXIT)
       
   168 
   143     def _init_coll_EditMenu_Items(self, parent):
   169     def _init_coll_EditMenu_Items(self, parent):
   144         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS4,
   170         parent.Append(help='', id=wx.ID_REFRESH,
   145               kind=wx.ITEM_NORMAL, text='Refresh\tCTRL+R')
   171               kind=wx.ITEM_NORMAL, text='Refresh\tCTRL+R')
   146         parent.AppendSeparator()
   172         parent.AppendSeparator()
   147         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS1,
   173         parent.Append(help='', id=wx.ID_UNDO,
   148               kind=wx.ITEM_NORMAL, text='Undo\tCTRL+Z')
   174               kind=wx.ITEM_NORMAL, text='Undo\tCTRL+Z')
   149         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS0,
   175         parent.Append(help='', id=wx.ID_REDO,
   150               kind=wx.ITEM_NORMAL, text='Redo\tCTRL+Y')
   176               kind=wx.ITEM_NORMAL, text='Redo\tCTRL+Y')
   151         parent.AppendSeparator()
   177         parent.AppendSeparator()
   152         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS6,
   178         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUNODEINFOS,
   153               kind=wx.ITEM_NORMAL, text='Node infos')
   179               kind=wx.ITEM_NORMAL, text='Node infos')
   154         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS2,
   180         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUDS301PROFILE,
   155               kind=wx.ITEM_NORMAL, text='DS-301 Profile')
   181               kind=wx.ITEM_NORMAL, text='DS-301 Profile')
   156         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS8,
   182         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUDS302PROFILE,
   157               kind=wx.ITEM_NORMAL, text='DS-302 Profile')
   183               kind=wx.ITEM_NORMAL, text='DS-302 Profile')
   158         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUITEMS7,
   184         parent.Append(help='', id=ID_OBJDICTEDITEDITMENUOTHERPROFILE,
   159               kind=wx.ITEM_NORMAL, text='Other Profile')
   185               kind=wx.ITEM_NORMAL, text='Other Profile')
   160         self.Bind(wx.EVT_MENU, self.OnUndoMenu,
   186         self.Bind(wx.EVT_MENU, self.OnRefreshMenu, id=wx.ID_REFRESH)
   161               id=ID_OBJDICTEDITEDITMENUITEMS1)
   187         self.Bind(wx.EVT_MENU, self.OnUndoMenu, id=wx.ID_UNDO)
   162         self.Bind(wx.EVT_MENU, self.OnRedoMenu,
   188         self.Bind(wx.EVT_MENU, self.OnRedoMenu, id=wx.ID_REDO)
   163               id=ID_OBJDICTEDITEDITMENUITEMS0)
   189         self.Bind(wx.EVT_MENU, self.OnNodeInfosMenu,
       
   190               id=ID_OBJDICTEDITEDITMENUNODEINFOS)
   164         self.Bind(wx.EVT_MENU, self.OnCommunicationMenu,
   191         self.Bind(wx.EVT_MENU, self.OnCommunicationMenu,
   165               id=ID_OBJDICTEDITEDITMENUITEMS2)
   192               id=ID_OBJDICTEDITEDITMENUDS301PROFILE)
   166         self.Bind(wx.EVT_MENU, self.OnRefreshMenu,
   193         self.Bind(wx.EVT_MENU, self.OnOtherCommunicationMenu,
   167               id=ID_OBJDICTEDITEDITMENUITEMS4)
   194               id=ID_OBJDICTEDITEDITMENUDS302PROFILE)
   168         self.Bind(wx.EVT_MENU, self.OnNodeInfosMenu,
       
   169               id=ID_OBJDICTEDITEDITMENUITEMS6)
       
   170         self.Bind(wx.EVT_MENU, self.OnEditProfileMenu,
   195         self.Bind(wx.EVT_MENU, self.OnEditProfileMenu,
   171               id=ID_OBJDICTEDITEDITMENUITEMS7)
   196               id=ID_OBJDICTEDITEDITMENUOTHERPROFILE)
   172         self.Bind(wx.EVT_MENU, self.OnOtherCommunicationMenu,
       
   173               id=ID_OBJDICTEDITEDITMENUITEMS8)
       
   174 
       
   175     def _init_coll_HelpMenu_Items(self, parent):
       
   176         parent.Append(help='', id=ID_OBJDICTEDITHELPMENUITEMS0,
       
   177               kind=wx.ITEM_NORMAL, text='DS-301 Standard\tF1')
       
   178         self.Bind(wx.EVT_MENU, self.OnHelpDS301Menu,
       
   179               id=ID_OBJDICTEDITHELPMENUITEMS0)
       
   180         parent.Append(help='', id=ID_OBJDICTEDITHELPMENUITEMS1,
       
   181               kind=wx.ITEM_NORMAL, text='CAN Festival Docs\tF2')
       
   182         self.Bind(wx.EVT_MENU, self.OnHelpCANFestivalMenu,
       
   183               id=ID_OBJDICTEDITHELPMENUITEMS1)
       
   184         if Html_Window:
       
   185             parent.Append(help='', id=ID_OBJDICTEDITHELPMENUITEMS2,
       
   186                   kind=wx.ITEM_NORMAL, text='About')
       
   187             self.Bind(wx.EVT_MENU, self.OnAboutMenu,
       
   188                   id=ID_OBJDICTEDITHELPMENUITEMS2)
       
   189 
       
   190     def _init_coll_FileMenu_Items(self, parent):
       
   191         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS5,
       
   192               kind=wx.ITEM_NORMAL, text='New\tCTRL+N')
       
   193         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS0,
       
   194               kind=wx.ITEM_NORMAL, text='Open\tCTRL+O')
       
   195         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS1,
       
   196               kind=wx.ITEM_NORMAL, text='Save\tCTRL+S')
       
   197         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS6,
       
   198               kind=wx.ITEM_NORMAL, text='Save As...\tALT+S')
       
   199         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS2,
       
   200               kind=wx.ITEM_NORMAL, text='Close\tCTRL+W')
       
   201         parent.AppendSeparator()
       
   202         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS7,
       
   203               kind=wx.ITEM_NORMAL, text='Import EDS file')
       
   204         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS9,
       
   205               kind=wx.ITEM_NORMAL, text='Export to EDS file')
       
   206         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS8,
       
   207               kind=wx.ITEM_NORMAL, text='Build Dictionary\tCTRL+B')
       
   208         parent.AppendSeparator()
       
   209         parent.Append(help='', id=ID_OBJDICTEDITFILEMENUITEMS4,
       
   210               kind=wx.ITEM_NORMAL, text='Exit')
       
   211         self.Bind(wx.EVT_MENU, self.OnOpenMenu,
       
   212               id=ID_OBJDICTEDITFILEMENUITEMS0)
       
   213         self.Bind(wx.EVT_MENU, self.OnSaveMenu,
       
   214               id=ID_OBJDICTEDITFILEMENUITEMS1)
       
   215         self.Bind(wx.EVT_MENU, self.OnCloseMenu,
       
   216               id=ID_OBJDICTEDITFILEMENUITEMS2)
       
   217         self.Bind(wx.EVT_MENU, self.OnQuitMenu,
       
   218               id=ID_OBJDICTEDITFILEMENUITEMS4)
       
   219         self.Bind(wx.EVT_MENU, self.OnNewMenu,
       
   220               id=ID_OBJDICTEDITFILEMENUITEMS5)
       
   221         self.Bind(wx.EVT_MENU, self.OnSaveAsMenu,
       
   222               id=ID_OBJDICTEDITFILEMENUITEMS6)
       
   223         self.Bind(wx.EVT_MENU, self.OnImportEDSMenu,
       
   224               id=ID_OBJDICTEDITFILEMENUITEMS7)
       
   225         self.Bind(wx.EVT_MENU, self.OnExportCMenu,
       
   226               id=ID_OBJDICTEDITFILEMENUITEMS8)
       
   227         self.Bind(wx.EVT_MENU, self.OnExportEDSMenu,
       
   228               id=ID_OBJDICTEDITFILEMENUITEMS9)
       
   229 
   197 
   230     def _init_coll_AddMenu_Items(self, parent):
   198     def _init_coll_AddMenu_Items(self, parent):
   231         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS0,
   199         parent.Append(help='', id=ID_OBJDICTEDITADDMENUSDOSERVER,
   232               kind=wx.ITEM_NORMAL, text='SDO Server')
   200               kind=wx.ITEM_NORMAL, text='SDO Server')
   233         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS1,
   201         parent.Append(help='', id=ID_OBJDICTEDITADDMENUSDOCLIENT,
   234               kind=wx.ITEM_NORMAL, text='SDO Client')
   202               kind=wx.ITEM_NORMAL, text='SDO Client')
   235         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS2,
   203         parent.Append(help='', id=ID_OBJDICTEDITADDMENUPDOTRANSMIT,
   236               kind=wx.ITEM_NORMAL, text='PDO Transmit')
   204               kind=wx.ITEM_NORMAL, text='PDO Transmit')
   237         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS3,
   205         parent.Append(help='', id=ID_OBJDICTEDITADDMENUPDORECEIVE,
   238               kind=wx.ITEM_NORMAL, text='PDO Receive')
   206               kind=wx.ITEM_NORMAL, text='PDO Receive')
   239         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS4,
   207         parent.Append(help='', id=ID_OBJDICTEDITADDMENUMAPVARIABLE,
   240               kind=wx.ITEM_NORMAL, text='Map Variable')
   208               kind=wx.ITEM_NORMAL, text='Map Variable')
   241         parent.Append(help='', id=ID_OBJDICTEDITADDMENUITEMS5,
   209         parent.Append(help='', id=ID_OBJDICTEDITADDMENUUSERTYPE,
   242               kind=wx.ITEM_NORMAL, text='User Type')
   210               kind=wx.ITEM_NORMAL, text='User Type')
   243         self.Bind(wx.EVT_MENU, self.OnAddSDOServerMenu,
   211         self.Bind(wx.EVT_MENU, self.OnAddSDOServerMenu,
   244               id=ID_OBJDICTEDITADDMENUITEMS0)
   212               id=ID_OBJDICTEDITADDMENUSDOSERVER)
   245         self.Bind(wx.EVT_MENU, self.OnAddSDOClientMenu,
   213         self.Bind(wx.EVT_MENU, self.OnAddSDOClientMenu,
   246               id=ID_OBJDICTEDITADDMENUITEMS1)
   214               id=ID_OBJDICTEDITADDMENUSDOCLIENT)
   247         self.Bind(wx.EVT_MENU, self.OnAddPDOTransmitMenu,
   215         self.Bind(wx.EVT_MENU, self.OnAddPDOTransmitMenu,
   248               id=ID_OBJDICTEDITADDMENUITEMS2)
   216               id=ID_OBJDICTEDITADDMENUPDOTRANSMIT)
   249         self.Bind(wx.EVT_MENU, self.OnAddPDOReceiveMenu,
   217         self.Bind(wx.EVT_MENU, self.OnAddPDOReceiveMenu,
   250               id=ID_OBJDICTEDITADDMENUITEMS3)
   218               id=ID_OBJDICTEDITADDMENUPDORECEIVE)
   251         self.Bind(wx.EVT_MENU, self.OnAddMapVariableMenu,
   219         self.Bind(wx.EVT_MENU, self.OnAddMapVariableMenu,
   252               id=ID_OBJDICTEDITADDMENUITEMS4)
   220               id=ID_OBJDICTEDITADDMENUMAPVARIABLE)
   253         self.Bind(wx.EVT_MENU, self.OnAddUserTypeMenu,
   221         self.Bind(wx.EVT_MENU, self.OnAddUserTypeMenu,
   254               id=ID_OBJDICTEDITADDMENUITEMS5)
   222               id=ID_OBJDICTEDITADDMENUUSERTYPE)
       
   223 
       
   224     def _init_coll_HelpMenu_Items(self, parent):
       
   225         parent.Append(help='', id=wx.ID_HELP,
       
   226               kind=wx.ITEM_NORMAL, text='DS-301 Standard\tF1')
       
   227         self.Bind(wx.EVT_MENU, self.OnHelpDS301Menu, id=wx.ID_HELP)
       
   228         parent.Append(help='', id=wx.ID_HELP_CONTEXT,
       
   229               kind=wx.ITEM_NORMAL, text='CAN Festival Docs\tF2')
       
   230         self.Bind(wx.EVT_MENU, self.OnHelpCANFestivalMenu, id=wx.ID_HELP_CONTEXT)
       
   231         if Html_Window:
       
   232             parent.Append(help='', id=wx.ID_ABOUT,
       
   233                   kind=wx.ITEM_NORMAL, text='About')
       
   234             self.Bind(wx.EVT_MENU, self.OnAboutMenu, id=wx.ID_ABOUT)
   255 
   235 
   256     def _init_coll_HelpBar_Fields(self, parent):
   236     def _init_coll_HelpBar_Fields(self, parent):
   257         parent.SetFieldsCount(3)
   237         parent.SetFieldsCount(3)
   258 
   238 
   259         parent.SetStatusText(number=0, text='')
   239         parent.SetStatusText(number=0, text='')
   261         parent.SetStatusText(number=2, text='')
   241         parent.SetStatusText(number=2, text='')
   262 
   242 
   263         parent.SetStatusWidths([100, 110, -1])
   243         parent.SetStatusWidths([100, 110, -1])
   264 
   244 
   265     def _init_utils(self):
   245     def _init_utils(self):
   266         self.menuBar1 = wx.MenuBar()
   246         self.MenuBar = wx.MenuBar()
   267         self.menuBar1.SetEvtHandlerEnabled(True)
   247         self.MenuBar.SetEvtHandlerEnabled(True)
   268 
   248 
   269         self.FileMenu = wx.Menu(title='')
   249         self.FileMenu = wx.Menu(title='')
   270         self.EditMenu = wx.Menu(title='')
   250         self.EditMenu = wx.Menu(title='')
   271         self.AddMenu = wx.Menu(title='')
   251         self.AddMenu = wx.Menu(title='')
   272         self.HelpMenu = wx.Menu(title='')
   252         self.HelpMenu = wx.Menu(title='')
   273 
   253 
   274         self._init_coll_menuBar1_Menus(self.menuBar1)
   254         self._init_coll_MenuBar_Menus(self.MenuBar)
   275         self._init_coll_FileMenu_Items(self.FileMenu)
   255         self._init_coll_FileMenu_Items(self.FileMenu)
   276         self._init_coll_EditMenu_Items(self.EditMenu)
   256         self._init_coll_EditMenu_Items(self.EditMenu)
   277         self._init_coll_AddMenu_Items(self.AddMenu)
   257         self._init_coll_AddMenu_Items(self.AddMenu)
   278         self._init_coll_HelpMenu_Items(self.HelpMenu)
   258         self._init_coll_HelpMenu_Items(self.HelpMenu)
   279 
   259 
   281         wx.Frame.__init__(self, id=ID_OBJDICTEDIT, name='objdictedit',
   261         wx.Frame.__init__(self, id=ID_OBJDICTEDIT, name='objdictedit',
   282               parent=prnt, pos=wx.Point(149, 178), size=wx.Size(1000, 700),
   262               parent=prnt, pos=wx.Point(149, 178), size=wx.Size(1000, 700),
   283               style=wx.DEFAULT_FRAME_STYLE, title='Objdictedit')
   263               style=wx.DEFAULT_FRAME_STYLE, title='Objdictedit')
   284         self._init_utils()
   264         self._init_utils()
   285         self.SetClientSize(wx.Size(1000, 700))
   265         self.SetClientSize(wx.Size(1000, 700))
   286         self.SetMenuBar(self.menuBar1)
   266         self.SetMenuBar(self.MenuBar)
   287         self.Bind(wx.EVT_CLOSE, self.OnCloseFrame)
   267         self.Bind(wx.EVT_CLOSE, self.OnCloseFrame)
   288 
   268 
   289         self.FileOpened = wx.Notebook(id=ID_OBJDICTEDITFILEOPENED,
   269         self.FileOpened = wx.Notebook(id=ID_OBJDICTEDITFILEOPENED,
   290               name='FileOpened', parent=self, pos=wx.Point(0, 0),
   270               name='FileOpened', parent=self, pos=wx.Point(0, 0),
   291               size=wx.Size(0, 0), style=0)
   271               size=wx.Size(0, 0), style=0)
   315             window = self.FileOpened.GetPage(0)
   295             window = self.FileOpened.GetPage(0)
   316             if window:
   296             if window:
   317                 self.Manager.ChangeCurrentNode(window.GetIndex())
   297                 self.Manager.ChangeCurrentNode(window.GetIndex())
   318                 self.FileOpened.SetSelection(0)
   298                 self.FileOpened.SetSelection(0)
   319         if self.Manager.CurrentDS302Defined():
   299         if self.Manager.CurrentDS302Defined():
   320             self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, True)
   300             self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, True)
   321         else:
   301         else:
   322             self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, False)
   302             self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, False)
   323         self.RefreshEditMenu()
   303         self.RefreshEditMenu()
   324         self.RefreshBufferState()
   304         self.RefreshBufferState()
   325         self.RefreshProfileMenu()
   305         self.RefreshProfileMenu()
   326         self.RefreshTitle()
   306         self.RefreshTitle()
   327         self.RefreshMainMenu()
   307         self.RefreshMainMenu()
   497                         self.HelpBar.SetStatusText("", i)
   477                         self.HelpBar.SetStatusText("", i)
   498 
   478 
   499     def RefreshMainMenu(self):
   479     def RefreshMainMenu(self):
   500         if self.FileMenu:
   480         if self.FileMenu:
   501             if self.FileOpened.GetPageCount() > 0:
   481             if self.FileOpened.GetPageCount() > 0:
   502                 self.menuBar1.EnableTop(1, True)
   482                 self.MenuBar.EnableTop(1, True)
   503                 self.menuBar1.EnableTop(2, True)
   483                 self.MenuBar.EnableTop(2, True)
   504                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS1, True)
   484                 self.FileMenu.Enable(wx.ID_CLOSE, True)
   505                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS2, True)
   485                 self.FileMenu.Enable(wx.ID_SAVE, True)
   506                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS6, True)
   486                 self.FileMenu.Enable(wx.ID_SAVEAS, True)
   507                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS8, True)
   487                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUEXPORTEDS, True)
   508                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS9, True)
   488                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUEXPORTC, True)
   509             else:
   489             else:
   510                 self.menuBar1.EnableTop(1, False)
   490                 self.MenuBar.EnableTop(1, False)
   511                 self.menuBar1.EnableTop(2, False)
   491                 self.MenuBar.EnableTop(2, False)
   512                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS1, False)
   492                 self.FileMenu.Enable(wx.ID_CLOSE, False)
   513                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS2, False)
   493                 self.FileMenu.Enable(wx.ID_SAVE, False)
   514                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS6, False)
   494                 self.FileMenu.Enable(wx.ID_SAVEAS, False)
   515                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS8, False)
   495                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUEXPORTEDS, False)
   516                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUITEMS9, False)
   496                 self.FileMenu.Enable(ID_OBJDICTEDITFILEMENUEXPORTC, False)
   517 
   497 
   518     def RefreshEditMenu(self):
   498     def RefreshEditMenu(self):
   519         if self.FileMenu:
   499         if self.EditMenu:
   520             if self.FileOpened.GetPageCount() > 0:
   500             if self.FileOpened.GetPageCount() > 0:
   521                 undo, redo = self.Manager.GetCurrentBufferState()
   501                 undo, redo = self.Manager.GetCurrentBufferState()
   522                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS1, undo)
   502                 self.EditMenu.Enable(wx.ID_UNDO, undo)
   523                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS0, redo)
   503                 self.EditMenu.Enable(wx.ID_REDO, redo)
   524             else:
   504             else:
   525                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS1, False)
   505                 self.EditMenu.Enable(wx.ID_UNDO, False)
   526                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS0, False)
   506                 self.EditMenu.Enable(wx.ID_REDO, False)
   527 
   507 
   528     def RefreshProfileMenu(self):
   508     def RefreshProfileMenu(self):
   529         if self.EditMenu:
   509         if self.EditMenu:
   530             profile = self.Manager.GetCurrentProfileName()
   510             profile = self.Manager.GetCurrentProfileName()
   531             edititem = self.EditMenu.FindItemById(ID_OBJDICTEDITEDITMENUITEMS7)
   511             edititem = self.EditMenu.FindItemById(ID_OBJDICTEDITEDITMENUOTHERPROFILE)
   532             if edititem:
   512             if edititem:
   533                 length = self.AddMenu.GetMenuItemCount()
   513                 length = self.AddMenu.GetMenuItemCount()
   534                 for i in xrange(length-6):
   514                 for i in xrange(length-6):
   535                     additem = self.AddMenu.FindItemByPosition(6)
   515                     additem = self.AddMenu.FindItemByPosition(6)
   536                     self.AddMenu.Delete(additem.GetId())
   516                     self.AddMenu.Delete(additem.GetId())
   587             if type(result) == IntType:
   567             if type(result) == IntType:
   588                 new_editingpanel = EditingPanel(self.FileOpened, self, self.Manager)
   568                 new_editingpanel = EditingPanel(self.FileOpened, self, self.Manager)
   589                 new_editingpanel.SetIndex(result)
   569                 new_editingpanel.SetIndex(result)
   590                 self.FileOpened.AddPage(new_editingpanel, "")
   570                 self.FileOpened.AddPage(new_editingpanel, "")
   591                 self.FileOpened.SetSelection(self.FileOpened.GetPageCount() - 1)
   571                 self.FileOpened.SetSelection(self.FileOpened.GetPageCount() - 1)
   592                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, False)
   572                 self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, False)
   593                 if "DS302" in options:
   573                 if "DS302" in options:
   594                     self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, True)
   574                     self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, True)
   595                 self.RefreshBufferState()
   575                 self.RefreshBufferState()
   596                 self.RefreshProfileMenu()
   576                 self.RefreshProfileMenu()
   597                 self.RefreshMainMenu()
   577                 self.RefreshMainMenu()
   598             else:
   578             else:
   599                 message = wx.MessageDialog(self, result, "ERROR", wx.OK|wx.ICON_ERROR)
   579                 message = wx.MessageDialog(self, result, "ERROR", wx.OK|wx.ICON_ERROR)
   617                     new_editingpanel = EditingPanel(self.FileOpened, self, self.Manager)
   597                     new_editingpanel = EditingPanel(self.FileOpened, self, self.Manager)
   618                     new_editingpanel.SetIndex(result)
   598                     new_editingpanel.SetIndex(result)
   619                     self.FileOpened.AddPage(new_editingpanel, "")
   599                     self.FileOpened.AddPage(new_editingpanel, "")
   620                     self.FileOpened.SetSelection(self.FileOpened.GetPageCount() - 1)
   600                     self.FileOpened.SetSelection(self.FileOpened.GetPageCount() - 1)
   621                     if self.Manager.CurrentDS302Defined(): 
   601                     if self.Manager.CurrentDS302Defined(): 
   622                         self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, True)
   602                         self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, True)
   623                     else:
   603                     else:
   624                         self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUITEMS8, False)
   604                         self.EditMenu.Enable(ID_OBJDICTEDITEDITMENUDS302PROFILE, False)
   625                     self.RefreshEditMenu()
   605                     self.RefreshEditMenu()
   626                     self.RefreshBufferState()
   606                     self.RefreshBufferState()
   627                     self.RefreshProfileMenu()
   607                     self.RefreshProfileMenu()
   628                     self.RefreshMainMenu()
   608                     self.RefreshMainMenu()
   629                 else:
   609                 else:
   835 #-------------------------------------------------------------------------------
   815 #-------------------------------------------------------------------------------
   836 
   816 
   837     def OnNodeInfosMenu(self, event):
   817     def OnNodeInfosMenu(self, event):
   838         dialog = NodeInfosDialog(self)
   818         dialog = NodeInfosDialog(self)
   839         name, id, type, description = self.Manager.GetCurrentNodeInfos()
   819         name, id, type, description = self.Manager.GetCurrentNodeInfos()
   840         dialog.SetValues(name, id, type, description)
   820         defaultstringsize = self.Manager.GetCurrentNodeDefaultStringSize()
       
   821         dialog.SetValues(name, id, type, description, defaultstringsize)
   841         if dialog.ShowModal() == wx.ID_OK:
   822         if dialog.ShowModal() == wx.ID_OK:
   842             name, id, type, description = dialog.GetValues()
   823             name, id, type, description, defaultstringsize = dialog.GetValues()
   843             self.Manager.SetCurrentNodeInfos(name, id, type, description)
   824             self.Manager.SetCurrentNodeInfos(name, id, type, description)
       
   825             self.Manager.SetCurrentNodeDefaultStringSize(defaultstringsize)
   844             self.RefreshBufferState()
   826             self.RefreshBufferState()
   845             self.RefreshProfileMenu()
   827             self.RefreshProfileMenu()
   846             selected = self.FileOpened.GetSelection()
   828             selected = self.FileOpened.GetSelection()
   847             if selected >= 0:
   829             if selected >= 0:
   848                 window = self.FileOpened.GetPage(selected)
   830                 window = self.FileOpened.GetPage(selected)