From c15c0df97de7f4ee678716c1c8fee1abcee4b0df Mon Sep 17 00:00:00 2001 From: Noldor Date: Wed, 2 Jun 2010 14:25:26 +0000 Subject: Some fixes in classeditor + code improvements in tablewidget kvs class git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4416 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/classeditor/classeditor.cpp | 80 ++++++++++++++++++--------------- 1 file changed, 43 insertions(+), 37 deletions(-) (limited to 'src/modules/classeditor/classeditor.cpp') diff --git a/src/modules/classeditor/classeditor.cpp b/src/modules/classeditor/classeditor.cpp index 2342784b2..cae703fa8 100644 --- a/src/modules/classeditor/classeditor.cpp +++ b/src/modules/classeditor/classeditor.cpp @@ -69,6 +69,7 @@ KviClassEditorTreeWidgetItem::KviClassEditorTreeWidgetItem(QTreeWidget * pTreeWi : QTreeWidgetItem(pTreeWidget), KviHeapObject(), m_eType(eType) { setName(szName); + m_szInheritsClassName=""; m_cPos=0; m_bInternal=false; if(eType==KviClassEditorTreeWidgetItem::Namespace) setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_NAMESPACE)))); @@ -80,6 +81,7 @@ KviClassEditorTreeWidgetItem::KviClassEditorTreeWidgetItem(KviClassEditorTreeWid : QTreeWidgetItem(pParentItem), m_eType(eType) { setName(szName); + m_szInheritsClassName=""; m_bInternal=false; m_cPos=0; setFlags(Qt::ItemIsEditable|Qt::ItemIsEnabled|Qt::ItemIsSelectable); @@ -472,10 +474,11 @@ void KviClassEditor::renameFunction() pFunction->setName(szNewFunctionName); pFunction->setInternalFunction(bInternal); pParentClass->setClassNotBuilt(true); - KviPointerList pInheritedClasses; - searchInheritedClasses(szClassName,pInheritedClasses); - for(unsigned int i=0;isetClassNotBuilt(true); + KviPointerList lInheritedClasses; + lInheritedClasses.setAutoDelete(false); + searchInheritedClasses(szClassName,lInheritedClasses); + for(unsigned int i=0;isetClassNotBuilt(true); activateItem(pFunction); } @@ -547,13 +550,13 @@ void KviClassEditor::renameClass(KviClassEditorTreeWidgetItem *pClassItem) m_pClasses->insert(szNewClassName,pClassItem); pClassItem->setInheritsClass(szNewInheritsClassName); pClassItem->setClassNotBuilt(true); - KviPointerList pInheritedClasses; - searchInheritedClasses(szClassName,pInheritedClasses); - for(unsigned int i=0;i lInheritedClasses; + searchInheritedClasses(szClassName,lInheritedClasses); + for(unsigned int i=0;isetClassNotBuilt(true); - pInheritedClasses.at(i)->setExpanded(true); - pInheritedClasses.at(i)->setInheritsClass(szNewClassName); + lInheritedClasses.at(i)->setClassNotBuilt(true); + lInheritedClasses.at(i)->setExpanded(true); + lInheritedClasses.at(i)->setInheritsClass(szNewClassName); } if (pNewItem) { @@ -625,15 +628,15 @@ void KviClassEditor::renameNamespace(KviClassEditorTreeWidgetItem *pOldNamespace KviPointerHashTableEntry *entry=m_pClasses->findRef(pList.at(i)); if (entry) { - KviPointerList pInheritedClasses; + KviPointerList lInheritedClasses; QString szOldName = entry->key(); QString szNewName = buildFullClassName(pList.at(i)); - searchInheritedClasses(szOldName,pInheritedClasses); - for(unsigned int j=0;jsetClassNotBuilt(true); - pInheritedClasses.at(j)->setExpanded(true); - pInheritedClasses.at(j)->setInheritsClass(szNewName); + lInheritedClasses.at(j)->setClassNotBuilt(true); + lInheritedClasses.at(j)->setExpanded(true); + lInheritedClasses.at(j)->setInheritsClass(szNewName); } m_pClasses->removeRef(pList.at(i)); m_pClasses->insert(szNewName,pList.at(i)); @@ -1147,13 +1150,13 @@ void KviClassEditor::removeItemChildren(KviClassEditorTreeWidgetItem *it) { if(it->isClass()) { - KviPointerList pInheritedClasses; - searchInheritedClasses(buildFullClassName(it),pInheritedClasses); - for(unsigned int i=0;i lInheritedClasses; + searchInheritedClasses(buildFullClassName(it),lInheritedClasses); + for(unsigned int i=0;isetClassNotBuilt(true); - pInheritedClasses.at(i)->setExpanded(true); - pInheritedClasses.at(i)->setInheritsClass("object"); + lInheritedClasses.at(i)->setClassNotBuilt(true); + lInheritedClasses.at(i)->setExpanded(true); + lInheritedClasses.at(i)->setInheritsClass("object"); } } @@ -1180,8 +1183,9 @@ bool KviClassEditor::removeItem(KviClassEditorTreeWidgetItem *it,bool * pbYesToA QString szMsg; QString szName = it->name(); - if(!*pbYesToAll)saveLastEditedItem(); + if(!*pbYesToAll) { + saveLastEditedItem(); if(it->isClass()) { KviQString::sprintf(szMsg,__tr2qs_ctx("Do you really want to remove the class \"%Q\" ?","editor"),&szName); @@ -1241,12 +1245,14 @@ bool KviClassEditor::removeItem(KviClassEditorTreeWidgetItem *it,bool * pbYesToA { KviClassEditorTreeWidgetItem* pClass = (KviClassEditorTreeWidgetItem*)it->parent(); pClass->setClassNotBuilt(true); - KviPointerList pInheritedClasses; - searchInheritedClasses(pClass->name(),pInheritedClasses); - for(unsigned int i=0;i lInheritedClasses; + debug("class name %s",pClass->name().toUtf8().data()); + searchInheritedClasses(pClass->name(),lInheritedClasses); + for(unsigned int i=0;isetClassNotBuilt(true); - pInheritedClasses.at(i)->setExpanded(true); + lInheritedClasses.at(i)->setClassNotBuilt(true); + lInheritedClasses.at(i)->setInheritsClass(pClass->name()); + lInheritedClasses.at(i)->setExpanded(true); } } delete it; @@ -1487,17 +1493,17 @@ void KviClassEditor::build() bErrorWhilecompiling=true; QString szError=__tr2qs_ctx("Unable to compile class: ","editor"); szError+=szFullClassName+"\n"; - KviPointerList pInheritedClasses; - searchInheritedClasses(szFullClassName,pInheritedClasses); - if (pInheritedClasses.count()) + KviPointerList lInheritedClasses; + searchInheritedClasses(szFullClassName,lInheritedClasses); + if (lInheritedClasses.count()) { szError+=__tr2qs_ctx("These Inherited classes will be not compiled too:","editor"); szError+="\n"; - for(unsigned int j=0;jsetClassNotBuilt(true); - pSkipClasses.append(pInheritedClasses.at(j)); + szError+=buildFullClassName(lInheritedClasses.at(j))+"\n"; + lInheritedClasses.at(j)->setClassNotBuilt(true); + pSkipClasses.append(lInheritedClasses.at(j)); } } QMessageBox::critical(this,__tr2qs_ctx("Compilation error - KVIrc","editor"),szError, @@ -1600,12 +1606,12 @@ void KviClassEditor::saveNotBuiltClasses() cfg.sync(); } -void KviClassEditor::searchInheritedClasses(const QString szClass,KviPointerList & pInheritedClasses) +void KviClassEditor::searchInheritedClasses(const QString szClass,KviPointerList & lInheritedClasses) { KviPointerHashTableIterator it (*m_pClasses); while(it.current()) { - if (KviQString::equalCI(szClass,it.current()->InheritsClass())) pInheritedClasses.append(it.current()); + if (KviQString::equalCI(szClass,it.current()->InheritsClass())) lInheritedClasses.append(it.current()); ++it; } } -- cgit v1.3.1-10-gc9f91