ProjectNodeEditor.py
author laurent
Mon, 21 May 2012 10:04:27 +0200
changeset 738 413946c04c87
child 743 4645a3a398ad
permissions -rw-r--r--
refactoring
738
413946c04c87 refactoring
laurent
parents:
diff changeset
     1
413946c04c87 refactoring
laurent
parents:
diff changeset
     2
import wx
413946c04c87 refactoring
laurent
parents:
diff changeset
     3
413946c04c87 refactoring
laurent
parents:
diff changeset
     4
from ConfTreeNodeEditor import ConfTreeNodeEditor, WINDOW_COLOUR
413946c04c87 refactoring
laurent
parents:
diff changeset
     5
413946c04c87 refactoring
laurent
parents:
diff changeset
     6
class ProjectNodeEditor(ConfTreeNodeEditor):
413946c04c87 refactoring
laurent
parents:
diff changeset
     7
    
413946c04c87 refactoring
laurent
parents:
diff changeset
     8
    VARIABLE_PANEL_TYPE = "config"
413946c04c87 refactoring
laurent
parents:
diff changeset
     9
    
413946c04c87 refactoring
laurent
parents:
diff changeset
    10
    def _init_Editor(self, prnt):
413946c04c87 refactoring
laurent
parents:
diff changeset
    11
        self.Editor = wx.ScrolledWindow(prnt, -1, size=wx.Size(-1, -1),
413946c04c87 refactoring
laurent
parents:
diff changeset
    12
                style=wx.TAB_TRAVERSAL|wx.SUNKEN_BORDER|wx.HSCROLL|wx.VSCROLL)
413946c04c87 refactoring
laurent
parents:
diff changeset
    13
        self.Editor.SetBackgroundColour(WINDOW_COLOUR)
413946c04c87 refactoring
laurent
parents:
diff changeset
    14
        self.ParamsEditor = self.Editor
413946c04c87 refactoring
laurent
parents:
diff changeset
    15
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    16
        # Variable allowing disabling of Editor scroll when Popup shown 
413946c04c87 refactoring
laurent
parents:
diff changeset
    17
        self.ScrollingEnabled = True
413946c04c87 refactoring
laurent
parents:
diff changeset
    18
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    19
        self.ParamsEditorSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=5)
413946c04c87 refactoring
laurent
parents:
diff changeset
    20
        self.ParamsEditorSizer.AddGrowableCol(0)
413946c04c87 refactoring
laurent
parents:
diff changeset
    21
        self.ParamsEditorSizer.AddGrowableRow(1)
413946c04c87 refactoring
laurent
parents:
diff changeset
    22
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    23
        self.Editor.SetSizer(self.ParamsEditorSizer)
413946c04c87 refactoring
laurent
parents:
diff changeset
    24
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    25
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    26
        buttons_sizer = self.GenerateMethodButtonSizer()
413946c04c87 refactoring
laurent
parents:
diff changeset
    27
        self.ParamsEditorSizer.AddSizer(buttons_sizer, 0, border=5, 
413946c04c87 refactoring
laurent
parents:
diff changeset
    28
                                        flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.TOP)
413946c04c87 refactoring
laurent
parents:
diff changeset
    29
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    30
        self.ConfNodeParamsSizer = wx.BoxSizer(wx.VERTICAL)
413946c04c87 refactoring
laurent
parents:
diff changeset
    31
        self.ParamsEditorSizer.AddSizer(self.ConfNodeParamsSizer, 0, border=5, 
413946c04c87 refactoring
laurent
parents:
diff changeset
    32
                                        flag=wx.LEFT|wx.RIGHT|wx.BOTTOM)
413946c04c87 refactoring
laurent
parents:
diff changeset
    33
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    34
        self.RefreshConfNodeParamsSizer()
413946c04c87 refactoring
laurent
parents:
diff changeset
    35
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    36
    def __init__(self, parent, controler, window):
413946c04c87 refactoring
laurent
parents:
diff changeset
    37
        configuration = controler.GetProjectMainConfigurationName()
413946c04c87 refactoring
laurent
parents:
diff changeset
    38
        if configuration is not None:
413946c04c87 refactoring
laurent
parents:
diff changeset
    39
            tagname = controler.ComputeConfigurationName(configuration)
413946c04c87 refactoring
laurent
parents:
diff changeset
    40
        else:
413946c04c87 refactoring
laurent
parents:
diff changeset
    41
            tagname = ""
413946c04c87 refactoring
laurent
parents:
diff changeset
    42
        
413946c04c87 refactoring
laurent
parents:
diff changeset
    43
        ConfTreeNodeEditor.__init__(self, parent, tagname, controler, window)
413946c04c87 refactoring
laurent
parents:
diff changeset
    44
413946c04c87 refactoring
laurent
parents:
diff changeset
    45
    def GetTagName(self):
413946c04c87 refactoring
laurent
parents:
diff changeset
    46
        return self.Controler.CTNName()
413946c04c87 refactoring
laurent
parents:
diff changeset
    47
    
413946c04c87 refactoring
laurent
parents:
diff changeset
    48
    def GetTitle(self):
413946c04c87 refactoring
laurent
parents:
diff changeset
    49
        fullname = self.Controler.CTNName()
413946c04c87 refactoring
laurent
parents:
diff changeset
    50
        if self.Controler.CTNTestModified():
413946c04c87 refactoring
laurent
parents:
diff changeset
    51
            return "~%s~" % fullname
413946c04c87 refactoring
laurent
parents:
diff changeset
    52
        return fullname
413946c04c87 refactoring
laurent
parents:
diff changeset
    53
413946c04c87 refactoring
laurent
parents:
diff changeset
    54