1 #pragma once
2 
3 #ifndef TONIONSKINMASKHANDLE_H
4 #define TONIONSKINMASKHANDLE_H
5 
6 #include <QObject>
7 #include "toonz/onionskinmask.h"
8 
9 #include "tcommon.h"
10 
11 #undef DVAPI
12 #undef DVVAR
13 #ifdef TOONZLIB_EXPORTS
14 #define DVAPI DV_EXPORT_API
15 #define DVVAR DV_EXPORT_VAR
16 #else
17 #define DVAPI DV_IMPORT_API
18 #define DVVAR DV_IMPORT_VAR
19 #endif
20 
21 // forward declaration
22 class OnionSkinMask;
23 
24 //=============================================================================
25 // TOnionSkinMaskHandle
26 //-----------------------------------------------------------------------------
27 
28 class DVAPI TOnionSkinMaskHandle final : public QObject {
29   Q_OBJECT
30 
31   OnionSkinMask m_onionSkinMask;
32 
33 public:
34   TOnionSkinMaskHandle();
35   ~TOnionSkinMaskHandle();
36 
37   const OnionSkinMask &getOnionSkinMask() const;
38   void setOnionSkinMask(const OnionSkinMask &onionSkinMask);
39 
notifyOnionSkinMaskChanged()40   void notifyOnionSkinMaskChanged() { emit onionSkinMaskChanged(); }
41   void clear();
42 
43 signals:
44   void onionSkinMaskChanged();
45   void onionSkinMaskSwitched();
46 };
47 
48 #endif  // TONIONSKINMASKHANDLE_H
49