aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Fabio Bas2009-12-31 11:19:02 +0000
committerGravatar Fabio Bas2009-12-31 11:19:02 +0000
commit7867bc9f65ca86bd5249e544a7d0664ddbd9ba35 (patch)
treef1300b4f0c605b03214579a2d08bfb8ed6fd2778
parentfixed "download" folder in portable mode #676 (diff)
downloadKVIrc-7867bc9f65ca86bd5249e544a7d0664ddbd9ba35.tar.gz
KVIrc-7867bc9f65ca86bd5249e544a7d0664ddbd9ba35.tar.bz2
KVIrc-7867bc9f65ca86bd5249e544a7d0664ddbd9ba35.zip
fix for #677
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3771 17fca916-40b9-46aa-a4ea-0a15b648b75c
-rw-r--r--src/kvirc/kernel/kvi_options.cpp3
-rw-r--r--src/kvirc/kernel/kvi_options.h3
-rw-r--r--src/kvirc/ui/kvi_windowlist_tree.cpp14
-rw-r--r--src/kvirc/ui/kvi_windowlist_tree.h10
-rw-r--r--src/modules/options/optw_windowlist.cpp8
5 files changed, 33 insertions, 5 deletions
diff --git a/src/kvirc/kernel/kvi_options.cpp b/src/kvirc/kernel/kvi_options.cpp
index ff631cc1d..46d54dba1 100644
--- a/src/kvirc/kernel/kvi_options.cpp
+++ b/src/kvirc/kernel/kvi_options.cpp
@@ -317,7 +317,8 @@ KviBoolOption g_boolOptionsTable[KVI_NUM_BOOL_OPTIONS]=
BOOL_OPTION("ZshLikeNickCompletion",false,KviOption_sectFlagInput),
BOOL_OPTION("AutoAcceptDccVideo", false, KviOption_sectFlagDcc),
BOOL_OPTION("CreateMinimizedDccVideo", false, KviOption_sectFlagDcc),
- BOOL_OPTION("CreateMinimizedDccVideoWhenAutoAccepted",true,KviOption_sectFlagDcc)
+ BOOL_OPTION("CreateMinimizedDccVideoWhenAutoAccepted",true,KviOption_sectFlagDcc),
+ BOOL_OPTION("ShowTreeWindowListHeader",false,KviOption_sectFlagWindowList | KviOption_resetUpdateGui | KviOption_groupTheme)
};
#define STRING_OPTION(_txt,_val,_flags) KviStringOption(KVI_STRING_OPTIONS_PREFIX _txt,_val,_flags)
diff --git a/src/kvirc/kernel/kvi_options.h b/src/kvirc/kernel/kvi_options.h
index e855e9a13..4bfe86935 100644
--- a/src/kvirc/kernel/kvi_options.h
+++ b/src/kvirc/kernel/kvi_options.h
@@ -325,8 +325,9 @@ DECLARE_OPTION_STRUCT(KviStringListOption,QStringList)
#define KviOption_boolAutoAcceptDccVideo 231 /* dcc::video */
#define KviOption_boolCreateMinimizedDccVideo 232 /* dcc::video */
#define KviOption_boolCreateMinimizedDccVideoWhenAutoAccepted 233 /* dcc::video */
+#define KviOption_boolShowTreeWindowListHeader 234
-#define KVI_NUM_BOOL_OPTIONS 234
+#define KVI_NUM_BOOL_OPTIONS 235
#define KVI_STRING_OPTIONS_PREFIX "string"
diff --git a/src/kvirc/ui/kvi_windowlist_tree.cpp b/src/kvirc/ui/kvi_windowlist_tree.cpp
index d69fe2b86..a4622271a 100644
--- a/src/kvirc/ui/kvi_windowlist_tree.cpp
+++ b/src/kvirc/ui/kvi_windowlist_tree.cpp
@@ -293,6 +293,10 @@ void KviTreeWindowListTreeWidget::paintEvent(QPaintEvent * event)
KviTreeWindowList::KviTreeWindowList()
: KviWindowListBase()
{
+ // to hide the title bar completely must replace the default widget with a generic one
+ m_pTitleWidget = new KviTreeWindowListTitleWidget();
+ setTitleBarWidget( m_pTitleWidget );
+
m_pTreeWidget = new KviTreeWindowListTreeWidget(this);
m_pTreeWidget->setColumnWidth(0,135);
m_pTreeWidget->header()->hide();
@@ -326,6 +330,8 @@ KviTreeWindowList::KviTreeWindowList()
KviTreeWindowList::~KviTreeWindowList()
{
+ if(m_pTitleWidget)
+ delete m_pTitleWidget;
}
void KviTreeWindowList::updatePseudoTransparency()
@@ -471,6 +477,14 @@ bool KviTreeWindowList::setIterationPointer(KviWindowListItem * it)
void KviTreeWindowList::applyOptions()
{
+ if(KVI_OPTION_BOOL(KviOption_boolShowTreeWindowListHeader))
+ {
+ m_pTitleWidget->setText(__tr2qs("Window List"));
+ m_pTitleWidget->setMargin(2);
+ m_pTitleWidget->setIndent(4);
+ } else {
+ m_pTitleWidget->setText("");
+ }
}
// KviTreeWindowListItemDelegate
diff --git a/src/kvirc/ui/kvi_windowlist_tree.h b/src/kvirc/ui/kvi_windowlist_tree.h
index 6724e6177..442c6f08d 100644
--- a/src/kvirc/ui/kvi_windowlist_tree.h
+++ b/src/kvirc/ui/kvi_windowlist_tree.h
@@ -28,6 +28,7 @@
#include <QTreeWidget>
#include <QStyledItemDelegate>
#include <QAbstractItemView>
+#include <QLabel>
class KviTreeWindowList;
class KviTreeWindowListItemInternal;
@@ -80,6 +81,14 @@ public slots:
void reverseSort();
};
+class KVIRC_API KviTreeWindowListTitleWidget : public QLabel
+{
+ Q_OBJECT
+public:
+ KviTreeWindowListTitleWidget() {};
+ ~KviTreeWindowListTitleWidget() {};
+ QSize sizeHint() const { return text().isEmpty() ? QSize(4,4): QLabel::sizeHint(); };
+};
class KVIRC_API KviTreeWindowList : public KviWindowListBase
{
@@ -92,6 +101,7 @@ private:
KviTreeWindowListItem * m_pCurrentItem;
KviDynamicToolTip * m_pToolTip;
QStyledItemDelegate* m_pItemDelegate;
+ KviTreeWindowListTitleWidget * m_pTitleWidget;
public:
virtual KviWindowListItem * addItem(KviWindow *);
virtual bool removeItem(KviWindowListItem *);
diff --git a/src/modules/options/optw_windowlist.cpp b/src/modules/options/optw_windowlist.cpp
index e9f7160ad..e14cbc37c 100644
--- a/src/modules/options/optw_windowlist.cpp
+++ b/src/modules/options/optw_windowlist.cpp
@@ -219,10 +219,12 @@ KviTreeWindowListFeaturesOptionsWidget::KviTreeWindowListFeaturesOptionsWidget(Q
createLayout();
- addUIntSelector(0,1,0,1,__tr2qs_ctx("Minimum width:","options"),KviOption_uintTreeWindowListMinimumWidth,24,1024,125);
- addUIntSelector(0,2,0,2,__tr2qs_ctx("Maximum width:","options"),KviOption_uintTreeWindowListMaximumWidth,24,9999,125);
+ addBoolSelector(0,1,0,1,__tr2qs_ctx("Show header","options"),KviOption_boolShowTreeWindowListHeader);
+
+ addUIntSelector(0,2,0,2,__tr2qs_ctx("Minimum width:","options"),KviOption_uintTreeWindowListMinimumWidth,24,1024,125);
+ addUIntSelector(0,3,0,3,__tr2qs_ctx("Maximum width:","options"),KviOption_uintTreeWindowListMaximumWidth,24,9999,125);
- addRowSpacer(0,3,0,3);
+ addRowSpacer(0,4,0,4);
}