| |
| |
| #include "toonz/txshlevelhandle.h" |
| |
| #include "toonz/txshlevel.h" |
| #include "toonz/txshsimplelevel.h" |
| #include "toonz/txsheet.h" |
| #include "toonz/txshcell.h" |
| |
| |
| |
| |
| |
| TXshLevelHandle::TXshLevelHandle() |
| : m_level(0) |
| { |
| } |
| |
| |
| |
| TXshLevelHandle::~TXshLevelHandle() |
| { |
| if (m_level) |
| m_level->release(); |
| } |
| |
| |
| |
| TXshLevel *TXshLevelHandle::getLevel() const |
| { |
| return m_level; |
| } |
| |
| |
| |
| TXshSimpleLevel *TXshLevelHandle::getSimpleLevel() const |
| { |
| if (!m_level) |
| return 0; |
| else |
| return m_level->getSimpleLevel(); |
| } |
| |
| |
| |
| void TXshLevelHandle::setLevel(TXshLevel *level) |
| { |
| if (m_level == level) |
| return; |
| |
| TXshLevel *oldLevel = m_level; |
| m_level = level; |
| if (level) |
| level->addRef(); |
| bool levelExists = oldLevel ? oldLevel->getRefCount() > 1 : false; |
| if (oldLevel) |
| oldLevel->release(); |
| emit xshLevelSwitched(levelExists ? oldLevel : 0); |
| } |
| |
| |
| |