From 4d45bd6cab1e76105e7a36eda2b9c17fa3d2346f Mon Sep 17 00:00:00 2001 From: Loren Eteval Date: Fri, 13 Oct 2023 22:21:44 +0800 Subject: [PATCH] Update Utility.py Signed-off-by: Loren Eteval --- Furious/Utility/Utility.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Furious/Utility/Utility.py b/Furious/Utility/Utility.py index 36a6cad..0f7589a 100644 --- a/Furious/Utility/Utility.py +++ b/Furious/Utility/Utility.py @@ -395,6 +395,27 @@ def isScriptMode(): return sys.argv[0].endswith('.py') +def isRealFile(file): + if not hasattr(file, 'fileno'): + return False + + try: + tmp = os.dup(file.fileno()) + except Exception: + # Any non-exit exceptions + + return False + else: + os.close(tmp) + + return True + + +def isPythonw(): + # pythonw.exe. Also applies to packed GUI application on Windows + return not isRealFile(sys.__stdout__) or not isRealFile(sys.__stderr__) + + def moveToCenter(widget, parent=None): geometry = widget.geometry()