1 #pragma once 2 3 #include <QObject> 4 #include "tcommon.h" 5 6 #undef DVAPI 7 #undef DVVAR 8 #ifdef TOONZLIB_EXPORTS 9 #define DVAPI DV_EXPORT_API 10 #define DVVAR DV_EXPORT_VAR 11 #else 12 #define DVAPI DV_IMPORT_API 13 #define DVVAR DV_IMPORT_VAR 14 #endif 15 16 // forward declaration 17 class TXshLevel; 18 class TXshSimpleLevel; 19 20 //============================================================================= 21 // TXshLevelHandle 22 //----------------------------------------------------------------------------- 23 24 class DVAPI TXshLevelHandle final : public QObject { 25 Q_OBJECT 26 27 TXshLevel *m_level; 28 29 public: 30 TXshLevelHandle(); 31 ~TXshLevelHandle(); 32 33 TXshLevel *getLevel() const; 34 TXshSimpleLevel *getSimpleLevel() const; // helper function: 35 // getLevel()->getSimpleLevel(), 36 // controllando che getLevel() !=0 37 38 void setLevel(TXshLevel *level); 39 notifyLevelChange()40 void notifyLevelChange() { emit xshLevelChanged(); } notifyLevelViewChange()41 void notifyLevelViewChange() { emit xshLevelViewChanged(); } notifyLevelTitleChange()42 void notifyLevelTitleChange() { emit xshLevelTitleChanged(); } notifyCanvasSizeChange()43 void notifyCanvasSizeChange() { emit xshCanvasSizeChanged(); } 44 45 signals: 46 void xshLevelSwitched(TXshLevel *oldLevel); 47 void xshLevelChanged(); 48 void xshLevelViewChanged(); 49 void xshLevelTitleChanged(); 50 void xshCanvasSizeChanged(); 51 }; 52