MCPcopy Create free account
hub / github.com/ModOrganizer2/modorganizer / commitChanges

Method commitChanges

src/categoriesdialog.cpp:144–177  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

142}
143
144void CategoriesDialog::commitChanges()
145{
146 CategoryFactory& categories = CategoryFactory::instance();
147 categories.reset();
148
149 for (int i = 0; i < ui->categoriesTable->rowCount(); ++i) {
150 int index = ui->categoriesTable->verticalHeader()->logicalIndex(i);
151 QVariantList nexusData;
152 if (ui->categoriesTable->item(index, 3) != nullptr)
153 nexusData = ui->categoriesTable->item(index, 3)->data(Qt::UserRole).toList();
154 std::vector<CategoryFactory::NexusCategory> nexusCats;
155 for (auto nexusCat : nexusData) {
156 nexusCats.push_back(CategoryFactory::NexusCategory(
157 nexusCat.toList()[0].toString(), nexusCat.toList()[1].toInt()));
158 }
159
160 categories.addCategory(ui->categoriesTable->item(index, 0)->text().toInt(),
161 ui->categoriesTable->item(index, 1)->text(), nexusCats,
162 ui->categoriesTable->item(index, 2)->text().toInt());
163 }
164
165 categories.setParents();
166
167 std::vector<CategoryFactory::NexusCategory> nexusCats;
168 for (int i = 0; i < ui->nexusCategoryList->count(); ++i) {
169 nexusCats.push_back(CategoryFactory::NexusCategory(
170 ui->nexusCategoryList->item(i)->data(Qt::DisplayRole).toString(),
171 ui->nexusCategoryList->item(i)->data(Qt::UserRole).toInt()));
172 }
173
174 categories.setNexusCategories(nexusCats);
175
176 categories.saveCategories();
177}
178
179void CategoriesDialog::refreshIDs()
180{

Callers 3

onEditCategoriesMethod · 0.45
doInstallMethod · 0.45
editCategoriesMethod · 0.45

Calls 10

NexusCategoryClass · 0.85
setParentsMethod · 0.80
countMethod · 0.80
setNexusCategoriesMethod · 0.80
saveCategoriesMethod · 0.80
resetMethod · 0.45
rowCountMethod · 0.45
dataMethod · 0.45
toStringMethod · 0.45
addCategoryMethod · 0.45

Tested by

no test coverage detected