summaryrefslogtreecommitdiff
path: root/unrpyc/renpy/display/pgrender.py
diff options
context:
space:
mode:
Diffstat (limited to 'unrpyc/renpy/display/pgrender.py')
-rw-r--r--unrpyc/renpy/display/pgrender.py167
1 files changed, 0 insertions, 167 deletions
diff --git a/unrpyc/renpy/display/pgrender.py b/unrpyc/renpy/display/pgrender.py
deleted file mode 100644
index 32d1df8..0000000
--- a/unrpyc/renpy/display/pgrender.py
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 2004-2013 Tom Rothamel <pytom@bishoujo.us>
-#
-# Permission is hereby granted, free of charge, to any person
-# obtaining a copy of this software and associated documentation files
-# (the "Software"), to deal in the Software without restriction,
-# including without limitation the rights to use, copy, modify, merge,
-# publish, distribute, sublicense, and/or sell copies of the Software,
-# and to permit persons to whom the Software is furnished to do so,
-# subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-# This module wraps the pygame surface class (and associated functions). It
-# ensures that returned surfaces have a 2px border around them.
-
-import sys
-import pygame
-import renpy.display
-
-# Sample surfaces, with and without alpha.
-sample_alpha = None
-sample_noalpha = None
-
-def set_rgba_masks():
- """
- This rebuilds the sample surfaces, to ones that use the given
- masks.
- """
-
- # Annoyingly, the value for the big mask seems to vary from
- # platform to platform. So we read it out of a surface.
-
- global sample_alpha
- global sample_noalpha
-
- # Create a sample surface.
- s = pygame.Surface((10, 10), 0, 32)
- sample_alpha = s.convert_alpha()
-
- # Sort the components by absolute value.
- masks = list(sample_alpha.get_masks())
- masks.sort(key=lambda a : abs(a))
-
- # Choose the masks.
- if sys.byteorder == 'big':
- masks = ( masks[3], masks[2], masks[1], masks[0] )
- else:
- masks = ( masks[0], masks[1], masks[2], masks[3] )
-
- # Create the sample surface.
- sample_alpha = pygame.Surface((10, 10), 0, 32, masks)
- sample_noalpha = pygame.Surface((10, 10), 0, 32, masks[:3] + (0,))
-
-
-class Surface(pygame.Surface):
- """
- This allows us to wrap around pygame's surface, to change
- its mode, as necessary.
- """
-
- opaque = False
-
- def is_opaque(self):
- return self.opaque
-
- def convert_alpha(self, surface=None):
- return copy_surface_unscaled(self, True)
-
- def convert(self, surface=None):
- return copy_surface(self, False)
-
- def copy(self):
- return copy_surface(self, self)
-
- def subsurface(self, rect):
- rv = pygame.Surface.subsurface(self, rect)
- return rv
-
-def surface(xxx_todo_changeme, alpha):
- """
- Constructs a new surface. The allocated surface is actually a subsurface
- of a surface that has a 2 pixel border in all directions.
-
- `alpha` - True if the new surface should have an alpha channel.
- """
- (width, height) = xxx_todo_changeme
- if isinstance(alpha, pygame.Surface):
- alpha = alpha.get_masks()[3]
-
- if alpha:
- sample = sample_alpha
- else:
- sample = sample_noalpha
-
- # We might not have initialized properly yet. This is enough
- # to get us underway.
- if sample is None:
- sample = pygame.Surface((4, 4), pygame.SRCALPHA, 32)
-
- surf = Surface((width + 4, height + 4), 0, sample)
- return surf.subsurface((2, 2, width, height)) # E1101
-
-surface_unscaled = surface
-
-def copy_surface(surf, alpha=True):
- """
- Creates a copy of the surface.
- """
-
- rv = surface_unscaled(surf.get_size(), alpha)
- renpy.display.accelerator.nogil_copy(surf, rv) # @UndefinedVariable
- return rv
-
-copy_surface_unscaled = copy_surface
-
-
-# Wrapper around image loading.
-
-def load_image(f, filename):
- surf = pygame.image.load(f, renpy.exports.fsencode(filename))
- rv = copy_surface_unscaled(surf)
- return rv
-
-load_image_unscaled = load_image
-
-
-# Wrapper around functions we use from pygame.surface.
-
-def flip(surf, horizontal, vertical):
- surf = pygame.transform.flip(surf, horizontal, vertical)
- return copy_surface_unscaled(surf)
-
-flip_unscaled = flip
-
-
-def rotozoom(surf, angle, zoom):
-
- surf = pygame.transform.rotozoom(surf, angle, zoom)
- return copy_surface_unscaled(surf)
-
-rotozoom_unscaled = rotozoom
-
-
-def transform_scale(surf, size):
- surf = pygame.transform.scale(surf, size)
- return copy_surface_unscaled(surf, surf)
-
-transform_scale_unscaled = transform_scale
-
-
-def transform_rotate(surf, angle):
- surf = pygame.transform.rotate(surf, angle)
- return copy_surface(surf)
-
-transform_rotate_unscaled = transform_rotate
-
-
-