| #pragma once |
| |
| #ifndef STYLESELECTION_INCLUDED |
| #define STYLESELECTION_INCLUDED |
| |
| #include "toonzqt/selection.h" |
| #include "toonz/tpalettehandle.h" |
| #include "tpalette.h" |
| #include <set> |
| #include <QString> |
| |
| class QByteArray; |
| |
| #undef DVAPI |
| #undef DVVAR |
| #ifdef TOONZQT_EXPORTS |
| #define DVAPI DV_EXPORT_API |
| #define DVVAR DV_EXPORT_VAR |
| #else |
| #define DVAPI DV_IMPORT_API |
| #define DVVAR DV_IMPORT_VAR |
| #endif |
| |
| class TXsheetHandle; |
| class TXshLevelHandle; |
| |
| |
| |
| |
| |
| class DVAPI TStyleSelection : public TSelection |
| { |
| TPaletteHandle *m_paletteHandle; |
| |
| |
| TXsheetHandle *m_xsheetHandle; |
| |
| TXshLevelHandle *m_levelHandle; |
| |
| int m_pageIndex; |
| std::set<int> m_styleIndicesInPage; |
| |
| public: |
| TStyleSelection(); |
| TStyleSelection(TStyleSelection *styleSelection) |
| : m_paletteHandle(styleSelection->getPaletteHandle()), m_pageIndex(styleSelection->getPageIndex()), m_styleIndicesInPage(styleSelection->getIndicesInPage()) |
| { |
| } |
| ~TStyleSelection(); |
| |
| void select(int pageIndex); |
| void select(int pageIndex, int styleIndexInPage, bool on); |
| bool isSelected(int pageIndex, int styleIndexInPage) const; |
| bool isPageSelected(int pageIndex) const; |
| bool canHandleStyles(); |
| void selectNone(); |
| bool isEmpty() const; |
| int getStyleCount() const; |
| TPaletteHandle *getPaletteHandle() const |
| { |
| return m_paletteHandle; |
| } |
| void setPaletteHandle(TPaletteHandle *paletteHandle) |
| { |
| m_paletteHandle = paletteHandle; |
| } |
| TPalette *getPalette() const |
| { |
| return m_paletteHandle->getPalette(); |
| } |
| int getPageIndex() const |
| { |
| return m_pageIndex; |
| } |
| const std::set<int> &getIndicesInPage() const |
| { |
| return m_styleIndicesInPage; |
| } |
| |
| void getIndices(std::set<int> &indices) const; |
| |
| |
| void setXsheetHandle(TXsheetHandle *xsheetHandle) { m_xsheetHandle = xsheetHandle; } |
| TXsheetHandle *getXsheetHandle() const { return m_xsheetHandle; } |
| void setLevelHandle(TXshLevelHandle *levelHandle) { m_levelHandle = levelHandle; } |
| |
| |
| void cutStyles(); |
| void copyStyles(); |
| void pasteStyles(); |
| void pasteStylesValues(bool pasteName, bool pasteColor = true); |
| void pasteStylesValue(); |
| void pasteStylesColor(); |
| void pasteStylesName(); |
| void deleteStyles(); |
| void eraseUnsedStyle(); |
| void blendStyles(); |
| void toggleLink(); |
| void eraseToggleLink(); |
| |
| void enableCommands(); |
| |
| void toggleKeyframe(int frame); |
| |
| |
| bool removeLink(); |
| |
| void getBackOriginalStyle(); |
| }; |
| |
| #endif |