src/hbcore/effects/hbeffecthsl.cpp
changeset 5 627c4a0fd0e7
parent 0 16d8024aca5e
equal deleted inserted replaced
3:11d3954df52a 5:627c4a0fd0e7
    23 **
    23 **
    24 ****************************************************************************/
    24 ****************************************************************************/
    25 #include <hbglobal.h>
    25 #include <hbglobal.h>
    26 #ifdef HB_FILTER_EFFECTS
    26 #ifdef HB_FILTER_EFFECTS
    27 
    27 
    28 #include "hbeffecthsl_p.h"
    28 #include "hbeffecthsl_p.h" //krazy:exclude=includes
    29 #include "hbeffectgroup_p.h"
    29 #include "hbeffectgroup_p.h"
    30 #include "hbeffectdef_p.h"
    30 #include "hbeffectdef_p.h"
    31 #include "hbvgchainedeffect_p.h"
    31 #include "hbvgchainedeffect_p.h"
    32 #include "hbvghsleffect_p.h"
    32 #include "hbvghsleffect_p.h"
    33 #include "hbeffectfilter_p.h"
    33 #include "hbeffectfilter_p.h"
    40 
    40 
    41 HbEffectHsl::HbEffectHsl(
    41 HbEffectHsl::HbEffectHsl(
    42     const HbEffectFxmlFilterData &data,
    42     const HbEffectFxmlFilterData &data,
    43     QGraphicsItem *item,
    43     QGraphicsItem *item,
    44     HbEffectGroup *group) :
    44     HbEffectGroup *group) :
    45         HbEffectFilter(0, item, group),
    45     HbEffectFilter(0, item, group),
    46         mAnimationO(0),
    46     mAnimationO(0),
    47         mAnimationH(0),
    47     mAnimationH(0),
    48         mAnimationS(0),
    48     mAnimationS(0),
    49         mAnimationL(0),
    49     mAnimationL(0),
    50         mVgHsl(0)
    50     mVgHsl(0)
    51 {
    51 {
    52     // Default values of if something is not passed in FXML
    52     // Default values of if something is not passed in FXML
    53     qreal opacity_start = 1;
    53     qreal opacity_start = 1;
    54     qreal opacity_end = 1;
    54     qreal opacity_end = 1;
    55     qreal hue_start = 0;
    55     qreal hue_start = 0;
    60     qreal lightness_end = 0;
    60     qreal lightness_end = 0;
    61 
    61 
    62     QList<HbEffectFxmlParamData> params = data.paramData();
    62     QList<HbEffectFxmlParamData> params = data.paramData();
    63 
    63 
    64     // Handle FXML parameters
    64     // Handle FXML parameters
    65     Q_FOREACH(const HbEffectFxmlParamData &param, params) {
    65     Q_FOREACH(const HbEffectFxmlParamData & param, params) {
    66         if (param.name() == FXML_KEYWORD_HSL_OPACITY) {
    66         if (param.name() == FXML_KEYWORD_HSL_OPACITY) {
    67             mAnimationO = createAnimation(param, opacity_start, opacity_end, group);
    67             mAnimationO = createAnimation(param, opacity_start, opacity_end, group);
    68         }
    68         } else if (param.name() == FXML_KEYWORD_HSL_HUE) {
    69         else if (param.name() == FXML_KEYWORD_HSL_HUE) {
       
    70             mAnimationH = createAnimation(param, hue_start, hue_end, group);
    69             mAnimationH = createAnimation(param, hue_start, hue_end, group);
    71         }
    70         } else if (param.name() == FXML_KEYWORD_HSL_SATURATION) {
    72         else if (param.name() == FXML_KEYWORD_HSL_SATURATION) {
       
    73             mAnimationS = createAnimation(param, saturation_start, saturation_end, group);
    71             mAnimationS = createAnimation(param, saturation_start, saturation_end, group);
    74         }
    72         } else if (param.name() == FXML_KEYWORD_HSL_LIGHTNESS) {
    75         else if (param.name() == FXML_KEYWORD_HSL_LIGHTNESS) {
       
    76             mAnimationL = createAnimation(param, lightness_start, lightness_end, group);
    73             mAnimationL = createAnimation(param, lightness_start, lightness_end, group);
    77         }
    74         }
    78     }
    75     }
    79 
    76 
    80     // Create VG effect if there were effect parameters defined
    77     // Create VG effect if there were effect parameters defined
    81     if (mEffectDefined) {
    78     if (mEffectDefined) {
    82         // Add blur effect to the filter effect chain in the effect group
    79         // Add blur effect to the filter effect chain in the effect group
    83         HbVgChainedEffect *chain = HbEffectAbstract::group()->vgEffect();
    80         HbVgChainedEffect *chain = HbEffectAbstract::group()->vgEffect();
    84         
    81 
    85         mVgHsl = new HbVgHslEffect();
    82         mVgHsl = new HbVgHslEffect();
    86         mVgHsl->setCaching(true);
    83         mVgHsl->setCaching(true);
    87         
    84 
    88         chain->add(mVgHsl);
    85         chain->add(mVgHsl);
    89 
    86 
    90         // Set initial values for the effect
    87         // Set initial values for the effect
    91         mVgHsl->setOpacity(opacity_start);
    88         mVgHsl->setOpacity(opacity_start);
    92         mVgHsl->setHue(hue_start);
    89         mVgHsl->setHue(hue_start);