Beispiel #1
0
KUrl Info::repairInvalidCharacters(const KUrl& url, QWidget* mainWidget, bool checkForFileExistence /* = true */)
{
	KUrl ret(url);
	do {
		bool isOK;
		QString newURL = KInputDialog::getText(
			i18n("Invalid Characters"),
			i18n("The filename contains invalid characters ($~ #).<br>Please provide "
			     "another one, or click \"Cancel\" to save anyway."),
			ret.fileName(),
			&isOK);
		if(!isOK)
			break;
		ret.setFileName(newURL);
	} while(containsInvalidCharacters(ret));

	return (checkForFileExistence ? renameIfExist(ret, mainWidget) : ret);
}
Beispiel #2
0
KUrl Info::repairExtension(const KUrl& url, QWidget *mainWidget, bool checkForFileExistence /* = true */)
{
	KUrl ret(url);

	QString filename = url.fileName();
	if(filename.contains(".") && filename[0] != '.') // There already is an extension
		return ret;

	if(KMessageBox::Yes == KMessageBox::questionYesNo(NULL,
		i18n("The given filename has no extension; do you want one to be automatically added?"),
		i18n("Missing Extension"),
		KStandardGuiItem::yes(),
		KStandardGuiItem::no(),
		"AutomaticallyAddExtension"))
	{
		ret.setFileName(filename + ".tex");
	}
	return (checkForFileExistence ? renameIfExist(ret, mainWidget) : ret);
}
Beispiel #3
0
QUrl Info::repairInvalidCharacters(const QUrl &url, QWidget* mainWidget, bool checkForFileExistence /* = true */)
{
	QUrl ret(url);
	do {
		bool isOK;
		QString newURL = QInputDialog::getText(
			mainWidget,
			i18n("Invalid Characters"),
			i18n("The filename contains invalid characters ($~ #).<br>Please provide "
			     "another one, or click \"Cancel\" to save anyway."),
			QLineEdit::Normal,
			ret.fileName(),
			&isOK);
		if(!isOK) {
			break;
		}
		ret = ret.adjusted(QUrl::RemoveFilename);
		ret.setPath(ret.path() + newURL);
	} while(containsInvalidCharacters(ret));

	return (checkForFileExistence ? renameIfExist(ret, mainWidget) : ret);
}