Skip to content

Commit 6071533

Browse files
committed
ProjectPlayer: Implement text bubbles
1 parent e8a25f9 commit 6071533

File tree

1 file changed

+42
-10
lines changed

1 file changed

+42
-10
lines changed

src/ProjectPlayer.qml

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,20 @@ ProjectScene {
109109
onStageModelChanged: stageModel.renderedTarget = this
110110
}
111111

112+
Loader {
113+
readonly property alias model: stageTarget.stageModel
114+
active: model ? model.bubbleText !== "" : false
115+
116+
sourceComponent: TextBubble {
117+
type: model ? model.bubbleType : TextBubbleShape.Say
118+
text: model ? model.bubbleText : ""
119+
target: stageTarget
120+
stageScale: root.stageScale
121+
stageWidth: root.stageWidth
122+
stageHeight: root.stageHeight
123+
}
124+
}
125+
112126
PenLayer {
113127
id: projectPenLayer
114128
engine: loader.engine
@@ -118,16 +132,34 @@ ProjectScene {
118132
Component {
119133
id: renderedSprite
120134

121-
RenderedTarget {
122-
id: target
123-
mouseArea: sceneMouseArea
124-
stageScale: root.stageScale
125-
transform: Scale { xScale: mirrorHorizontally ? -1 : 1 }
126-
Component.onCompleted: {
127-
engine = loader.engine;
128-
spriteModel = modelData;
129-
spriteModel.renderedTarget = this;
130-
spriteModel.penLayer = projectPenLayer;
135+
Item {
136+
anchors.fill: parent
137+
138+
RenderedTarget {
139+
id: targetItem
140+
mouseArea: sceneMouseArea
141+
stageScale: root.stageScale
142+
transform: Scale { xScale: targetItem.mirrorHorizontally ? -1 : 1 }
143+
Component.onCompleted: {
144+
engine = loader.engine;
145+
spriteModel = modelData;
146+
spriteModel.renderedTarget = this;
147+
spriteModel.penLayer = projectPenLayer;
148+
}
149+
}
150+
151+
Loader {
152+
readonly property alias model: targetItem.spriteModel
153+
active: model ? model.bubbleText !== "" : false
154+
155+
sourceComponent: TextBubble {
156+
type: model ? model.bubbleType : TextBubbleShape.Say
157+
text: model ? model.bubbleText : ""
158+
target: targetItem
159+
stageScale: root.stageScale
160+
stageWidth: root.stageWidth
161+
stageHeight: root.stageHeight
162+
}
131163
}
132164
}
133165
}

0 commit comments

Comments
 (0)