diff -r scribus_old/annot.cpp scribus/annot.cpp
30a31
> #include <QMessageBox>
1200a1202,1216
> bool Annot::FoundName(QString name)
> {
>         bool found = false;
>         for (int b = 0; b < view->Doc->Items->count(); ++b)
>         {
>                 if ((name == view->Doc->Items->at(b)->itemName()) && (view->Doc->Items->at(b) != item))
>                 {
>                           found = true;
>                           break;
>                 }
>         }
>         //
>         return found;
> }
> 
1203,1222c1219,1232
< 	QString NameNew = Name->text();
< 	if (NameNew.isEmpty())
< 	{
< 		Name->setText(OldName);
< 		return;
< 	}
< 	bool found = false;
< 	for (int b = 0; b < view->Doc->Items->count(); ++b)
< 	{
< 		if ((NameNew == view->Doc->Items->at(b)->itemName()) && (view->Doc->Items->at(b) != item))
< 		{
< 			found = true;
< 			break;
< 		}
< 	}
< 	if (found)
< 	{
< 		Name->setText(OldName);
< 		Name->setFocus();
< 	}
---
>         QString NameNew = Name->text();
>         if (NameNew.isEmpty())
>         {
>         Name->setText(OldName);
>                 return;
>         }
> 
>         if (FoundName(NameNew))
>         {
>             QMessageBox::warning(this, CommonStrings::trWarning, tr("The item with such name is already exist"), QMessageBox::Ok);
>             Name->setText(OldName);
>             Name->setFocus();
>         }
> 
1811,1812c1821,1822
< 	if (Name->text() != OldName)
< 		item->setItemName(Name->text());
---
>         if (Name->text() != OldName)
>                     item->setItemName(Name->text());
2035c2045
< 	accept();
---
>       accept();
diff -r scribus_old/annot.h scribus/annot.h
220a221
>         bool FoundName(QString name);
