m_newName = items.first().name();
editLabel = new QLabel(i18nc("@label:textbox", "Rename the item <filename>%1</filename> to:", m_newName),
page);
+ editLabel->setTextFormat(Qt::PlainText);
} else {
m_newName = i18nc("@info:status", "New name #");
editLabel = new QLabel(i18ncp("@label:textbox",
bool enable = !newName.isEmpty() && (newName != QLatin1String("..")) && (newName != QLatin1String("."));
if (enable && !m_renameOneItem) {
// Assure that the new name contains exactly one # (or a connected sequence of #'s)
- const int minSplitCount = 1;
- int maxSplitCount = 2;
- if (newName.startsWith(QLatin1Char('#'))) {
- --maxSplitCount;
- }
- if (newName.endsWith(QLatin1Char('#'))) {
- --maxSplitCount;
- }
- const int splitCount = newName.split(QLatin1Char('#'), QString::SkipEmptyParts).count();
- enable = enable && (splitCount >= minSplitCount) && (splitCount <= maxSplitCount);
+ const int count = newName.count(QLatin1Char('#'));
+ const int first = newName.indexOf(QLatin1Char('#'));
+ const int last = newName.lastIndexOf(QLatin1Char('#'));
+ enable = (last - first + 1 == count);
}
enableButtonOk(enable);
}
void RenameDialog::renameItems()
{
- // Currently the items are sorted by the selection order, resort
- // them by the filename. This assures that the new sort order is similar to
- // the current filename sort order.
- qSort(m_items.begin(), m_items.end(), lessThan);
-
// Iterate through all items and rename them...
int index = m_spinBox->value();
foreach (const KFileItem& item, m_items) {