aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/notifier/NotifierWindowTab.h
diff options
context:
space:
mode:
authorGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
committerGravatar Szymon Tomasz Stefanek2011-01-01 20:19:56 +0000
commitc601b5a27f74b16158adafe429faefbe573e64a2 (patch)
treea3cde3206a45628f8ac86e8dfbdab70b20c3a831 /src/modules/notifier/NotifierWindowTab.h
parentprobable compilation fix for rijndaled/crypto++ (diff)
downloadKVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.gz
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.tar.bz2
KVIrc-c601b5a27f74b16158adafe429faefbe573e64a2.zip
The big rename for modules. Still some details remaining.
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@5284 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/notifier/NotifierWindowTab.h')
-rw-r--r--src/modules/notifier/NotifierWindowTab.h120
1 files changed, 120 insertions, 0 deletions
diff --git a/src/modules/notifier/NotifierWindowTab.h b/src/modules/notifier/NotifierWindowTab.h
new file mode 100644
index 000000000..5a07f387d
--- /dev/null
+++ b/src/modules/notifier/NotifierWindowTab.h
@@ -0,0 +1,120 @@
+#ifndef _KVINOTIFIERWINDOWTAB_H_
+#define _KVINOTIFIERWINDOWTAB_H_
+//=============================================================================
+//
+// File : NotifierWindowTab.h
+// Creation date : Tue 07 Jul 2009 10:28 by Fabio Bas
+//
+// This file is part of the KVIrc distribution
+// Copyright (C) 2009 Fabio Bas < ctrlaltca at gmail dot com >
+//
+// This program is FREE software. You can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your opinion) any later version.
+//
+// This program is distributed in the HOPE that it will be USEFUL,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, write to the Free Software Foundation,
+// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+//
+//=============================================================================
+
+/**
+* \file NotifierWindowTab.h
+* \author Fabio Bas
+* \brief Defines the tab page for the notifier object
+*/
+
+#include "NotifierMessage.h"
+
+#include "kvi_settings.h"
+
+#include <QScrollArea>
+
+class QVBoxLayout;
+class QWidget;
+class QTabWidget;
+class QPainter;
+class KviWindow;
+
+/**
+* \class NotifierWindowTab
+* \brief Defines an object for every single tab about the tabs area
+*/
+class NotifierWindowTab : public QScrollArea
+{
+ Q_OBJECT
+public:
+ /**
+ * \brief Creates the tab object
+ * \param pWnd The name of the window represented by the tab
+ * \param pParent The parent area container
+ * \return NotifierWindowTab
+ */
+ NotifierWindowTab(KviWindow * pWnd, QTabWidget * pParent);
+
+ /**
+ * \brief Destroys the tab object
+ */
+ ~NotifierWindowTab();
+private:
+ QString m_szLabel;
+ KviWindow * m_pWnd;
+ QTabWidget * m_pParent;
+ QVBoxLayout * m_pVBox;
+ QWidget * m_pVWidget;
+public:
+ /**
+ * \brief Appends the given message to the window
+ * \param pMessage The message received to append
+ * \return void
+ */
+ void appendMessage(NotifierMessage * pMessage);
+
+ /**
+ * \brief Updates the GUI
+ * \return void
+ */
+ void updateGui();
+
+ /**
+ * \brief Returns the name of the current window
+ * \return QString
+ */
+ inline QString label() const { return m_szLabel; };
+
+ /**
+ * \brief Returns the pointer of the current window
+ * \return KviWindow *
+ */
+ inline KviWindow * wnd() const { return m_pWnd; };
+protected:
+ virtual void mouseDoubleClickEvent(QMouseEvent * e);
+ virtual void resizeEvent(QResizeEvent * e);
+ virtual void paintEvent(QPaintEvent * e);
+private slots:
+ /**
+ * \brief Emitted when the scrollbar range is changed
+ * \return void
+ */
+ void scrollRangeChanged(int, int);
+
+ /**
+ * \brief Emitted when the window changes its name
+ * \return void
+ */
+ void labelChanged();
+
+ /**
+ * \brief Emitted when the window is being destroyed
+ * \return void
+ */
+ void closeMe();
+};
+
+#endif //!_KVINOTIFIERWINDOWTAB_H_