| 30 | class QWidget; |
| 31 | |
| 32 | LibraryEditArgDialog::LibraryEditArgDialog(QWidget *parent, const CppcheckLibraryData::Function::Arg &arg) : |
| 33 | QDialog(parent), |
| 34 | mUi(new Ui::LibraryEditArgDialog), |
| 35 | mMinSizes(arg.minsizes) |
| 36 | { |
| 37 | mUi->setupUi(this); |
| 38 | mUi->notbool->setChecked(arg.notbool); |
| 39 | mUi->notnull->setChecked(arg.notnull); |
| 40 | mUi->notuninit->setChecked(arg.notuninit); |
| 41 | mUi->strz->setChecked(arg.strz); |
| 42 | mUi->formatstr->setChecked(arg.formatstr); |
| 43 | mUi->valid->setText(arg.valid); |
| 44 | |
| 45 | mUi->minsize1type->setEnabled(true); |
| 46 | mUi->minsize1arg->setEnabled(arg.minsizes.count() >= 1); |
| 47 | mUi->minsize1arg2->setEnabled(arg.minsizes.count() >= 1 && arg.minsizes[0].type == "mul"); |
| 48 | mUi->minsize2type->setEnabled(arg.minsizes.count() >= 1); |
| 49 | mUi->minsize2arg->setEnabled(arg.minsizes.count() >= 2); |
| 50 | mUi->minsize2arg2->setEnabled(arg.minsizes.count() >= 2 && arg.minsizes[1].type == "mul"); |
| 51 | |
| 52 | QStringList items; |
| 53 | items << "None" << "argvalue" << "mul" << "sizeof" << "strlen"; |
| 54 | |
| 55 | mUi->minsize1type->clear(); |
| 56 | mUi->minsize1type->addItems(items); |
| 57 | if (arg.minsizes.count() >= 1) { |
| 58 | mUi->minsize1type->setCurrentIndex(items.indexOf(mMinSizes[0].type)); |
| 59 | mUi->minsize1arg->setValue(mMinSizes[0].arg.toInt()); |
| 60 | if (arg.minsizes[0].type == "mul") |
| 61 | mUi->minsize1arg2->setValue(mMinSizes[0].arg2.toInt()); |
| 62 | else |
| 63 | mUi->minsize1arg2->setValue(0); |
| 64 | } else { |
| 65 | mUi->minsize1type->setCurrentIndex(0); |
| 66 | mUi->minsize1arg->setValue(0); |
| 67 | mUi->minsize1arg2->setValue(0); |
| 68 | } |
| 69 | |
| 70 | mUi->minsize2type->clear(); |
| 71 | mUi->minsize2type->addItems(items); |
| 72 | if (arg.minsizes.count() >= 2) { |
| 73 | mUi->minsize2type->setCurrentIndex(items.indexOf(mMinSizes[1].type)); |
| 74 | mUi->minsize2arg->setValue(mMinSizes[1].arg.toInt()); |
| 75 | if (arg.minsizes[1].type == "mul") |
| 76 | mUi->minsize2arg2->setValue(mMinSizes[1].arg2.toInt()); |
| 77 | else |
| 78 | mUi->minsize2arg2->setValue(0); |
| 79 | } else { |
| 80 | mUi->minsize2type->setCurrentIndex(0); |
| 81 | mUi->minsize2arg->setValue(0); |
| 82 | mUi->minsize2arg2->setValue(0); |
| 83 | } |
| 84 | } |
| 85 | |
| 86 | LibraryEditArgDialog::~LibraryEditArgDialog() |
| 87 | { |
nothing calls this directly
no test coverage detected