MCPcopy Index your code
hub / github.com/SLiCAP/SLiCAP_python / _ViewBoxSvgItem

Class _ViewBoxSvgItem

SLiCAP/schematic/component_item.py:436–455  ·  view source on GitHub ↗

QGraphicsSvgItem whose local origin matches SVG coordinate (0,0). boundingRect() returns viewBoxF() so the origin equals the SVG's (0,0). paint() calls renderer.render() directly because the C++ vtable does not dispatch to the Python override of boundingRect().

Source from the content-addressed store, hash-verified

434
435
436class _ViewBoxSvgItem(QGraphicsSvgItem):
437 """
438 QGraphicsSvgItem whose local origin matches SVG coordinate (0,0).
439
440 boundingRect() returns viewBoxF() so the origin equals the SVG's (0,0).
441 paint() calls renderer.render() directly because the C++ vtable does not
442 dispatch to the Python override of boundingRect().
443 """
444
445 def __init__(self, svg_bytes: bytes):
446 super().__init__()
447 self._renderer = QSvgRenderer(QByteArray(_apply_symbol_colors(svg_bytes)))
448 self.setSharedRenderer(self._renderer)
449
450 def boundingRect(self):
451 return self._renderer.viewBoxF()
452
453 def paint(self, painter, option, widget=None):
454 painter.setRenderHint(QPainter.Antialiasing)
455 self._renderer.render(painter, self._renderer.viewBoxF())
456
457
458def make_ghost(svg_bytes: bytes) -> _ViewBoxSvgItem:

Callers 1

make_ghostFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected