summaryrefslogtreecommitdiff
path: root/src/desktop/rule/layerRule/LayerRuleEffectContainer.hpp
blob: e3b3d26c417e010341836e3529ae398c9e35b991 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#pragma once

#include "../effect/EffectContainer.hpp"
#include "../../../helpers/memory/Memory.hpp"

#pragma once

namespace Desktop::Rule {
    enum eLayerRuleEffect : uint8_t {
        LAYER_RULE_EFFECT_NONE = 0,

        LAYER_RULE_EFFECT_NO_ANIM,
        LAYER_RULE_EFFECT_BLUR,
        LAYER_RULE_EFFECT_BLUR_POPUPS,
        LAYER_RULE_EFFECT_IGNORE_ALPHA,
        LAYER_RULE_EFFECT_DIM_AROUND,
        LAYER_RULE_EFFECT_XRAY,
        LAYER_RULE_EFFECT_ANIMATION,
        LAYER_RULE_EFFECT_ORDER,
        LAYER_RULE_EFFECT_ABOVE_LOCK,
        LAYER_RULE_EFFECT_NO_SCREEN_SHARE,

        LAYER_RULE_EFFECT_LAST_STATIC,
    };

    class CLayerRuleEffectContainer : public IEffectContainer<eLayerRuleEffect> {
      public:
        CLayerRuleEffectContainer();
        virtual ~CLayerRuleEffectContainer() = default;
    };

    SP<CLayerRuleEffectContainer> layerEffects();
};