aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules
diff options
context:
space:
mode:
authorGravatar Noldor2010-05-11 08:32:02 +0000
committerGravatar Noldor2010-05-11 08:32:02 +0000
commita79eaec68c84d4208be3034eefad5904a134254d (patch)
treede0e25e04a431430eaaed46ac6ac67e4e1923f4f /src/modules
parentadded a button to clear recent channels list in "join channels" dialog (diff)
downloadKVIrc-a79eaec68c84d4208be3034eefad5904a134254d.tar.gz
KVIrc-a79eaec68c84d4208be3034eefad5904a134254d.tar.bz2
KVIrc-a79eaec68c84d4208be3034eefad5904a134254d.zip
Some fixes in classeditor
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4316 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/classeditor/classeditor.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/modules/classeditor/classeditor.cpp b/src/modules/classeditor/classeditor.cpp
index c9af97e37..ef4fee8a5 100644
--- a/src/modules/classeditor/classeditor.cpp
+++ b/src/modules/classeditor/classeditor.cpp
@@ -657,7 +657,6 @@ void KviClassEditor::saveLastEditedItem()
return;
if(!m_pEditor->isModified() || m_pLastEditedItem->isNamespace() || m_pLastEditedItem->isClass())
return;
-
((KviClassEditorTreeWidgetItem *)m_pLastEditedItem)->setCursorPosition(m_pEditor->getCursor());
QString newCode;
m_pEditor->getText(newCode);
@@ -906,6 +905,7 @@ void KviClassEditor::getExportClassBuffer(QString &buffer,KviClassEditorTreeWidg
QString szBuf = it->buffer();
KviCommandFormatter::blockFromBuffer(szBuf);
QString szNam = buildFullClassName(it);
+ debug("export buffer");
buffer = "class(\"";
buffer += szNam;
@@ -920,6 +920,7 @@ void KviClassEditor::getExportClassBuffer(QString &buffer,KviClassEditorTreeWidg
KviClassEditorTreeWidgetItem * pFunction= (KviClassEditorTreeWidgetItem *)it->child(i);
if(pFunction->isMethod())
{
+ debug("append %s",pFunction->name().toUtf8().data());
buffer += "\t";
if (pFunction->isInternalFunction()) buffer+="internal ";
buffer += "function ";
@@ -1419,6 +1420,7 @@ void KviClassEditor::build()
pLinkedClasses.setAutoDelete(false);
KviPointerList<KviClassEditorTreeWidgetItem> pSkipClasses;
pSkipClasses.setAutoDelete(false);
+ bool bErrorWhilecompiling=false;
while(it.current())
{
KviClassEditorTreeWidgetItem *pClass=it.current();
@@ -1434,17 +1436,12 @@ void KviClassEditor::build()
pLinkedClasses.append(pClass);
while(pParentClass)
{
- if (pParentClass->classNotBuilt())
- {
- debug("append to build parent class %s",pParentClass->name().toUtf8().data());
- pLinkedClasses.append(pParentClass);
- }
+ if (pParentClass->classNotBuilt()) pLinkedClasses.append(pParentClass);
pParentClass=m_pClasses->find(pParentClass->InheritsClass());
}
for(int i=pLinkedClasses.count()-1;i>=0;i--)
{
QString szFullClassName = buildFullClassName(pLinkedClasses.at(i));
- debug("parsing class %s",szFullClassName.toUtf8().data());
KviKvsObjectClass *pClass = KviKvsKernel::instance()->objectController()->lookupClass(szFullClassName);
if (pClass) KviKvsKernel::instance()->objectController()->deleteClass(pClass);
QString szClass;
@@ -1453,6 +1450,7 @@ void KviClassEditor::build()
pClass = KviKvsKernel::instance()->objectController()->lookupClass(szFullClassName);
if (!pClass)
{
+ bErrorWhilecompiling=true;
QString szError=__tr2qs_ctx("Unable to compile class: ","editor");
szError+=szFullClassName+"\n";
KviPointerList<KviClassEditorTreeWidgetItem> pInheritedClasses;
@@ -1477,6 +1475,7 @@ void KviClassEditor::build()
}
++it;
}
+ if (bErrorWhilecompiling) saveNotBuiltClasses();
KviKvsKernel::instance()->objectController()->flushUserClasses();
}
@@ -1593,7 +1592,7 @@ KviClassEditorWindow::KviClassEditorWindow(KviFrame * lpFrm)
btn->setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ACCEPT)));
g->addWidget(btn,1,2);
- btn = new QPushButton(__tr2qs_ctx("Cancel","editor"),this);
+ btn = new QPushButton(__tr2qs_ctx("Close","editor"),this);
connect(btn,SIGNAL(clicked()),this,SLOT(cancelClicked()));
btn->setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_DISCARD)));
g->addWidget(btn,1,3);
@@ -1611,7 +1610,6 @@ KviClassEditorWindow::~KviClassEditorWindow()
void KviClassEditorWindow::buildClicked()
{
m_pEditor->build();
- m_pEditor->saveNotBuiltClasses();
}
void KviClassEditorWindow::saveClicked()