def __exit__(self, exc_type, exc_value, traceback): """ with構文のスコープが終わる際に呼び出されるメソッド。直接呼び出すべきではない。 return value: ProgressBar オブジェクト """ gui.getDesktop().setDialog(None) if exc_type: return False return True
def __enter__(self): """ with構文で使用された際に呼び出されるメソッド。直接呼び出すべきではない。 return value: ProgressBar オブジェクト """ self.progressBar = ProgressBar(self.text, self.bgcolor) gui.getDesktop().setDialog(self.progressBar) return self.progressBar
def __exit__(self,exc_type, exc_value, traceback): """ with構文のスコープが終わる際に呼び出されるメソッド。直接呼び出すべきではない。 return value: ProgressBar オブジェクト """ gui.getDesktop().setDialog(None) if exc_type: return False return True
def onChange(self, target): selected = target.getSelected() if selected == None: return contents = selected.getWindow() desktop = gui.getDesktop() if isinstance(contents, Contents): desktop.addChild( "contents", contents, (desktop.getWidth() - contents.getWidth(), header.getHeight()), 1) marquee.setText(contents.getMarqueeText()) elif desktop.getChild("contents") != None: gui.getDesktop().removeChild("contents") marquee.setText(gui.res.string_inst_exit_off)
def benchmark_gui(): if gui.messagebox.execute(gui.res.string_installer_tools_gui_benchmark, ["ok", "cancel"]) != "ok": return False desktop = gui.getDesktop() installer.marquee.setText(None) set_benchmark_progressbar(desktop, gui.res.string_installer_tools_off_screen_measure) start_time = pygame.time.get_ticks() offscreen_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: desktop.draw(gui.getScreen()) offscreen_cnt += 1 set_benchmark_progressbar(desktop, gui.res.string_installer_tools_framebuffer) screen = gui.getScreen() start_time = pygame.time.get_ticks() framebuffer_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: screen.set_at((random.randint(0, screen.get_width() - 1),random.randint(0, screen.get_height() - 1)), (random.randint(0,255),random.randint(0,255),random.randint(0,255))) pygame.display.update() framebuffer_cnt += 1 desktop.removeChild("progressbar") installer.marquee.setText(gui.res.string_installer_tools_speed) gui.messagebox.execute(gui.res.string_installer_tools_result % (float(offscreen_cnt) / 5, float(framebuffer_cnt) / 5), ["ok"]) return True
def execute(text, options, bgcolor = None): """ リストからアイテムを選択するダイアログボックスを実行する。 text: ダイアログに表示するメッセージ options: 選択肢 {"id":選択肢のID, "label":選択肢のテキスト} のリスト。 bgcolor: ダイアログの背景色。Noneの場合 gui.res.color_dialog_positive """ selectBox = SelectBox(text, options, bgcolor) return selectBox.execute(gui.getDesktop())
def execute(text, buttons = ["ok"], bgcolor = None, default = 0, timeout = 0): """ メッセージボックス(アラート)ダイアログを実行する text: ダイアログに表示するメッセージ buttons: 表示するボタンのID文字列("ok"や"cancel")のリスト bgcolor: ダイアログの背景色。Noneの場合 gui.res.color_dialog_positive default: デフォルトで選択されているボタンのインデックス timeout: defaultで指定されたボタンが押下されたものとして処理されるまでのタイムアウト """ messageBox = MessageBox(text, buttons, bgcolor, default, timeout) return messageBox.execute(gui.getDesktop())
def execute(text, buttons=["ok"], bgcolor=None, default=0, timeout=0): """ メッセージボックス(アラート)ダイアログを実行する text: ダイアログに表示するメッセージ buttons: 表示するボタンのID文字列("ok"や"cancel")のリスト bgcolor: ダイアログの背景色。Noneの場合 gui.res.color_dialog_positive default: デフォルトで選択されているボタンのインデックス timeout: defaultで指定されたボタンが押下されたものとして処理されるまでのタイムアウト """ messageBox = MessageBox(text, buttons, bgcolor, default, timeout) return messageBox.execute(gui.getDesktop())
def benchmark_gui(): if gui.messagebox.execute(gui.res.string_installer_tools_gui_benchmark, ["ok", "cancel"]) != "ok": return False desktop = gui.getDesktop() installer.marquee.setText(None) set_benchmark_progressbar( desktop, gui.res.string_installer_tools_off_screen_measure) start_time = pygame.time.get_ticks() offscreen_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: desktop.draw(gui.getScreen()) offscreen_cnt += 1 set_benchmark_progressbar(desktop, gui.res.string_installer_tools_framebuffer) screen = gui.getScreen() start_time = pygame.time.get_ticks() framebuffer_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: screen.set_at((random.randint( 0, screen.get_width() - 1), random.randint(0, screen.get_height() - 1)), (random.randint(0, 255), random.randint( 0, 255), random.randint(0, 255))) pygame.display.update() framebuffer_cnt += 1 desktop.removeChild("progressbar") installer.marquee.setText(gui.res.string_installer_tools_speed) gui.messagebox.execute( gui.res.string_installer_tools_result % (float(offscreen_cnt) / 5, float(framebuffer_cnt) / 5), ["ok"]) return True
def benchmark_gui(): if dialogbox.messagebox.execute(gui.res.string_benchmark_start_desc, dialogbox.DialogBox.OKCANCEL()) != "ok": return False desktop = gui.getDesktop() footer.window.setText(None) set_benchmark_progressbar(desktop, gui.res.string_drawing_measure) start_time = pygame.time.get_ticks() offscreen_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: desktop.draw(gui.getScreen()) offscreen_cnt += 1 set_benchmark_progressbar(desktop, gui.res.string_frame_buffer_measure) screen = gui.getScreen() start_time = pygame.time.get_ticks() framebuffer_cnt = 0 while pygame.time.get_ticks() - start_time <= 5000: screen.set_at((random.randint( 0, screen.get_width() - 1), random.randint(0, screen.get_height() - 1)), (random.randint(0, 255), random.randint( 0, 255), random.randint(0, 255))) pygame.display.update() framebuffer_cnt += 1 desktop.removeChild("progressbar") footer.window.setText(gui.res.string_speed_indication) dialogbox.messagebox.execute( gui.res.string_benchmark_result % (float(offscreen_cnt) / 5, float(framebuffer_cnt) / 5)) return False
def expand(domain): s = system.getSystem() device = domain["device"] orig_disk = domain.get("size") or s.determineLogicalVolumeSizeInGB(device) min_disk = int(orig_disk) + 1 disk = gui.inputbox.TextInputBox(gui.res.string_new_size, min_disk, None, 1, 5, "0123456789").execute(gui.getDesktop()) if disk == None: return False disk = int(disk) if disk < min_disk: gui.messagebox.execute(gui.res.string_size_desc, ["ok"], gui.res.color_dialog_negative) return False if min_disk < 2048 and disk >= 2048: gui.messagebox.execute(string_cant_across_2tb, ["ok"], gui.res.color_dialog_negative) return False if subprocess.Popen( "lvextend -L %dG %s" % (disk, device), shell=True, close_fds=True).wait() != 0: gui.messagebox.execute(gui.res.string_free_space_desc, ["ok"], gui.res.color_dialog_negative) return False with s.temporaryMount(device, None, "inode32") as tmpdir: if subprocess.Popen("xfs_growfs %s" % tmpdir, shell=True, close_fds=True).wait() != 0: gui.messagebox.execute(gui.res.string_assign_desc, ["ok"], gui.res.color_dialog_negative) return False gui.messagebox.execute(gui.res.string_enhanced, ["ok"]) return True
def execute(progressBar, threadToWatch): """ 使用非推奨 """ return progressBar.execute(gui.getDesktop(), threadToWatch)
def expand(domain): s = system.getSystem() device = domain["device"] orig_disk = domain.get("size") or s.determineLogicalVolumeSizeInGB(device) min_disk = int(orig_disk) + 1 disk = gui.inputbox.TextInputBox(gui.res.string_new_size, min_disk, None, 1, 5, "0123456789").execute(gui.getDesktop()) if disk == None: return False disk = int(disk) if disk < min_disk: gui.messagebox.execute(gui.res.string_size_desc, ["ok"], gui.res.color_dialog_negative) return False if min_disk < 2048 and disk >= 2048: gui.messagebox.execute(string_cant_across_2tb, ["ok"], gui.res.color_dialog_negative) return False if subprocess.Popen("lvextend -L %dG %s" % (disk, device), shell=True, close_fds=True).wait() != 0: gui.messagebox.execute(gui.res.string_free_space_desc, ["ok"], gui.res.color_dialog_negative) return False with s.temporaryMount(device, None, "inode32") as tmpdir: if subprocess.Popen("xfs_growfs %s" % tmpdir, shell=True, close_fds=True).wait() != 0: gui.messagebox.execute(gui.res.string_assign_desc, ["ok"], gui.res.color_dialog_negative) return False gui.messagebox.execute(gui.res.string_enhanced, ["ok"]) return True
def open(text, header_img=None): contents = dialogbox.MessageContents(text, header_img) pb = ProgressBarDialog(contents) return gui.getDesktop().openDialog(pb)
def execute(self, desktop=None): if desktop == None: desktop = gui.getDesktop() with desktop.openDialog(self): return gui.eventLoop(self)
def open(text, header_image = None): message = dialogbox.DialogBox.MESSAGE(text, header_image) myDialog = dialogbox.DialogBox(message) return gui.getDesktop().openDialog(myDialog)
def open(text, header_image=None): message = dialogbox.DialogBox.MESSAGE(text, header_image) myDialog = dialogbox.DialogBox(message) return gui.getDesktop().openDialog(myDialog)
def open(text, header_img = None): contents = dialogbox.MessageContents(text, header_img) pb = ProgressBarDialog(contents) return gui.getDesktop().openDialog(pb)
def execute(self, desktop = None): if desktop == None: desktop = gui.getDesktop() with desktop.openDialog(self): return gui.eventLoop(self)