diff options
| author | 2007-04-12 17:20:52 +0000 | |
|---|---|---|
| committer | 2007-04-12 17:20:52 +0000 | |
| commit | b1b069b5e5bfd50b62054501944a378e6449b74d (patch) | |
| tree | 4171dff99db009e6fe5cf50a38d2492fa8ec581e /src/modules | |
| parent | git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@482 17fca916-40b9-46aa-a4ea-... (diff) | |
| download | KVIrc-b1b069b5e5bfd50b62054501944a378e6449b74d.tar.gz KVIrc-b1b069b5e5bfd50b62054501944a378e6449b74d.tar.bz2 KVIrc-b1b069b5e5bfd50b62054501944a378e6449b74d.zip | |
added setAttribute to widget classes (QT4 only)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@483 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/objects/class_widget.cpp | 51 | ||||
| -rw-r--r-- | src/modules/objects/class_widget.h | 5 |
2 files changed, 54 insertions, 2 deletions
diff --git a/src/modules/objects/class_widget.cpp b/src/modules/objects/class_widget.cpp index 0026eb102..3076d92ed 100644 --- a/src/modules/objects/class_widget.cpp +++ b/src/modules/objects/class_widget.cpp @@ -69,6 +69,22 @@ const char * const widgettypes_tbl[] = { "NoAutoErase"
};
#ifdef COMPILE_USE_QT4
+const Qt::WidgetAttribute widgetattributes_cod[]= {
+ Qt::WA_OpaquePaintEvent,
+ Qt::WA_NoSystemBackground,
+ Qt::WA_PaintOnScreen,
+ Qt::WA_NoMousePropagation,
+};
+
+const char * const widgetattributes_tbl[] = {
+ "opaquePaintEvent",
+ "noSystemBackground",
+ "paintOnScreen",
+ "noMousePropagation",
+};
+#define widgetattributes_num (sizeof(widgetattributes_tbl) / sizeof(widgetattributes_tbl[0]))
+
+
const Qt::WindowType widgettypes_cod[] = {
#else
const int widgettypes_cod[] = {
@@ -87,13 +103,13 @@ const int widgettypes_cod[] = { };
-
-
#ifdef COMPILE_USE_QT4
+
#define QT_WIDGET_TABFOCUS Qt::TabFocus
#define QT_WIDGET_CLICKFOCUS Qt::ClickFocus
#define QT_WIDGET_STRONGFOCUS Qt::StrongFocus
#define QT_WIDGET_NOFOCUS Qt::NoFocus
+
#else
#define QT_WIDGET_TABFOCUS QWidget::TabFocus
#define QT_WIDGET_CLICKFOCUS QWidget::ClickFocus
@@ -598,6 +614,11 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_widget,"widget","object") KVSO_REGISTER_HANDLER(KviKvsObject_widget,"setDynamicToolTip",function_setDynamicToolTip)
KVSO_REGISTER_HANDLER(KviKvsObject_widget,"setMask",function_setMask)
+ // QT4 only
+#ifdef COMPILE_USE_QT4
+ KVSO_REGISTER_HANDLER(KviKvsObject_widget,"setAttribute",function_setAttribute)
+#endif
+
// events
KVSO_REGISTER_STANDARD_NOTHINGRETURN_HANDLER(KviKvsObject_widget,"mousePressEvent")
KVSO_REGISTER_STANDARD_NOTHINGRETURN_HANDLER(KviKvsObject_widget,"mouseReleaseEvent")
@@ -1704,4 +1725,30 @@ bool KviKvsObject_widget::function_setMask(KviKvsObjectFunctionCall *c) widget()->setMask(mask);
return true;
}
+#ifdef COMPILE_USE_QT4
+bool KviKvsObject_widget::function_setAttribute(KviKvsObjectFunctionCall *c)
+{
+ QString attribute;
+ bool bFlag;
+ KVSO_PARAMETERS_BEGIN(c)
+ KVSO_PARAMETER("widget_atribute",KVS_PT_STRING,0,attribute)
+ KVSO_PARAMETER("bool_flag",KVS_PT_BOOLEAN,0,bFlag)
+ KVSO_PARAMETERS_END(c)
+ if (!widget()) return true;
+ bool found=false;
+ unsigned int j = 0;
+ for(; j < widgetattributes_num; j++)
+ {
+ if(KviQString::equalCI(attribute, widgetattributes_tbl[j]))
+ {
+ found=true;
+ break;
+ }
+ }
+ if(found)widget()->setAttribute(widgetattributes_cod[j],bFlag);
+ else c->warning(__tr2qs("Unknown widget attribute '%Q'"),&attribute);
+ return true;
+}
+#endif
+
#include "m_class_widget.moc"
diff --git a/src/modules/objects/class_widget.h b/src/modules/objects/class_widget.h index c0d222206..76d13d8d0 100644 --- a/src/modules/objects/class_widget.h +++ b/src/modules/objects/class_widget.h @@ -101,6 +101,11 @@ protected: bool function_y(KviKvsObjectFunctionCall *); bool function_setDynamicToolTip(KviKvsObjectFunctionCall *c); bool function_setMask(KviKvsObjectFunctionCall *c); + + +#ifdef COMPILE_USE_QT4 +bool function_setAttribute(KviKvsObjectFunctionCall *c); +#endif signals: void aboutToDie(); |
