# Path: pygaze/settings.py
# class Settings(object):
#     def __init__(self):
#     def read_module(self, mod):
#     def __getattr__(self, setting):
#     def __setattr__(self, setting, value):
# 
# Path: pygaze/libtime.py
# def expstart():
# def get_time():
# def pause(pausetime):
# def expend():
# 
# Path: pygaze/_display/basedisplay.py
# class BaseDisplay:
# 
#     """A class for Display objects, to present Screen objects on a monitor"""
# 
#     def __init__(self):
# 
#         """
#         Initializes a Display object.
#         
#         arguments
# 
#         None
# 
#         keyword arguments
# 
#         dispsize    --    size of the display in pixels: a (width, height)
#                     tuple (default = DISPSIZE)
#         fgc        --    the foreground colour: a RGB tuple, e.g. (255,0,0)
#                     for red or (0,0,0) for black (default = FGC)
#         bgc        --    the background colour: a RGB tuple, e.g. (0,0,255)
#                     for blue or (255,255,255) for white (default = BGC)
#         screen    --    a screen.Screen instance to be presented on the new
#                     Display (default=None)
#         """
#         
#         pass
# 
#     def show(self):
# 
#         """
#         Updates ('flips') the display.
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         None
#         
#         returns
#         time        --    the exact refresh time when disptype is PsychoPy,
#                     or an estimate when disptype is PyGame
#         """
#         
#         pass
# 
#     def show_part(self, rect, screen=None):
# 
#         """
#         Fills AND shows part(s) of the screen to given specified screen
#         (only works when disptype is PyGame; when this is set to PsychoPy
#         the entire display is filled and updated)
#         
#         arguments
#         
#         rect        --    a single or a list of rects; a rect is a (x,y,w,h)
#                     tuple or list
#         
#         keyword arguments
#         
#         screen    --    the screen of which the specified rects should be
#                     updated to the display (default = None)
#         
#         returns
#         
#         time        --    the exact refresh time when disptype is PsychoPy,
#                     or an estimate when disptype is PyGame
#         """
#         
#         pass
# 
#     def fill(self, screen=None):
# 
#         """
#         Fills the screen with the background colour of the Screen, NOT
#         updating it (call Display.show() to actually show the new contents)
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         screen    --    the screen that should be drawn to the display or
#                     None to fill the display with its background colour
#         
#         returns
#         
#         None
#         """
# 
#         pass
# 
#     def close(self):
# 
#         """
#         Closes the display
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         None
#         
#         returns
#         
#         None
#         """
# 
#         pass
# 
#     def make_screenshot(self, filename="screenshot.png"):
# 
#         """
#         Make a screenshot from the current display.
# 
#         arguments
# 
#         None
# 
#         keyword arguments
# 
#         filename    --    path and filename, under wich the screenshot will be
#                         saved. Defaults to screenshot.png
# 
#         returns
# 
#         None
#         """
# 
#         pass


from pygaze import settings
from pygaze.libtime import clock
from pygaze._display.basedisplay import BaseDisplay
    from pygaze._misc.misc import copy_docstr
import pygaze
import copy
import math
import os.path
import pygame
import pygame.display
import pygame.draw
import pygame.image

            pass

        self.dispsize = dispsize
        self.fgc = fgc
        self.bgc = bgc
        self.mousevis = False

        # initialize PyGame display-module
        pygame.display.init()
        # make mouse invisible (should be so per default, but you never know)
        pygame.mouse.set_visible(self.mousevis)
        if settings.FULLSCREEN:
            mode = pygame.FULLSCREEN|pygame.HWSURFACE|pygame.DOUBLEBUF
        else:
            mode = pygame.HWSURFACE|pygame.DOUBLEBUF
        # create surface for full screen displaying        
        pygaze.expdisplay = pygame.display.set_mode(self.dispsize, mode)

        # blit screen to display surface (if user entered one)
        if screen:
            pygaze.expdisplay.blit(screen.screen,(0,0))
        else:
            pygaze.expdisplay.fill(self.bgc)


    def show(self):

        # See _display.basedisplay.BaseDisplay for documentation

        pygame.display.flip()

# Path: pygaze/settings.py
# class Settings(object):
#     def __init__(self):
#     def read_module(self, mod):
#     def __getattr__(self, setting):
#     def __setattr__(self, setting, value):
# 
# Path: pygaze/libtime.py
# def expstart():
# def get_time():
# def pause(pausetime):
# def expend():
# 
# Path: pygaze/_display/basedisplay.py
# class BaseDisplay:
# 
#     """A class for Display objects, to present Screen objects on a monitor"""
# 
#     def __init__(self):
# 
#         """
#         Initializes a Display object.
#         
#         arguments
# 
#         None
# 
#         keyword arguments
# 
#         dispsize    --    size of the display in pixels: a (width, height)
#                     tuple (default = DISPSIZE)
#         fgc        --    the foreground colour: a RGB tuple, e.g. (255,0,0)
#                     for red or (0,0,0) for black (default = FGC)
#         bgc        --    the background colour: a RGB tuple, e.g. (0,0,255)
#                     for blue or (255,255,255) for white (default = BGC)
#         screen    --    a screen.Screen instance to be presented on the new
#                     Display (default=None)
#         """
#         
#         pass
# 
#     def show(self):
# 
#         """
#         Updates ('flips') the display.
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         None
#         
#         returns
#         time        --    the exact refresh time when disptype is PsychoPy,
#                     or an estimate when disptype is PyGame
#         """
#         
#         pass
# 
#     def show_part(self, rect, screen=None):
# 
#         """
#         Fills AND shows part(s) of the screen to given specified screen
#         (only works when disptype is PyGame; when this is set to PsychoPy
#         the entire display is filled and updated)
#         
#         arguments
#         
#         rect        --    a single or a list of rects; a rect is a (x,y,w,h)
#                     tuple or list
#         
#         keyword arguments
#         
#         screen    --    the screen of which the specified rects should be
#                     updated to the display (default = None)
#         
#         returns
#         
#         time        --    the exact refresh time when disptype is PsychoPy,
#                     or an estimate when disptype is PyGame
#         """
#         
#         pass
# 
#     def fill(self, screen=None):
# 
#         """
#         Fills the screen with the background colour of the Screen, NOT
#         updating it (call Display.show() to actually show the new contents)
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         screen    --    the screen that should be drawn to the display or
#                     None to fill the display with its background colour
#         
#         returns
#         
#         None
#         """
# 
#         pass
# 
#     def close(self):
# 
#         """
#         Closes the display
#         
#         arguments
#         
#         None
#         
#         keyword arguments
#         
#         None
#         
#         returns
#         
#         None
#         """
# 
#         pass
# 
#     def make_screenshot(self, filename="screenshot.png"):
# 
#         """
#         Make a screenshot from the current display.
# 
#         arguments
# 
#         None
# 
#         keyword arguments
# 
#         filename    --    path and filename, under wich the screenshot will be
#                         saved. Defaults to screenshot.png
# 
#         returns
# 
#         None
#         """
# 
#         pass


# Path: pygaze/_display/pygamedisplay.py
from pygaze import settings
from pygaze.libtime import clock
from pygaze._display.basedisplay import BaseDisplay
    from pygaze._misc.misc import copy_docstr
import pygaze
import copy
import math
import os.path
import pygame
import pygame.display
import pygame.draw
import pygame.image

            pass

        self.dispsize = dispsize
        self.fgc = fgc
        self.bgc = bgc
        self.mousevis = False

        # initialize PyGame display-module
        pygame.display.init()
        # make mouse invisible (should be so per default, but you never know)
        pygame.mouse.set_visible(self.mousevis)
        if settings.FULLSCREEN:
            mode = pygame.FULLSCREEN|pygame.HWSURFACE|pygame.DOUBLEBUF
        else:
            mode = pygame.HWSURFACE|pygame.DOUBLEBUF
        # create surface for full screen displaying        
        pygaze.expdisplay = pygame.display.set_mode(self.dispsize, mode)

        # blit screen to display surface (if user entered one)
        if screen:
            pygaze.expdisplay.blit(screen.screen,(0,0))
        else:
            pygaze.expdisplay.fill(self.bgc)


    def show(self):

        # See _display.basedisplay.BaseDisplay for documentation

        pygame.display.flip()

        return clock.get_time()
