From ca54908cd5f8a7f46b80c9cef31b2c2b9d3bc254 Mon Sep 17 00:00:00 2001 From: Hugo Pereira Da Costa Date: Wed, 24 Sep 2014 12:28:27 +0200 Subject: [PATCH] use widgetStateEngine instead of slider engine for QSlider animations. implement focus animation of sliders --- kstyle/animations/breezeanimations.cpp | 3 +-- kstyle/animations/breezeanimations.h | 8 -------- kstyle/breezestyle.cpp | 7 ++++--- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/kstyle/animations/breezeanimations.cpp b/kstyle/animations/breezeanimations.cpp index 7eaf35f1..3278611c 100644 --- a/kstyle/animations/breezeanimations.cpp +++ b/kstyle/animations/breezeanimations.cpp @@ -54,7 +54,6 @@ namespace Breeze registerEngine( _headerViewEngine = new HeaderViewEngine( this ) ); registerEngine( _widgetStateEngine = new WidgetStateEngine( this ) ); registerEngine( _scrollBarEngine = new ScrollBarEngine( this ) ); - registerEngine( _sliderEngine = new SliderEngine( this ) ); registerEngine( _tabBarEngine = new TabBarEngine( this ) ); registerEngine( _dialEngine = new DialEngine( this ) ); @@ -141,7 +140,7 @@ namespace Breeze // sliders else if( qobject_cast( widget ) ) { _scrollBarEngine->registerWidget( widget ); } - else if( qobject_cast( widget ) ) { _sliderEngine->registerWidget( widget ); } + else if( qobject_cast( widget ) ) { _widgetStateEngine->registerWidget( widget, AnimationHover|AnimationFocus ); } else if( qobject_cast( widget ) ) { _dialEngine->registerWidget( widget ); } // progress bar diff --git a/kstyle/animations/breezeanimations.h b/kstyle/animations/breezeanimations.h index 3b69d658..8d638f61 100644 --- a/kstyle/animations/breezeanimations.h +++ b/kstyle/animations/breezeanimations.h @@ -24,7 +24,6 @@ #include "breezedialengine.h" #include "breezeheaderviewengine.h" #include "breezescrollbarengine.h" -#include "breezesliderengine.h" #include "breezespinboxengine.h" #include "breezetabbarengine.h" #include "breezetoolboxengine.h" @@ -85,10 +84,6 @@ namespace Breeze ScrollBarEngine& scrollBarEngine( void ) const { return *_scrollBarEngine; } - //* slider engine - SliderEngine& sliderEngine( void ) const - { return *_sliderEngine; } - //* dial engine DialEngine& dialEngine( void ) const { return *_dialEngine; } @@ -138,9 +133,6 @@ namespace Breeze //* scrollbar engine ScrollBarEngine* _scrollBarEngine; - //* slider engine - SliderEngine* _sliderEngine; - //* dial engine DialEngine* _dialEngine; diff --git a/kstyle/breezestyle.cpp b/kstyle/breezestyle.cpp index afe3bca2..272288c1 100644 --- a/kstyle/breezestyle.cpp +++ b/kstyle/breezestyle.cpp @@ -5577,9 +5577,10 @@ namespace Breeze const bool sunken( state & (State_On|State_Sunken) ); // animation state - _animations->sliderEngine().updateState( widget, enabled && handleActive ); - const AnimationMode mode( _animations->sliderEngine().isAnimated( widget ) ? AnimationHover:AnimationNone ); - const qreal opacity( _animations->sliderEngine().opacity( widget ) ); + _animations->widgetStateEngine().updateState( widget, AnimationHover, handleActive && mouseOver ); + _animations->widgetStateEngine().updateState( widget, AnimationFocus, hasFocus ); + const AnimationMode mode( _animations->widgetStateEngine().buttonAnimationMode( widget ) ); + const qreal opacity( _animations->widgetStateEngine().buttonOpacity( widget ) ); // define colors const QColor background( palette.color( QPalette::Button ) );