1 #pragma once 2 3 #ifndef TCOLUMNSELECTION_H 4 #define TCOLUMNSELECTION_H 5 6 #include "toonzqt/selection.h" 7 #include "tgeometry.h" 8 #include <set> 9 10 class ReframePopup; 11 12 //============================================================================= 13 // TColumnSelection 14 //----------------------------------------------------------------------------- 15 16 class TColumnSelection final : public TSelection { 17 std::set<int> m_indices; 18 ReframePopup *m_reframePopup; 19 20 public: 21 TColumnSelection(); 22 ~TColumnSelection(); 23 24 bool isEmpty() const override; 25 void selectColumn(int col, bool on = true); 26 void selectNone() override; 27 28 bool isColumnSelected(int col) const; 29 getIndices()30 const std::set<int> &getIndices() const { return m_indices; } 31 32 void enableCommands() override; 33 34 void copyColumns(); 35 void pasteColumns(); 36 void pasteColumnsAbove(); 37 void deleteColumns(); 38 void cutColumns(); 39 void insertColumns(); 40 void insertColumnsAbove(); 41 42 void collapse(); 43 void explodeChild(); 44 void resequence(); 45 void cloneChild(); 46 47 void hideColumns(); 48 49 void reframeCells(int count); reframe1Cells()50 void reframe1Cells() { reframeCells(1); } reframe2Cells()51 void reframe2Cells() { reframeCells(2); } reframe3Cells()52 void reframe3Cells() { reframeCells(3); } reframe4Cells()53 void reframe4Cells() { reframeCells(4); } 54 55 void reframeWithEmptyInbetweens(); 56 }; 57 58 #endif // TCELLSELECTION_H 59