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

Method updateVisualSlider

core/ui/UISlider.cpp:467–490  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

465}
466
467void Slider::updateVisualSlider()
468{
469 float res;
470 if (_maxPercent > 0)
471 {
472 res = 1.0f * _percent / _maxPercent;
473 }
474 else
475 {
476 res = 0.f;
477 }
478 float dis = _barLength * res;
479 _slidBallRenderer->setPosition(dis, _contentSize.height / 2.0f);
480 if (_scale9Enabled)
481 {
482 _progressBarRenderer->setPreferredSize(Vec2(dis, _contentSize.height));
483 }
484 else
485 {
486 Rect rect = _progressBarRenderer->getTextureRect();
487 rect.size.width = _progressBarTextureSize.width * res;
488 _progressBarRenderer->setTextureRect(rect, _progressBarRenderer->isTextureRectRotated(), rect.size);
489 }
490}
491
492bool Slider::hitTest(const ax::Vec2& pt, const Camera* camera, Vec3* /*p*/) const
493{

Callers 1

Calls 4

Vec2Function · 0.50
setPositionMethod · 0.45
setPreferredSizeMethod · 0.45
setTextureRectMethod · 0.45

Tested by

no test coverage detected