--- a/dialogs/SFCDivergenceDialog.py Mon Aug 21 20:17:19 2017 +0000
+++ b/dialogs/SFCDivergenceDialog.py Mon Aug 21 23:22:58 2017 +0300
@@ -30,18 +30,18 @@
from graphics.SFC_Objects import SFC_Divergence
from BlockPreviewDialog import BlockPreviewDialog
-#-------------------------------------------------------------------------------
+# -------------------------------------------------------------------------------
# Create New Divergence Dialog
-#-------------------------------------------------------------------------------
+# -------------------------------------------------------------------------------
-"""
-Class that implements a dialog for defining parameters for creating a new
-divergence graphic element
-"""
class SFCDivergenceDialog(BlockPreviewDialog):
-
- def __init__(self, parent, controller, tagname, poss_div_types = None):
+ """
+ Class that implements a dialog for defining parameters for creating a new
+ divergence graphic element
+ """
+
+ def __init__(self, parent, controller, tagname, poss_div_types=None):
"""
Constructor
@param parent: Parent wx.Window of dialog for modal
@@ -50,15 +50,15 @@
@param poss_div_types: Types of divergence that will be available in the dialog window
"""
BlockPreviewDialog.__init__(self, parent, controller, tagname,
- title=_('Create a new divergence or convergence'))
-
+ title=_('Create a new divergence or convergence'))
+
# Init common sizers
self._init_sizers(2, 0, 7, None, 2, 1)
-
+
# Create label for divergence type
type_label = wx.StaticText(self, label=_('Type:'))
self.LeftGridSizer.AddWindow(type_label, flag=wx.GROW)
-
+
# Create radio buttons for selecting divergence type
divergence_buttons = [
(SELECTION_DIVERGENCE, _('Selection Divergence')),
@@ -67,47 +67,49 @@
(SIMULTANEOUS_CONVERGENCE, _('Simultaneous Convergence'))]
poss_div_btns = []
if poss_div_types is not None:
- for val in poss_div_types:
- poss_div_btns.append(divergence_buttons[val])
+ for val in poss_div_types:
+ poss_div_btns.append(divergence_buttons[val])
else:
poss_div_btns = divergence_buttons
self.TypeRadioButtons = {}
first = True
focusbtn = None
for type, label in poss_div_btns:
- radio_button = wx.RadioButton(self, label=label,
- style=(wx.RB_GROUP if first else 0))
+ radio_button = wx.RadioButton(self, label=label,
+ style=(wx.RB_GROUP if first else 0))
radio_button.SetValue(first)
self.Bind(wx.EVT_RADIOBUTTON, self.OnTypeChanged, radio_button)
self.LeftGridSizer.AddWindow(radio_button, flag=wx.GROW)
self.TypeRadioButtons[type] = radio_button
- if first: focusbtn = type
+ if first:
+ focusbtn = type
first = False
# Create label for number of divergence sequences
- sequences_label = wx.StaticText(self,
- label=_('Number of sequences:'))
+ sequences_label = wx.StaticText(self,
+ label=_('Number of sequences:'))
self.LeftGridSizer.AddWindow(sequences_label, flag=wx.GROW)
-
+
# Create spin control for defining number of divergence sequences
self.Sequences = wx.SpinCtrl(self, min=2, max=20, initial=2)
self.Bind(wx.EVT_SPINCTRL, self.OnSequencesChanged, self.Sequences)
self.LeftGridSizer.AddWindow(self.Sequences, flag=wx.GROW)
-
+
# Add preview panel and associated label to sizers
self.RightGridSizer.AddWindow(self.PreviewLabel, flag=wx.GROW)
self.RightGridSizer.AddWindow(self.Preview, flag=wx.GROW)
-
+
# Add buttons sizer to sizers
- self.MainSizer.AddSizer(self.ButtonSizer, border=20,
- flag=wx.ALIGN_RIGHT|wx.BOTTOM|wx.LEFT|wx.RIGHT)
-
+ self.MainSizer.AddSizer(
+ self.ButtonSizer, border=20,
+ flag=wx.ALIGN_RIGHT | wx.BOTTOM | wx.LEFT | wx.RIGHT)
+
self.Fit()
# Selection divergence radio button is default control having keyboard
# focus
self.TypeRadioButtons[focusbtn].SetFocus()
-
+
def GetMinElementSize(self):
"""
Get minimal graphic element size
@@ -115,7 +117,7 @@
element defined
"""
return self.Element.GetMinSize(True)
-
+
def GetDivergenceType(self):
"""
Return type selected for SFC divergence
@@ -127,7 +129,7 @@
if control.GetValue():
return type
return None
-
+
def GetValues(self):
"""
Set default SFC divergence parameters
@@ -151,17 +153,16 @@
"""
self.RefreshPreview()
event.Skip()
-
+
def RefreshPreview(self):
"""
Refresh preview panel of graphic element
Override BlockPreviewDialog function
"""
# Set graphic element displayed, creating a SFC divergence
- self.Element = SFC_Divergence(self.Preview,
- self.GetDivergenceType(),
+ self.Element = SFC_Divergence(self.Preview,
+ self.GetDivergenceType(),
self.Sequences.GetValue())
-
+
# Call BlockPreviewDialog function
BlockPreviewDialog.RefreshPreview(self)
-