From 0889b855f4e00077eebb33ec4eb71a43bae09dfa Mon Sep 17 00:00:00 2001
From: Carsten Fuhrmann <C.-Fuhrmann@t-online.de>
Date: Thu, 2 Mar 2017 14:10:21 +0100
Subject: [PATCH] added custom widget to make the semitransparent channel list
 movable

Bug:
crash when there is a connection and i deactivate the plugin
---
 ChannelListWidget.cpp           |  56 ++++++++++++++++++++++++++++++++
 ChannelListWidget.h             |  26 +++++++++++++++
 Release/x64/qtTsOverlay_x64.dll | Bin 67072 -> 71168 bytes
 Release/x64/qtTsOverlay_x64.exp | Bin 24445 -> 24445 bytes
 Release/x64/qtTsOverlay_x64.lib | Bin 41856 -> 41856 bytes
 overlaycontroller.cpp           |  16 +++------
 overlaycontroller.h             |   5 ++-
 plugin.cpp                      |  31 +++++++++++-------
 8 files changed, 108 insertions(+), 26 deletions(-)
 create mode 100644 ChannelListWidget.cpp
 create mode 100644 ChannelListWidget.h

diff --git a/ChannelListWidget.cpp b/ChannelListWidget.cpp
new file mode 100644
index 0000000..3d5b156
--- /dev/null
+++ b/ChannelListWidget.cpp
@@ -0,0 +1,56 @@
+#include "ChannelListWidget.h"
+#include <QMouseEvent>
+
+ChannelListWidget::ChannelListWidget()
+	: QTreeWidget()
+{
+	m_parent = new QWidget;
+	m_parent->setAttribute(Qt::WA_TranslucentBackground);
+	m_parent->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint);
+	m_parent->setGeometry(320, 200, 1, 1);
+
+	setHeaderHidden(true);
+	setExpandsOnDoubleClick(false);
+	setStyleSheet("padding:2px;border-radius:5px;border-style:solid;border-width:1px;border-color:rgb(100,100,100); background-color:rgba(50,50,50,150); color:rgb(255,255,255);");
+	setParent(m_parent);
+
+	resize(200, 400);
+	m_parent->adjustSize();
+	m_parent->show();
+
+}
+
+ChannelListWidget::~ChannelListWidget()
+{
+	//m_parent->deleteLater();
+}
+
+void ChannelListWidget::mousePressEvent(QMouseEvent * event)
+{
+	if (event->button() == Qt::LeftButton)
+		isMouseDown = true;
+
+	QTreeWidget::mousePressEvent(event);
+}
+
+void ChannelListWidget::mouseReleaseEvent(QMouseEvent * event)
+{
+	isMouseDown = false;
+
+	QTreeWidget::mouseReleaseEvent(event);
+}
+
+void ChannelListWidget::mouseMoveEvent(QMouseEvent * event)
+{
+	if (isMouseDown)
+		m_parent->move(event->globalPos());
+
+	QTreeWidget::mouseMoveEvent(event);
+}
+
+void ChannelListWidget::resizeEvent(QResizeEvent * event)
+{
+	m_parent->adjustSize();
+
+	QTreeWidget::resizeEvent(event);
+}
\ No newline at end of file
diff --git a/ChannelListWidget.h b/ChannelListWidget.h
new file mode 100644
index 0000000..917058b
--- /dev/null
+++ b/ChannelListWidget.h
@@ -0,0 +1,26 @@
+#pragma once
+#include <QWidget>
+#include <QPoint>
+#include <QTreeWidget>
+
+class ChannelListWidget : public QTreeWidget
+{
+	Q_OBJECT
+
+public:
+	explicit ChannelListWidget();
+	~ChannelListWidget();
+
+protected:
+	virtual void mousePressEvent(QMouseEvent * event) Q_DECL_OVERRIDE;
+	virtual void mouseReleaseEvent(QMouseEvent * event) Q_DECL_OVERRIDE;
+	virtual void mouseMoveEvent(QMouseEvent * event) Q_DECL_OVERRIDE;
+	virtual void resizeEvent(QResizeEvent * event) Q_DECL_OVERRIDE;
+
+private:
+	bool isMouseDown = false;
+	QWidget *m_parent;
+
+public:
+
+};
diff --git a/Release/x64/qtTsOverlay_x64.dll b/Release/x64/qtTsOverlay_x64.dll
index a46615c2faec9589e2e7d38f8100446e77da56f2..d7412f107431bc6c853d129accaa7c3ff2fab33c 100644
GIT binary patch
delta 34079
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
O<b%E9n;rhGV*~)fcxq+<

delta 30214
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
SB85dBiwYKPH{@fyzz6^hwv*QY

diff --git a/Release/x64/qtTsOverlay_x64.exp b/Release/x64/qtTsOverlay_x64.exp
index 31b386b95f748c030acc5b6f317af6286a527878..b186815c951c8029e0a54413840f8b53233adfe9 100644
GIT binary patch
delta 25
hcmeynkMZw5M)s68CWdUu9TV9TnX@H#Y|Ivl2LOf?32guX

delta 25
hcmeynkMZw5M)s68CWfpB+a|InGG{&5wlP~M9src03iSX0

diff --git a/Release/x64/qtTsOverlay_x64.lib b/Release/x64/qtTsOverlay_x64.lib
index 4e9a53fbdd9b2de6169ccfb0415ba531104326dd..40083ea0e4480aeef37a0e0d330c796a5ee04fa0 100644
GIT binary patch
delta 3600
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
Sxd`4=1qoX(hJ-@kVtoKZVtQ8q

delta 3600
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
UU~evhH&sEx){7yb5V%+$0GyWEQvd(}

diff --git a/overlaycontroller.cpp b/overlaycontroller.cpp
index bfebac1..687a83d 100644
--- a/overlaycontroller.cpp
+++ b/overlaycontroller.cpp
@@ -6,6 +6,7 @@
 #include <qdebug.h>
 #include "teamspeak\public_errors.h"
 
+
 //#ifndef _DEBUG
 //#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )
 //#endif
@@ -41,13 +42,7 @@ OverlayController::OverlayController(const struct TS3Functions funcs, quint64 se
 
 	m_SCHID = serverConnectionHandlerID;
 
-	m_treeWidget = new QWidget;
-	m_tree = new QTreeWidget(m_treeWidget);
-	m_tree->setHeaderHidden(true);
-	m_tree->setExpandsOnDoubleClick(false);
-	m_treeWidget->setAttribute(Qt::WA_TranslucentBackground);
-	m_treeWidget->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Tool);
-
+	m_tree = new ChannelListWidget;
 }
 
 OverlayController::~OverlayController()
@@ -61,7 +56,7 @@ OverlayController::~OverlayController()
 	m_msgLines.clear();
 
 	delete m_debugWindow;
-	delete m_treeWidget;
+	delete m_tree;
 }
 
 void OverlayController::deleteChatLine(QWidget * line)
@@ -210,7 +205,7 @@ void OverlayController::reset()
 
 void OverlayController::updateChannelList()
 {
-	if (m_treeWidget->isVisible())
+	if (m_tree->isVisible())
 		displayChannelList();
 }
 
@@ -298,6 +293,5 @@ void OverlayController::displayChannelList()
 	m_tree->expandAll();
 	connect(m_tree, &QTreeWidget::itemDoubleClicked, this, &OverlayController::treeItemClicked);
 	m_tree->adjustSize();
-	m_treeWidget->adjustSize();
-	m_treeWidget->show();
+	m_tree->show();
 }
diff --git a/overlaycontroller.h b/overlaycontroller.h
index c73daca..68ba71e 100644
--- a/overlaycontroller.h
+++ b/overlaycontroller.h
@@ -7,7 +7,7 @@
 #include <QWidget>
 #include <QVector>
 #include <QLabel>
-#include <QTreeWidget>
+#include "ChannelListWidget.h"
 
 
 #define MAXLINES 5
@@ -34,8 +34,7 @@ private:
 	QLabel* m_debugWindow;
 	QVector<QWidget*> m_speakers;
 	QVector<QWidget*> m_msgLines;
-	QTreeWidget* m_tree;
-	QWidget* m_treeWidget;
+	ChannelListWidget* m_tree;
 
 private:
 	void deleteChatLine(QWidget* line);
diff --git a/plugin.cpp b/plugin.cpp
index b07c791..6552b34 100644
--- a/plugin.cpp
+++ b/plugin.cpp
@@ -102,8 +102,22 @@ QString channelID2Name(uint64 serverConnectionHandlerID, uint64 channelID)
 	return name;
 }
 
-OverlayController* getController(uint64 serverConnectionHandlerID)
+OverlayController* getController(uint64 serverConnectionHandlerID = 0)
 {
+	if (serverConnectionHandlerID == 0)
+	{
+		OverlayController* ret = NULL;
+		for (auto &it : g_serverList.keys())
+		{
+			int tmp;
+
+			if (ts3Functions.getClientSelfVariableAsInt(it, CLIENT_IS_MUTED, &tmp) != ERROR_ok)
+				if (tmp == 0)
+					ret = g_serverList.find(it).value();
+		}
+		return ret;
+	}
+
 	auto tmp = g_serverList.find(serverConnectionHandlerID);
 
 	if (tmp == g_serverList.end())
@@ -309,9 +323,7 @@ void ts3plugin_initHotkeys(struct PluginHotkey*** hotkeys) {
 	* The keyword will be later passed to ts3plugin_onHotkeyEvent to identify which hotkey was triggered.
 	* The description is shown in the clients hotkey dialog. */
 	BEGIN_CREATE_HOTKEYS(3);  /* Create 3 hotkeys. Size must be correct for allocating memory. */
-	CREATE_HOTKEY("keyword_1", "Test hotkey 1");
-	CREATE_HOTKEY("keyword_2", "Test hotkey 2");
-	CREATE_HOTKEY("keyword_3", "Test hotkey 3");
+	CREATE_HOTKEY("Channellist", "Displays a simple channellist of the server");
 	END_CREATE_HOTKEYS;
 
 	/* The client will call ts3plugin_freeMemory to release all allocated memory */
@@ -400,13 +412,6 @@ void ts3plugin_onClientMoveEvent(uint64 serverConnectionHandlerID, anyID clientI
 	{
 		getController(serverConnectionHandlerID)->addChatLine(QString("%1 <font size=\"-5\">connected to</font> %2").arg(ClientName).arg(newChannel));
 	}
-	else if (!ClientName.isEmpty() && !oldChannel.isEmpty() && newChannel.isEmpty())
-	{
-		if(oldChannelID == getCurrentChannel(serverConnectionHandlerID))
-			getController(serverConnectionHandlerID)->addChatLine(QString("<font color=\"#00FFFF\">%1 <font size=\"-5\">disconnected from</font> %2</font>").arg(ClientName).arg(oldChannel));
-		else
-			getController(serverConnectionHandlerID)->addChatLine(QString("%1 <font size=\"-5\">disconnected from</font> %2").arg(ClientName).arg(oldChannel));
-	}
 
 }
 
@@ -767,7 +772,9 @@ void ts3plugin_onMenuItemEvent(uint64 serverConnectionHandlerID, enum PluginMenu
 /* This function is called if a plugin hotkey was pressed. Omit if hotkeys are unused. */
 void ts3plugin_onHotkeyEvent(const char* keyword) {
 	printf("PLUGIN: Hotkey event: %s\n", keyword);
-	/* Identify the hotkey by keyword ("keyword_1", "keyword_2" or "keyword_3" in this example) and handle here... */
+
+	if (QString(keyword) == "Channellist")
+		getController()->debugPrint("WUHU");
 }
 
 /* Called when recording a hotkey has finished after calling ts3Functions.requestHotkeyInputDialog */
-- 
GitLab