From ee1114fb3b38ac1095a2e1d57e5217ec06e7dc31 Mon Sep 17 00:00:00 2001 From: Shlomi Fish Date: Fri, 19 Feb 2016 19:27:22 +0200 Subject: [PATCH] Continue moving more menubar func to base class. --- pysollib/tile/menubar.py | 155 --------------------------------- pysollib/tk/menubar.py | 157 ---------------------------------- pysollib/ui/tktile/menubar.py | 155 +++++++++++++++++++++++++++++++++ 3 files changed, 155 insertions(+), 312 deletions(-) diff --git a/pysollib/tile/menubar.py b/pysollib/tile/menubar.py index 6f7ecb67..498ab199 100644 --- a/pysollib/tile/menubar.py +++ b/pysollib/tile/menubar.py @@ -93,161 +93,6 @@ class PysolMenubarTk(PysolMenubarTkCommon): self.game.endGame(bookmark=1) self.game.quitGame(bookmark=1) - def _mOptCardback(self, index): - if self._cancelDrag(break_pause=False): return - cs = self.app.cardset - old_index = cs.backindex - cs.updateCardback(backindex=index) - if cs.backindex == old_index: - return - self.app.updateCardset(self.game.id) - image = self.app.images.getBack(update=True) - for card in self.game.cards: - card.updateCardBackground(image=image) - self.app.canvas.update_idletasks() - self.tkopt.cardback.set(cs.backindex) - - def mOptCardback(self, *event): - self._mOptCardback(self.tkopt.cardback.get()) - - def mOptChangeCardback(self, *event): - self._mOptCardback(self.app.cardset.backindex + 1) - - def mOptChangeTableTile(self, *event): - if self._cancelDrag(break_pause=False): return - n = self.app.tabletile_manager.len() - if n >= 2: - i = (self.tkopt.tabletile.get() + 1) % n - if self.app.setTile(i): - self.tkopt.tabletile.set(i) - - def mSelectTileDialog(self, *event): - if self._cancelDrag(break_pause=False): return - key = self.app.tabletile_index - if key <= 0: - key = self.app.opt.colors['table'] ##.lower() - d = SelectTileDialogWithPreview(self.top, app=self.app, - title=_("Select table background"), - manager=self.app.tabletile_manager, - key=key) - if d.status == 0 and d.button == 0: - if isinstance(d.key, str): - tile = self.app.tabletile_manager.get(0) - tile.color = d.key - if self.app.setTile(0): - self.tkopt.tabletile.set(0) - elif d.key > 0 and d.key != self.app.tabletile_index: - if self.app.setTile(d.key): - self.tkopt.tabletile.set(d.key) - - def mOptToolbar(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarSide(self.tkopt.toolbar.get()) - - def mOptToolbarStyle(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarStyle(self.tkopt.toolbar_style.get()) - - def mOptToolbarCompound(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarCompound(self.tkopt.toolbar_compound.get()) - - def mOptToolbarSize(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarSize(self.tkopt.toolbar_size.get()) - - def mOptToolbarConfig(self, w): - self.toolbarConfig(w, self.tkopt.toolbar_vars[w].get()) - - def mOptStatusbar(self, *event): - if self._cancelDrag(break_pause=False): return - if not self.app.statusbar: return - side = self.tkopt.statusbar.get() - self.app.opt.statusbar = side - resize = not self.app.opt.save_games_geometry - if self.app.statusbar.show(side, resize=resize): - self.top.update_idletasks() - - def mOptNumCards(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.num_cards = self.tkopt.num_cards.get() - - def mOptHelpbar(self, *event): - if self._cancelDrag(break_pause=False): return - if not self.app.helpbar: return - show = self.tkopt.helpbar.get() - self.app.opt.helpbar = show - resize = not self.app.opt.save_games_geometry - if self.app.helpbar.show(show, resize=resize): - self.top.update_idletasks() - - def mOptSaveGamesGeometry(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.save_games_geometry = self.tkopt.save_games_geometry.get() - - def mOptDemoLogo(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.demo_logo = self.tkopt.demo_logo.get() - - def mOptSplashscreen(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.splashscreen = self.tkopt.splashscreen.get() - - def mOptMouseType(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.mouse_type = self.tkopt.mouse_type.get() - - def mOptMouseUndo(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.mouse_undo = self.tkopt.mouse_undo.get() - - def mOptNegativeBottom(self, *event): - if self._cancelDrag(): return - self.app.opt.negative_bottom = self.tkopt.negative_bottom.get() - self.app.updateCardset() - self.game.endGame(bookmark=1) - self.game.quitGame(bookmark=1) - - - # - # toolbar support - # - - def setToolbarSide(self, side): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar = side - self.tkopt.toolbar.set(side) # update radiobutton - resize = not self.app.opt.save_games_geometry - if self.app.toolbar.show(side, resize=resize): - self.top.update_idletasks() - - def setToolbarSize(self, size): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_size = size - self.tkopt.toolbar_size.set(size) # update radiobutton - dir = self.app.getToolbarImagesDir() - if self.app.toolbar.updateImages(dir, size): - self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() - - def setToolbarStyle(self, style): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_style = style - self.tkopt.toolbar_style.set(style) # update radiobutton - dir = self.app.getToolbarImagesDir() - size = self.app.opt.toolbar_size - if self.app.toolbar.updateImages(dir, size): - ##self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() - - def setToolbarCompound(self, compound): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_compound = compound - self.tkopt.toolbar_compound.set(compound) # update radiobutton - if self.app.toolbar.setCompound(compound): - self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() - def toolbarConfig(self, w, v): if self._cancelDrag(break_pause=False): return self.app.opt.toolbar_vars[w] = v diff --git a/pysollib/tk/menubar.py b/pysollib/tk/menubar.py index 487ba5e8..184dfdc9 100644 --- a/pysollib/tk/menubar.py +++ b/pysollib/tk/menubar.py @@ -118,164 +118,7 @@ class PysolMenubarTk(PysolMenubarTkCommon): self.game.endGame(bookmark=1) self.game.quitGame(bookmark=1) - def _mOptCardback(self, index): - if self._cancelDrag(break_pause=False): return - cs = self.app.cardset - old_index = cs.backindex - cs.updateCardback(backindex=index) - if cs.backindex == old_index: - return - self.app.updateCardset(self.game.id) - image = self.app.images.getBack(update=True) - for card in self.game.cards: - card.updateCardBackground(image=image) - self.app.canvas.update_idletasks() - self.tkopt.cardback.set(cs.backindex) - def mOptCardback(self, *event): - self._mOptCardback(self.tkopt.cardback.get()) - - def mOptChangeCardback(self, *event): - self._mOptCardback(self.app.cardset.backindex + 1) - - def mOptChangeTableTile(self, *event): - if self._cancelDrag(break_pause=False): return - n = self.app.tabletile_manager.len() - if n >= 2: - i = (self.tkopt.tabletile.get() + 1) % n - if self.app.setTile(i): - self.tkopt.tabletile.set(i) - - def mSelectTileDialog(self, *event): - if self._cancelDrag(break_pause=False): return - key = self.app.tabletile_index - if key <= 0: - key = self.app.opt.colors['table'] ##.lower() - d = SelectTileDialogWithPreview(self.top, app=self.app, - title=_("Select table background"), - manager=self.app.tabletile_manager, - key=key) - if d.status == 0 and d.button == 0: - if isinstance(d.key, str): - tile = self.app.tabletile_manager.get(0) - tile.color = d.key - if self.app.setTile(0): - self.tkopt.tabletile.set(0) - elif d.key > 0 and d.key != self.app.tabletile_index: - if self.app.setTile(d.key): - self.tkopt.tabletile.set(d.key) - - def mOptToolbar(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarSide(self.tkopt.toolbar.get()) - - def mOptToolbarStyle(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarStyle(self.tkopt.toolbar_style.get()) - - def mOptToolbarCompound(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarCompound(self.tkopt.toolbar_compound.get()) - - def mOptToolbarSize(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarSize(self.tkopt.toolbar_size.get()) - - def mOptToolbarRelief(self, *event): - ##if self._cancelDrag(break_pause=False): return - self.setToolbarRelief(self.tkopt.toolbar_relief.get()) - - def mOptToolbarConfig(self, w): - self.toolbarConfig(w, self.tkopt.toolbar_vars[w].get()) - - def mOptStatusbar(self, *event): - if self._cancelDrag(break_pause=False): return - if not self.app.statusbar: return - side = self.tkopt.statusbar.get() - self.app.opt.statusbar = side - resize = not self.app.opt.save_games_geometry - if self.app.statusbar.show(side, resize=resize): - self.top.update_idletasks() - - def mOptNumCards(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.num_cards = self.tkopt.num_cards.get() - - def mOptHelpbar(self, *event): - if self._cancelDrag(break_pause=False): return - if not self.app.helpbar: return - show = self.tkopt.helpbar.get() - self.app.opt.helpbar = show - resize = not self.app.opt.save_games_geometry - if self.app.helpbar.show(show, resize=resize): - self.top.update_idletasks() - - def mOptSaveGamesGeometry(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.save_games_geometry = self.tkopt.save_games_geometry.get() - - def mOptDemoLogo(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.demo_logo = self.tkopt.demo_logo.get() - - def mOptSplashscreen(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.splashscreen = self.tkopt.splashscreen.get() - - def mOptMouseType(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.mouse_type = self.tkopt.mouse_type.get() - - def mOptMouseUndo(self, *event): - if self._cancelDrag(break_pause=False): return - self.app.opt.mouse_undo = self.tkopt.mouse_undo.get() - - def mOptNegativeBottom(self, *event): - if self._cancelDrag(): return - self.app.opt.negative_bottom = self.tkopt.negative_bottom.get() - self.app.updateCardset() - self.game.endGame(bookmark=1) - self.game.quitGame(bookmark=1) - - - # - # toolbar support - # - - def setToolbarSide(self, side): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar = side - self.tkopt.toolbar.set(side) # update radiobutton - resize = not self.app.opt.save_games_geometry - if self.app.toolbar.show(side, resize=resize): - self.top.update_idletasks() - - def setToolbarSize(self, size): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_size = size - self.tkopt.toolbar_size.set(size) # update radiobutton - dir = self.app.getToolbarImagesDir() - if self.app.toolbar.updateImages(dir, size): - self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() - - def setToolbarStyle(self, style): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_style = style - self.tkopt.toolbar_style.set(style) # update radiobutton - dir = self.app.getToolbarImagesDir() - size = self.app.opt.toolbar_size - if self.app.toolbar.updateImages(dir, size): - ##self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() - - def setToolbarCompound(self, compound): - if self._cancelDrag(break_pause=False): return - self.app.opt.toolbar_compound = compound - self.tkopt.toolbar_compound.set(compound) # update radiobutton - if self.app.toolbar.setCompound(compound): - self.game.updateStatus(player=self.app.opt.player) - self.top.update_idletasks() def setToolbarRelief(self, relief): if self._cancelDrag(break_pause=False): return diff --git a/pysollib/ui/tktile/menubar.py b/pysollib/ui/tktile/menubar.py index a1809bc7..b74f554d 100644 --- a/pysollib/ui/tktile/menubar.py +++ b/pysollib/ui/tktile/menubar.py @@ -1180,3 +1180,158 @@ Unsupported game for export. self.app.opt.auto_scale = auto_scale self.tkopt.auto_scale.set(auto_scale) self._updateCardSize() + + def _mOptCardback(self, index): + if self._cancelDrag(break_pause=False): return + cs = self.app.cardset + old_index = cs.backindex + cs.updateCardback(backindex=index) + if cs.backindex == old_index: + return + self.app.updateCardset(self.game.id) + image = self.app.images.getBack(update=True) + for card in self.game.cards: + card.updateCardBackground(image=image) + self.app.canvas.update_idletasks() + self.tkopt.cardback.set(cs.backindex) + + def mOptCardback(self, *event): + self._mOptCardback(self.tkopt.cardback.get()) + + def mOptChangeCardback(self, *event): + self._mOptCardback(self.app.cardset.backindex + 1) + + def mOptChangeTableTile(self, *event): + if self._cancelDrag(break_pause=False): return + n = self.app.tabletile_manager.len() + if n >= 2: + i = (self.tkopt.tabletile.get() + 1) % n + if self.app.setTile(i): + self.tkopt.tabletile.set(i) + + def mSelectTileDialog(self, *event): + if self._cancelDrag(break_pause=False): return + key = self.app.tabletile_index + if key <= 0: + key = self.app.opt.colors['table'] ##.lower() + d = SelectTileDialogWithPreview(self.top, app=self.app, + title=_("Select table background"), + manager=self.app.tabletile_manager, + key=key) + if d.status == 0 and d.button == 0: + if isinstance(d.key, str): + tile = self.app.tabletile_manager.get(0) + tile.color = d.key + if self.app.setTile(0): + self.tkopt.tabletile.set(0) + elif d.key > 0 and d.key != self.app.tabletile_index: + if self.app.setTile(d.key): + self.tkopt.tabletile.set(d.key) + + def mOptToolbar(self, *event): + ##if self._cancelDrag(break_pause=False): return + self.setToolbarSide(self.tkopt.toolbar.get()) + + def mOptToolbarStyle(self, *event): + ##if self._cancelDrag(break_pause=False): return + self.setToolbarStyle(self.tkopt.toolbar_style.get()) + + def mOptToolbarCompound(self, *event): + ##if self._cancelDrag(break_pause=False): return + self.setToolbarCompound(self.tkopt.toolbar_compound.get()) + + def mOptToolbarSize(self, *event): + ##if self._cancelDrag(break_pause=False): return + self.setToolbarSize(self.tkopt.toolbar_size.get()) + + def mOptToolbarConfig(self, w): + self.toolbarConfig(w, self.tkopt.toolbar_vars[w].get()) + + def mOptStatusbar(self, *event): + if self._cancelDrag(break_pause=False): return + if not self.app.statusbar: return + side = self.tkopt.statusbar.get() + self.app.opt.statusbar = side + resize = not self.app.opt.save_games_geometry + if self.app.statusbar.show(side, resize=resize): + self.top.update_idletasks() + + def mOptNumCards(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.num_cards = self.tkopt.num_cards.get() + + def mOptHelpbar(self, *event): + if self._cancelDrag(break_pause=False): return + if not self.app.helpbar: return + show = self.tkopt.helpbar.get() + self.app.opt.helpbar = show + resize = not self.app.opt.save_games_geometry + if self.app.helpbar.show(show, resize=resize): + self.top.update_idletasks() + + def mOptSaveGamesGeometry(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.save_games_geometry = self.tkopt.save_games_geometry.get() + + def mOptDemoLogo(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.demo_logo = self.tkopt.demo_logo.get() + + def mOptSplashscreen(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.splashscreen = self.tkopt.splashscreen.get() + + def mOptMouseType(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.mouse_type = self.tkopt.mouse_type.get() + + def mOptMouseUndo(self, *event): + if self._cancelDrag(break_pause=False): return + self.app.opt.mouse_undo = self.tkopt.mouse_undo.get() + + def mOptNegativeBottom(self, *event): + if self._cancelDrag(): return + self.app.opt.negative_bottom = self.tkopt.negative_bottom.get() + self.app.updateCardset() + self.game.endGame(bookmark=1) + self.game.quitGame(bookmark=1) + + + # + # toolbar support + # + + def setToolbarSide(self, side): + if self._cancelDrag(break_pause=False): return + self.app.opt.toolbar = side + self.tkopt.toolbar.set(side) # update radiobutton + resize = not self.app.opt.save_games_geometry + if self.app.toolbar.show(side, resize=resize): + self.top.update_idletasks() + + def setToolbarSize(self, size): + if self._cancelDrag(break_pause=False): return + self.app.opt.toolbar_size = size + self.tkopt.toolbar_size.set(size) # update radiobutton + dir = self.app.getToolbarImagesDir() + if self.app.toolbar.updateImages(dir, size): + self.game.updateStatus(player=self.app.opt.player) + self.top.update_idletasks() + + def setToolbarStyle(self, style): + if self._cancelDrag(break_pause=False): return + self.app.opt.toolbar_style = style + self.tkopt.toolbar_style.set(style) # update radiobutton + dir = self.app.getToolbarImagesDir() + size = self.app.opt.toolbar_size + if self.app.toolbar.updateImages(dir, size): + ##self.game.updateStatus(player=self.app.opt.player) + self.top.update_idletasks() + + def setToolbarCompound(self, compound): + if self._cancelDrag(break_pause=False): return + self.app.opt.toolbar_compound = compound + self.tkopt.toolbar_compound.set(compound) # update radiobutton + if self.app.toolbar.setCompound(compound): + self.game.updateStatus(player=self.app.opt.player) + self.top.update_idletasks()