aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Noldor2008-10-27 16:46:54 +0000
committerGravatar Noldor2008-10-27 16:46:54 +0000
commit7e081b8e8e5a939faaf266166527787d01506e95 (patch)
tree7e43d6d4f60f4c7f686893681cfd27c38580facc /src
parentfixed typos (diff)
downloadKVIrc-7e081b8e8e5a939faaf266166527787d01506e95.tar.gz
KVIrc-7e081b8e8e5a939faaf266166527787d01506e95.tar.bz2
KVIrc-7e081b8e8e5a939faaf266166527787d01506e95.zip
fixed clearRecentChannels action + removed obsolete class KviGarbageCollector (using QObject::deleteLater() instead)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@2776 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
-rw-r--r--src/kvilib/ext/kvi_garbage.cpp6
-rw-r--r--src/kvilib/ext/kvi_garbage.h4
-rw-r--r--src/kvirc/kernel/kvi_app.cpp12
-rw-r--r--src/kvirc/kernel/kvi_app.h5
-rw-r--r--src/kvirc/kernel/kvi_ircconnection.cpp7
-rw-r--r--src/kvirc/kernel/kvi_ircconnectiontargetresolver.cpp10
-rw-r--r--src/kvirc/kernel/kvi_irclink.cpp4
-rw-r--r--src/kvirc/kvs/kvi_kvs_dnsmanager.cpp3
-rw-r--r--src/kvirc/kvs/kvi_kvs_kernel.cpp14
-rw-r--r--src/kvirc/kvs/kvi_kvs_runtimecall.cpp1
-rw-r--r--src/kvirc/module/kvi_modulemanager.cpp4
-rw-r--r--src/kvirc/ui/kvi_console.cpp4
-rw-r--r--src/modules/dcc/dialogs.cpp24
-rw-r--r--src/modules/dialog/libkvidialog.cpp20
-rw-r--r--src/modules/file/libkvifile.cpp2
-rw-r--r--src/modules/objects/class_toolbutton.cpp140
-rw-r--r--src/modules/objects/class_toolbutton.h38
-rw-r--r--src/modules/objects/object_macros.h2
18 files changed, 160 insertions, 140 deletions
diff --git a/src/kvilib/ext/kvi_garbage.cpp b/src/kvilib/ext/kvi_garbage.cpp
index bb71dfeee..d74429de2 100644
--- a/src/kvilib/ext/kvi_garbage.cpp
+++ b/src/kvilib/ext/kvi_garbage.cpp
@@ -23,8 +23,8 @@
//=============================================================================
-#include "kvi_garbage.h"
-
+//#include "kvi_garbage.h"
+/*
#include <QVariant>
KviGarbageCollector::KviGarbageCollector()
@@ -145,4 +145,4 @@ void KviGarbageCollector::cleanup()
}
}
}
-
+*/
diff --git a/src/kvilib/ext/kvi_garbage.h b/src/kvilib/ext/kvi_garbage.h
index fd6340561..569a7f169 100644
--- a/src/kvilib/ext/kvi_garbage.h
+++ b/src/kvilib/ext/kvi_garbage.h
@@ -37,7 +37,7 @@
* and much easier.
*/
-
+/*
class KVILIB_API KviGarbageCollector : public QObject
{
Q_OBJECT
@@ -56,5 +56,5 @@ protected slots:
void cleanup();
void garbageSuicide();
};
-
+*/
#endif //_KVI_GARBAGE_H_
diff --git a/src/kvirc/kernel/kvi_app.cpp b/src/kvirc/kernel/kvi_app.cpp
index af48272d8..00eefe988 100644
--- a/src/kvirc/kernel/kvi_app.cpp
+++ b/src/kvirc/kernel/kvi_app.cpp
@@ -54,7 +54,7 @@
#include "kvi_nickserv.h"
#include "kvi_identityprofile.h"
#include "kvi_xlib.h"
-#include "kvi_garbage.h"
+////#include "kvi_garbage.h"
#include "kvi_texticonmanager.h"
#include "kvi_texticonwin.h"
#include "kvi_historywin.h"
@@ -123,7 +123,7 @@ KVIRC_API KviPointerHashTable<QString,KviWindow> * g_pGlobalWindowDict = 0;
KVIRC_API KviMediaManager * g_pMediaManager = 0;
KVIRC_API KviSharedFilesManager * g_pSharedFilesManager = 0;
KVIRC_API KviNickServRuleSet * g_pNickServRuleSet = 0;
-KVIRC_API KviGarbageCollector * g_pGarbageCollector = 0;
+//KVIRC_API KviGarbageCollector * g_pGarbageCollector = 0;
KVIRC_API KviCtcpPageDialog * g_pCtcpPageDialog = 0;
KVIRC_API KviRegisteredChannelDataBase * g_pRegisteredChannelDataBase = 0;
KVIRC_API KviHistoryWindowWidget * g_pHistoryWindow = 0;
@@ -453,7 +453,7 @@ void KviApp::setup()
g_pCryptEngineManager = new KviCryptEngineManager();
#endif
- g_pGarbageCollector = new KviGarbageCollector();
+ //g_pGarbageCollector = new KviGarbageCollector();
// and the input popup
g_pInputPopup = new KviTalPopupMenu();
@@ -548,7 +548,7 @@ KviApp::~KviApp()
g_pActiveWindow = 0; // .. but it should be already 0 anyway
// execute pending deletes (this may still contain some UI elements)
- delete g_pGarbageCollector;
+ //delete g_pGarbageCollector;
if(!m_bSetupDone)return; // killed with IPC (nothing except the m_pFrameList was created yet)
@@ -700,13 +700,13 @@ QTextCodec * KviApp::defaultSrvCodec()
if(!c)debug("KviApp::defaultSrcCodec(): cannot find a suitable text codec for locale :/");
return c;
}
-
+/*
void KviApp::collectGarbage(QObject * garbage)
{
// if(!g_pGarbageCollector)debug("Ops... no garbage collector ?");
g_pGarbageCollector->collect(garbage);
}
-
+*/
void KviApp::loadDefaultScript()
{
QString cmd;
diff --git a/src/kvirc/kernel/kvi_app.h b/src/kvirc/kernel/kvi_app.h
index ff49eb7aa..48d201568 100644
--- a/src/kvirc/kernel/kvi_app.h
+++ b/src/kvirc/kernel/kvi_app.h
@@ -127,7 +127,7 @@ public:
public:
//FIXME: obsolete. We can use QObject::deleteLater()
- void collectGarbage(QObject * garbage);
+ //void collectGarbage(QObject * garbage);
void destroyFrame();
void setup(); // THIS SHOULD BE PRIVATE! (but is accessed from kvi_main.cpp)
@@ -176,6 +176,8 @@ public:
void listAvailableOptions(KviWindow *wnd);
bool getOptionString(const QString &optName,QString &buffer);
bool setOptionValue(const QString &optName,const QString &value);
+ bool setCommonOptionValue(const QString &optName,const QString &value);
+
void optionResetUpdate(int flags);
// kvi_app_fs.cpp : Filesystem thingies
@@ -255,6 +257,7 @@ public:
void checkSuggestRestoreDefaultScript();
void loadDefaultScript();
+
protected:
void buildRecentChannels();
void saveRecentChannels();
diff --git a/src/kvirc/kernel/kvi_ircconnection.cpp b/src/kvirc/kernel/kvi_ircconnection.cpp
index 9c989dca8..d7daeec32 100644
--- a/src/kvirc/kernel/kvi_ircconnection.cpp
+++ b/src/kvirc/kernel/kvi_ircconnection.cpp
@@ -46,7 +46,7 @@
#include "kvi_internalcmd.h"
#include "kvi_frame.h"
#include "kvi_mexlinkfilter.h"
-#include "kvi_garbage.h"
+////#include "kvi_garbage.h"
#include "kvi_malloc.h"
#include "kvi_memmove.h"
#include "kvi_debug.h"
@@ -72,7 +72,7 @@
extern KVIRC_API KviServerDataBase * g_pServerDataBase;
extern KVIRC_API KviProxyDataBase * g_pProxyDataBase;
-extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
+//extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
KviIrcConnection::KviIrcConnection(KviIrcContext * pContext,KviIrcConnectionTarget * pTarget,KviUserIdentity * pIdentity)
: QObject()
@@ -115,7 +115,8 @@ KviIrcConnection::~KviIrcConnection()
QObject::disconnect(m_pLocalhostDns,SIGNAL(lookupDone(KviDns *)),0,0);
if(m_pLocalhostDns->isRunning())
{
- g_pGarbageCollector->collect(m_pLocalhostDns);
+ //g_pGarbageCollector->collect(m_pLocalhostDns);
+ m_pLocalhostDns->deleteLater();
} else {
delete m_pLocalhostDns;
}
diff --git a/src/kvirc/kernel/kvi_ircconnectiontargetresolver.cpp b/src/kvirc/kernel/kvi_ircconnectiontargetresolver.cpp
index 219baf6d2..af67ee2ad 100644
--- a/src/kvirc/kernel/kvi_ircconnectiontargetresolver.cpp
+++ b/src/kvirc/kernel/kvi_ircconnectiontargetresolver.cpp
@@ -38,7 +38,7 @@
#include "kvi_internalcmd.h"
#include "kvi_frame.h"
#include "kvi_mexlinkfilter.h"
-#include "kvi_garbage.h"
+//#include "kvi_garbage.h"
#include "kvi_malloc.h"
#include "kvi_memmove.h"
#include "kvi_debug.h"
@@ -56,7 +56,7 @@
extern KVIRC_API KviServerDataBase * g_pServerDataBase;
extern KVIRC_API KviProxyDataBase * g_pProxyDataBase;
-extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
+//extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
@@ -90,7 +90,8 @@ void KviIrcConnectionTargetResolver::cleanup()
{
// deleting a running dns may block
// thus garbage-collect it and delete later
- g_pGarbageCollector->collect(m_pProxyDns);
+ //g_pGarbageCollector->collect(m_pProxyDns);
+ m_pProxyDns->deleteLater();
} else {
// can't block : just delete it
delete m_pProxyDns;
@@ -103,7 +104,8 @@ void KviIrcConnectionTargetResolver::cleanup()
{
// deleting a running dns may block
// thus garbage-collect it and delete later
- g_pGarbageCollector->collect(m_pServerDns);
+ //g_pGarbageCollector->collect(m_pServerDns);
+ m_pServerDns->deleteLater();
} else {
// can't block : just delete it
delete m_pServerDns;
diff --git a/src/kvirc/kernel/kvi_irclink.cpp b/src/kvirc/kernel/kvi_irclink.cpp
index 94a3d05bc..b5ee9326e 100644
--- a/src/kvirc/kernel/kvi_irclink.cpp
+++ b/src/kvirc/kernel/kvi_irclink.cpp
@@ -37,7 +37,7 @@
#include "kvi_internalcmd.h"
#include "kvi_frame.h"
#include "kvi_mexlinkfilter.h"
-#include "kvi_garbage.h"
+//#include "kvi_garbage.h"
#include "kvi_malloc.h"
#include "kvi_memmove.h"
#include "kvi_ircconnection.h"
@@ -53,7 +53,7 @@
extern KVIRC_API KviServerDataBase * g_pServerDataBase;
extern KVIRC_API KviProxyDataBase * g_pProxyDataBase;
-extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
+//extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
KviIrcLink::KviIrcLink(KviIrcConnection * pConnection)
diff --git a/src/kvirc/kvs/kvi_kvs_dnsmanager.cpp b/src/kvirc/kvs/kvi_kvs_dnsmanager.cpp
index 28c4e9aaf..34f2c37cd 100644
--- a/src/kvirc/kvs/kvi_kvs_dnsmanager.cpp
+++ b/src/kvirc/kvs/kvi_kvs_dnsmanager.cpp
@@ -52,7 +52,8 @@ KviKvsDnsObject::~KviKvsDnsObject()
QObject::disconnect(m_pDns,0,0,0);
if(m_pDns->isRunning())
{
- g_pApp->collectGarbage(m_pDns);
+ //g_pApp->collectGarbage(m_pDns);
+ m_pDns->deleteLater();
} else {
delete m_pDns;
}
diff --git a/src/kvirc/kvs/kvi_kvs_kernel.cpp b/src/kvirc/kvs/kvi_kvs_kernel.cpp
index d199a495c..1fa6c5da8 100644
--- a/src/kvirc/kvs/kvi_kvs_kernel.cpp
+++ b/src/kvirc/kvs/kvi_kvs_kernel.cpp
@@ -174,12 +174,12 @@ void KviKvsKernel::completeFunction(const QString &szFunctionBegin,KviPointerLis
++it;
}
- //KviPointerList<QString> lModules;
- //lModules.setAutoDelete(true);
- g_pModuleManager->completeModuleNames(szFunctionBegin,pMatches);
- //QString szEmpty = "";
- //for(QString * pszModuleName = lModules.first();pszModuleName;pszModuleName = lModules.next())
- // completeModuleFunction(*pszModuleName,szEmpty,pMatches);
+ KviPointerList<QString> lModules;
+ lModules.setAutoDelete(true);
+ g_pModuleManager->completeModuleNames(szFunctionBegin,&lModules);
+ QString szEmpty = "";
+ for(QString * pszModuleName = lModules.first();pszModuleName;pszModuleName = lModules.next())
+ completeModuleFunction(*pszModuleName,szEmpty,pMatches);
KviPointerList<QString> lAliases;
lAliases.setAutoDelete(true);
@@ -212,7 +212,7 @@ void KviKvsKernel::completeModuleFunction(const QString &szModuleName,const QStr
QString * pszMatch = new QString(*pszModuleMatch);
pszMatch->prepend(".");
pszMatch->prepend(szModuleName);
- //pszMatch->prepend("$");
+ pszMatch->prepend("$");
pMatches->append(pszMatch);
}
}
diff --git a/src/kvirc/kvs/kvi_kvs_runtimecall.cpp b/src/kvirc/kvs/kvi_kvs_runtimecall.cpp
index 051c429eb..9a2c0d5b1 100644
--- a/src/kvirc/kvs/kvi_kvs_runtimecall.cpp
+++ b/src/kvirc/kvs/kvi_kvs_runtimecall.cpp
@@ -27,6 +27,7 @@
void KviKvsRunTimeCall::warning(const QString &szFmt,...)
{
+ debug ("warning %s",szFmt.toUtf8().data());
kvi_va_list va;
kvi_va_start_by_reference(va,szFmt);
m_pContext->report(false,m_pContext->defaultReportLocation(),szFmt,va);
diff --git a/src/kvirc/module/kvi_modulemanager.cpp b/src/kvirc/module/kvi_modulemanager.cpp
index 79970d44b..84cb9b8fc 100644
--- a/src/kvirc/module/kvi_modulemanager.cpp
+++ b/src/kvirc/module/kvi_modulemanager.cpp
@@ -109,9 +109,9 @@ void KviModuleManager::completeModuleNames(const QString &path,const QString &wo
{
// KviQString::cutFromLast(*modname,".so");
#if defined(COMPILE_ON_WINDOWS)
- KviQString::cutFromLast(*modname,"dll");
+ KviQString::cutFromLast(*modname,".dll");
#else
- KviQString::cutFromLast(*modname,"so");
+ KviQString::cutFromLast(*modname,".so");
#endif
if(!modname->isEmpty())
matches->append(modname);
diff --git a/src/kvirc/ui/kvi_console.cpp b/src/kvirc/ui/kvi_console.cpp
index a1e8099cb..0b9d464bd 100644
--- a/src/kvirc/ui/kvi_console.cpp
+++ b/src/kvirc/ui/kvi_console.cpp
@@ -53,7 +53,7 @@
#include "kvi_internalcmd.h"
#include "kvi_sparser.h"
#include "kvi_themedlabel.h"
-#include "kvi_garbage.h"
+//#include "kvi_garbage.h"
#include "kvi_modulemanager.h"
#include "kvi_fileutils.h"
#include "kvi_time.h"
@@ -93,7 +93,7 @@
extern KVIRC_API KviServerDataBase * g_pServerDataBase;
extern KVIRC_API KviProxyDataBase * g_pProxyDataBase;
-extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
+//extern KVIRC_API KviGarbageCollector * g_pGarbageCollector;
KviConsole::KviConsole(KviFrame * lpFrm,int iFlags)
#ifdef COMPILE_ON_WINDOWS
diff --git a/src/modules/dcc/dialogs.cpp b/src/modules/dcc/dialogs.cpp
index db09d936c..3c6edf06d 100644
--- a/src/modules/dcc/dialogs.cpp
+++ b/src/modules/dcc/dialogs.cpp
@@ -96,14 +96,16 @@ void KviDccAcceptBox::acceptClicked()
{
hide();
emit accepted(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
}
void KviDccAcceptBox::rejectClicked()
{
hide();
emit rejected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
}
void KviDccAcceptBox::closeEvent(QCloseEvent *e)
@@ -111,7 +113,8 @@ void KviDccAcceptBox::closeEvent(QCloseEvent *e)
hide();
e->ignore();
emit rejected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
}
void KviDccAcceptBox::showEvent(QShowEvent *e)
@@ -173,7 +176,8 @@ void KviDccRenameBox::closeEvent(QCloseEvent *e)
if(m_pDescriptor)
{
emit cancelSelected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ //g_pApp->collectGarbage(this);
+ this->deleteLater();
}
}
@@ -188,14 +192,16 @@ void KviDccRenameBox::renameClicked()
{
hide();
emit renameSelected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ //g_pApp->collectGarbage(this);
+ this->deleteLater();
}
void KviDccRenameBox::overwriteClicked()
{
hide();
emit overwriteSelected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ //g_pApp->collectGarbage(this);
+ this->deleteLater();
}
void KviDccRenameBox::resumeClicked()
@@ -203,14 +209,16 @@ void KviDccRenameBox::resumeClicked()
hide();
m_pDescriptor->bResume = true;
emit overwriteSelected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
}
void KviDccRenameBox::cancelClicked()
{
hide();
emit cancelSelected(this,m_pDescriptor);
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
}
#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES
diff --git a/src/modules/dialog/libkvidialog.cpp b/src/modules/dialog/libkvidialog.cpp
index e13689ae7..0af8658b2 100644
--- a/src/modules/dialog/libkvidialog.cpp
+++ b/src/modules/dialog/libkvidialog.cpp
@@ -71,12 +71,15 @@ KviKvsCallbackMessageBox::KviKvsCallbackMessageBox(
KviKvsCallbackObject("dialog.message",pWindow,szCode,pMagicParams,0)
{
setWindowTitle(szCaption);
+ setAttribute(Qt::WA_DeleteOnClose,false);
setText(szText);
setIcon(QMessageBox::NoIcon);
QMessageBox::StandardButtons buttons;
- if (!szButton0.isEmpty()) buttons=QMessageBox::Ok | QMessageBox::Default;
- if (!szButton2.isEmpty()) buttons|=QMessageBox::Cancel | QMessageBox::Escape;
- else if(!szButton1.isEmpty()) buttons|=QMessageBox::No | QMessageBox::Escape;
+ bool btn=false;
+ if (!szButton0.isEmpty()) {btn=true;buttons=QMessageBox::Ok | QMessageBox::Default;}
+ if (!szButton2.isEmpty()) {btn=true;buttons|=QMessageBox::Cancel | QMessageBox::Escape;}
+ else if(!szButton1.isEmpty()) {btn=true;buttons|=QMessageBox::No | QMessageBox::Escape;}
+ if (!btn) buttons=QMessageBox::Ok;
setStandardButtons(buttons);
g_pDialogModuleDialogList->append(this);
@@ -95,6 +98,7 @@ KviKvsCallbackMessageBox::KviKvsCallbackMessageBox(
KviKvsCallbackMessageBox::~KviKvsCallbackMessageBox()
{
+ debug("Deleting");
g_pDialogModuleDialogList->removeRef(this);
}
@@ -114,7 +118,6 @@ void KviKvsCallbackMessageBox::done(int code)
params.append(new KviKvsVariant(iVal));
execute(&params);
-
delete this;
}
@@ -534,7 +537,8 @@ void KviKvsCallbackFileDialog::done(int code)
// ...so skip out of this call stack and ask KviApp to destroy us just
// when the control returns to the main loop.
// If the module is unloaded then , KviApp will notice it and will NOT delete the dialog
- g_pApp->collectGarbage(this);
+ this->deleteLater();
+ //g_pApp->collectGarbage(this);
// calling dialog.unload here WILL lead to a sigsegv (this is SURE
// with a lot of qt versions that have the ugly file dialog "accept before this reference" bug)
@@ -660,8 +664,8 @@ void KviKvsCallbackImageDialog::done(int code)
// ...so skip out of this call stack and ask KviApp to destroy us just
// when the control returns to the main loop.
// If the module is unloaded then , KviApp will notice it and will NOT delete the dialog
- g_pApp->collectGarbage(this);
-
+ //g_pApp->collectGarbage(this);
+ this->deleteLater();
// calling dialog.unload here WILL lead to a sigsegv (this is SURE
// with a lot of qt versions that have the ugly file dialog "accept before this reference" bug)
// to avoid it, we can execute the callback triggered by a timer...
@@ -869,7 +873,7 @@ static bool dialog_module_init(KviModule * m)
{
g_pDialogModuleDialogList = new KviPointerList<QWidget>;
g_pDialogModuleDialogList->setAutoDelete(false);
-
+debug("registering comman");
KVSM_REGISTER_CALLBACK_COMMAND(m,"message",dialog_kvs_cmd_message);
KVSM_REGISTER_CALLBACK_COMMAND(m,"textinput",dialog_kvs_cmd_textinput);
KVSM_REGISTER_CALLBACK_COMMAND(m,"file",dialog_kvs_cmd_file);
diff --git a/src/modules/file/libkvifile.cpp b/src/modules/file/libkvifile.cpp
index 2b5320bd4..279e2186f 100644
--- a/src/modules/file/libkvifile.cpp
+++ b/src/modules/file/libkvifile.cpp
@@ -459,7 +459,7 @@ static bool file_kvs_fnc_size(KviKvsModuleFunctionCall * c)
return true;
}
/*
- @doc: file.allSizese
+ @doc: file.allSizes
@type:
function
@title:
diff --git a/src/modules/objects/class_toolbutton.cpp b/src/modules/objects/class_toolbutton.cpp
index 9e36a25d8..bb7cb0e1b 100644
--- a/src/modules/objects/class_toolbutton.cpp
+++ b/src/modules/objects/class_toolbutton.cpp
@@ -99,30 +99,30 @@
Returns the time delay between pressing the button and the appearance of the associated popup menu in milliseconds.
*/
KVSO_BEGIN_REGISTERCLASS(KviKvsObject_toolbutton,"toolbutton","widget")
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setImage", functionsetImage)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setUsesBigPixmap", functionsetUsesBigPixmap)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"usesBigPixmap", functionusesBigPixmap)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setUsesTextLabel", functionsetUsesTextLabel)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"usesTextLabel", functionusesTextLabel)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setAutoRaise", function_setAutoRaise)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"autoRaise", function_autoRaise)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setTextLabel", functionsetTextLabel)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"textLabel", functiontextLabel)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setPopup", functionsetPopup)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"openPopup", functionopenPopup)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setImage)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setUsesBigPixmap)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,usesBigPixmap)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setUsesTextLabel)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,usesTextLabel)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setAutoRaise)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,autoRaise)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setTextLabel)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,textLabel)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setPopup)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,openPopup)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setToggleButton", functionsetToggleButton)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"toggle", functiontoggle)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setOn", functionsetOn)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setToggleButton)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,toggle)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setOn)
/*
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setPopupDelay", functionsetPopupDelay)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"popupDelay", functionpopupDelay)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,"setPopupDelay", functionsetPopupDelay)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,"popupDelay", functionpopupDelay)
*/
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"setTextPosition", functionsetTextPosition)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"textPosition", functiontextPosition)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,setTextPosition)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,textPosition)
- KVSO_REGISTER_HANDLER(KviKvsObject_toolbutton,"clickEvent",function_clickEvent)
+ KVSO_REGISTER_HANDLER_NEW(KviKvsObject_toolbutton,clickEvent)
KVSO_END_REGISTERCLASS(KviKvsObject_toolbutton)
KVSO_BEGIN_CONSTRUCTOR(KviKvsObject_toolbutton,KviKvsObject_widget)
@@ -141,13 +141,13 @@ bool KviKvsObject_toolbutton::init(KviKvsRunTimeContext * pContext,KviKvsVariant
return true;
}
-bool KviKvsObject_toolbutton::functionsetImage(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setImage)
{
+ CHECK_INTERNAL_POINTER(widget())
QString icon;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("icon_id",KVS_PT_STRING,0,icon)
KVSO_PARAMETERS_END(c)
- if (!widget()) return true;
QPixmap * pix = g_pIconManager->getImage(icon);
if(pix){
((QToolButton *)widget())->setIcon(QIcon(*pix));
@@ -156,102 +156,103 @@ bool KviKvsObject_toolbutton::functionsetImage(KviKvsObjectFunctionCall *c)
((QToolButton *)widget())->setIcon(QIcon());
return true;
}
-bool KviKvsObject_toolbutton::functionsetUsesBigPixmap(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setUsesBigPixmap)
{
+ CHECK_INTERNAL_POINTER(widget())
bool bEnabled;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled)
KVSO_PARAMETERS_END(c)
- if(widget())
- ((QToolButton *)widget())->setIconSize(bEnabled?QSize(32,32):QSize(22,22));
+ ((QToolButton *)widget())->setIconSize(bEnabled?QSize(32,32):QSize(22,22));
return true;
}
-bool KviKvsObject_toolbutton::functionusesBigPixmap(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,usesBigPixmap)
{
- if (widget())
- c->returnValue()->setBoolean(((QToolButton *)widget())->iconSize().height() > 22);
+ CHECK_INTERNAL_POINTER(widget())
+ c->returnValue()->setBoolean(((QToolButton *)widget())->iconSize().height() > 22);
return true;
}
-bool KviKvsObject_toolbutton::functionsetUsesTextLabel(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setUsesTextLabel)
{
+ CHECK_INTERNAL_POINTER(widget())
bool bEnabled;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled)
KVSO_PARAMETERS_END(c)
- if(widget())
- ((QToolButton *)widget())->setToolButtonStyle(bEnabled?Qt::ToolButtonTextUnderIcon : Qt::ToolButtonIconOnly);
+ ((QToolButton *)widget())->setToolButtonStyle(bEnabled?Qt::ToolButtonTextUnderIcon : Qt::ToolButtonIconOnly);
return true;
}
-bool KviKvsObject_toolbutton::functionusesTextLabel(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,usesTextLabel)
{
- if (widget())
- c->returnValue()->setBoolean(((QToolButton *)widget())->toolButtonStyle() != Qt::ToolButtonIconOnly);
+ CHECK_INTERNAL_POINTER(widget())
+ c->returnValue()->setBoolean(((QToolButton *)widget())->toolButtonStyle() != Qt::ToolButtonIconOnly);
return true;
}
-bool KviKvsObject_toolbutton::function_setAutoRaise(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setAutoRaise)
{
+ CHECK_INTERNAL_POINTER(widget())
bool bEnabled;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled)
KVSO_PARAMETERS_END(c)
- if(widget())
- ((QToolButton *)widget())->setAutoRaise(bEnabled);
+ ((QToolButton *)widget())->setAutoRaise(bEnabled);
return true;
}
-bool KviKvsObject_toolbutton::function_autoRaise(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,autoRaise)
{
- if(widget())
- c->returnValue()->setBoolean(((QToolButton *)widget())->autoRaise());
+ CHECK_INTERNAL_POINTER(widget())
+ c->returnValue()->setBoolean(((QToolButton *)widget())->autoRaise());
return true;
}
-bool KviKvsObject_toolbutton::functionsetOn(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setOn)
{
+ CHECK_INTERNAL_POINTER(widget())
bool bEnabled;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled)
KVSO_PARAMETERS_END(c)
- if(widget())
- ((QToolButton *)widget())->setChecked(bEnabled);
+ ((QToolButton *)widget())->setChecked(bEnabled);
return true;
}
-bool KviKvsObject_toolbutton::functionsetToggleButton(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setToggleButton)
{
+ CHECK_INTERNAL_POINTER(widget())
bool bEnabled;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled)
KVSO_PARAMETERS_END(c)
- if(widget())
- ((QToolButton *)widget())->setCheckable(bEnabled);
+ ((QToolButton *)widget())->setCheckable(bEnabled);
return true;
}
-bool KviKvsObject_toolbutton::functiontoggle(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,toggle)
{
- if (widget())
- ((QToolButton *)widget())->toggle();
+ CHECK_INTERNAL_POINTER(widget())
+ ((QToolButton *)widget())->toggle();
return true;
}
-bool KviKvsObject_toolbutton::functionsetTextLabel(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setTextLabel)
{
+ CHECK_INTERNAL_POINTER(widget())
QString szLabel,szTip;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("label",KVS_PT_STRING,0,szLabel)
KVSO_PARAMETER("tooltip",KVS_PT_STRING,KVS_PF_OPTIONAL,szTip)
KVSO_PARAMETERS_END(c)
- if(!widget()) return true;
((QToolButton *)widget())->setText(szLabel);
if (!szTip.isEmpty()) ((QToolButton *)widget())->setToolTip(szTip);
return true;
}
-bool KviKvsObject_toolbutton::functiontextLabel(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,textLabel)
{
- if (widget())
- c->returnValue()->setString(((QToolButton *)widget())->text());
+ CHECK_INTERNAL_POINTER(widget())
+ c->returnValue()->setString(((QToolButton *)widget())->text());
return true;
}
-bool KviKvsObject_toolbutton::functionsetPopup(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setPopup)
{
+ CHECK_INTERNAL_POINTER(widget())
KviKvsObject *ob;
kvs_hobject_t hObject;
KVSO_PARAMETERS_BEGIN(c)
@@ -260,31 +261,30 @@ bool KviKvsObject_toolbutton::functionsetPopup(KviKvsObjectFunctionCall *c)
ob=KviKvsKernel::instance()->objectController()->lookupObject(hObject);
if (!ob)
{
- c->warning(__tr2qs("Widget parameter is not an object"));
+ c->warning(__tr2qs_ctx("Widget parameter is not an object","objects"));
return true;
}
if (!ob->object())
{
- c->warning(__tr2qs("Widget parameter is not a valid object"));
+ c->warning(__tr2qs_ctx("Widget parameter is not a valid object","objects"));
return true;
}
if(!ob->inheritsClass("popupmenu"))
{
- c->warning(__tr2qs("Can't add a non - popupmenu object"));
+ c->warning(__tr2qs_ctx("Can't add a non - popupmenu object","objects"));
return TRUE;
}
- if(widget())
- ((QToolButton *)widget())->setMenu(((KviTalPopupMenu *)(ob->object())));
+ ((QToolButton *)widget())->setMenu(((KviTalPopupMenu *)(ob->object())));
return true;
}
-bool KviKvsObject_toolbutton::functionopenPopup(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,openPopup)
{
- if(widget())
- ((QToolButton *)widget())->showMenu();
+ CHECK_INTERNAL_POINTER(widget())
+ ((QToolButton *)widget())->showMenu();
return true;
}
/*
-bool KviKvsObject_toolbutton::functionsetPopupDelay(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setPopupDelay)
{
kvs_int_t uDelay;
KVSO_PARAMETERS_BEGIN(c)
@@ -294,37 +294,37 @@ bool KviKvsObject_toolbutton::functionsetPopupDelay(KviKvsObjectFunctionCall *c)
((QToolButton *)widget())->setPopupDelay(uDelay);
return true;
}
-bool KviKvsObject_toolbutton::functionpopupDelay(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,popupDelay)
{
if (widget())
c->returnValue()->setInteger(((QToolButton *)widget())->popupDelay());
return true;
}
*/
-bool KviKvsObject_toolbutton::functionsetTextPosition(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,setTextPosition)
{
+ CHECK_INTERNAL_POINTER(widget())
QString szPos;
KVSO_PARAMETERS_BEGIN(c)
KVSO_PARAMETER("position",KVS_PT_STRING,0,szPos)
KVSO_PARAMETERS_END(c)
- if(!widget())return true;
if(KviQString::equalCI(szPos,"BesideIcon"))
((QToolButton *)widget())->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
else if(KviQString::equalCI(szPos,"BelowIcon"))
((QToolButton *)widget())->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
- else c->warning(__tr2qs("Unknown text position '%Q'"),&szPos);
+ else c->warning(__tr2qs_ctx("Unknown text position '%Q'","objects"),&szPos);
return true;
}
-bool KviKvsObject_toolbutton::functiontextPosition(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,textPosition)
{
- if(!widget()) return true;
+ CHECK_INTERNAL_POINTER(widget())
QString szPos="BelowIcon";
if ((((QToolButton *)widget())->toolButtonStyle())==(Qt::ToolButtonTextBesideIcon))
szPos="BesideIcon";
c->returnValue()->setString(szPos);
return true;
}
-bool KviKvsObject_toolbutton::function_clickEvent(KviKvsObjectFunctionCall *c)
+KVSO_CLASS_FUNCTION(toolbutton,clickEvent)
{
emitSignal("clicked",c);
return true;
diff --git a/src/modules/objects/class_toolbutton.h b/src/modules/objects/class_toolbutton.h
index 968c575a2..6dd8744b3 100644
--- a/src/modules/objects/class_toolbutton.h
+++ b/src/modules/objects/class_toolbutton.h
@@ -40,26 +40,26 @@ public:
protected:
virtual bool init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams);
- bool functionsetImage(KviKvsObjectFunctionCall *c);
- bool functionsetUsesBigPixmap(KviKvsObjectFunctionCall *c);
- bool functionusesBigPixmap(KviKvsObjectFunctionCall *c);
- bool functionsetUsesTextLabel(KviKvsObjectFunctionCall *c);
- bool functionusesTextLabel(KviKvsObjectFunctionCall *c);
- bool functionsetTextLabel(KviKvsObjectFunctionCall *c);
- bool functiontextLabel(KviKvsObjectFunctionCall *c);
- bool functionsetPopup(KviKvsObjectFunctionCall *c);
- bool functionopenPopup(KviKvsObjectFunctionCall *c);
- bool functionsetOn(KviKvsObjectFunctionCall *c);
- bool functionsetToggleButton(KviKvsObjectFunctionCall *c);
- bool functiontoggle(KviKvsObjectFunctionCall *c);
-// bool functionsetPopupDelay(KviKvsObjectFunctionCall *c);
-// bool functionpopupDelay(KviKvsObjectFunctionCall *c);
- bool functionsetTextPosition(KviKvsObjectFunctionCall *c);
- bool functiontextPosition(KviKvsObjectFunctionCall *c);
+ bool setImage(KviKvsObjectFunctionCall *c);
+ bool setUsesBigPixmap(KviKvsObjectFunctionCall *c);
+ bool usesBigPixmap(KviKvsObjectFunctionCall *c);
+ bool setUsesTextLabel(KviKvsObjectFunctionCall *c);
+ bool usesTextLabel(KviKvsObjectFunctionCall *c);
+ bool setTextLabel(KviKvsObjectFunctionCall *c);
+ bool textLabel(KviKvsObjectFunctionCall *c);
+ bool setPopup(KviKvsObjectFunctionCall *c);
+ bool openPopup(KviKvsObjectFunctionCall *c);
+ bool setOn(KviKvsObjectFunctionCall *c);
+ bool setToggleButton(KviKvsObjectFunctionCall *c);
+ bool toggle(KviKvsObjectFunctionCall *c);
+// bool setPopupDelay(KviKvsObjectFunctionCall *c);
+// bool popupDelay(KviKvsObjectFunctionCall *c);
+ bool setTextPosition(KviKvsObjectFunctionCall *c);
+ bool textPosition(KviKvsObjectFunctionCall *c);
- bool function_setAutoRaise(KviKvsObjectFunctionCall *c);
- bool function_autoRaise(KviKvsObjectFunctionCall *c);
- bool function_clickEvent(KviKvsObjectFunctionCall *c);
+ bool setAutoRaise(KviKvsObjectFunctionCall *c);
+ bool autoRaise(KviKvsObjectFunctionCall *c);
+ bool clickEvent(KviKvsObjectFunctionCall *c);
signals:
void clicked();
protected slots:
diff --git a/src/modules/objects/object_macros.h b/src/modules/objects/object_macros.h
index 15e0cc4da..9c7f90af5 100644
--- a/src/modules/objects/object_macros.h
+++ b/src/modules/objects/object_macros.h
@@ -106,7 +106,7 @@ g_pKvs##__className##Class->registerFunctionHandler(#__szName,(KviKvsObjectFunct
return false; \
}
#define CHECK_HOBJECT_IS_WIDGET(__pObject)\
-if (__pObject)\
+if (!__pObject)\
{\
c->warning(__tr2qs_ctx("Widget parameter is not an object","objects"));\
return true;\