ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
SaveDracoFileDlg.cpp
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #include <SaveDracoFileDlg.h>
9 
10 // Qt
11 #include <QDialogButtonBox>
12 #include <QPushButton>
13 #include <QSettings>
14 
15 static const int DefaultCoordsQuant = 11;
16 static const int DefaultNormQuant = 8;
17 static const int DefaultSFQuant = 8;
18 
19 SaveDracoFileDlg::SaveDracoFileDlg(QWidget* parent /*=nullptr*/)
20  : QDialog(parent) {
21  setupUi(this);
22 
24 
25  connect(buttonBox, &QDialogButtonBox::accepted, this,
27  connect(buttonBox->button(QDialogButtonBox::Reset), &QPushButton::clicked,
29 }
30 
32  QSettings settings;
33  settings.beginGroup("DracoSaveDialog");
34 
35  // read parameters
36  int coordQuantization =
37  settings.value("coordQuantization", DefaultCoordsQuant).toInt();
38  int normQuantization =
39  settings.value("normalQuantization", DefaultNormQuant).toInt();
40  int sfQuantization =
41  settings.value("sfQuantization", DefaultSFQuant).toInt();
42 
43  // apply parameters
44  coordsQuantSpinBox->setValue(coordQuantization);
45  normQuantSpinBox->setValue(normQuantization);
46  sfQuantSpinBox->setValue(sfQuantization);
47 
48  settings.endGroup();
49 }
50 
52  QSettings settings;
53  settings.beginGroup("DracoSaveDialog");
54 
55  // write parameters
56  settings.setValue("coordQuantization", coordsQuantSpinBox->value());
57  settings.setValue("normalQuantization", normQuantSpinBox->value());
58  settings.setValue("sfQuantization", sfQuantSpinBox->value());
59 
60  settings.endGroup();
61 
62  accept();
63 }
64 
66  coordsQuantSpinBox->setValue(DefaultCoordsQuant);
67  normQuantSpinBox->setValue(DefaultNormQuant);
68  sfQuantSpinBox->setValue(DefaultSFQuant);
69 }
void Reset(void)
static const int DefaultNormQuant
static const int DefaultCoordsQuant
static const int DefaultSFQuant
SaveDracoFileDlg(QWidget *parent=nullptr)
Default constructor.
void initFromPersistentSettings()
Inits dialog state from persistent settings.
void reset()
Resets default values.
void saveToPersistentSettings()
Saves dialog state from persistent settings.