48 self.splash = None |
48 self.splash = None |
49 self.splashPath = self.Bpath("images", "splash.png") |
49 self.splashPath = self.Bpath("images", "splash.png") |
50 self.modules = ["BeremizIDE"] |
50 self.modules = ["BeremizIDE"] |
51 self.debug = os.path.exists("BEREMIZ_DEBUG") |
51 self.debug = os.path.exists("BEREMIZ_DEBUG") |
52 self.handle_exception = None |
52 self.handle_exception = None |
|
53 self.logf = None |
53 |
54 |
54 def Bpath(self, *args): |
55 def Bpath(self, *args): |
55 return os.path.join(self.app_dir, *args) |
56 return os.path.join(self.app_dir, *args) |
56 |
57 |
57 def Usage(self): |
58 def Usage(self): |
60 print("") |
61 print("") |
61 print("Supported options:") |
62 print("Supported options:") |
62 print("-h --help Print this help") |
63 print("-h --help Print this help") |
63 print("-u --updatecheck URL Retrieve update information by checking URL") |
64 print("-u --updatecheck URL Retrieve update information by checking URL") |
64 print("-e --extend PathToExtension Extend IDE functionality by loading at start additional extensions") |
65 print("-e --extend PathToExtension Extend IDE functionality by loading at start additional extensions") |
|
66 print("-l --log path write content of console tab to given file") |
65 print("") |
67 print("") |
66 print("") |
68 print("") |
67 |
69 |
68 def SetCmdOptions(self): |
70 def SetCmdOptions(self): |
69 self.shortCmdOpts = "hu:e:" |
71 self.shortCmdOpts = "hu:e:l:" |
70 self.longCmdOpts = ["help", "updatecheck=", "extend="] |
72 self.longCmdOpts = ["help", "updatecheck=", "extend=", "log="] |
71 |
73 |
72 def ProcessOption(self, o, a): |
74 def ProcessOption(self, o, a): |
73 if o in ("-h", "--help"): |
75 if o in ("-h", "--help"): |
74 self.Usage() |
76 self.Usage() |
75 sys.exit() |
77 sys.exit() |
76 if o in ("-u", "--updatecheck"): |
78 if o in ("-u", "--updatecheck"): |
77 self.updateinfo_url = a |
79 self.updateinfo_url = a |
78 if o in ("-e", "--extend"): |
80 if o in ("-e", "--extend"): |
79 self.extensions.append(a) |
81 self.extensions.append(a) |
|
82 if o in ("-l", "--log"): |
|
83 self.logf = open(a, 'a') |
80 |
84 |
81 def ProcessCommandLineArgs(self): |
85 def ProcessCommandLineArgs(self): |
82 self.SetCmdOptions() |
86 self.SetCmdOptions() |
83 try: |
87 try: |
84 opts, args = getopt.getopt(sys.argv[1:], self.shortCmdOpts, self.longCmdOpts) |
88 opts, args = getopt.getopt(sys.argv[1:], self.shortCmdOpts, self.longCmdOpts) |
183 import version |
187 import version |
184 import util.ExceptionHandler |
188 import util.ExceptionHandler |
185 self.handle_exception = util.ExceptionHandler.AddExceptHook(version.app_version) |
189 self.handle_exception = util.ExceptionHandler.AddExceptHook(version.app_version) |
186 |
190 |
187 def CreateUI(self): |
191 def CreateUI(self): |
188 self.frame = self.BeremizIDE.Beremiz(None, self.projectOpen, self.buildpath) |
192 self.frame = self.BeremizIDE.Beremiz(None, self.projectOpen, self.buildpath, logf=self.logf) |
189 |
193 |
190 def CloseSplash(self): |
194 def CloseSplash(self): |
191 if self.splash: |
195 if self.splash: |
192 self.splash.Close() |
196 self.splash.Close() |
193 |
197 |