dialogs/PouTransitionDialog.py
changeset 1696 8043f32de7b8
parent 1670 cd03b8432541
child 1730 64d8f52bc8c8
equal deleted inserted replaced
1695:a63bb4025852 1696:8043f32de7b8
     3 
     3 
     4 # This file is part of Beremiz, a Integrated Development Environment for
     4 # This file is part of Beremiz, a Integrated Development Environment for
     5 # programming IEC 61131-3 automates supporting plcopen standard and CanFestival.
     5 # programming IEC 61131-3 automates supporting plcopen standard and CanFestival.
     6 #
     6 #
     7 # Copyright (C) 2012: Edouard TISSERANT and Laurent BESSARD
     7 # Copyright (C) 2012: Edouard TISSERANT and Laurent BESSARD
       
     8 # Copyright (C) 2017: Andrey Skvortsov <andrej.skvortzov@gmail.com>
     8 #
     9 #
     9 # See COPYING file for copyrights details.
    10 # See COPYING file for copyrights details.
    10 #
    11 #
    11 # This program is free software; you can redistribute it and/or
    12 # This program is free software; you can redistribute it and/or
    12 # modify it under the terms of the GNU General Public License
    13 # modify it under the terms of the GNU General Public License
    36 TRANSITION_LANGUAGES_DICT = dict([(_(language), language) for language in GetTransitionLanguages()])
    37 TRANSITION_LANGUAGES_DICT = dict([(_(language), language) for language in GetTransitionLanguages()])
    37 
    38 
    38 class PouTransitionDialog(wx.Dialog):
    39 class PouTransitionDialog(wx.Dialog):
    39     
    40     
    40     def __init__(self, parent):
    41     def __init__(self, parent):
    41         wx.Dialog.__init__(self, parent, size=wx.Size(350, 200),
    42         wx.Dialog.__init__(self, parent, title=_('Create a new transition'))
    42               title=_('Create a new transition'))
       
    43         
    43         
    44         main_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10)
    44         main_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10)
    45         main_sizer.AddGrowableCol(0)
    45         main_sizer.AddGrowableCol(0)
    46         main_sizer.AddGrowableRow(0)
    46         main_sizer.AddGrowableRow(0)
    47         
    47         
    48         infos_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=3, vgap=15)
    48         infos_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=3, vgap=10)
    49         infos_sizer.AddGrowableCol(1)
    49         infos_sizer.AddGrowableCol(1)
    50         main_sizer.AddSizer(infos_sizer, border=20, 
    50         main_sizer.AddSizer(infos_sizer, border=20, 
    51               flag=wx.GROW|wx.TOP|wx.LEFT|wx.RIGHT)
    51               flag=wx.GROW|wx.TOP|wx.LEFT|wx.RIGHT)
    52         
    52         
    53         transitionname_label = wx.StaticText(self, label=_('Transition Name:'))
    53         transitionname_label = wx.StaticText(self, label=_('Transition Name:'))
    54         infos_sizer.AddWindow(transitionname_label, border=4, 
    54         infos_sizer.AddWindow(transitionname_label, border=4, 
    55               flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP)
    55               flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP)
    56 
    56 
    57         self.TransitionName = wx.TextCtrl(self)
    57         self.TransitionName = wx.TextCtrl(self, size=wx.Size(180,-1))
    58         infos_sizer.AddWindow(self.TransitionName, flag=wx.GROW)
    58         infos_sizer.AddWindow(self.TransitionName, flag=wx.GROW)
    59 
    59 
    60         language_label = wx.StaticText(self, label=_('Language:'))
    60         language_label = wx.StaticText(self, label=_('Language:'))
    61         infos_sizer.AddWindow(language_label, border=4, 
    61         infos_sizer.AddWindow(language_label, border=4, 
    62               flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP)
    62               flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP)
    63         
    63         
    64         self.Language = wx.ComboBox(self, style=wx.CB_READONLY)
    64         self.Language = wx.ComboBox(self, style=wx.CB_READONLY)
    65         infos_sizer.AddWindow(self.Language, flag=wx.GROW)
    65         infos_sizer.AddWindow(self.Language, flag=wx.GROW)
    66         
    66 
    67         button_sizer = self.CreateButtonSizer(wx.OK|wx.CANCEL|wx.CENTRE)
    67         button_sizer = self.CreateButtonSizer(wx.OK|wx.CANCEL|wx.CENTRE)
    68         self.Bind(wx.EVT_BUTTON, self.OnOK, button_sizer.GetAffirmativeButton())
    68         self.Bind(wx.EVT_BUTTON, self.OnOK, button_sizer.GetAffirmativeButton())
    69         main_sizer.AddSizer(button_sizer, border=20, 
    69         main_sizer.AddSizer(button_sizer, border=20, flag=wx.ALIGN_RIGHT|wx.BOTTOM)
    70               flag=wx.ALIGN_RIGHT|wx.BOTTOM|wx.LEFT|wx.RIGHT)
       
    71         
    70         
    72         self.SetSizer(main_sizer)
    71         self.SetSizer(main_sizer)
    73         
    72         
    74         for language in GetTransitionLanguages():
    73         for language in GetTransitionLanguages():
    75             self.Language.Append(_(language))
    74             self.Language.Append(_(language))
    76             
    75             
       
    76         self.Fit()
    77         self.PouNames = []
    77         self.PouNames = []
    78         self.PouElementNames = []
    78         self.PouElementNames = []
    79         
    79         
    80     def OnOK(self, event):
    80     def OnOK(self, event):
    81         error = []
    81         error = []