diff options
| author | 2010-05-23 14:22:59 +0000 | |
|---|---|---|
| committer | 2010-05-23 14:22:59 +0000 | |
| commit | 30a6c720476fe968653140bb183928f97d97f1db (patch) | |
| tree | 99d85a616f3357c604033d3ce4304836bd0d1401 | |
| parent | Fix local directory selection in the setup dialog (diff) | |
| download | KVIrc-30a6c720476fe968653140bb183928f97d97f1db.tar.gz KVIrc-30a6c720476fe968653140bb183928f97d97f1db.tar.bz2 KVIrc-30a6c720476fe968653140bb183928f97d97f1db.zip | |
Some fixes in object classes inheritance
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4362 17fca916-40b9-46aa-a4ea-0a15b648b75c
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_object_class.cpp | 6 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_object_functionhandler.cpp | 5 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_object_functionhandler.h | 3 | ||||
| -rw-r--r-- | src/modules/classeditor/classeditor.cpp | 3 | ||||
| -rw-r--r-- | src/modules/editor/scripteditor.cpp | 4 |
5 files changed, 15 insertions, 6 deletions
diff --git a/src/kvirc/kvs/kvi_kvs_object_class.cpp b/src/kvirc/kvs/kvi_kvs_object_class.cpp index 3425b7b54..bff940176 100644 --- a/src/kvirc/kvs/kvi_kvs_object_class.cpp +++ b/src/kvirc/kvs/kvi_kvs_object_class.cpp @@ -61,6 +61,10 @@ KviKvsObjectClass::KviKvsObjectClass( while(KviKvsObjectFunctionHandler * fh = it.current()) { m_pFunctionHandlers->insert(it.currentKey(),fh->clone()); + KviKvsObjectFunctionHandler * f=m_pFunctionHandlers->find(it.currentKey()); + if (f->isScriptHandler()){ + f->setClone(true); + } ++it; } } @@ -182,7 +186,7 @@ bool KviKvsObjectClass::save(const QString &szFileName) while(KviKvsObjectFunctionHandler * h = it.current()) { - if(h->isScriptHandler()) + if(h->isScriptHandler() && !h->isClone()) { szBuffer += " "; if(h->flags() & KviKvsObjectFunctionHandler::Internal) diff --git a/src/kvirc/kvs/kvi_kvs_object_functionhandler.cpp b/src/kvirc/kvs/kvi_kvs_object_functionhandler.cpp index 8e7327e7b..543ce1477 100644 --- a/src/kvirc/kvs/kvi_kvs_object_functionhandler.cpp +++ b/src/kvirc/kvs/kvi_kvs_object_functionhandler.cpp @@ -29,6 +29,7 @@ KviKvsObjectFunctionHandler::KviKvsObjectFunctionHandler(unsigned int uFlags) : m_uFlags(uFlags) { + m_bClone=false; } KviKvsObjectFunctionHandler::~KviKvsObjectFunctionHandler() @@ -44,3 +45,7 @@ QString KviKvsObjectFunctionHandler::scriptHandlerCode() { return QString(); } +bool KviKvsObjectFunctionHandler::isClone() +{ + return m_bClone; +} diff --git a/src/kvirc/kvs/kvi_kvs_object_functionhandler.h b/src/kvirc/kvs/kvi_kvs_object_functionhandler.h index 484cffbb6..e7b9b9f76 100644 --- a/src/kvirc/kvs/kvi_kvs_object_functionhandler.h +++ b/src/kvirc/kvs/kvi_kvs_object_functionhandler.h @@ -40,11 +40,14 @@ public: enum Flags { Internal = 1 }; protected: unsigned int m_uFlags; + bool m_bClone; protected: KviKvsObjectFunctionHandler(unsigned int uFlags = 0); public: virtual ~KviKvsObjectFunctionHandler(); public: + void setClone(bool bCl){m_bClone=bCl;}; + bool isClone(); unsigned int flags(){ return m_uFlags; }; protected: virtual bool isScriptHandler(); diff --git a/src/modules/classeditor/classeditor.cpp b/src/modules/classeditor/classeditor.cpp index 74bfb8fa1..ff6a5ddc3 100644 --- a/src/modules/classeditor/classeditor.cpp +++ b/src/modules/classeditor/classeditor.cpp @@ -395,7 +395,8 @@ void KviClassEditor::createFullClass(KviKvsObjectClass *pClass, KviClassEditorTr { QString szCode; KviKvsObjectFunctionHandler *handler=pClass->lookupFunctionHandler(it.currentKey()); - if (pClass->isScriptHandler(it.currentKey())) + + if (pClass->isScriptHandler(it.currentKey()) && !handler->isClone()) { pFunctionItem=findFunction(it.currentKey(), pClassItem); if(!pFunctionItem) pFunctionItem = new KviClassEditorTreeWidgetItem(pClassItem,KviClassEditorTreeWidgetItem::Method,it.currentKey()); diff --git a/src/modules/editor/scripteditor.cpp b/src/modules/editor/scripteditor.cpp index b8c5ec28e..18f49781a 100644 --- a/src/modules/editor/scripteditor.cpp +++ b/src/modules/editor/scripteditor.cpp @@ -679,8 +679,6 @@ void KviScriptEditorSyntaxHighlighter::highlightBlock(const QString & szText) // 'found matches' highlighting KviScriptEditorWidget * pEditor = ((KviScriptEditorWidget *)textEdit()); QString szFind = pEditor->m_szFind; - debug("find %s",szFind.toUtf8().data()); - if (!szFind.isEmpty()) { index = szText.indexOf(szFind); @@ -691,8 +689,6 @@ void KviScriptEditorSyntaxHighlighter::highlightBlock(const QString & szText) index = szText.indexOf(szFind,index + length); } } - debug("exit loop"); - } |
