Add type hints for fields and method parameters in UiConsole

This commit is contained in:
Michał Czekański 2020-05-10 18:27:45 +02:00 committed by Marcin Kostrzewski
parent 22355dc960
commit 4e828de1c7

View File

@ -1,10 +1,26 @@
import pygame
from typing import Tuple, List
from pygame.font import FontType
from src.ui.UiElement import UiElement
class UiConsole(UiElement):
def __init__(self, rect: pygame.Rect, bgColor=(125, 125, 125), textColor=(255, 255, 255), font=None, antialias=True):
linesCount: int
antialias: bool
bgColor: Tuple[int, int, int]
font: pygame.font.Font
maxLines: int
lineHeight: int
linesImages: List[pygame.Surface]
topWrittenLineInd: int
consoleLines: List[str]
linesImagesCount: int
consoleWidth: float
image: pygame.Surface
def __init__(self, rect: pygame.Rect, bgColor: Tuple[int, int, int] = (125, 125, 125),
textColor: Tuple[int, int, int] = (255, 255, 255), font: pygame.font.Font = None, antialias: bool = True):
super().__init__(rect)
self.textColor = textColor
@ -56,7 +72,7 @@ class UiConsole(UiElement):
self.image.blit(self.linesImages[i], (0, writtenLines * self.lineHeight))
writtenLines += 1
def addLinesToConsole(self, linesToAdd):
def addLinesToConsole(self, linesToAdd: List[str]):
"""
Adds lines to console's list of lines. If one line is too long to display, then it is being cut to pieces,
so that it is appropriate size.
@ -91,7 +107,7 @@ class UiConsole(UiElement):
self.linesImages.append(row)
self.linesImagesCount += 1
def addLinesToConsoleAndScrollToDisplayThem(self, linesToAdd):
def addLinesToConsoleAndScrollToDisplayThem(self, linesToAdd: List[str]):
"""
Adds given lines to console's list of lines, writes them and scrolls console down to display them.
:param linesToAdd: Lines to add to console's list of lines and to display.