basic openmodelica model emitting

This commit is contained in:
2026-07-20 17:34:18 +02:00
parent 42bf09610b
commit d368b36b8c
26 changed files with 1608 additions and 594 deletions

View File

@@ -252,6 +252,7 @@ class ComponentGraphicsItem(QGraphicsObject):
menu = QMenu()
options_action = menu.addAction("Component Options…")
ports_action = menu.addAction("Port Options…")
parameters_action = menu.addAction("Parameter Options…")
selected = menu.exec(event.screenPos())
if selected is options_action:
scene = self.scene()
@@ -261,6 +262,10 @@ class ComponentGraphicsItem(QGraphicsObject):
scene = self.scene()
if isinstance(scene, GraphScene):
scene.componentPortOptionsRequested.emit(self.component_id)
elif selected is parameters_action:
scene = self.scene()
if isinstance(scene, GraphScene):
scene.componentParameterOptionsRequested.emit(self.component_id)
event.accept()
def mousePressEvent(self, event: QGraphicsSceneMouseEvent) -> None: # noqa: N802
@@ -832,6 +837,7 @@ class LineAnnotationGraphicsItem(QGraphicsPathItem):
class GraphScene(QGraphicsScene):
componentOptionsRequested = Signal(str)
componentPortOptionsRequested = Signal(str)
componentParameterOptionsRequested = Signal(str)
portOptionsRequested = Signal(str, str)
connectionOptionsRequested = Signal(str)
@@ -1694,6 +1700,7 @@ class GraphWorkspaceView(QGraphicsView):
toolModeShortcutRequested = Signal(str)
componentOptionsRequested = Signal(str)
componentPortOptionsRequested = Signal(str)
componentParameterOptionsRequested = Signal(str)
portOptionsRequested = Signal(str, str)
connectionOptionsRequested = Signal(str)
selectionAvailabilityChanged = Signal(bool)
@@ -1779,6 +1786,9 @@ class GraphWorkspaceView(QGraphicsView):
scene = GraphScene(controller, self)
scene.componentOptionsRequested.connect(self.componentOptionsRequested)
scene.componentPortOptionsRequested.connect(self.componentPortOptionsRequested)
scene.componentParameterOptionsRequested.connect(
self.componentParameterOptionsRequested
)
scene.portOptionsRequested.connect(self.portOptionsRequested)
scene.connectionOptionsRequested.connect(self.connectionOptionsRequested)
scene.selectionChanged.connect(