00001 00042 #ifndef AICONFIG_HPP 00043 #define AICONFIG_HPP 00044 00045 #include <QtGui> 00046 00047 #include "aiconfigtools/aiconfigtools.hpp" 00048 #include "aiconfigfractals/aiconfigfractals.hpp" 00049 #include "aiconfigzone/aiconfigzone.hpp" 00050 #include "aiconfiggenerator/aiconfiggenerator.hpp" 00051 00052 namespace AiFractals 00053 { 00060 class AiConfig : public QDialog 00061 { 00062 Q_OBJECT 00063 00064 public: 00069 AiConfig( QWidget * parent = 0 ); 00070 00074 ~AiConfig(); 00075 00080 void activeTab(int id); 00081 00086 void enabledChilds(bool e); 00087 00092 void addItems(const QStringList & items); 00093 00099 const QString item(const int index ); 00100 00105 const double getZoneWidth() const; 00106 00111 void setZoneWidth( double w ); 00112 00117 const double getZoneHeight() const; 00118 00123 void setZoneHeight( double h ); 00124 00129 const double getZoneMinX() const; 00130 00135 void setZoneMinX( double x ); 00136 00141 const double getZoneMinY() const; 00142 00147 void setZoneMinY( double y ); 00148 00153 const int getImageWidth() const; 00154 00159 void setImageWidth( int w ); 00160 00165 const int getImageHeight() const; 00166 00171 void setImageHeight( int h ); 00172 00177 const int getIterations() const; 00178 00183 void setIterations( int i ); 00184 00189 void setThreadsNumber( int n ); 00190 00194 void disableZoomArea(); 00195 00196 protected: 00201 void closeEvent(QCloseEvent *event); 00202 00203 private: 00207 QTabWidget * m_tabs; 00208 00209 signals: 00213 void closed(); 00214 00218 void zoomIn(); 00219 00223 void zoomOut(); 00224 00229 void zoomArea(bool enable); 00230 00234 void horizontalMirror(); 00235 00239 void verticalMirror(); 00240 00244 void clear(); 00245 00250 void rotation(int value); 00251 00255 void refreshItems(); 00256 00261 void currentIndexChanged ( int index ); 00262 00266 void debugFractal(); 00267 00272 void currentThreads(int thread); 00273 00278 void firstCompositionMode( int val ); 00279 00284 void othersCompositionMode( int val ); 00285 00289 void runGenerator(); 00290 00294 void stopGenerator(); 00295 00296 }; 00297 } 00298 #endif // AICONFIG_HPP