Пример #1
0
bool
KGpgEncrypt::nextLine(const QString &line)
{
    //qDebug() << "KGpgEncrypt::nextLine called";
    const QList<QUrl> &inputFiles = getInputFiles();

	if (line.startsWith(QLatin1String("[GNUPG:] MISSING_PASSPHRASE"))) {
		setSuccess(KGpgTransaction::TS_BAD_PASSPHRASE);
		return true;
	}

	if (!inputFiles.isEmpty()) {
		static const QString encStart = QLatin1String("[GNUPG:] FILE_START 2 ");
		static const QString encDone = QLatin1String("[GNUPG:] FILE_DONE");
		static const QString askName = QLatin1String("[GNUPG:] GET_LINE openfile.askoutname");

		if (line.startsWith(encStart)) {
			m_currentFile = line.mid(encStart.length());
            emit statusMessage(tr("Status message 'Encrypting <filename>' (operation starts)", "Encrypting %1").arg(m_currentFile));
			emit infoProgress(2 * m_fileIndex + 1, inputFiles.count() * 2);
		} else if (line == encDone) {
            emit statusMessage(tr("Status message 'Encrypted <filename>' (operation was completed)", "Encrypted %1").arg(m_currentFile));
			m_fileIndex++;
			emit infoProgress(2 * m_fileIndex, inputFiles.count() * 2);
        } else if (line == askName) {
            qDebug() << "KGpgEncrypt::nextLine - name asked for file...";
        }
// TODO
/*		} else if (line == askName) {
			QPointer<KIO::RenameDialog> over = new KIO::RenameDialog(qobject_cast<QWidget *>(parent()),
					i18n("File Already Exists"), KUrl(),
					KUrl::fromPath(m_currentFile + encryptExtension(m_options.testFlag(AsciiArmored))),
					KIO::M_OVERWRITE);

			if (over->exec() != QDialog::Accepted) {
				delete over;
				setSuccess(KGpgTransaction::TS_USER_ABORTED);
				return true;
            }
			write(over->newDestUrl().path().toUtf8());
            delete over;*/
        //}
	}

	return KGpgTextOrFileTransaction::nextLine(line);
}
Пример #2
0
void
KGpgTransaction::start()
{
	d->m_inputProcessResult = false;
	d->m_inputProcessDone = (d->m_inputTransaction == Q_NULLPTR);

	setSuccess(TS_OK);
	d->m_idhints.clear();
	d->m_tries = 3;
	if (preStart()) {
		d->m_ownProcessFinished = false;
		if (d->m_inputTransaction != Q_NULLPTR)
			d->m_inputTransaction->start();
#ifdef KGPG_DEBUG_TRANSACTIONS
		qCDebug(KGPG_LOG_TRANSACTIONS) << this << d->m_process->program();
#endif /* KGPG_DEBUG_TRANSACTIONS */
		d->m_process->start();
		emit infoProgress(0, 1);
	} else {
		emit done(d->m_success);
	}
}