QtiPlot
0.9.8.2
Main Page
Related Pages
Classes
Files
File List
File Members
qtiplot
src
core
ConfigDialog.h
Go to the documentation of this file.
1
/***************************************************************************
2
File : ConfigDialog.h
3
Project : QtiPlot
4
--------------------------------------------------------------------
5
Copyright : (C) 2006 by Ion Vasilief
6
Email (use @ for *) : ion_vasilief*yahoo.fr
7
Description : Preferences dialog
8
9
***************************************************************************/
10
11
/***************************************************************************
12
* *
13
* This program is free software; you can redistribute it and/or modify *
14
* it under the terms of the GNU General Public License as published by *
15
* the Free Software Foundation; either version 2 of the License, or *
16
* (at your option) any later version. *
17
* *
18
* This program is distributed in the hope that it will be useful, *
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
21
* GNU General Public License for more details. *
22
* *
23
* You should have received a copy of the GNU General Public License *
24
* along with this program; if not, write to the Free Software *
25
* Foundation, Inc., 51 Franklin Street, Fifth Floor, *
26
* Boston, MA 02110-1301 USA *
27
* *
28
***************************************************************************/
29
#ifndef ConfigDialog_H
30
#define ConfigDialog_H
31
32
#include <
FrameWidget.h
>
33
34
#include <QDialog>
35
#include <QCheckBox>
36
37
class
QNetworkProxy;
38
class
QLineEdit;
39
class
QGroupBox;
40
class
QGridLayout;
41
class
QPushButton;
42
class
QTabWidget;
43
class
QStackedWidget;
44
class
QWidget;
45
class
QComboBox;
46
class
QSpinBox;
47
class
QLabel;
48
class
QRadioButton;
49
class
QListWidget;
50
class
QSlider;
51
class
ColorButton
;
52
class
DoubleSpinBox
;
53
class
QFontComboBox;
54
class
ColorMapEditor
;
55
class
QTableWidget;
56
class
SymbolBox
;
57
class
PatternBox
;
58
class
PenStyleBox
;
59
class
ApplicationWindow
;
60
62
class
ConfigDialog
:
public
QDialog
63
{
64
Q_OBJECT
65
66
public
:
68
72
ConfigDialog
( QWidget* parent, Qt::WFlags fl = 0 );
73
void
setColumnSeparator
(
const
QString& sep);
74
75
private
slots:
76
virtual
void
languageChange
();
77
void
insertLanguagesList
();
78
79
void
accept
();
80
void
apply
();
81
void
resetDefaultSettings
();
82
83
void
setCurrentPage
(
int
index);
84
85
//table fonts
86
void
pickTextFont
();
87
void
pickHeaderFont
();
88
89
//graph fonts
90
void
pickAxesFont
();
91
void
pickNumbersFont
();
92
void
pickLegendFont
();
93
void
pickTitleFont
();
94
95
void
showFrameWidth
(
bool
ok);
96
97
//application
98
void
pickApplicationFont
();
99
100
//2D curves
101
int
curveStyle
();
102
void
pick3DTitleFont
();
103
void
pick3DNumbersFont
();
104
void
pick3DAxesFont
();
105
106
//Fitting
107
void
showPointsBox
(
bool
);
108
109
void
switchToLanguage
(
int
param);
110
111
void
chooseTranslationsFolder
();
112
void
chooseHelpFolder
();
113
#ifdef SCRIPTING_PYTHON
114
void
choosePythonConfigFolder();
115
void
chooseStartupScriptsFolder();
116
void
showStartupScriptsFolder(
const
QString &);
117
#endif
118
void
rehighlight
();
119
void
customizeNotes
();
120
void
chooseTexCompiler
();
121
bool
validateTexCompiler
();
122
123
void
chooseOffice
();
124
bool
validateOffice
();
125
void
chooseJava
();
126
bool
validateJava
();
127
void
chooseJODConverter
();
128
bool
validateJODConverter
();
129
130
void
enableMajorGrids
(
bool
on);
131
void
enableMinorGrids
(
bool
on);
132
133
void
updateCanvasSize
(
int
unit);
134
void
adjustCanvasHeight
(
double
width);
135
void
adjustCanvasWidth
(
double
height);
136
137
void
moveColor
(
bool
up =
true
);
138
void
moveColorDown
();
139
void
removeColor
();
140
void
newColor
();
141
void
loadDefaultColors
();
142
void
showColorDialog
(
int
,
int
);
143
void
changeColorName
(
int
,
int
);
144
void
updateSymbolsList
(
int
);
145
void
setCurrentSymbol
(
SymbolBox
*);
146
void
loadDefaultSymbols
();
147
void
moveSymbol
(
bool
up =
true
);
148
void
moveSymbolDown
(){
moveSymbol
(
false
);};
149
void
showGridOptions
(
int
axis);
150
void
updateGrid
();
151
void
majorGridEnabled
(
bool
);
152
void
minorGridEnabled
(
bool
);
153
void
enableCurveAntialiasingSizeBox
(
bool
);
154
155
private
:
156
void
setApplication
(
ApplicationWindow
*app);
157
void
setSymbolsList
(
const
QList<int>& symbList);
158
void
setColorsList
(
const
QList<QColor>& colList,
const
QStringList& colNames);
159
void
initPlotsPage
();
160
void
initAppPage
();
161
void
initCurvesPage
();
162
void
initAxesPage
();
163
void
initGridPage
();
164
void
initPlots3DPage
();
165
void
initTablesPage
();
166
void
initConfirmationsPage
();
167
void
initFileLocationsPage
();
168
void
initFittingPage
();
169
void
initNotesPage
();
170
void
initProxyPage
();
171
void
initLayerGeometryPage
();
172
void
initLayerSpeedPage
();
174
void
updateMenuList
();
175
bool
validFolderPath
(
const
QString& path);
176
QNetworkProxy
setApplicationCustomProxy
();
177
int
convertToPixels
(
double
w,
FrameWidget::Unit
unit,
int
dimension);
178
double
convertFromPixels
(
int
w,
FrameWidget::Unit
unit,
int
dimension);
179
180
QFont
textFont
,
headerFont
,
axesFont
,
numbersFont
,
legendFont
,
titleFont
,
appFont
;
181
QFont
d_3D_title_font
,
d_3D_numbers_font
,
d_3D_axes_font
;
182
183
QCheckBox *
boxScaleLayersOnPrint
, *
boxPrintCropmarks
, *
linearFit2PointsBox
;
184
QTabWidget *
plotsTabWidget
, *
appTabWidget
;
185
ColorButton
*
btnBackground3D
, *
btnMesh
, *
btnAxes
, *
btnLabels
, *
btnNumbers
;
186
QGroupBox *
colorMapBox
;
187
ColorMapEditor
*
colorMapEditor
;
188
QPushButton *
btnTitleFnt
, *
btnLabelsFnt
, *
btnNumFnt
;
189
ColorButton
*
buttonBackground
, *
buttonText
, *
buttonHeader
;
190
QPushButton *
buttonOk
, *
buttonCancel
, *
buttonApply
;
191
QPushButton*
buttonTextFont
, *
buttonHeaderFont
;
192
QStackedWidget *
generalDialog
;
193
QWidget *
appColors
, *
tables
, *
plotOptions
, *
plotTicks
, *
plotFonts
, *
confirm
, *
plotPrint
;
194
QWidget *
application
, *
curves
, *
axesPage
, *
plots3D
, *
fitPage
, *
numericFormatPage
, *
notesPage
, *
plotGeometryPage
, *
plotSpeedPage
;
195
QPushButton*
buttonAxesFont
, *
buttonNumbersFont
, *
buttonLegendFont
, *
buttonTitleFont
, *
fontsBtn
;
196
QCheckBox *
boxSearchUpdates
, *
boxOrthogonal
, *
logBox
, *
plotLabelBox
, *
scaleErrorsBox
;
197
QCheckBox *
boxTitle
, *
boxFrame
, *
boxPlots3D
, *
boxPlots2D
, *
boxTables
, *
boxNotes
, *
boxFolders
;
198
QCheckBox *
boxSave
, *
boxBackbones
, *
boxShowLegend
, *
boxSmoothMesh
;
199
QCheckBox *
boxAutoscaling
, *
boxMatrices
, *
boxScaleFonts
, *
boxResize
;
200
QComboBox *
boxMajTicks
, *
boxMinTicks
, *
boxStyle
, *
boxCurveStyle
, *
boxSeparator
, *
boxLanguage
, *
boxDecimalSeparator
;
201
QComboBox *
boxClipboardLocale
, *
boxProjection
;
202
QLabel *
lblClipboardSeparator
, *
lblFloorStyle
;
203
QSpinBox *
boxMinutes
, *
boxLineWidth
, *
boxFrameWidth
, *
boxResolution
, *
boxMargin
, *
boxPrecision
, *
boxAppPrecision
;
204
QSpinBox *
boxSymbolSize
, *
boxMinTicksLength
, *
boxMajTicksLength
, *
generatePointsBox
;
205
DoubleSpinBox
*
boxCurveLineWidth
;
206
ColorButton
*
btnWorkspace
, *
btnPanels
, *
btnPanelsText
;
207
QListWidget *
itemsList
;
208
QLabel *
labelFrameWidth
, *
lblLanguage
, *
lblWorkspace
, *
lblPanels
, *
lblPageHeader
;
209
QLabel *
lblPanelsText
, *
lblFonts
, *
lblStyle
, *
lblDecimalSeparator
, *
lblAppPrecision
;
210
QGroupBox *
groupBoxConfirm
;
211
QGroupBox *
groupBoxTableFonts
, *
groupBoxTableCol
;
212
QLabel *
lblSeparator
, *
lblTableBackground
, *
lblTextColor
, *
lblHeaderColor
;
213
QLabel *
lblSymbSize
, *
lblAxesLineWidth
, *
lblCurveStyle
, *
lblResolution
, *
lblPrecision
;
214
QGroupBox *
groupBox3DFonts
, *
groupBox3DCol
;
215
QLabel *
lblMargin
, *
lblMajTicks
, *
lblMajTicksLength
, *
lblLineWidth
, *
lblMinTicks
, *
lblMinTicksLength
, *
lblPoints
, *
lblPeaksColor
;
216
QGroupBox *
groupBoxFittingCurve
, *
groupBoxFitParameters
;
217
QRadioButton *
samePointsBtn
, *
generatePointsBtn
;
218
QGroupBox *
groupBoxMultiPeak
;
219
ColorButton
*
boxPeaksColor
;
220
QLabel *
lblScriptingLanguage
, *
lblInitWindow
;
221
QComboBox *
boxScriptingLanguage
, *
boxInitWindow
;
222
QCheckBox *
boxAutoscale3DPlots
, *
boxTableComments
, *
boxThousandsSeparator
;
223
QCheckBox *
boxPromptRenameTables
, *
boxBackupProject
, *
boxLabelsEditing
, *
boxEmptyCellGap
;
224
QWidget *
fileLocationsPage
;
225
QLabel *
lblTranslationsPath
, *
lblHelpPath
, *
lblUndoStackSize
, *
lblEndOfLine
;
226
QLineEdit *
translationsPathLine
, *
helpPathLine
;
227
QSpinBox *
undoStackSizeBox
;
228
QComboBox *
boxEndLine
;
229
#ifdef SCRIPTING_PYTHON
230
QLabel *lblPythonConfigDir;
231
QLineEdit *pythonConfigDirLine;
232
QPushButton *browsePythonScriptsBtn;
233
QLabel *lblPythonScriptsDir;
234
QLineEdit *pythonScriptsDirLine;
235
#endif
236
QCheckBox *
boxUpdateTableValues
, *
boxTablePasteDialog
;
237
QGroupBox *
groupBackgroundOptions
;
238
QLabel *
labelGraphFrameColor
, *
labelGraphFrameWidth
;
239
QLabel *
labelGraphBkgColor
, *
labelGraphCanvasColor
;
240
QLabel *
labelGraphBkgOpacity
, *
labelGraphCanvasOpacity
;
241
ColorButton
*
boxBackgroundColor
, *
boxCanvasColor
, *
boxBorderColor
;
242
QSpinBox *
boxBackgroundTransparency
, *
boxCanvasTransparency
, *
boxBorderWidth
, *
boxTabLength
;
243
QSlider *
bkgOpacitySlider
, *
canvasOpacitySlider
, *
curveOpacitySlider
;
244
QCheckBox *
completionBox
, *
lineNumbersBox
;
245
QLabel *
labelTabLength
, *
labelNotesFont
;
246
QFontComboBox *
boxFontFamily
;
247
QSpinBox *
boxFontSize
;
248
QPushButton *
buttonItalicFont
, *
buttonBoldFont
;
249
QLabel *
labelGraphAxesLabelsDist
, *
labelTickLabelsDist
;
250
QSpinBox *
boxAxesLabelsDist
, *
boxTickLabelsDist
;
251
QLabel *
xBottomLabel
, *
xTopLabel
, *
yLeftLabel
, *
yRightLabel
, *
enableAxisLabel
, *
showNumbersLabel
;
252
QCheckBox *
boxEnableAxis
, *
boxShowAxisLabels
;
253
QGroupBox *
enabledAxesGroupBox
;
254
QGridLayout *
enabledAxesGrid
;
255
256
QWidget *
proxyPage
;
257
QGroupBox *
proxyGroupBox
;
258
QLineEdit *
proxyHostLine
, *
proxyUserNameLine
, *
proxyPasswordLine
;
259
QSpinBox *
proxyPortBox
;
260
QLabel *
proxyHostLabel
, *
proxyPortLabel
, *
proxyUserLabel
, *
proxyPasswordLabel
;
261
262
QLineEdit *
texCompilerPathBox
;
263
QPushButton *
browseTexCompilerBtn
;
264
QLabel *
texCompilerLabel
;
265
266
QComboBox *
legendDisplayBox
, *
attachToBox
;
267
QLabel *
legendDisplayLabel
, *
attachToLabel
;
268
269
DoubleSpinBox
*
boxMajorGridWidth
, *
boxMinorGridWidth
;
270
QComboBox *
boxMajorGridStyle
, *
boxMinorGridStyle
;
271
QCheckBox *
boxMajorGrids
, *
boxMinorGrids
;
272
ColorButton
*
btnGrid
, *
btnGridMinor
;
273
QLabel *
label3DGridsColor
, *
label3DGridsWidth
, *
label3DGridsStyle
;
274
QGroupBox *
groupBox3DGrids
;
275
276
QGroupBox *
groupSyntaxHighlighter
;
277
ColorButton
*
buttonCommentColor
, *
buttonNumericColor
, *
buttonQuotationColor
;
278
ColorButton
*
buttonKeywordColor
, *
buttonFunctionColor
, *
buttonClassColor
;
279
QLabel *
buttonCommentLabel
, *
buttonNumericLabel
, *
buttonQuotationLabel
;
280
QLabel *
buttonKeywordLabel
, *
buttonFunctionLabel
, *
buttonClassLabel
;
281
282
QCheckBox *
boxMuParserCLocale
, *
boxConfirmOverwrite
, *
boxConfirmModifyDataPoints
;
283
DoubleSpinBox
*
boxCanvasHeight
, *
boxCanvasWidth
;
284
QComboBox *
unitBox
;
285
QLabel *
unitBoxLabel
, *
canvasWidthLabel
, *
canvasHeightLabel
;
286
QCheckBox *
keepRatioBox
, *
boxMultiPeakMsgs
;
287
288
double
aspect_ratio
;
289
290
QGroupBox *
groupIndexedColors
, *
symbolGroupBox
, *
groupIndexedSymbols
, *
fillCurvesGroupBox
;
291
QTableWidget *
colorsList
, *
symbolsList
;
292
QPushButton *
btnColorUp
, *
btnColorDown
, *
btnRemoveColor
, *
btnNewColor
, *
btnLoadDefaultColors
;
293
QList<QColor>
d_indexed_colors
;
294
QStringList
d_indexed_color_names
;
295
QCheckBox *
fillSymbolsBox
;
296
DoubleSpinBox
*
symbolEdgeBox
;
297
QLabel *
lblSymbEdge
, *
lblSymbBox
;
298
SymbolBox
*
symbolBox
;
299
QList<int>
d_indexed_symbols
;
300
QPushButton *
btnLoadDefaultSymbols
, *
btnSymbolUp
, *
btnSymbolDown
;
301
PatternBox
*
patternBox
;
302
QLabel *
lblPattern
, *
lblCurveAlpha
, *
lblLineStyle
;
303
QSpinBox *
curveAlphaBox
;
304
PenStyleBox
*
lineStyleBox
;
305
QGroupBox *
curvesGroupBox
;
306
QLabel *
lblAxisLabeling
;
307
QComboBox *
axisLabelingBox
;
308
QCheckBox *
boxSynchronizeScales
;
309
310
QWidget *
gridPage
;
311
QCheckBox *
boxMinorGrid
, *
boxMajorGrid
;
312
ColorButton
*
boxColorMinor
, *
boxColorMajor
;
313
PenStyleBox
*
boxTypeMinor
, *
boxTypeMajor
;
314
DoubleSpinBox
*
boxWidthMinor
, *
boxWidthMajor
;
315
QComboBox *
boxGridYAxis
, *
boxGridXAxis
;
316
QCheckBox *
boxAntialiseGrid
;
317
QListWidget *
axesGridList
;
318
QLabel *
gridLineColorLbl
, *
gridLineWidthLbl
, *
gridLineTypeLbl
, *
gridAxesLbl
;
319
QGroupBox *
antialiasingGroupBox
;
320
QCheckBox *
disableAntialiasingBox
, *
openLastProjectBox
;
321
QSpinBox *
curveSizeBox
;
322
QPushButton *
btnDefaultSettings
;
323
324
QLineEdit *
sofficePathBox
;
325
QPushButton *
browseOfficeBtn
;
326
QLabel *
officeLabel
;
327
328
QLineEdit *
javaPathBox
;
329
QPushButton *
browseJavaBtn
;
330
QLabel *
javaLabel
;
331
332
QLineEdit *
jodconverterPathBox
;
333
QPushButton *
browseJODConverterBtn
;
334
QLabel *
jodconverterLabel
;
335
336
QLabel *
excelImportMethodLabel
;
337
QComboBox *
excelImportMethod
;
338
};
339
340
#endif // CONFIGDIALOG_H
Generated on Tue Dec 10 2013 17:29:14 for QtiPlot by
1.8.4