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 void pickBgColor();
00072 void pickTextColor();
00073 void pickHeaderColor();
00074
00075
00076 void pickTextFont();
00077 void pickHeaderFont();
00078
00079
00080 void pickAxesFont();
00081 void pickNumbersFont();
00082 void pickLegendFont();
00083 void pickTitleFont();
00084
00085 void enableScaleFonts();
00086 void showFrameWidth(bool ok);
00087
00088
00089 void pickApplicationFont();
00090 void pickPanelsTextColor();
00091 void pickPanelsColor();
00092 void pickWorkspaceColor();
00093
00094
00095 int curveStyle();
00096
00097 void pickDataMaxColor();
00098 void pickDataMinColor();
00099 void pick3DBackgroundColor();
00100 void pickMeshColor();
00101 void pickGridColor();
00102 void pick3DAxesColor();
00103 void pick3DNumbersColor();
00104 void pick3DLabelsColor();
00105 void pick3DTitleFont();
00106 void pick3DNumbersFont();
00107 void pick3DAxesFont();
00108
00109
00110 void showPointsBox(bool);
00111
00112 void switchToLanguage(int param);
00113
00114 private:
00115 void initPlotsPage();
00116 void initAppPage();
00117 void initCurvesPage();
00118 void initPlots3DPage();
00119 void initTablesPage();
00120 void initConfirmationsPage();
00121 void initFittingPage();
00122
00123 QFont textFont, headerFont, axesFont, numbersFont, legendFont, titleFont, appFont;
00124 QFont plot3DTitleFont, plot3DNumbersFont, plot3DAxesFont;
00125 QStringList plot3DColors;
00126
00127 QCheckBox *boxScaleLayersOnPrint, *boxPrintCropmarks;
00128 QTabWidget *plotsTabWidget, *appTabWidget;
00129 QPushButton *btnBackground3D, *btnMesh, *btnAxes, *btnLabels, *btnNumbers;
00130 QPushButton *btnFromColor, *btnToColor, *btnGrid;
00131 QPushButton *btnTitleFnt, *btnLabelsFnt, *btnNumFnt;
00132 ColorButton *buttonBackground, *buttonText, *buttonHeader;
00133 QPushButton *buttonOk, *buttonCancel, *buttonApply;
00134 QPushButton* buttonTextFont, *buttonHeaderFont;
00135 QStackedWidget * generalDialog;
00136 QWidget *appColors, *tables, *plotOptions, *plotTicks, *plotFonts, *confirm, *plotPrint;
00137 QWidget *application, *curves, *plots3D, *fitPage, *numericFormatPage;
00138 QPushButton* buttonAxesFont, *buttonNumbersFont, *buttonLegendFont, *buttonTitleFont, *fontsBtn;
00139 QCheckBox *boxSearchUpdates, *boxOrthogonal, *logBox, *plotLabelBox, *scaleErrorsBox;
00140 QCheckBox *boxTitle, *boxFrame, *boxPlots3D, *boxPlots2D, *boxTables, *boxNotes, *boxFolders;
00141 QCheckBox *boxSave, *boxBackbones, *boxAllAxes, *boxShowLegend, *boxSmoothMesh;
00142 QCheckBox *boxAutoscaling, *boxShowProjection, *boxMatrices, *boxScaleFonts, *boxResize;
00143 QComboBox *boxMajTicks, *boxMinTicks, *boxStyle, *boxCurveStyle, *boxSeparator, *boxLanguage, *boxDecimalSeparator;
00144 QSpinBox *boxMinutes, *boxLineWidth, *boxFrameWidth, *boxResolution, *boxMargin, *boxPrecision, *boxAppPrecision;
00145 QSpinBox *boxCurveLineWidth, *boxSymbolSize, *boxMinTicksLength, *boxMajTicksLength, *generatePointsBox;
00146 ColorButton *btnWorkspace, *btnPanels, *btnPanelsText;
00147 QListWidget * itemsList;
00148 QLabel *labelFrameWidth, *lblLanguage, *lblWorkspace, *lblPanels, *lblPageHeader;
00149 QLabel *lblPanelsText, *lblFonts, *lblStyle, *lblDecimalSeparator, *lblAppPrecision;
00150 QGroupBox *groupBoxConfirm;
00151 QGroupBox *groupBoxTableFonts, *groupBoxTableCol;
00152 QLabel *lblSeparator, *lblTableBackground, *lblTextColor, *lblHeaderColor;
00153 QLabel *lblSymbSize, *lblAxesLineWidth, *lblCurveStyle, *lblResolution, *lblPrecision;
00154 QGroupBox *groupBox3DFonts, *groupBox3DCol;
00155 QLabel *lblMargin, *lblMajTicks, *lblMajTicksLength, *lblLineWidth, *lblMinTicks, *lblMinTicksLength, *lblPoints, *lblPeaksColor;
00156 QGroupBox *groupBoxFittingCurve, *groupBoxFitParameters;
00157 QRadioButton *samePointsBtn, *generatePointsBtn;
00158 QGroupBox *groupBoxMultiPeak;
00159 ColorBox *boxPeaksColor;
00160 QLabel *lblScriptingLanguage;
00161 QComboBox *boxScriptingLanguage;
00162 QCheckBox *boxAntialiasing, *boxAutoscale3DPlots, *boxTableComments;
00163 };
00164
00165 #endif // CONFIGDIALOG_H