diff --git a/QtMeshViewer/Form Files/SettingsWindow.ui b/QtMeshViewer/Form Files/SettingsWindow.ui
index 454d889..a916145 100644
--- a/QtMeshViewer/Form Files/SettingsWindow.ui
+++ b/QtMeshViewer/Form Files/SettingsWindow.ui
@@ -7,7 +7,7 @@
0
0
400
- 358
+ 600
@@ -359,6 +359,20 @@
+ -
+
+
+ Headlight
+
+
+
+ -
+
+
+ Point light
+
+
+
-
@@ -466,20 +480,6 @@
- -
-
-
- Headlight
-
-
-
- -
-
-
- Point light
-
-
-
@@ -489,6 +489,16 @@
General
+ -
+
+
+ -
+
+
+ Directory Drop Down List:
+
+
+
-
@@ -532,22 +542,23 @@
+ -
+
+
+ +
+
+
+
+ -
+
+
+ --
+
+
+
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
diff --git a/QtMeshViewer/Header/SettingsManager.h b/QtMeshViewer/Header/SettingsManager.h
index 66af75a..e972b2d 100644
--- a/QtMeshViewer/Header/SettingsManager.h
+++ b/QtMeshViewer/Header/SettingsManager.h
@@ -29,7 +29,7 @@ private:
bool m_bfCulling = false;
bool m_light = false;
- QString listOfDirs;
+ QString listOfDirs;
int m_lightType = 1; // 1 = direct, 2 = point
QVector3D m_lightColor = { 255,255,255 };
float m_attenuation = 0.0f;
@@ -48,7 +48,9 @@ public:
bool isBfCulling() const;
bool isLight() const;
- QString getListOfDirs();
+ QString getListOfDirs();
+ void setListOfDirs(QString);
+
int getLightType() const;
QVector3D getLightColor() const;
float getAttenuation() const;
diff --git a/QtMeshViewer/Header/SettingsWindow.h b/QtMeshViewer/Header/SettingsWindow.h
index 77c5e17..02f4f43 100644
--- a/QtMeshViewer/Header/SettingsWindow.h
+++ b/QtMeshViewer/Header/SettingsWindow.h
@@ -18,6 +18,9 @@ private:
void setupConnections();
+private:
+ QString dirList;
+
private slots:
void autoColorToggled();
void radioToggled();
@@ -25,6 +28,9 @@ private slots:
void backgroundColorOnChanged();
void lightColorChanged();
+ void on_addItem_clicked();
+ void on_removeItem_clicked();
+
signals:
void updateBGColorOff(QVector3D value);
void updateBGColorOn(QVector3D value);
diff --git a/QtMeshViewer/Source/SettingsManager.cpp b/QtMeshViewer/Source/SettingsManager.cpp
index 00b95c1..3be723f 100644
--- a/QtMeshViewer/Source/SettingsManager.cpp
+++ b/QtMeshViewer/Source/SettingsManager.cpp
@@ -35,19 +35,19 @@ void SettingsManager::readFromFile()
QList lines = stream.split('\n');
for (auto& it : lines)
- {
- if (it.startsWith(""))
- {
- QList values = it.right(it.size() - it.indexOf('>') - 1).split(';');
- for (int i = 0; i < values.size(); i++)
- {
- if (i == values.size() - 1)
- listOfDirs.append(values[i]);
- else
- listOfDirs.append(values[i] + ";");
- }
- }
- else if (it.startsWith(""))
+ {
+ if (it.startsWith(""))
+ {
+ QList values = it.right(it.size() - it.indexOf('>') - 1).split(';');
+ for (int i = 0; i < values.size(); i++)
+ {
+ if (i == values.size() - 1)
+ listOfDirs.append(values[i]);
+ else
+ listOfDirs.append(values[i] + ";");
+ }
+ }
+ else if (it.startsWith(""))
{
QList values = it.right(it.size() - it.indexOf('>') - 1).split(';');
@@ -118,7 +118,7 @@ void SettingsManager::writeToFile()
file.write(QString("%1\n").arg(m_lightType).toUtf8());
file.write(QString("%1\n").arg(m_attenuation).toUtf8());
file.write(QString("%1\n").arg(m_ambient).toUtf8());
- file.write(QString("%1\n").arg(listOfDirs).toUtf8());
+ file.write(QString("%1\n").arg(listOfDirs).toUtf8());
file.close();
}
@@ -127,9 +127,15 @@ void SettingsManager::writeToFile()
QString SettingsManager::getListOfDirs()
{
- return listOfDirs;
+ return listOfDirs;
}
+void SettingsManager::setListOfDirs(QString newDirSet)
+{
+ listOfDirs = newDirSet;
+}
+
+
QVector3D SettingsManager::getBgColorOn() const
{
return m_bgColorOn;
diff --git a/QtMeshViewer/Source/SettingsWindow.cpp b/QtMeshViewer/Source/SettingsWindow.cpp
index 78abb80..8e889f5 100644
--- a/QtMeshViewer/Source/SettingsWindow.cpp
+++ b/QtMeshViewer/Source/SettingsWindow.cpp
@@ -1,6 +1,6 @@
#include "..\Header\SettingsWindow.h"
#include "..\Header\SettingsManager.h"
-
+#include
/////////////////////////////////////////////////////////////////////////
// constructor/destructor
@@ -65,9 +65,11 @@ SettingsWindow::~SettingsWindow()
QString SettingsWindow::getDirList()
{
- return SettingsManager::getInstance()->getListOfDirs();
-}
+ dirList = SettingsManager::getInstance()->getListOfDirs();
+// ui->dirListView->
+ return dirList;
+}
void SettingsWindow::setupConnections()
{
@@ -187,3 +189,18 @@ void SettingsWindow::lightColorChanged()
ui->lightOn_B_S->setValue((int)(ui->light_B_S->value() / 50));
}
}
+
+void SettingsWindow::on_addItem_clicked()
+{
+ QString dirName = QFileDialog::getExistingDirectory(this, tr("Open Directory"), "/home",
+ QFileDialog::ShowDirsOnly |
+ QFileDialog::DontResolveSymlinks);
+// ui->dirListView-> selectionModel()->
+// ui->dirListView->model()->insertRow(dirName) ; //->insertRow(dirName);
+}
+
+void SettingsWindow::on_removeItem_clicked()
+{
+ ui->dirListView->selectionModel()->selectedIndexes();
+// ui->dirListView->model()->removeRow(ui->dirListView->selectionModel()->selectedIndexes());
+}