X-Git-Url: https://git.ayoreis.com/hackapet/Adafruit_Blinka_Displayio.git/blobdiff_plain/03b2e1008f33585652fad5ecedad65d44694b2bc..09889f5e46420240ade4451f7af6f54814f8cfcd:/displayio/_structs.py diff --git a/displayio/_structs.py b/displayio/_structs.py index 2f82bb0..4c41c00 100644 --- a/displayio/_structs.py +++ b/displayio/_structs.py @@ -19,29 +19,30 @@ Struct Data Classes for Blinka Displayio from dataclasses import dataclass -__version__ = "0.0.0-auto.0" +__version__ = "0.0.0+auto.0" __repo__ = "https://github.com/adafruit/Adafruit_Blinka_Displayio.git" -@dataclass -class RectangleStruct: - x1: int - y1: int - x2: int - y2: int @dataclass class TransformStruct: + # pylint: disable=invalid-name + """Transform Struct Dataclass""" x: int = 0 y: int = 0 dx: int = 1 dy: int = 1 scale: int = 1 - transpose_xy: bool = False + width: int = 0 + height: int = 0 mirror_x: bool = False mirror_y: bool = False + transpose_xy: bool = False + @dataclass class ColorspaceStruct: + # pylint: disable=invalid-name, too-many-instance-attributes + """Colorspace Struct Dataclass""" depth: int bytes_per_cell: int = 0 tricolor_hue: int = 0 @@ -49,7 +50,43 @@ class ColorspaceStruct: grayscale_bit: int = 0 grayscale: bool = False tricolor: bool = False + sevencolor: bool = False # Acep e-ink screens. pixels_in_byte_share_row: bool = False reverse_pixels_in_byte: bool = False reverse_bytes_in_word: bool = False dither: bool = False + + +@dataclass +class InputPixelStruct: + """InputPixel Struct Dataclass""" + + pixel: int = 0 + x: int = 0 + y: int = 0 + tile: int = 0 + tile_x: int = 0 + tile_y: int = 0 + + +@dataclass +class OutputPixelStruct: + """OutputPixel Struct Dataclass""" + + pixel: int = 0 + opaque: bool = False + + +@dataclass +class ColorStruct: + """Color Struct Dataclass""" + + rgb888: int = 0 + cached_colorspace: ColorspaceStruct = None + cached_color: int = 0 + cached_colorspace_grayscale_bit: int = 0 + cached_colorspace_grayscale: bool = False + transparent: bool = False + + +null_transform = TransformStruct() # Use defaults