Exemplo n.º 1
1
    def mix_colours(self):
        """
        Mixes sprite index colour coding with the system's window background color.
        """

        sys_colour = self.StateList.GetBackgroundColour()
        for index, colour in enumerate(self.SPRITE_COLOURS):
            self.SPRITE_COLOURS[index] = utils.mix_colours(colour, sys_colour, 0.92)
Exemplo n.º 2
0
    def mix_colours(self):
        """
        Mixes sprite index colour coding with the system's window background color.
        """

        sys_colour = self.StateList.GetBackgroundColour()
        for index, colour in enumerate(self.SPRITE_COLOURS):
            self.SPRITE_COLOURS[index] = utils.mix_colours(
                colour, sys_colour, 0.92)
Exemplo n.º 3
0
    def __init__(self,
                 parent,
                 id=wx.ID_ANY,
                 pos=wx.DefaultPosition,
                 size=wx.DefaultSize,
                 style=wx.NO_BORDER):
        wx.Panel.__init__(self,
                          parent,
                          id=id,
                          pos=pos,
                          size=size,
                          style=wx.STATIC_BORDER)

        # WAD list to use for sprite rendering.
        self.wads = None

        # The current sprite being displayed.
        self.sprite = None

        # The baseline at which to render sprites. Consider this to be the invisible floor on which sprites are placed.
        self.baseline_factor = 0.8

        # The icon to display instead of missing sprites.
        self.missing = wx.Bitmap('res/icon-missing.png', wx.BITMAP_TYPE_PNG)
        self.invalid = wx.Bitmap('res/icon-invalid.png', wx.BITMAP_TYPE_PNG)

        # Create "floor" fill color.
        floor_colour = utils.mix_colours(self.GetBackgroundColour(),
                                         wx.Colour(0, 0, 0), 0.6)
        self.floor_brush = wx.Brush(floor_colour)
        self.floor_points = None
        self.create_floor_points()

        # Sprite setup.
        self.sprite_name = None
        self.sprite_frame = None
        self.angle = 1

        # Paint setup.
        self.Bind(wx.EVT_PAINT, self.paint)

        # Dragging setup.
        self.drag_point_start = None
        self.drag_angle_start = self.angle
        self.lock_angle = False

        self.Bind(wx.EVT_LEFT_DOWN, self.drag_start)
        self.Bind(wx.EVT_LEFT_UP, self.drag_end)
        self.Bind(wx.EVT_LEAVE_WINDOW, self.drag_end)
        self.Bind(wx.EVT_MOTION, self.drag_move)

        self.update_cursor()
Exemplo n.º 4
0
    def __init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.NO_BORDER):
        wx.Panel.__init__(self, parent, id=id, pos=pos, size=size, style=style | wx.NO_FULL_REPAINT_ON_RESIZE)

        # WAD list to use for sprite rendering.
        self.wads = None

        # The current sprite being displayed.
        self.sprite = self.CLEAR

        # The baseline at which to render sprites. Consider this to be the invisible floor on which sprites are placed.
        self.baseline_factor = 0.8

        # Scale to draw sprites at.
        self.scale = 1.0

        # The icon to display instead of missing sprites.
        self.missing = wx.Bitmap('res/icon-missing.png', wx.BITMAP_TYPE_PNG)
        self.invalid = wx.Bitmap('res/icon-invalid.png', wx.BITMAP_TYPE_PNG)

        # Create "floor" fill color.
        floor_colour = utils.mix_colours(self.GetBackgroundColour(), wx.Colour(0, 0, 0), 0.65)
        self.floor_brush = wx.Brush(floor_colour)
        self.floor_points = None
        self.create_floor_points()

        # Sprite setup.
        self.sprite_name = None
        self.sprite_frame = None
        self.angle = 1

        # Paint setup.
        self.src_dc = wx.MemoryDC()
        self.buffer = None
        self.Bind(wx.EVT_SIZE, self.resize)
        self.Bind(wx.EVT_PAINT, self.paint)

        # Dragging setup.
        self.drag_point_start = None
        self.drag_angle_start = self.angle
        self.lock_angle = False

        self.Bind(wx.EVT_LEFT_DOWN, self.drag_start)
        self.Bind(wx.EVT_LEFT_UP, self.drag_end)
        self.Bind(wx.EVT_LEAVE_WINDOW, self.drag_end)
        self.Bind(wx.EVT_MOTION, self.drag_move)

        self.resize(None)
        self.update_cursor()