MCPcopy Create free account
hub / github.com/axmolengine/axmol / draw

Method draw

core/ui/UIMediaPlayer.cpp:1131–1154  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1129}
1130
1131void MediaPlayer::draw(Renderer* renderer, const Mat4& transform, uint32_t flags)
1132{
1133 ax::ui::Widget::draw(renderer, transform, flags);
1134
1135 auto pvd = reinterpret_cast<PrivateVideoDescriptor*>(_videoContext);
1136 auto vrender = pvd->_vrender;
1137 auto engine = pvd->_engine;
1138 if (!vrender || !engine)
1139 return;
1140
1141 if (isPlaying())
1142 { // render 1 video sample if avaiable
1143 engine->transferVideoFrame();
1144 }
1145 if (pvd->_scaleDirty || (flags & FLAGS_TRANSFORM_DIRTY))
1146 pvd->rescaleTo(this);
1147
1148# if AX_VIDEOPLAYER_DEBUG_DRAW
1149 _debugDrawNode->clear();
1150 auto size = getContentSize();
1151 Point vertices[4] = {Point::ZERO, Point(size.width, 0), Point(size.width, size.height), Point(0, size.height)};
1152 _debugDrawNode->drawPoly(vertices, 4, true, Color4F::WHITE);
1153# endif
1154}
1155
1156void MediaPlayer::setContentSize(const Size& contentSize)
1157{

Callers 1

stencilClippingVisitMethod · 0.45

Calls 7

drawFunction · 0.85
isPlayingFunction · 0.85
rescaleToMethod · 0.80
drawPolyMethod · 0.80
PointClass · 0.50
transferVideoFrameMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected