diff options
| author | 2011-02-21 18:53:14 +0000 | |
|---|---|---|
| committer | 2011-02-21 18:53:14 +0000 | |
| commit | 0724d1b3373a0cef3e1685b52d84cf7eb946c22e (patch) | |
| tree | 589c56698a9926f4cf070478a72051baa3ba2322 /src/modules | |
| parent | Code improvements in kvs class tablewidget (diff) | |
| download | KVIrc-0724d1b3373a0cef3e1685b52d84cf7eb946c22e.tar.gz KVIrc-0724d1b3373a0cef3e1685b52d84cf7eb946c22e.tar.bz2 KVIrc-0724d1b3373a0cef3e1685b52d84cf7eb946c22e.zip | |
Code improvements in kvs class window(wip)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5487 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules')
| -rw-r--r-- | src/modules/objects/KvsObject_window.cpp | 22 | ||||
| -rw-r--r-- | src/modules/objects/KvsObject_window.h | 12 |
2 files changed, 31 insertions, 3 deletions
diff --git a/src/modules/objects/KvsObject_window.cpp b/src/modules/objects/KvsObject_window.cpp index 9037a5404..603c1bd04 100644 --- a/src/modules/objects/KvsObject_window.cpp +++ b/src/modules/objects/KvsObject_window.cpp @@ -28,6 +28,7 @@ #include "KviError.h" #include "kvi_debug.h" +#include "KviIconManager.h" #include "KviLocale.h" #include "KviMainWindow.h" @@ -37,6 +38,7 @@ KviKvsScriptWindowWindow::KviKvsScriptWindowWindow(KviMainWindow * pParent,const : KviWindow(KviWindow::ScriptObject,pParent,szName) { m_pCentralWidget = 0; + m_pIcon = 0; } @@ -69,7 +71,11 @@ void KviKvsScriptWindowWindow::centralWidgetDestroyed() } - +QPixmap * KviKvsScriptWindowWindow::myIconPtr() +{ + if (m_pIcon) return m_pIcon; + else return g_pIconManager->getSmallIcon(KviIconManager::DefaultIcon); +} /* @doc: window @@ -97,6 +103,7 @@ void KviKvsScriptWindowWindow::centralWidgetDestroyed() KVSO_BEGIN_REGISTERCLASS(KvsObject_window,"window","widget") KVSO_REGISTER_HANDLER_BY_NAME(KvsObject_window,setWindowTitle) + KVSO_REGISTER_HANDLER_BY_NAME(KvsObject_window,setIcon) KVSO_REGISTER_HANDLER_BY_NAME(KvsObject_window,setCentralWidget) KVSO_END_REGISTERCLASS(KvsObject_window) @@ -128,6 +135,19 @@ KVSO_CLASS_FUNCTION(window,setWindowTitle) ((KviKvsScriptWindowWindow *)widget())->setWindowTitleString(szCaption); return true; } + +KVSO_CLASS_FUNCTION(window,setIcon) +{ + CHECK_INTERNAL_POINTER(widget()) + QString szIcon; + KVSO_PARAMETERS_BEGIN(c) + KVSO_PARAMETER("icon",KVS_PT_STRING,0,szIcon) + KVSO_PARAMETERS_END(c) + QPixmap * pix = g_pIconManager->getImage(szIcon); + if(pix) ((KviKvsScriptWindowWindow *)widget())->setIcon(pix); + return true; +} + KVSO_CLASS_FUNCTION(window,setCentralWidget) { CHECK_INTERNAL_POINTER(widget()) diff --git a/src/modules/objects/KvsObject_window.h b/src/modules/objects/KvsObject_window.h index 7131d8722..63468f434 100644 --- a/src/modules/objects/KvsObject_window.h +++ b/src/modules/objects/KvsObject_window.h @@ -38,7 +38,8 @@ public: protected: virtual bool init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams); - bool setWindowTitle(KviKvsObjectFunctionCall *c); + bool setWindowTitle(KviKvsObjectFunctionCall *c); + bool setIcon(KviKvsObjectFunctionCall *c); bool setCentralWidget(KviKvsObjectFunctionCall *c); }; @@ -53,9 +54,16 @@ public: protected: KvsObject_widget * m_pCentralWidgetObject; QWidget * m_pCentralWidget; + QPixmap * m_pIcon; public: + virtual QPixmap * myIconPtr(); + void setIcon(QPixmap *pPixmap){m_pIcon = pPixmap;}; void setCentralWidget(KvsObject_widget *o,QWidget * w); - void setWindowTitleString(const QString &s){ setFixedCaption(s); }; + void setWindowTitleString(const QString &s) + { + setFixedCaption(s); + fillCaptionBuffers(); + }; virtual void resizeEvent(QResizeEvent *e); protected slots: void centralWidgetObjectDestroyed(); |
