1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-15 02:54:09 -04:00

Add topmost logic to solver dialog

This commit is contained in:
Joe R 2024-12-24 22:39:45 -05:00
parent 911f83d249
commit cafdafe047
5 changed files with 24 additions and 0 deletions

View file

@ -47,6 +47,7 @@ from pysollib.pysoltk import create_full_picture_dialog
from pysollib.pysoltk import create_solver_dialog from pysollib.pysoltk import create_solver_dialog
from pysollib.pysoltk import raise_find_card_dialog from pysollib.pysoltk import raise_find_card_dialog
from pysollib.pysoltk import raise_full_picture_dialog from pysollib.pysoltk import raise_full_picture_dialog
from pysollib.pysoltk import raise_solver_dialog
from pysollib.settings import DEBUG from pysollib.settings import DEBUG
from pysollib.settings import PACKAGE_URL, TITLE from pysollib.settings import PACKAGE_URL, TITLE
from pysollib.settings import TOP_SIZE from pysollib.settings import TOP_SIZE
@ -544,6 +545,7 @@ class PysolMenubar(PysolMenubarTk):
def mSolver(self, *args): def mSolver(self, *args):
create_solver_dialog(self.game.top, self.app) create_solver_dialog(self.game.top, self.app)
raise_solver_dialog(self.game)
def mEditGameComment(self, *args): def mEditGameComment(self, *args):
if self._cancelDrag(break_pause=False): if self._cancelDrag(break_pause=False):
@ -835,6 +837,7 @@ class PysolMenubar(PysolMenubarTk):
def raiseAll(self): def raiseAll(self):
raise_find_card_dialog(self.game) raise_find_card_dialog(self.game)
raise_full_picture_dialog(self.game) raise_full_picture_dialog(self.game)
raise_solver_dialog(self.game)
# #
# Help menu # Help menu

View file

@ -57,6 +57,7 @@ from pysollib.pysoltk import destroy_full_picture_dialog
from pysollib.pysoltk import loadImage, wm_withdraw from pysollib.pysoltk import loadImage, wm_withdraw
from pysollib.pysoltk import raise_find_card_dialog from pysollib.pysoltk import raise_find_card_dialog
from pysollib.pysoltk import raise_full_picture_dialog from pysollib.pysoltk import raise_full_picture_dialog
from pysollib.pysoltk import raise_solver_dialog
from pysollib.resource import CSI, CardsetManager from pysollib.resource import CSI, CardsetManager
from pysollib.resource import Music, MusicManager from pysollib.resource import Music, MusicManager
from pysollib.resource import Sample, SampleManager from pysollib.resource import Sample, SampleManager
@ -517,6 +518,7 @@ class Application:
# Topmost dialogs need to be reset when toggling fullscreen. # Topmost dialogs need to be reset when toggling fullscreen.
raise_find_card_dialog(self.game) raise_find_card_dialog(self.game)
raise_full_picture_dialog(self.game) raise_full_picture_dialog(self.game)
raise_solver_dialog(self.game)
self.top.attributes('-topmost', False) self.top.attributes('-topmost', False)
def loadImages1(self): def loadImages1(self):

View file

@ -46,6 +46,10 @@ def connect_game_solver_dialog(game):
pass pass
def raise_solver_dialog(game):
pass
def destroy_solver_dialog(): def destroy_solver_dialog():
global solver_dialog global solver_dialog
solver_dialog = None solver_dialog = None

View file

@ -30,6 +30,10 @@ def connect_game_solver_dialog(game):
pass pass
def raise_solver_dialog(game):
pass
def destroy_solver_dialog(): def destroy_solver_dialog():
pass pass
# solver_dialog = None # solver_dialog = None

View file

@ -84,3 +84,14 @@ def create_solver_dialog(parent, game):
except Exception: except Exception:
# traceback.print_exc() # traceback.print_exc()
solver_dialog = SolverDialog(parent, game) solver_dialog = SolverDialog(parent, game)
def raise_solver_dialog(game):
try:
if game.app.opt.topmost_dialogs:
solver_dialog.top.tkraise()
solver_dialog.top.attributes("-topmost", True)
else:
solver_dialog.top.attributes("-topmost", False)
except Exception:
pass