|
Shinya Kitaoka |
810553 |
#pragma once
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#ifndef TCELLKEYFRAMESELECTION_H
|
|
Toshihiro Shimizu |
890ddd |
#define TCELLKEYFRAMESELECTION_H
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#include "toonzqt/selection.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "cellselection.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "keyframeselection.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "tgeometry.h"
|
|
Toshihiro Shimizu |
890ddd |
#include <set></set>
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
class TXsheetHandle;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
//=============================================================================
|
|
Toshihiro Shimizu |
890ddd |
// TCellKeyframeSelection
|
|
Toshihiro Shimizu |
890ddd |
//-----------------------------------------------------------------------------
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
d1f6c4 |
class TCellKeyframeSelection final : public TSelection {
|
|
Shinya Kitaoka |
120a6e |
TCellSelection *m_cellSelection;
|
|
Shinya Kitaoka |
120a6e |
TKeyframeSelection *m_keyframeSelection;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
TXsheetHandle *m_xsheetHandle;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
public:
|
|
Shinya Kitaoka |
120a6e |
TCellKeyframeSelection(TCellSelection *cellSelection,
|
|
Shinya Kitaoka |
120a6e |
TKeyframeSelection *keyframeSelection);
|
|
Shinya Kitaoka |
120a6e |
~TCellKeyframeSelection();
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
TCellSelection *getCellSelection() { return m_cellSelection; }
|
|
Shinya Kitaoka |
120a6e |
TKeyframeSelection *getKeyframeSelection() { return m_keyframeSelection; }
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
void setXsheetHandle(TXsheetHandle *xsheetHandle) {
|
|
Shinya Kitaoka |
120a6e |
m_xsheetHandle = xsheetHandle;
|
|
Shinya Kitaoka |
120a6e |
}
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
473e70 |
void enableCommands() override;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
473e70 |
bool isEmpty() const override;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
void copyCellsKeyframes();
|
|
Shinya Kitaoka |
120a6e |
void pasteCellsKeyframes();
|
|
Shinya Kitaoka |
120a6e |
void deleteCellsKeyframes();
|
|
Shinya Kitaoka |
120a6e |
void cutCellsKeyframes();
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
//! \note: puo' anche essere r0>r1 o c0>c1
|
|
Shinya Kitaoka |
120a6e |
void selectCellsKeyframes(int r0, int c0, int r1, int c1);
|
|
Shinya Kitaoka |
120a6e |
void selectCellKeyframe(int row, int col);
|
|
Shinya Kitaoka |
473e70 |
void selectNone() override;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
/*
|
|
Shinya Kitaoka |
120a6e |
void getSelectedCells(int &r0, int &c0, int &r1, int &c1) const;
|
|
Shinya Kitaoka |
120a6e |
Range getSelectedCells() const;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
bool isCellSelected(int r , int c) const;
|
|
Shinya Kitaoka |
120a6e |
bool isRowSelected(int row) const;
|
|
Shinya Kitaoka |
120a6e |
bool isColSelected(int col) const;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
bool areAllColSelectedLocked() const;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
//commands
|
|
Shinya Kitaoka |
120a6e |
void reverseCells();
|
|
Shinya Kitaoka |
120a6e |
void swingCells();
|
|
Shinya Kitaoka |
120a6e |
void incrementCells();
|
|
Shinya Kitaoka |
120a6e |
void duplicateCells();
|
|
Shinya Kitaoka |
120a6e |
void randomCells();
|
|
Shinya Kitaoka |
120a6e |
void stepCells(int count);
|
|
Shinya Kitaoka |
120a6e |
void eachCells(int count);
|
|
Shinya Kitaoka |
120a6e |
void step2Cells() {stepCells(2);}
|
|
Shinya Kitaoka |
120a6e |
void step3Cells() {stepCells(3);}
|
|
Shinya Kitaoka |
120a6e |
void step4Cells() {stepCells(4);}
|
|
Shinya Kitaoka |
120a6e |
void each2Cells() {eachCells(2);}
|
|
Shinya Kitaoka |
120a6e |
void each3Cells() {eachCells(3);}
|
|
Shinya Kitaoka |
120a6e |
void each4Cells() {eachCells(4);}
|
|
Shinya Kitaoka |
120a6e |
void rollupCells();
|
|
Shinya Kitaoka |
120a6e |
void rolldownCells();
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
void setKeyframes();
|
|
Shinya Kitaoka |
120a6e |
void cloneLevel();
|
|
Shinya Kitaoka |
120a6e |
void insertCells();
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
void openTimeStretchPopup();*/
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
#endif // TCELLKEYFRAMESELECTION_H
|