#pragma once #ifndef CASMCONFIGPANEL2_H #define CASMCONFIGPANEL2_H #include "submitpage.h" #include "tw/tw.h" #include "tw/textfield.h" // forward declarations class TLabel; class TNumField; class TOptionMenu; class TButton; class TFilePath; class TCheckBox; class CasmTask2; class CasmConfigPanel2; //============================================================================== class FilePathField : public TTextField { CasmConfigPanel2 *m_page; public: FilePathField(TWidget *parent, string name = ""); void onFocusChange(bool on); void close(); void keyDown(int key, unsigned long flags, const TPoint &p); }; //============================================================================== class CasmConfigPanel2 : public TaskConfigPanel { public: CasmConfigPanel2(TWidget *parent); void configureNotify(const TDimension &d); void setTask(SubmitPageTask *task); SubmitPageTask *getTask() const; void loadSetup(const TFilePath &fp); void onNumField(double v, int type); void onColumnField(string value, int type); private: CasmTask2 *m_task; TLabel *m_setupLabel; FilePathField *m_setupTextField; TButton *m_setupBrowseBtn; TLabel *m_chunkSizeLabel; TNumField *m_chunkSize; TLabel *m_fromLabel; TLabel *m_toLabel; TLabel *m_stepLabel; TNumField *m_from; TNumField *m_to; TNumField *m_step; TLabel *m_shrinkLabel; TLabel *m_renderTileLabel; TLabel *m_memChunkLabel; TNumField *m_shrink; TNumField *m_renderTile; TNumField *m_memChunk; TLabel *m_subPixelMoveLabel; TOptionMenu *m_subPixelMove; TLabel *m_processingLabel; TOptionMenu *m_processing; TLabel *m_resampleQualityLabel; TOptionMenu *m_resampleQuality; TCheckBox *m_focus; TCheckBox *m_noOverwrite; TCheckBox *m_multimedia; TTextField *m_column; TCheckBox *m_lineart; TCheckBox *m_edgeAliasing; TNumField *m_thickness; TCheckBox *m_gamma; TNumField *m_gammaValue; TCheckBox *m_clap; TLabel *m_outputScriptLabel; TOptionMenu *m_outputScript; TLabel *m_entryPointLabel; TTextField *m_entryPoint; void browseSetupFiles(); void onMultimedia(TCheckBox *box, bool on); void onLineart(TCheckBox *box, bool on); void onEdgeAliasing(TCheckBox *box, bool on); void onConstantFocus(TCheckBox *box, bool on); void onOverwrite(TCheckBox *box, bool on); void onGamma(TCheckBox *box, bool on); void onSubPixelMove(string move); void onProcessing(string bits); void onResampleQuality(string quality); }; #endif