void Button::draw(sf::RenderTarget& target, sf::RenderStates states) const { if(isDisabled()) return; if(isPressed()) target.draw(m_sprites[2], states); else if(isHover()) target.draw(m_sprites[1], states); else target.draw(m_sprites[0], states); }
void Button::onEvent(const sf::Event& event) { if(isDisabled()) return; if(event.type == sf::Event::MouseButtonPressed) { setPressed(isHover()); if(isHover() && m_callbackPressed) m_callbackPressed(); } if(event.type == sf::Event::MouseButtonReleased || event.type == sf::Event::MouseLeft) { if(isPressed() && m_callbackReleased) m_callbackReleased(); setPressed(false); } }
void update() { if (!isHover()) current_axis = -1; }