From 2e9f242ce8a3e4890708effd932d57aad0c0988c Mon Sep 17 00:00:00 2001 From: Joe R Date: Mon, 6 Sep 2021 10:07:49 -0400 Subject: [PATCH] Failsafe to account for missing cardsets in playable preview. --- pysollib/games/acesandkings.py | 4 ++-- pysollib/pysolgtk/selectgame.py | 5 ++++- pysollib/tile/selectgame.py | 9 ++++++--- pysollib/tk/selectgame.py | 5 ++++- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/pysollib/games/acesandkings.py b/pysollib/games/acesandkings.py index 5308b7b9..21d82de2 100644 --- a/pysollib/games/acesandkings.py +++ b/pysollib/games/acesandkings.py @@ -93,7 +93,7 @@ class AcesAndKings(Game): anchor="center", font=font) stack.texts.misc.config(text=(RANKS[i[0]][0])) - s.foundations.append(stack) + s.foundations.append(stack) x = x + l.XS x = x + (l.XS / 2) @@ -108,7 +108,7 @@ class AcesAndKings(Game): anchor="center", font=font) stack.texts.misc.config(text=(RANKS[i[1]][0])) - s.foundations.append(stack) + s.foundations.append(stack) x = x + l.XS x, y = l.XM, y + l.YS diff --git a/pysollib/pysolgtk/selectgame.py b/pysollib/pysolgtk/selectgame.py index 4e99c4c4..178f9d5e 100644 --- a/pysollib/pysolgtk/selectgame.py +++ b/pysollib/pysolgtk/selectgame.py @@ -420,7 +420,10 @@ class SelectGameDialogWithPreview(MfxDialog): self.app.loadCardset(cardset, id=gi.category, tocache=True, noprogress=True) c = self.app.cardsets_cache.get(gi.category) - self.preview_app.images = c[2] + if c: + self.preview_app.images = c[2] + else: + self.preview_app.images = self.app.subsampled_images self.preview_app.audio = None # turn off audio for initial dealing if animations >= 0: diff --git a/pysollib/tile/selectgame.py b/pysollib/tile/selectgame.py index 6e401674..99211d58 100644 --- a/pysollib/tile/selectgame.py +++ b/pysollib/tile/selectgame.py @@ -356,10 +356,10 @@ class SelectGameDialogWithPreview(SelectGameDialog): sh = self.top.winfo_screenheight() h = sh * .8 - w1, w2 = min(250, sw / 4), max(sw / 2 + ((sw / 4) - 250), sw / 2) + w1, w2 = min(250, sw / 3), max(sw / 2 + ((sw / 3) - 250), sw / 2) # print sw, w1, w2 - w2 = max(200, min(w2, 10 + 12 * (app.subsampled_images.CARDW + 10))) + # w2 = max(200, min(w2, 10 + 12 * (app.subsampled_images.CARDW + 10))) # print sw, w1, w2 # padx, pady = kw.padx, kw.pady # padx, pady = kw.padx/2, kw.pady/2 @@ -509,7 +509,10 @@ class SelectGameDialogWithPreview(SelectGameDialog): self.app.loadCardset(cardset, id=gi.category, tocache=True, noprogress=True) c = self.app.cardsets_cache.get(gi.category) - self.preview_app.images = c[2] + if c: + self.preview_app.images = c[2] + else: + self.preview_app.images = self.app.subsampled_images self.preview_app.audio = None # turn off audio for initial dealing if animations >= 0: diff --git a/pysollib/tk/selectgame.py b/pysollib/tk/selectgame.py index fb17f429..5f209178 100644 --- a/pysollib/tk/selectgame.py +++ b/pysollib/tk/selectgame.py @@ -511,7 +511,10 @@ class SelectGameDialogWithPreview(SelectGameDialog): self.app.loadCardset(cardset, id=gi.category, tocache=True, noprogress=True) c = self.app.cardsets_cache.get(gi.category) - self.preview_app.images = c[2] + if c: + self.preview_app.images = c[2] + else: + self.preview_app.images = self.app.subsampled_images self.preview_app.audio = None # turn off audio for initial dealing if animations >= 0: