Skip to content

Commit 993d740

Browse files
committed
Rename tool improvement
Now possible to just rename with an index or the keyname
1 parent c84dce8 commit 993d740

File tree

1 file changed

+28
-19
lines changed

1 file changed

+28
-19
lines changed

sources/editor/tree/treeviewmenu.cpp

+28-19
Original file line numberDiff line numberDiff line change
@@ -363,17 +363,6 @@ void TreeViewMenu::onRename(QString txt)
363363

364364
void TreeViewMenu::bulkRename(int renameType, QString text1, QString text2, int val1, int val2)
365365
{
366-
if (renameType == 4)
367-
{
368-
if (val1 == val2)
369-
return;
370-
}
371-
else
372-
{
373-
if (text1.isEmpty())
374-
return;
375-
}
376-
377366
SoundfontManager * sm = SoundfontManager::getInstance();
378367
for (int i = 0; i < _currentIds.size(); i++)
379368
{
@@ -384,35 +373,55 @@ void TreeViewMenu::bulkRename(int renameType, QString text1, QString text2, int
384373
switch (renameType)
385374
{
386375
case 0:{
387-
// Replace with the name as a suffix
388-
QString suffix = " " + ContextManager::keyName()->getKeyName(sm->get(ID, champ_byOriginalPitch).bValue, false, true);
376+
// Replace with the key name as a suffix
377+
QString suffix = ContextManager::keyName()->getKeyName(sm->get(ID, champ_byOriginalPitch).bValue, false, true);
389378
SFSampleLink pos = sm->get(ID, champ_sfSampleType).sfLinkValue;
390379
if (pos == rightSample || pos == RomRightSample)
391380
suffix += 'R';
392381
else if (pos == leftSample || pos == RomLeftSample)
393382
suffix += 'L';
394383

395-
newName = text1.left(20 - suffix.size()) + suffix;
384+
if (text1.isEmpty())
385+
newName = suffix;
386+
else
387+
{
388+
suffix = " " + suffix;
389+
newName = text1.left(20 - suffix.size()) + suffix;
390+
}
396391
}break;
397392
case 1:
398-
// Replace with an index an a suffix
399-
if ((i+1) % 100 < 10)
400-
newName = text1.left(17) + "-0" + QString::number((i+1) % 100);
393+
// Replace with an index as a suffix
394+
if (text1.isEmpty())
395+
{
396+
if ((i+1) % 100 < 10)
397+
newName = "0" + QString::number((i+1) % 100);
398+
else
399+
newName = QString::number((i+1) % 100);
400+
}
401401
else
402-
newName = text1.left(17) + "-" + QString::number((i+1) % 100);
402+
{
403+
if ((i+1) % 100 < 10)
404+
newName = text1.left(17) + "-0" + QString::number((i+1) % 100);
405+
else
406+
newName = text1.left(17) + "-" + QString::number((i+1) % 100);
407+
}
403408
break;
404409
case 2:
405410
// Replace a string
406411
newName.replace(text1, text2, Qt::CaseInsensitive);
407412
break;
408413
case 3:
409414
// Insert a string
415+
if (text1.isEmpty())
416+
return;
410417
if (val1 > newName.size())
411418
val1 = newName.size();
412419
newName.insert(val1, text1);
413420
break;
414421
case 4:
415422
// Delete a part
423+
if (val1 == val2)
424+
return;
416425
if (val2 > val1)
417426
newName.remove(val1, val2 - val1);
418427
else
@@ -422,7 +431,7 @@ void TreeViewMenu::bulkRename(int renameType, QString text1, QString text2, int
422431

423432
newName = newName.left(20);
424433

425-
if (sm->getQstr(ID, champ_name).compare(newName, Qt::CaseSensitive))
434+
if (sm->getQstr(ID, champ_name).compare(newName, Qt::CaseSensitive) != 0)
426435
sm->set(ID, champ_name, newName);
427436
}
428437
sm->endEditing("command:bulkRename");

0 commit comments

Comments
 (0)