| 35 | } |
| 36 | |
| 37 | void Adjustment::SetValue( float new_value ) { |
| 38 | auto old_value = m_value; |
| 39 | m_value = new_value; |
| 40 | |
| 41 | // Clamp value within limits |
| 42 | if( m_value < m_lower ) { |
| 43 | m_value = m_lower; |
| 44 | } |
| 45 | else if( m_value + m_page_size > m_upper ) { |
| 46 | m_value = m_upper - m_page_size; |
| 47 | } |
| 48 | |
| 49 | if( m_value != old_value ) { |
| 50 | GetSignals().Emit( OnChange ); |
| 51 | } |
| 52 | } |
| 53 | |
| 54 | float Adjustment::GetLower() const { |
| 55 | return m_lower; |