used OxygenShadowConfigration rather than shadowTileOption to detect if shadowTiles are to be recreated, because the latter was both incomplete and redundant with the former.

svn path=/trunk/KDE/kdebase/workspace/; revision=1024657
icc-effect-5.14.5
Hugo Pereira Da Costa 2009-09-17 05:07:43 +00:00
parent 2f5512e00e
commit c5c7cd79d6
2 changed files with 11 additions and 38 deletions

View File

@ -75,6 +75,8 @@ namespace Oxygen
KCommonDecorationUnstable(b, f),
colorCacheInvalid_(true),
sizeGrip_( 0 ),
inactiveShadowConfiguration_( QPalette::Inactive ),
activeShadowConfiguration_( QPalette::Active ),
inactiveShadowTiles_( 0 ),
activeShadowTiles_( 0 ),
helper_(*globalHelper),
@ -830,15 +832,12 @@ namespace Oxygen
OxygenShadowConfiguration shadowConfiguration( OxygenFactory::shadowConfiguration( active && useOxygenShadows() ) );
ShadowTilesOption opt;
opt.active = active;
opt.width = shadowConfiguration.shadowSize();
opt.windowColor = color;
opt.innerColor = shadowConfiguration.innerColor();
OxygenShadowConfiguration local( shadowConfiguration );
local.setShadowSize( OxygenFactory::shadowSize() );
ShadowTilesOption currentOpt = active ? activeShadowTilesOption_:inactiveShadowTilesOption_;
OxygenShadowConfiguration current = active ? activeShadowConfiguration_:inactiveShadowConfiguration_;
bool optionChanged = !(currentOpt == opt );
bool optionChanged = !(current == local );
if (active && activeShadowTiles_ )
{
@ -897,12 +896,12 @@ namespace Oxygen
if( active )
{
activeShadowTilesOption_ = opt;
activeShadowConfiguration_ = local;
activeShadowTiles_ = tileSet;
} else {
inactiveShadowTilesOption_ = opt;
inactiveShadowConfiguration_ = local;
inactiveShadowTiles_ = tileSet;
}

View File

@ -30,8 +30,8 @@
#include <kcommondecoration.h>
#include "kdeversion.h"
#include "oxygenconfiguration.h"
#include "oxygenshadowconfiguration.h"
#include "lib/helper.h"
#include "lib/tileset.h"
@ -128,32 +128,6 @@ namespace Oxygen
private:
class ShadowTilesOption {
public:
//! constructor
ShadowTilesOption( void ):
width(0),
active(false)
{}
//! equal to operator
bool operator == ( const ShadowTilesOption& other ) const
{
return
windowColor == other.windowColor &&
innerColor == other.innerColor &&
width == other.width &&
active == other.active;
}
QColor windowColor;
QColor innerColor;
qreal width;
bool active;
};
//! calculate mask
QRegion calcMask( void ) const;
@ -191,8 +165,8 @@ namespace Oxygen
//! size grip widget
OxygenSizeGrip* sizeGrip_;
ShadowTilesOption inactiveShadowTilesOption_;
ShadowTilesOption activeShadowTilesOption_;
OxygenShadowConfiguration inactiveShadowConfiguration_;
OxygenShadowConfiguration activeShadowConfiguration_;
TileSet *inactiveShadowTiles_;
TileSet *activeShadowTiles_;