removed unused or useless stuff,
renamed some functions for better description, repaired the SettingsManager usage, ToDo: Dropdown list is not updated, it needs a restart, display names for the directories instead of the path,
This commit is contained in:
@@ -20,12 +20,9 @@ SettingsWindow::SettingsWindow(QWidget * parent)
|
||||
SettingsManager* sm = SettingsManager::getInstance(this);
|
||||
|
||||
// set dirList for passing to Main and then fill settings manager dir list window
|
||||
dirList = sm->getListOfDirs();
|
||||
QStringList values;
|
||||
values = dirList.split(';');
|
||||
for (int i = 0; i < values.size(); i++) {
|
||||
ui->dirListWidget->insertItem(0,values[i]);
|
||||
}
|
||||
QStringList tmp_directories = sm->getListOfDirs();
|
||||
for (auto &it : tmp_directories)
|
||||
ui->dirListWidget->insertItem(0, it);
|
||||
|
||||
ui->lightOff_R_SB->setValue((int)(sm->getBgColorOff()[0]));
|
||||
ui->lightOff_G_SB->setValue((int)(sm->getBgColorOff()[1]));
|
||||
@@ -60,7 +57,7 @@ SettingsWindow::SettingsWindow(QWidget * parent)
|
||||
connect(this, &SettingsWindow::sendBackfaceCulling, sm, &SettingsManager::setBfCulling);
|
||||
connect(ui->checkAutoColor, &QCheckBox::stateChanged, sm, &SettingsManager::setAutoColor);
|
||||
connect(this, &SettingsWindow::changeLightType, sm, &SettingsManager::setLightType);
|
||||
|
||||
connect(this, &SettingsWindow::pathChanged, sm, &SettingsManager::updateDirectories);
|
||||
}
|
||||
|
||||
SettingsWindow::~SettingsWindow()
|
||||
@@ -72,11 +69,6 @@ SettingsWindow::~SettingsWindow()
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
// functions
|
||||
|
||||
QString SettingsWindow::getDirList()
|
||||
{
|
||||
return dirList;
|
||||
}
|
||||
|
||||
void SettingsWindow::setupConnections()
|
||||
{
|
||||
// light off
|
||||
@@ -201,23 +193,16 @@ void SettingsWindow::on_addItem_clicked()
|
||||
QString dirName = QFileDialog::getExistingDirectory(this, tr("Open Directory"), "/home",
|
||||
QFileDialog::ShowDirsOnly |
|
||||
QFileDialog::DontResolveSymlinks);
|
||||
ui->dirListWidget->insertItem(0,dirName);
|
||||
updateDirList();
|
||||
if (!SettingsManager::getInstance()->getListOfDirs().contains(dirName))
|
||||
{
|
||||
ui->dirListWidget->insertItem(0, dirName);
|
||||
emit pathChanged(dirName);
|
||||
}
|
||||
}
|
||||
|
||||
void SettingsWindow::on_removeItem_clicked()
|
||||
{
|
||||
qDeleteAll(ui->dirListWidget->selectedItems());
|
||||
updateDirList();
|
||||
}
|
||||
|
||||
void SettingsWindow::updateDirList()
|
||||
{
|
||||
int size = ui->dirListWidget->count();
|
||||
QString dirs;
|
||||
|
||||
for (int i = 0; i < size; i++)
|
||||
dirs += ui->dirListWidget->item(i)->text() + ";";
|
||||
|
||||
SettingsManager::getInstance()->setListOfDirs(dirs);
|
||||
QListWidgetItem* tmp = ui->dirListWidget->takeItem(ui->dirListWidget->currentRow());
|
||||
emit pathChanged(tmp->text());
|
||||
delete tmp;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user