Source code for draugr.os_utilities.screen_resolution

__all__ = [
    "get_screen_resolution",
    "screen_res_tk",
    "screen_res_pygame",
    "screen_res_gtk",
    "screen_res_xlib",
    "screen_res_mac",
    "screen_res_win",
]

import sys


[docs]def screen_res_xlib(): """ :return: :rtype: """ import xlib root = xlib.display.Display().screen().root return root.get_geometry()[2], root.get_geometry()[3]
[docs]def screen_res_pygame(): """ :return: :rtype: """ import pygame return pygame.display.Info().current_w, pygame.display.Info().current_h
[docs]def screen_res_gtk(): """ :return: :rtype: """ import gtk screen = gtk.Window().get_screen() return screen.get_width(), screen.get_height()
[docs]def screen_res_tk(): """ :return: :rtype: """ import Tkinter root = Tkinter.Tk() screen_width = root.winfo_screenwidth() screen_height = root.winfo_screenheight() return screen_width, screen_height
[docs]def screen_res_win(): """ :return: :rtype: """ import ctypes.wintypes return ctypes.windll.user32.GetSystemMetrics( 0 ), ctypes.windll.user32.GetSystemMetrics(1)
[docs]def screen_res_mac(): """ :return: :rtype: """ try: import Quartz except: assert ( False ), "You must first install pyobjc-core and pyobjc: MACOSX_DEPLOYMENT_TARGET=10.11 pip install pyobjc" main_disp_id = Quartz.CGMainDisplayID() return Quartz.CGDisplayPixelsWide(main_disp_id), Quartz.CGDisplayPixelsHigh( main_disp_id )
[docs]def get_screen_resolution(): """ :return: :rtype: """ if sys.platform == "win32": return screen_res_win() elif sys.platform == "darwin": return screen_res_mac() elif sys.platform == "linux": return screen_res_gtk() elif sys.platform == "linux2": return screen_res_gtk() elif sys.platform == "cygwin": return screen_res_gtk() else: return screen_res_tk()