AniTouchRecognizerMapControl.h
1.76 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//
//  AniTouchRecognizerMapControl.h
//  SteveMaggieCpp
//
//  Created by Katarzyna Kalinowska-Górska on 17.05.2017.
//
//
#ifndef AniTouchRecognizerMapControl_h
#define AniTouchRecognizerMapControl_h
#include "IMapControl.h"
#include "AniMultipleTouchGestureRecognizer.h"
#include "AniTickleGestureRecognizer.h"
#include "Tickle2GestureRecognizer.h"
#include "AniLongPressGestureRecognizer.h"
#include "AniFastSwipeGestureRecognizer.h"
#include "AniTapGestureRecognizer.h"
class AniTouchRecognizerMapControl : public IMapControl {
    
public:
    virtual void install(AniMapLayer* p_AniMapLayer, IMapCharacter* p_controlledCharacter, std::vector<IMapControlInterface*> p_observers) override;
//    virtual void uninstall() override;
    
    virtual ~AniTouchRecognizerMapControl();
    virtual void setEnabled(bool p_enabled);
    
protected:
    bool m_enabled { true};
    AniMultipleTouchGestureRecognizer* m_multipleTouchAniGestureRecognizer {nullptr};
    AniLongPressGestureRecognizer* m_AniLongPressGestureRecognizer {nullptr};
    Tickle2GestureRecognizer* m_tickleAniGestureRecognizer {nullptr};
    AniFastSwipeGestureRecognizer* m_AniFastSwipeGestureRecognizer {nullptr};
    AniTapGestureRecognizer* m_AniTapGestureRecognizer {nullptr};
    virtual void configureTouchAniGestureRecognizer(AniMapLayer* p_AniMapLayer);
    virtual void configureAniTickleGestureRecognizer(IMapCharacter* p_controlledCharacter);
    virtual void configureAniFastSwipeGestureRecognizer(cocos2d::Node* p_controlledCharacter);
    virtual void configureAniTapGestureRecognizer(AniMapLayer* p_AniMapLayer);
    virtual void configureAniLongPressGestureRecognizer(IMapCharacter* p_controlledCharacter);
    
    virtual void deleteAniGestureRecognizers();
};
#endif /* AniTouchRecognizerMapControl_hs */
