diff options
| author | 2010-03-19 17:47:30 +0000 | |
|---|---|---|
| committer | 2010-03-19 17:47:30 +0000 | |
| commit | 9a13918683b31682bcf4ee0ce3bc03ffd5439504 (patch) | |
| tree | 7b2f1a5916ffcaee4d9672076547bd7fc8d161dd /src/modules | |
| parent | removed modal status from addon manager, otherway it's impossibile to configu... (diff) | |
| download | KVIrc-9a13918683b31682bcf4ee0ce3bc03ffd5439504.tar.gz KVIrc-9a13918683b31682bcf4ee0ce3bc03ffd5439504.tar.bz2 KVIrc-9a13918683b31682bcf4ee0ce3bc03ffd5439504.zip | |
fixed alias duplication when restoring default script
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4163 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/aliaseditor/aliaseditor.cpp | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/src/modules/aliaseditor/aliaseditor.cpp b/src/modules/aliaseditor/aliaseditor.cpp index 48c258925..1cec51059 100644 --- a/src/modules/aliaseditor/aliaseditor.cpp +++ b/src/modules/aliaseditor/aliaseditor.cpp @@ -291,10 +291,27 @@ void KviAliasEditor::aliasRefresh(const QString &szName) { if(m_bSaving) return; - KviAliasEditorTreeWidgetItem * item; + KviAliasEditorTreeWidgetItem * item=0; KviKvsScript * alias = KviKvsAliasManager::instance()->aliasDict()->find(szName); - item = createFullItem(szName); - m_pAliases->append(item); + + // search for old alias with same name + KviPointerList<KviAliasEditorTreeWidgetItem> l; + l.setAutoDelete(false); + appendAllItems(&l,KviAliasEditorTreeWidgetItem::Alias); + for(KviAliasEditorTreeWidgetItem * it = l.first();it;it = l.next()) + { + if (KviQString::equalCI(buildFullItemName(it),szName)) + { + item=it; + break; + } + } + if(!item) + { + item = createFullItem(szName); + m_pAliases->append(item); + } + if(item!=m_pLastEditedItem) { item->setBuffer(alias->code()); |
