aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/objects
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/objects')
-rw-r--r--src/modules/objects/class_button.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/modules/objects/class_button.cpp b/src/modules/objects/class_button.cpp
index ca5c29911..f686c0187 100644
--- a/src/modules/objects/class_button.cpp
+++ b/src/modules/objects/class_button.cpp
@@ -116,15 +116,20 @@ KVSO_CLASS_FUNCTION(button,setText)
KVSO_CLASS_FUNCTION(button,setImage)
{
CHECK_INTERNAL_POINTER(widget())
- KviKvsVariant icon;
+ KviKvsVariant * pIcon;
KVSO_PARAMETERS_BEGIN(c)
- KVSO_PARAMETER("icon_or_hobject",KVS_PT_VARIANT,0,icon)
+ KVSO_PARAMETER("icon_or_hobject",KVS_PT_VARIANT,0,pIcon)
KVSO_PARAMETERS_END(c)
- if(icon.isHObject())
+ if(!pIcon)
+ {
+ c->warning(__tr2qs_ctx("Image parameter missing","object"));
+ return true;
+ }
+ if(pIcon->isHObject())
{
kvs_hobject_t hObj;
- icon.asHObject(hObj);
- KviKvsObject *pObject=KviKvsKernel::instance()->objectController()->lookupObject(hObj);
+ pIcon->asHObject(hObj);
+ KviKvsObject *pObject = KviKvsKernel::instance()->objectController()->lookupObject(hObj);
if (!pObject)
{
c->warning(__tr2qs_ctx("Pixmap parameter is not an object!","objects"));
@@ -132,13 +137,12 @@ KVSO_CLASS_FUNCTION(button,setImage)
}
if(pObject->inheritsClass("pixmap"))
((QPushButton *)widget())->setIcon(QIcon(*((KviKvsObject_pixmap *)pObject)->getPixmap()));
- else{
+ else
c->warning(__tr2qs_ctx("Object Pixmap required!","object"));
- }
return true;
}
QString szIcon;
- icon.asString(szIcon);
+ pIcon->asString(szIcon);
QPixmap * pix = g_pIconManager->getImage(szIcon);
if(pix) ((QPushButton *)widget())->setIcon(*pix);
else((QPushButton *)widget())->setIcon(QIcon());