|
Shinya Kitaoka |
810553 |
#pragma once
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#ifndef PSDSETTINGSPOPUP_H
|
|
Toshihiro Shimizu |
890ddd |
#define PSDSETTINGSPOPUP_H
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#include "toonzqt/dvdialog.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "tfilepath.h"
|
|
Toshihiro Shimizu |
890ddd |
#include "../common/psdlib/psd.h"
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
#include <qbuttongroup></qbuttongroup>
|
|
Toshihiro Shimizu |
890ddd |
#include <qtextedit></qtextedit>
|
|
Toshihiro Shimizu |
890ddd |
//#include <qtreewidget></qtreewidget>
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
// forward declaration
|
|
Toshihiro Shimizu |
890ddd |
class QPushButton;
|
|
Toshihiro Shimizu |
890ddd |
class QComboBox;
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
namespace DVGui {
|
|
Toshihiro Shimizu |
890ddd |
class CheckBox;
|
|
Toshihiro Shimizu |
890ddd |
}
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
//=============================================================================
|
|
Toshihiro Shimizu |
890ddd |
// PsdSettingsPopup
|
|
Toshihiro Shimizu |
890ddd |
//-----------------------------------------------------------------------------
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
d1f6c4 |
class PsdSettingsPopup final : public DVGui::Dialog {
|
|
Shinya Kitaoka |
120a6e |
Q_OBJECT
|
|
Shinya Kitaoka |
120a6e |
// Loading Mode
|
|
Shinya Kitaoka |
120a6e |
// FLAT: psd flat image
|
|
Shinya Kitaoka |
120a6e |
// FRAMES: all psd layers are frames of a single Tlevel
|
|
Shinya Kitaoka |
120a6e |
// COLUMNS: each psd layer is a TLevel with only one frame.
|
|
Shinya Kitaoka |
120a6e |
// FOLDER: each psd layer is a TLevel and
|
|
Shinya Kitaoka |
d1f6c4 |
// each psd folder is a TLevel where each psd
|
|
Shinya Kitaoka |
d1f6c4 |
// layer
|
|
Shinya Kitaoka |
d1f6c4 |
// contained
|
|
Shinya Kitaoka |
38fd86 |
// into folder is a frame of TLevel
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
enum Mode { FLAT, FRAMES, COLUMNS, FOLDER };
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
TFilePath m_path;
|
|
Shinya Kitaoka |
120a6e |
std::vector<tfilepath> m_psdLevelPaths;</tfilepath>
|
|
Shinya Kitaoka |
120a6e |
std::vector<int> loadedLevelId;</int>
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
Mode m_mode;
|
|
Shinya Kitaoka |
120a6e |
QPushButton *m_okBtn;
|
|
Shinya Kitaoka |
120a6e |
QPushButton *m_cancelBtn;
|
|
shun_iwasawa |
a4bcc9 |
QComboBox *m_loadMode, *m_levelNameType;
|
|
Shinya Kitaoka |
120a6e |
DVGui::CheckBox *m_createSubXSheet;
|
|
Shinya Kitaoka |
120a6e |
QButtonGroup *m_psdFolderOptions;
|
|
Shinya Kitaoka |
120a6e |
|
|
Shinya Kitaoka |
120a6e |
// QTreeWidget *m_psdTree; // per adesso non serve. Servirà in un secondo
|
|
Shinya Kitaoka |
120a6e |
// momento quando implemento la scelta dei livelli
|
|
Shinya Kitaoka |
120a6e |
// da caricare
|
|
Shinya Kitaoka |
120a6e |
QTextEdit *m_modeDescription;
|
|
Shinya Kitaoka |
120a6e |
TPSDParser *m_psdparser;
|
|
Shinya Kitaoka |
120a6e |
QLabel *m_filename; // Name
|
|
Shinya Kitaoka |
120a6e |
QLabel *m_parentDir; // Path
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
public slots:
|
|
Shinya Kitaoka |
120a6e |
void onOk();
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
public:
|
|
Shinya Kitaoka |
120a6e |
PsdSettingsPopup();
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
void setPath(const TFilePath &path);
|
|
Shinya Kitaoka |
120a6e |
int getPsdLevelCount() { return m_psdLevelPaths.size(); };
|
|
Shinya Kitaoka |
120a6e |
TFilePath getPsdPath(int levelIndex);
|
|
Shinya Kitaoka |
120a6e |
TFilePath getPsdFramePath(int levelIndex, int frameIndex);
|
|
Shinya Kitaoka |
120a6e |
int getFramesCount(int levelIndex);
|
|
Shinya Kitaoka |
120a6e |
bool isFolder(int levelIndex);
|
|
Shinya Kitaoka |
120a6e |
bool isSubFolder(int levelIndex, int frameIndex);
|
|
Shinya Kitaoka |
120a6e |
bool subxsheet();
|
|
shun_iwasawa |
a4bcc9 |
int levelNameType();
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
int getFolderOption();
|
|
Shinya Kitaoka |
120a6e |
int getSubfolderLevelIndex(int psdLevelIndex, int frameIndex);
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
private:
|
|
Shinya Kitaoka |
120a6e |
void doPsdParser();
|
|
Toshihiro Shimizu |
890ddd |
|
|
Toshihiro Shimizu |
890ddd |
protected slots:
|
|
shun-iwasawa |
199e29 |
void onModeChanged();
|
|
Shinya Kitaoka |
120a6e |
void onFolderOptionChange(int id);
|
|
Toshihiro Shimizu |
890ddd |
};
|
|
Toshihiro Shimizu |
890ddd |
|
|
Shinya Kitaoka |
120a6e |
#endif // PsdSettingsPopup_H
|