void K3PasswordEdit::keyPressEvent(QKeyEvent *e) { switch (e->key()) { case Qt::Key_Return: case Qt::Key_Enter: case Qt::Key_Escape: e->ignore(); break; case Qt::Key_Backspace: case Qt::Key_Delete: case 0x7f: // Delete if (e->modifiers() & (Qt::ControlModifier | Qt::AltModifier)) e->ignore(); else if (m_Length) { m_Password[--m_Length] = '\000'; showPass(); } break; default: const unsigned char ke = e->text().toLocal8Bit()[0]; if (ke >= 32) { insert(e->text()); } else e->ignore(); break; } }
void ProfileAddGui::setNickPass(const QString &n, const QString &p) { ui.radioButton_registered_nick->setChecked(true); showPass(); ui.lineEdit_nick->setText(n); ui.lineEdit_password->setText(p); }
void ProfileAddGui::createSignals() { connect(ui.radioButton_unregistered_nick, SIGNAL(clicked()), this, SLOT(hidePass())); connect(ui.radioButton_registered_nick, SIGNAL(clicked()), this, SLOT(showPass())); connect(ui.pushButton_register_nick, SIGNAL(clicked()), this, SLOT(buttonRegisterNick())); connect(ui.buttonBox, SIGNAL(accepted()), this, SLOT(buttonOk())); connect(ui.buttonBox, SIGNAL(rejected()), this, SLOT(close())); }
void K3PasswordEdit::setMaxPasswordLength(int newLength) { if (newLength >= PassLen) newLength = PassLen - 1; // belt and braces if (newLength < 0) newLength = 0; int* t = ourMaxLength(this); *t = newLength; while (m_Length > newLength) { m_Password[m_Length] = '\000'; --m_Length; } showPass(); }
void K3PasswordEdit::insert(const QString &txt) { const QByteArray localTxt = txt.toLocal8Bit(); const unsigned int lim = localTxt.length(); const int m_MaxLength = maxPasswordLength(); for(unsigned int i=0; i < lim; ++i) { const unsigned char ke = localTxt[i]; if (m_Length < m_MaxLength) { m_Password[m_Length] = ke; m_Password[++m_Length] = '\000'; } } showPass(); }
bool K3PasswordEdit::event(QEvent *e) { switch(e->type()) { case QEvent::MouseButtonPress: case QEvent::MouseButtonRelease: case QEvent::MouseButtonDblClick: case QEvent::MouseMove: return true; //Ignore case QEvent::InputMethod: { QInputMethodEvent* const ie = (QInputMethodEvent*) e; if (!ie->commitString().isNull()) insert( ie->commitString() ); return true; } case QEvent::ShortcutOverride: { QKeyEvent* const k = (QKeyEvent*) e; switch (k->key()) { case Qt::Key_U: if (k->modifiers() & Qt::ControlModifier) { m_Length = 0; m_Password[m_Length] = '\000'; showPass(); } } return true; // stop bubbling } default: // Do nothing break; } return QLineEdit::event(e); }