def pinguino_upload(self, event=None): uploaded, result = self.pinguinoAPI.upload() self.write_log(result) if uploaded: Dialogs.upload_done() elif Dialogs.upload_fail(result): self.pinguino_upload()
def save_paths(self): for lineEdit, keyWord in self.dialog_dirs: content = lineEdit.get() print content if content.isspace(): content = "" if not (os.path.exists(content) and content): Dialogs.error_message(keyWord + ": '" + content + "'\n"+"This path not exist.") return else: self.main.configIDE.set("Paths", keyWord, content) self.main.configIDE.save_config() PinguinoConfig.update_pinguino_paths(self.main.configIDE, self.main.pinguinoAPI)
def save_paths(self): for lineEdit, keyWord in self.dialog_dirs: content = lineEdit.get() print content if content.isspace(): content = "" if not (os.path.exists(content) and content): Dialogs.error_message(keyWord + ": '" + content + "'\n" + "This path not exist.") return else: self.main.configIDE.set("Paths", keyWord, content) self.main.configIDE.save_config() PinguinoConfig.update_pinguino_paths(self.main.configIDE, self.main.pinguinoAPI)
def quit(self): """""" if Dialogs.confirm_message("Do you really want save these paths?."): self.save_paths() self.master.destroy()
def close_file(self, event=None): if self.get_tab("text", False).endswith("*"): if Dialogs.set_no_saved_file(self.get_tab("text")): self.save_file() self.Files.pop(self.noteBook.select()) self.noteBook.deletecommand(self.noteBook.select()) self.check_notebook_visibility()
def save_as(self, event=None): textedit = self.get_current_textedit() file = Dialogs.set_save_file(self, "/home/yeison/Escritorio", self.get_tab("text")) if file: self.set_tab_text_changed(False) self.Files[self.noteBook.select()]["filename"] = file.name self.parent.title(os.getenv("NAME")+" - "+file.name) self.noteBook.tab(self.noteBook.select(), text=os.path.split(file.name)[1]) file.writelines(textedit.get("0.0", END)) file.close()
def save_as(self, event=None): textedit = self.get_current_textedit() file = Dialogs.set_save_file(self, "/home/yeison/Escritorio", self.get_tab("text")) if file: self.set_tab_text_changed(False) self.Files[self.noteBook.select()]["filename"] = file.name self.parent.title(os.getenv("NAME") + " - " + file.name) self.noteBook.tab(self.noteBook.select(), text=os.path.split(file.name)[1]) file.writelines(textedit.get("0.0", END)) file.close()
def save_file(self, event=None): textedit = self.get_current_textedit() filename = self.get_current_filename() if filename: file = open(filename, "w") else: file = Dialogs.set_save_file(self, "/home/yeison/Escritorio", self.get_tab("text")) if file: self.set_tab_text_changed(False) self.Files[self.noteBook.select()]["filename"] = file.name self.parent.title(os.getenv("NAME")+" - "+file.name) file.writelines(textedit.get("0.0", END)) file.close() return True return False
def save_file(self, event=None): textedit = self.get_current_textedit() filename = self.get_current_filename() if filename: file = open(filename, "w") else: file = Dialogs.set_save_file(self, "/home/yeison/Escritorio", self.get_tab("text")) if file: self.set_tab_text_changed(False) self.Files[self.noteBook.select()]["filename"] = file.name self.parent.title(os.getenv("NAME") + " - " + file.name) file.writelines(textedit.get("0.0", END)) file.close() return True return False
def post_compile(self): #self.main.actionUpload.setEnabled(self.pinguinoAPI.compiled()) if not self.pinguinoAPI.compiled(): errors_preprocess = self.pinguinoAPI.get_errors_preprocess() if errors_preprocess: for error in errors_preprocess["preprocess"]: self.write_log("ERROR: "+error) errors_c = self.pinguinoAPI.get_errors_compiling_c() if errors_c: self.write_log("ERROR: "+errors_c["complete_message"]) line_errors = errors_c["line_numbers"] for line_error in line_errors: self.highligh_line(line_error, "#ff7f7f") errors_asm = self.pinguinoAPI.get_errors_compiling_asm() if errors_asm: for error in errors_asm["error_symbols"]: self.write_log("ERROR: "+error) errors_linking = self.pinguinoAPI.get_errors_linking() if errors_linking: for error in errors_linking["linking"]: self.write_log("ERROR: "+error) line_errors_l = errors_linking["line_numbers"] for line_error in line_errors_l: self.highligh_line(line_error, "#ff7f7f") if errors_asm or errors_c: if Dialogs.error_while_compiling(): self.__show_stdout__() elif errors_linking: if Dialogs.error_while_linking(): self.__show_stdout__() elif errors_preprocess: if Dialogs.error_while_preprocess(): self.__show_stdout__() else: if Dialogs.error_while_unknow(): self.__show_stdout__() else: result = self.pinguinoAPI.get_result() self.write_log("compilation done") self.write_log(result["code_size"]) self.write_log("%s seconds process time"%result["time"]) Dialogs.compilation_done()
def post_compile(self): #self.main.actionUpload.setEnabled(self.pinguinoAPI.compiled()) if not self.pinguinoAPI.compiled(): errors_preprocess = self.pinguinoAPI.get_errors_preprocess() if errors_preprocess: for error in errors_preprocess["preprocess"]: self.write_log("ERROR: " + error) errors_c = self.pinguinoAPI.get_errors_compiling_c() if errors_c: self.write_log("ERROR: " + errors_c["complete_message"]) line_errors = errors_c["line_numbers"] for line_error in line_errors: self.highligh_line(line_error, "#ff7f7f") errors_asm = self.pinguinoAPI.get_errors_compiling_asm() if errors_asm: for error in errors_asm["error_symbols"]: self.write_log("ERROR: " + error) errors_linking = self.pinguinoAPI.get_errors_linking() if errors_linking: for error in errors_linking["linking"]: self.write_log("ERROR: " + error) line_errors_l = errors_linking["line_numbers"] for line_error in line_errors_l: self.highligh_line(line_error, "#ff7f7f") if errors_asm or errors_c: if Dialogs.error_while_compiling(): self.__show_stdout__() elif errors_linking: if Dialogs.error_while_linking(): self.__show_stdout__() elif errors_preprocess: if Dialogs.error_while_preprocess(): self.__show_stdout__() else: if Dialogs.error_while_unknow(): self.__show_stdout__() else: result = self.pinguinoAPI.get_result() self.write_log("compilation done") self.write_log(result["code_size"]) self.write_log("%s seconds process time" % result["time"]) Dialogs.compilation_done()
def open_file(self, filename=None): if filename is None: file = Dialogs.set_open_file(self, os.path.expanduser("~/")) if file is None: return else: file = open(filename, "r") filename = file.name assert filename.endswith(".pde") content = "".join(file.readlines()) file.close() frame_edit = PinguinoCodeEditor(self) textedit = frame_edit.textedit textedit.insert(END, content) textedit.update_syntax() self.noteBook.add(frame_edit, text=os.path.split(filename)[-1]) self.noteBook.select(self.noteBook.tabs()[-1]) self.Files[self.noteBook.select()] = {} self.Files[self.noteBook.select()]["textedit"] = textedit self.Files[self.noteBook.select()]["filename"] = filename self.check_notebook_visibility()