Skip to content

Commit

Permalink
mypy wip
Browse files Browse the repository at this point in the history
  • Loading branch information
alexgorji committed Jun 18, 2024
1 parent 6d5dfc9 commit 286f426
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 17 deletions.
2 changes: 1 addition & 1 deletion musurgia/fractal/graphic.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def __init__(self, node_value: ConvertibleToFloat, unit: int = 1, *args: Any, **
def _update_length(self) -> None:
self.straight_line.length = float(self.get_node_value() * self.unit)

@property
@property # type: ignore
def length(self) -> float:
return super().length

Expand Down
17 changes: 13 additions & 4 deletions musurgia/pdf/line.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,11 @@ def __init__(self, mode: HorizontalVertical, length: ConvertibleToFloat, show: b
**kwargs: Any):
super().__init__(*args, **kwargs)
self._mode: HorizontalVertical
self._length: ConvertibleToFloat
self._length: float
self._show: bool

self.mode = mode
self.length = length
self.length = length # type: ignore
self.show = show

@property
Expand All @@ -36,7 +37,7 @@ def mode(self, val: HorizontalVertical) -> None:

@property
def length(self) -> float:
return float(self._length)
return self._length

@length.setter
def length(self, val: ConvertibleToFloat) -> None:
Expand All @@ -57,6 +58,14 @@ def is_horizontal(self) -> bool:
else:
return False

@property
def show(self) -> bool:
return self._show

@show.setter
def show(self, val: bool) -> None:
self._show = val

@staticmethod
def get_opposite_mode(mode: HorizontalVertical) -> HorizontalVertical:
if mode == 'h':
Expand Down Expand Up @@ -163,7 +172,7 @@ def length(self) -> float:

@length.setter
def length(self, value: ConvertibleToFloat) -> None:
self.straight_line.length = value
self.straight_line.length = value # type: ignore

def get_slave_margin(self, slave: SlaveStraightLine, margin: MarginType) -> float:
check_type(margin, 'MarginType', class_name='self.__class__.__name__', method_name='get_slave_margin',
Expand Down
2 changes: 1 addition & 1 deletion musurgia/pdf/pdf_tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ def draw_page_numbers(pdf: Pdf, **kwargs: Any) -> None:


def draw_ruler(pdf: Pdf, mode: HorizontalVertical = 'h', unit: int = 10, first_label: int = 0,
show_first_label: bool = False, label_show_interval: int = 1, **kwargs) -> None:
show_first_label: bool = False, label_show_interval: int = 1, **kwargs: Any) -> None:
check_type(mode, 'HorizontalVertical', function_name='draw_ruler', argument_name='mode')
ruler: Union[HorizontalRuler, VerticalRuler]
if mode in ['h', 'horizontal']:
Expand Down
20 changes: 9 additions & 11 deletions musurgia/pdf/rowcolumn.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@


class DrawObjectContainer(DrawObject, Labeled, Positioned, Margined, ABC):
def __init__(self, show_borders=False, show_margins=False, *args: Any, **kwargs: Any):
def __init__(self, show_borders: bool = False, show_margins: bool = False, *args: Any, **kwargs: Any) -> None:
super().__init__(*args, **kwargs)
self._draw_objects: list[DrawObject] = []
self._show_borders: bool
Expand All @@ -39,12 +39,12 @@ def show_margins(self) -> bool:
def show_margins(self, val: bool) -> None:
self._show_margins = val

def draw_margins(self, pdf):
def draw_margins(self, pdf: Pdf) -> None:
if self.show_margins:
with pdf.local_context(draw_color=DeviceGray(0.5), dash_pattern={'dash': 1, 'gap': 1}):
pdf.rect(*self.get_margin_rectangle_coordinates())

def draw_borders(self, pdf):
def draw_borders(self, pdf: Pdf) -> None:
if self.show_borders:
with pdf.local_context(draw_color=DeviceGray(0.5), dash_pattern={'dash': 2, 'gap': 1}):
pdf.rect(*self.get_border_rectangle_coordinates())
Expand All @@ -57,25 +57,25 @@ def add_draw_object(self, draw_object: DrawObject) -> DrawObject:
self._draw_objects.append(draw_object)
return draw_object

def get_border_rectangle_coordinates(self):
def get_border_rectangle_coordinates(self) -> tuple[float, float, float, float]:
return self.relative_x, self.relative_y, self.get_relative_x2() - self.relative_x, self.get_relative_y2() - self.relative_y

def get_margin_rectangle_coordinates(self):
def get_margin_rectangle_coordinates(self) -> tuple[float, float, float, float]:
return self.relative_x, self.relative_y, self.get_relative_x2() - self.relative_x + self.right_margin + self.left_margin, self.get_relative_y2() - self.relative_y + self.bottom_margin + self.top_margin

def get_draw_objects(self) -> list[DrawObject]:
return self._draw_objects

def traverse(self) -> Iterator['DrawObjectContainer']:
def traverse(self) -> Iterator['DrawObject']:
yield self
for do in self.get_draw_objects():
try:
if isinstance(do, DrawObjectContainer):
for dodo in do.traverse():
yield dodo
except AttributeError:
else:
yield do

def _check_draw_objects_positions(self):
def _check_draw_objects_positions(self) -> None:
for do in self.get_draw_objects():
if do.relative_y < 0 or do.relative_x < 0:
raise DrawObjectInContainerHasNegativePositionError()
Expand Down Expand Up @@ -116,8 +116,6 @@ def draw(self, pdf: Pdf) -> None:
with pdf.pdf_draw_object_translate(self, translate_positions=False):
self.draw_borders(pdf)
with pdf.pdf_draw_object_translate(self):
# self.draw_borders(pdf)
# self.draw_margins(pdf)
self.draw_above_text_labels(pdf)
self.draw_left_text_labels(pdf)
self.draw_below_text_labels(pdf)
Expand Down

0 comments on commit 286f426

Please sign in to comment.