1 | import wx, sys, os, gettext, string, time |
---|
2 | import wx.wizard as wiz |
---|
3 | import wx.lib.layoutf as layoutf |
---|
4 | |
---|
5 | from config import main_functions,remote_functions |
---|
6 | from remoteLinuxWizard import remoteLinuxPage, setAllClientsPage,selectClientsPage,remoteLinuxFinalPage |
---|
7 | |
---|
8 | cat = gettext.GNUTranslations(open('../langs/%s.mo' % os.getenv('LANG'))) |
---|
9 | _ = cat.gettext |
---|
10 | |
---|
11 | |
---|
12 | #---------------------------------------------------------------------- |
---|
13 | class MainFrame(wx.Frame): |
---|
14 | def __init__(self): |
---|
15 | wx.Frame.__init__(self, parent=None, title=_('msg_nchc_title'), pos=wx.DefaultPosition, size=(400,400)) |
---|
16 | |
---|
17 | mainlist = [] |
---|
18 | for i in range(0, len(main_functions)): |
---|
19 | mainlist.append(main_functions[i][0] + ' ' + ' --- ' + ' ' + main_functions[i][1]) |
---|
20 | |
---|
21 | self.SetAutoLayout(True) |
---|
22 | |
---|
23 | self.panelA = wx.Panel(self) |
---|
24 | #self.panelA.SetBackgroundColour(wx.RED) |
---|
25 | self.panelA.SetConstraints(layoutf.Layoutf('t=t#1;l=l10#1;b%b35#1;r=r10#1',(self,))) |
---|
26 | |
---|
27 | self.panelB = wx.Panel(self) |
---|
28 | #self.panelB.SetBackgroundColour(wx.BLUE) |
---|
29 | self.panelB.SetConstraints(layoutf.Layoutf('t_5#2;l=l10#1;b%b85#1;r=r10#1',(self,self.panelA))) |
---|
30 | |
---|
31 | self.panelC = wx.Panel(self) |
---|
32 | #self.panelC.SetBackgroundColour(wx.GREEN) |
---|
33 | self.panelC.SetConstraints(layoutf.Layoutf('t_10#2;l=l10#1;b=b10#1;r=r10#1',(self,self.panelB))) |
---|
34 | |
---|
35 | gif = wx.Image('../images/drbl-logo.gif', wx.BITMAP_TYPE_GIF).ConvertToBitmap() |
---|
36 | image = wx.StaticBitmap(self.panelA, -1, gif, wx.DefaultPosition, (gif.GetWidth(), gif.GetHeight())) |
---|
37 | #text = wx.StaticText(self.panelA, -1, _('msg_warnning_content'), wx.DefaultPosition, (375,65), style=wx.TE_MULTILINE) |
---|
38 | #font = wx.Font(10, wx.SWISS, wx.BOLD, wx.NORMAL) |
---|
39 | #text.SetFont(font) |
---|
40 | #image.SetConstraints(layoutf.Layoutf('X%X50#1;Y=Y#1;h*;w%w50#1', (self.panelA,))) |
---|
41 | image.SetConstraints(layoutf.Layoutf('X=X#1;Y=Y#1;h*;w*', (self.panelA,))) |
---|
42 | |
---|
43 | rb = wx.RadioBox(self.panelB, -1, _('msg_choose_action'), wx.DefaultPosition, wx.DefaultSize, mainlist, 1, wx.RA_SPECIFY_COLS) |
---|
44 | rb.SetConstraints(layoutf.Layoutf('X=X#1;Y=Y#1;h*;w*', (self.panelB,))) |
---|
45 | self.Bind(wx.EVT_RADIOBOX, self.EvtRadioBox, rb) |
---|
46 | rb.SetSelection(0) |
---|
47 | |
---|
48 | self.b_ok = wx.Button(self.panelC, wx.ID_OK) |
---|
49 | self.b_ok.SetSize(self.b_ok.GetBestSize()) |
---|
50 | self.b_ok.SetConstraints(layoutf.Layoutf('X%X150#1;Y=Y#1;h*;w*', (self.panelC,))) |
---|
51 | self.b_exit = wx.Button(self.panelC, wx.ID_EXIT) |
---|
52 | self.b_exit.SetSize(self.b_exit.GetBestSize()) |
---|
53 | self.b_exit.SetConstraints(layoutf.Layoutf('X%X50#1;Y=Y#1;h*;w*', (self.panelC,))) |
---|
54 | |
---|
55 | #self.Bind(wiz.EVT_WIZARD_PAGE_CHANGED, self.OnWizPageChanged) |
---|
56 | self.Bind(wx.EVT_BUTTON, self.remoteLinuxWizard, self.b_ok) |
---|
57 | self.Bind(wx.EVT_BUTTON, self.OnCloseWindow, self.b_exit) |
---|
58 | self.Bind(wx.EVT_CLOSE, self.OnCloseWindow) |
---|
59 | |
---|
60 | #warnning = wx.MessageDialog(self, _('msg_warnning_content'), _('msg_warnning'), wx.OK|wx.ICON_INFORMATION) |
---|
61 | #warnning.Centre() |
---|
62 | #warnning.SetFocus() |
---|
63 | #warnning.ShowModal() |
---|
64 | #warnning.Destroy() |
---|
65 | |
---|
66 | def EvtRadioBox(self, event): |
---|
67 | if event.GetSelection() == 0: |
---|
68 | self.Bind(wx.EVT_BUTTON, self.remoteLinuxWizard, self.b_ok) |
---|
69 | #if event.GetSelection() == 1: |
---|
70 | #self.Bind(wx.EVT_BUTTON, self.clonezillaSaveWizard, self.b_ok) |
---|
71 | #if event.GetSelection() == 2: |
---|
72 | #self.Bind(wx.EVT_BUTTON, self.clonezillaRestoreWizard, self.b_ok) |
---|
73 | #if event.GetSelection() == 3: |
---|
74 | #self.Bind(wx.EVT_BUTTON, self.TDWDemoWizard, self.b_ok) |
---|
75 | #if event.GetSelection() == 4: |
---|
76 | #self.Bind(wx.EVT_BUTTON, self.StreamDemoWizard, self.b_ok) |
---|
77 | #if event.GetSelection() == 5: |
---|
78 | #self.Bind(wx.EVT_BUTTON, self.RunWizard, self.b_ok) |
---|
79 | #if event.GetSelection() == 6: |
---|
80 | #self.Bind(wx.EVT_BUTTON, self.HelpWizard, self.b_ok) |
---|
81 | |
---|
82 | #---------------------------------------------------------------------- |
---|
83 | def OnCloseWindow(self, event): |
---|
84 | self.Destroy() |
---|
85 | |
---|
86 | |
---|
87 | #------------------------------Wizard Modules-------------------------- |
---|
88 | def remoteLinuxWizard(self,evt): |
---|
89 | wizard = wiz.Wizard(self, -1, _('msg_remote_linux')) |
---|
90 | |
---|
91 | page1 = remoteLinuxPage(wizard, _('msg_choose')) |
---|
92 | page2 = setAllClientsPage(wizard, _('msg_title_set_all_clients')) |
---|
93 | page3 = selectClientsPage(wizard, _('msg_select_clients')) |
---|
94 | page4 = remoteLinuxFinalPage(wizard, _('msg_done')) |
---|
95 | |
---|
96 | self.page1 = page1 |
---|
97 | wizard.SetPageSize((500, 320)) |
---|
98 | #wizard.FitToPage(page1) |
---|
99 | |
---|
100 | page1.SetNext(page2) |
---|
101 | page2.SetPrev(page1) |
---|
102 | page2.SetNext(page3) |
---|
103 | page3.SetPrev(page2) |
---|
104 | page3.SetNext(page4) |
---|
105 | |
---|
106 | #wizard.GetPageAreaSizer().Add(page1) |
---|
107 | wizard.RunWizard(page1) |
---|
108 | |
---|
109 | #------------------------------------------------------------------------ |
---|
110 | if __name__ == '__main__': |
---|
111 | app = wx.PySimpleApp() |
---|
112 | frame = MainFrame() |
---|
113 | frame.Centre() |
---|
114 | frame.Show() |
---|
115 | app.MainLoop() |
---|
116 | |
---|