| 333 | } |
| 334 | |
| 335 | void ModListViewActions::exportModListCSV() const |
| 336 | { |
| 337 | QDialog selection(m_parent); |
| 338 | QGridLayout* grid = new QGridLayout; |
| 339 | selection.setWindowTitle(tr("Export to csv")); |
| 340 | |
| 341 | QLabel* csvDescription = new QLabel(); |
| 342 | csvDescription->setText( |
| 343 | tr("CSV (Comma Separated Values) is a format that can be imported in programs " |
| 344 | "like Excel to create a spreadsheet.\nYou can also use online editors and " |
| 345 | "converters instead.")); |
| 346 | grid->addWidget(csvDescription); |
| 347 | |
| 348 | QGroupBox* groupBoxRows = new QGroupBox(tr("Select what mods you want export:")); |
| 349 | QRadioButton* all = new QRadioButton(tr("All installed mods")); |
| 350 | QRadioButton* active = |
| 351 | new QRadioButton(tr("Only active (checked) mods from your current profile")); |
| 352 | QRadioButton* visible = |
| 353 | new QRadioButton(tr("All currently visible mods in the mod list")); |
| 354 | |
| 355 | QVBoxLayout* vbox = new QVBoxLayout; |
| 356 | vbox->addWidget(all); |
| 357 | vbox->addWidget(active); |
| 358 | vbox->addWidget(visible); |
| 359 | vbox->addStretch(1); |
| 360 | groupBoxRows->setLayout(vbox); |
| 361 | |
| 362 | grid->addWidget(groupBoxRows); |
| 363 | |
| 364 | QButtonGroup* buttonGroupRows = new QButtonGroup(); |
| 365 | buttonGroupRows->addButton(all, 0); |
| 366 | buttonGroupRows->addButton(active, 1); |
| 367 | buttonGroupRows->addButton(visible, 2); |
| 368 | buttonGroupRows->button(0)->setChecked(true); |
| 369 | |
| 370 | QGroupBox* groupBoxColumns = new QGroupBox(tr("Choose what Columns to export:")); |
| 371 | groupBoxColumns->setFlat(true); |
| 372 | |
| 373 | QCheckBox* mod_Priority = new QCheckBox(tr("Mod_Priority")); |
| 374 | mod_Priority->setChecked(true); |
| 375 | QCheckBox* mod_Name = new QCheckBox(tr("Mod_Name")); |
| 376 | mod_Name->setChecked(true); |
| 377 | QCheckBox* mod_Note = new QCheckBox(tr("Notes_column")); |
| 378 | QCheckBox* mod_Status = new QCheckBox(tr("Mod_Status")); |
| 379 | mod_Status->setChecked(true); |
| 380 | QCheckBox* primary_Category = new QCheckBox(tr("Primary_Category")); |
| 381 | QCheckBox* nexus_ID = new QCheckBox(tr("Nexus_ID")); |
| 382 | QCheckBox* mod_Nexus_URL = new QCheckBox(tr("Mod_Nexus_URL")); |
| 383 | QCheckBox* mod_Version = new QCheckBox(tr("Mod_Version")); |
| 384 | QCheckBox* install_Date = new QCheckBox(tr("Install_Date")); |
| 385 | QCheckBox* download_File_Name = new QCheckBox(tr("Download_File_Name")); |
| 386 | |
| 387 | QVBoxLayout* vbox1 = new QVBoxLayout; |
| 388 | vbox1->addWidget(mod_Priority); |
| 389 | vbox1->addWidget(mod_Name); |
| 390 | vbox1->addWidget(mod_Status); |
| 391 | vbox1->addWidget(mod_Note); |
| 392 | vbox1->addWidget(primary_Category); |
no test coverage detected