Autokick ignored players from game room on join. Needs testing.
--- a/QTfrontend/chatwidget.h Sat Feb 26 15:56:11 2011 +0100
+++ b/QTfrontend/chatwidget.h Sun Feb 27 11:32:48 2011 -0500
@@ -61,6 +61,7 @@
void setShowReady(bool s);
void setShowFollow(bool enabled);
static const char* STYLE;
+ QStringList ignoreList, friendsList;
private:
void loadList(QStringList & list, const QString & file);
@@ -90,7 +91,6 @@
QGridLayout mainLayout;
QTextBrowser* chatText;
QStringList chatStrings;
- QStringList ignoreList, friendsList;
QListWidget* chatNicks;
QLineEdit* chatEditLine;
QAction * acInfo;
--- a/QTfrontend/gameuiconfig.h Sat Feb 26 15:56:11 2011 +0100
+++ b/QTfrontend/gameuiconfig.h Sun Feb 27 11:32:48 2011 -0500
@@ -31,6 +31,7 @@
Q_OBJECT
public:
+ HWForm * Form;
GameUIConfig(HWForm * FormWidgets, const QString & fileName);
QStringList GetTeamsList();
QRect vid_Resolution();
@@ -67,7 +68,6 @@
void SaveOptions();
private:
- HWForm * Form;
quint8 depth;
};
--- a/QTfrontend/newnetclient.cpp Sat Feb 26 15:56:11 2011 +0100
+++ b/QTfrontend/newnetclient.cpp Sun Feb 27 11:32:48 2011 -0500
@@ -29,6 +29,10 @@
#include "gamecfgwidget.h"
#include "teamselect.h"
#include "misc.h"
+/* only to get the ignoreList from the chat widget */
+#include "hwform.h"
+#include "pages.h"
+#include "chatwidget.h"
char delimeter='\n';
@@ -398,8 +402,15 @@
if (isChief)
emit configAsked();
}
- emit nickAdded(lst[i], isChief && (lst[i] != mynick));
- emit chatStringFromNet(tr("%1 *** %2 has joined the room").arg('\x03').arg(lst[i]));
+ if (lst[i] != mynick && isChief && config->Form->ui.pageRoomsList->chatWidget->ignoreList.contains(lst[i], Qt::CaseInsensitive))
+ {
+ kickPlayer(lst[i]);
+ }
+ else
+ {
+ emit nickAdded(lst[i], isChief && (lst[i] != mynick));
+ emit chatStringFromNet(tr("%1 *** %2 has joined the room").arg('\x03').arg(lst[i]));
+ }
}
return;
}