00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef ConfigDialog_H
00030 #define ConfigDialog_H
00031
00032 #include <QDialog>
00033 #include <QCheckBox>
00034
00035 class QGroupBox;
00036 class QPushButton;
00037 class QTabWidget;
00038 class QStackedWidget;
00039 class QWidget;
00040 class QComboBox;
00041 class QSpinBox;
00042 class QLabel;
00043 class QRadioButton;
00044 class QListWidget;
00045 class ColorButton;
00046 class ColorBox;
00047
00049 class ConfigDialog : public QDialog
00050 {
00051 Q_OBJECT
00052
00053 public:
00055
00059 ConfigDialog( QWidget* parent, Qt::WFlags fl = 0 );
00060
00061 public slots:
00062 virtual void languageChange();
00063 void insertLanguagesList();
00064
00065 void accept();
00066 void apply();
00067
00068 void setCurrentPage(int index);
00069 void setColumnSeparator(const QString& sep);
00070
00071
00072 void pickTextFont();
00073 void pickHeaderFont();
00074
00075
00076 void pickAxesFont();
00077 void pickNumbersFont();
00078 void pickLegendFont();
00079 void pickTitleFont();
00080
00081 void enableScaleFonts();
00082 void showFrameWidth(bool ok);
00083
00084
00085 void pickApplicationFont();
00086
00087
00088 int curveStyle();
00089 void pick3DTitleFont();
00090 void pick3DNumbersFont();
00091 void pick3DAxesFont();
00092
00093
00094 void showPointsBox(bool);
00095
00096 void switchToLanguage(int param);
00097
00098 private:
00099 void initPlotsPage();
00100 void initAppPage();
00101 void initCurvesPage();
00102 void initPlots3DPage();
00103 void initTablesPage();
00104 void initConfirmationsPage();
00105 void initFittingPage();
00106
00107 QFont textFont, headerFont, axesFont, numbersFont, legendFont, titleFont, appFont;
00108 QFont plot3DTitleFont, plot3DNumbersFont, plot3DAxesFont;
00109
00110 QCheckBox *boxScaleLayersOnPrint, *boxPrintCropmarks, *boxUpdateSeparators, *linearFit2PointsBox;
00111 QTabWidget *plotsTabWidget, *appTabWidget;
00112 ColorButton *btnBackground3D, *btnMesh, *btnAxes, *btnLabels, *btnNumbers;
00113 ColorButton *btnFromColor, *btnToColor, *btnGrid;
00114 QPushButton *btnTitleFnt, *btnLabelsFnt, *btnNumFnt;
00115 ColorButton *buttonBackground, *buttonText, *buttonHeader;
00116 QPushButton *buttonOk, *buttonCancel, *buttonApply;
00117 QPushButton* buttonTextFont, *buttonHeaderFont;
00118 QStackedWidget * generalDialog;
00119 QWidget *appColors, *tables, *plotOptions, *plotTicks, *plotFonts, *confirm, *plotPrint;
00120 QWidget *application, *curves, *plots3D, *fitPage, *numericFormatPage;
00121 QPushButton* buttonAxesFont, *buttonNumbersFont, *buttonLegendFont, *buttonTitleFont, *fontsBtn;
00122 QCheckBox *boxSearchUpdates, *boxOrthogonal, *logBox, *plotLabelBox, *scaleErrorsBox;
00123 QCheckBox *boxTitle, *boxFrame, *boxPlots3D, *boxPlots2D, *boxTables, *boxNotes, *boxFolders;
00124 QCheckBox *boxSave, *boxBackbones, *boxAllAxes, *boxShowLegend, *boxSmoothMesh;
00125 QCheckBox *boxAutoscaling, *boxShowProjection, *boxMatrices, *boxScaleFonts, *boxResize;
00126 QComboBox *boxMajTicks, *boxMinTicks, *boxStyle, *boxCurveStyle, *boxSeparator, *boxLanguage, *boxDecimalSeparator;
00127 QSpinBox *boxMinutes, *boxLineWidth, *boxFrameWidth, *boxResolution, *boxMargin, *boxPrecision, *boxAppPrecision;
00128 QSpinBox *boxCurveLineWidth, *boxSymbolSize, *boxMinTicksLength, *boxMajTicksLength, *generatePointsBox;
00129 ColorButton *btnWorkspace, *btnPanels, *btnPanelsText;
00130 QListWidget * itemsList;
00131 QLabel *labelFrameWidth, *lblLanguage, *lblWorkspace, *lblPanels, *lblPageHeader;
00132 QLabel *lblPanelsText, *lblFonts, *lblStyle, *lblDecimalSeparator, *lblAppPrecision;
00133 QGroupBox *groupBoxConfirm;
00134 QGroupBox *groupBoxTableFonts, *groupBoxTableCol;
00135 QLabel *lblSeparator, *lblTableBackground, *lblTextColor, *lblHeaderColor;
00136 QLabel *lblSymbSize, *lblAxesLineWidth, *lblCurveStyle, *lblResolution, *lblPrecision;
00137 QGroupBox *groupBox3DFonts, *groupBox3DCol;
00138 QLabel *lblMargin, *lblMajTicks, *lblMajTicksLength, *lblLineWidth, *lblMinTicks, *lblMinTicksLength, *lblPoints, *lblPeaksColor;
00139 QGroupBox *groupBoxFittingCurve, *groupBoxFitParameters;
00140 QRadioButton *samePointsBtn, *generatePointsBtn;
00141 QGroupBox *groupBoxMultiPeak;
00142 ColorBox *boxPeaksColor;
00143 QLabel *lblScriptingLanguage, *lblInitWindow;
00144 QComboBox *boxScriptingLanguage, *boxInitWindow;
00145 QCheckBox *boxAntialiasing, *boxAutoscale3DPlots, *boxTableComments, *boxThousandsSeparator;
00146 QCheckBox *boxPromptRenameTables, *boxBackupProject;
00147 };
00148
00149 #endif // CONFIGDIALOG_H