int cmp_no_case_c(const char *string1, const char *string2) { int iflag = 1; while (*string1 != '\0' || *string2 != '\0') { if (toCapital(*string1) != toCapital(*string2)) { iflag = 0; break; } else {string1++; string2++;} }; return iflag; }
void MyWidget::decryptBtnClicked(){ if(cipherCombo->currentIndex() == 0){ Caesar temp(noSpace(inputLine->text()).toStdString()); temp.getkey(keyLine->text().toInt()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); }else if(cipherCombo->currentIndex() == 1){ //need to be modify Monoalphabetic temp(noSpace(inputLine->text()).toStdString()); temp.get_key(noSpace(keyLine->text()).toStdString()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); }else if(cipherCombo->currentIndex() == 2){ Playfair temp(noSpace(inputLine->text()).toStdString()); temp.get_key(keyLine->text().toStdString()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); }else if(cipherCombo->currentIndex() == 3){ Autokey temp(noSpace(inputLine->text()).toStdString()); temp.get_key(keyLine->text().toStdString()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); }else if(cipherCombo->currentIndex() == 4){ Transposition temp(noSpace(inputLine->text()).toStdString()); QStringList sList = keyLine->text().split(" "); int *ptr = new int[sList.length()]; for(int i = 0; i < sList.length(); i++){ ptr[i] = sList.at(i).toInt(); } temp.get_key(ptr,sList.length()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); }else if(cipherCombo->currentIndex() == 5){ Product temp(noSpace(inputLine->text()).toStdString()); QStringList sList = keyLine->text().split(" "); int *ptr = new int[sList.length()]; for(int i = 0; i < sList.length(); i++){ ptr[i] = sList.at(i).toInt(); } temp.get_key(ptr,sList.length()); outputLine->setText(toCapital(QString::fromStdString(temp.decrypt()))); } }