Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef PALETTESCANPOPUP_H
Toshihiro Shimizu 890ddd
#define PALETTESCANPOPUP_H
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "toonzqt/dvdialog.h"
Toshihiro Shimizu 890ddd
#include "toonzqt/filefield.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#include "toonz/studiopalette.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#undef DVAPI
Toshihiro Shimizu 890ddd
#undef DVVAR
Toshihiro Shimizu 890ddd
#ifdef TOONZQT_EXPORTS
Toshihiro Shimizu 890ddd
#define DVAPI DV_EXPORT_API
Toshihiro Shimizu 890ddd
#define DVVAR DV_EXPORT_VAR
Toshihiro Shimizu 890ddd
#else
Toshihiro Shimizu 890ddd
#define DVAPI DV_IMPORT_API
Toshihiro Shimizu 890ddd
#define DVVAR DV_IMPORT_VAR
Toshihiro Shimizu 890ddd
#endif
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//=============================================================================
Toshihiro Shimizu 890ddd
// PalettesScanPopup
Toshihiro Shimizu 890ddd
//-----------------------------------------------------------------------------
Toshihiro Shimizu 890ddd
Shinya Kitaoka bb1d04
class DVAPI PalettesScanPopup : public DVGui::Dialog
Toshihiro Shimizu 890ddd
{
Toshihiro Shimizu 890ddd
	Q_OBJECT
Toshihiro Shimizu 890ddd
Shinya Kitaoka bb1d04
	DVGui::FileField *m_field;
Toshihiro Shimizu 890ddd
	QLabel *m_label;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
	TFilePath m_folderPath;
Toshihiro Shimizu 890ddd
	int m_timerId;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
	struct Directory {
Toshihiro Shimizu 890ddd
		TFilePath m_path;
Toshihiro Shimizu 890ddd
		TFilePathSet m_files;
Toshihiro Shimizu 890ddd
		TFilePathSet::iterator m_it;
Toshihiro Shimizu 890ddd
	};
Toshihiro Shimizu 890ddd
	std::vector<Directory *> m_stack;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
public:
Toshihiro Shimizu 890ddd
	PalettesScanPopup();
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
	void setCurrentFolder(TFilePath path);
Toshihiro Shimizu 890ddd
	TFilePath getCurrentFolder();
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
protected slots:
Toshihiro Shimizu 890ddd
	void onOkBtnClicked();
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
protected:
Toshihiro Shimizu 890ddd
	void setLabel(const TFilePath &fp);
Toshihiro Shimizu 890ddd
	void timerEvent(QTimerEvent *event);
Toshihiro Shimizu 890ddd
	void push(const TFilePath &fp);
Toshihiro Shimizu 890ddd
	void push(const TFilePathSet &fs);
Toshihiro Shimizu 890ddd
	void pop();
Toshihiro Shimizu 890ddd
	bool step();
Toshihiro Shimizu 890ddd
	void clearStack();
Toshihiro Shimizu 890ddd
	void onPlt(const TFilePath &fp);
Toshihiro Shimizu 890ddd
};
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#endif //PALETTESCANPOPUP_H