| 700 | } |
| 701 | |
| 702 | ui::Slider* ShaderMultiTexture::createSliderCtl() |
| 703 | { |
| 704 | auto screenSize = Director::getInstance()->getWinSize(); |
| 705 | |
| 706 | ui::Slider* slider = ui::Slider::create(); |
| 707 | slider->loadBarTexture("cocosui/sliderTrack.png"); |
| 708 | slider->loadSlidBallTextures("cocosui/sliderThumb.png", "cocosui/sliderThumb.png", ""); |
| 709 | slider->loadProgressBarTexture("cocosui/sliderProgress.png"); |
| 710 | slider->setPercent(50); |
| 711 | |
| 712 | slider->setPosition(Vec2(screenSize.width / 2.0f, screenSize.height / 3.0f)); |
| 713 | addChild(slider); |
| 714 | |
| 715 | slider->addEventListener([&](Object* sender, ui::Slider::EventType type) { |
| 716 | if (type == ui::Slider::EventType::ON_PERCENTAGE_CHANGED) |
| 717 | { |
| 718 | ui::Slider* slider = dynamic_cast<ui::Slider*>(sender); |
| 719 | float p = slider->getPercent() / 100.0f; |
| 720 | auto state = _sprite->getProgramState(); |
| 721 | SET_UNIFORM(state, "u_interpolate", p); |
| 722 | } |
| 723 | }); |
| 724 | return slider; |
| 725 | } |
| 726 | |
| 727 | bool ShaderMultiTexture::init() |
| 728 | { |
nothing calls this directly
no test coverage detected