diff options
| author | 2012-12-23 10:57:45 +0000 | |
|---|---|---|
| committer | 2012-12-23 10:57:45 +0000 | |
| commit | bb5fd4adda9a72171d9f4858a10f30d0486e11dc (patch) | |
| tree | a0825b5be9742a983c8e3585b0e8ea34c34cd458 /src | |
| parent | Fix /server -l. Please test. (diff) | |
| download | KVIrc-bb5fd4adda9a72171d9f4858a10f30d0486e11dc.tar.gz KVIrc-bb5fd4adda9a72171d9f4858a10f30d0486e11dc.tar.bz2 KVIrc-bb5fd4adda9a72171d9f4858a10f30d0486e11dc.zip | |
fix #1348: implemented 4 new events for mode "q": OnQuietBan, OnQuietUnban, OnMeQuietBan, OnMeQuietUnban
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@6303 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
| -rw-r--r-- | src/kvirc/kvs/event/KviKvsEventTable.cpp | 111 | ||||
| -rw-r--r-- | src/kvirc/kvs/event/KviKvsEventTable.h | 10 | ||||
| -rw-r--r-- | src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp | 5 | ||||
| -rw-r--r-- | src/kvirc/ui/KviChannelWindow.cpp | 17 | ||||
| -rw-r--r-- | src/kvirc/ui/KviChannelWindow.h | 1 |
5 files changed, 138 insertions, 6 deletions
diff --git a/src/kvirc/kvs/event/KviKvsEventTable.cpp b/src/kvirc/kvs/event/KviKvsEventTable.cpp index ad508daee..0cb43e0ac 100644 --- a/src/kvirc/kvs/event/KviKvsEventTable.cpp +++ b/src/kvirc/kvs/event/KviKvsEventTable.cpp @@ -26,6 +26,11 @@ #include "KviKvsEventTable.h" #include "KviKvsEventManager.h" +/* + * Note: the definition order of the EVENT(..) entries in this file + * must match the order of event ids defined in the header file. + */ + #define EVENT(_name,_parm) KviKvsEvent(_name,_parm) KviKvsEvent KviKvsEventManager::m_appEventTable[KVI_KVS_NUM_APP_EVENTS]= @@ -3865,6 +3870,110 @@ KviKvsEvent KviKvsEventManager::m_appEventTable[KVI_KVS_NUM_APP_EVENTS]= "$1 = source user\n" \ "$2 = source host\n" \ "$3 = target\n" \ - "$4 = message") + "$4 = message"), + + /* + @doc: onquietban + @type: + event + @title: + OnQuietBan + @short: + Someone has set a +q flag on the channel + @parameters: + $0 = source nick + $1 = source username + $2 = source hostname + $3 = ban mask + @window: + Channel window + @description: + Triggered when someone sets a +q flag on the channel + @seealso: + [event:onquietunban]OnQuietUnban[/event] + */ + EVENT("OnQuietBan", \ + "$0 = source nick\n" + "$1 = source username\n" + "$2 = source hostname\n" + "$3 = ban mask"), + + /* + @doc: onquietunban + @type: + event + @title: + OnQuietUnban + @short: + Someone has set a -q flag on the channel + @parameters: + $0 = source nick + $1 = source username + $2 = source hostname + $3 = unban mask + @window: + Channel window + @description: + Triggered when someone sets a -q flag on the channel + @seealso: + [event:onquietban]OnQuietBan[/event] + */ + EVENT("OnQuietUnban", \ + "$0 = source nick\n" \ + "$1 = source username\n" \ + "$2 = source hostname\n" \ + "$3 = ban mask"), + + /* + @doc: onmequietban + @type: + event + @title: + OnMeQuietBan + @short: + Local user is being quiet-banned (+q) in a channel + @parameters: + $0 = source nickname + $1 = source username + $2 = source hostname + $3 = ban mask + @window: + Channel + @description: + Triggered when someone has set a +q flag that matches your mask (quiet bans you) in the channel.[br] + @seealso: + [event:onmequietunban]OnMeQuietUnban[/event] + */ + EVENT("OnMeQuietBan", \ + "$0 = source nick\n" \ + "$1 = source username\n" \ + "$2 = source hostname\n" \ + "$3 = ban mask"), + + /* + @doc: onmequietunban + @type: + event + @title: + OnMeQuietUnban + @short: + Local user is being quiet-debanned (-q) in a channel + @parameters: + $0 = source nickname + $1 = source username + $2 = source hostname + $3 = ban mask + @window: + Channel + @description: + Triggered when someone has set a -q flag that matches your mask (quiet debans you) in the channel.[br] + @seealso: + [event:onmequietban]OnMeQuietBan[/event] + */ + EVENT("OnMeQuietUnban", \ + "$0 = source nick\n" + "$1 = source username\n" \ + "$2 = source hostname\n" \ + "$3 = ban mask") }; diff --git a/src/kvirc/kvs/event/KviKvsEventTable.h b/src/kvirc/kvs/event/KviKvsEventTable.h index e0b845bfe..5b5dca905 100644 --- a/src/kvirc/kvs/event/KviKvsEventTable.h +++ b/src/kvirc/kvs/event/KviKvsEventTable.h @@ -238,6 +238,10 @@ * \def KviEvent_OnDeIrcOp Someone has given a user the -O flag * \def KviEvent_OnMeIrcOp Someone has given the local user the +O flag * \def KviEvent_OnMeDeIrcOp Someone has given the local user the -O flag +* \def KviEvent_OnQuietBan Someone has set a +q flag on the channel +* \def KviEvent_OnQuietUnban Someone has set a -q flag on the channel +* \def KviEvent_OnMeQuietBan Local user is being quiet-banned in a channel +* \def KviEvent_OnMeQuietUnban Local user is being quiet-debanned in a channel */ #define KviEvent_OnChannelModeChange 64 #define KviEvent_OnUserModeChange 65 @@ -254,6 +258,10 @@ #define KviEvent_OnInviteExceptionRemove 76 #define KviEvent_OnMeInviteException 77 #define KviEvent_OnMeInviteExceptionRemove 78 +#define KviEvent_OnQuietBan 149 +#define KviEvent_OnQuietUnban 150 +#define KviEvent_OnMeQuietBan 151 +#define KviEvent_OnMeQuietUnban 152 #define KviEvent_OnLimitSet 79 #define KviEvent_OnLimitUnset 80 #define KviEvent_OnKeySet 81 @@ -369,6 +377,6 @@ #define KviEvent_OnQueryNickDefaultActionRequest 144 /** \def KVI_KVS_NUM_APP_EVENTS Defines the number of events */ -#define KVI_KVS_NUM_APP_EVENTS 149 +#define KVI_KVS_NUM_APP_EVENTS 153 #endif //_KVI_KVS_EVENTTABLE_H_ diff --git a/src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp b/src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp index 10bd67863..44f123342 100644 --- a/src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp +++ b/src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp @@ -2003,7 +2003,6 @@ void KviIrcServerParser::parseChannelMode(const QString &szNick,const QString &s aParam = msg->connection()->decodeText(msg->safeParam(curParam++)); // we call setModeInList anyway to fill the "mode q editor" chan->setModeInList(*aux,aParam,bSet,msg->connection()->decodeText(msg->safePrefix()),QDateTime::currentDateTime().toTime_t()); - if(aParam.contains('!')) { // it's a mask @@ -2015,9 +2014,9 @@ void KviIrcServerParser::parseChannelMode(const QString &szNick,const QString &s delete auxMask; if(bIsMe) { - if(KVS_TRIGGER_EVENT_4_HALTED(bSet ? KviEvent_OnMeBan : KviEvent_OnMeUnban,chan,szNick,szUser,szHost,aParam))msg->setHaltOutput(); + if(KVS_TRIGGER_EVENT_4_HALTED(bSet ? KviEvent_OnMeQuietBan : KviEvent_OnMeQuietUnban,chan,szNick,szUser,szHost,aParam))msg->setHaltOutput(); } else { - if(KVS_TRIGGER_EVENT_4_HALTED(bSet ? KviEvent_OnBan : KviEvent_OnUnban,chan,szNick,szUser,szHost,aParam))msg->setHaltOutput(); + if(KVS_TRIGGER_EVENT_4_HALTED(bSet ? KviEvent_OnQuietBan : KviEvent_OnQuietUnban,chan,szNick,szUser,szHost,aParam))msg->setHaltOutput(); } if(!(msg->haltOutput() || (KVI_OPTION_BOOL(KviOption_boolShowCompactModeChanges) && bIsMultiMode))) { diff --git a/src/kvirc/ui/KviChannelWindow.cpp b/src/kvirc/ui/KviChannelWindow.cpp index 9fa1a2538..2b84f1ba0 100644 --- a/src/kvirc/ui/KviChannelWindow.cpp +++ b/src/kvirc/ui/KviChannelWindow.cpp @@ -123,6 +123,7 @@ KviChannelWindow::KviChannelWindow(KviConsoleWindow * lpConsole, const QString & m_pSplitter = new KviTalSplitter(Qt::Horizontal,this); m_pSplitter->setObjectName(szName); m_pSplitter->setChildrenCollapsible(false); + connect(m_pSplitter, SIGNAL(splitterMoved(int, int)), this, SLOT(splitterMoved(int, int))); // Spitted vertially on the left m_pVertSplitter = new KviTalSplitter(Qt::Vertical,m_pSplitter); @@ -351,12 +352,23 @@ void KviChannelWindow::getConfigGroupName(QString & szBuffer) } } +void KviChannelWindow::splitterMoved(int pos, int index) +{ + printf("\n[SPLITTER] %s pos=%d index=%d", windowName().toUtf8().data(), pos, index); + printf("\n[SPLITTER] %s w=%d h=%d s1=%d s2=%d", windowName().toUtf8().data(), width(), height(), (int)m_pSplitter->sizes().at(0), (int)m_pSplitter->sizes().at(1)); + fflush(NULL); +} + void KviChannelWindow::saveProperties(KviConfigurationFile * pCfg) { KviWindow::saveProperties(pCfg); pCfg->writeEntry("TopSplitter", m_pTopSplitter->sizes()); pCfg->writeEntry("Splitter", m_pUserListView->isHidden() ? m_SplitterSizesList : m_pSplitter->sizes()); -// int iTimeStamp= pCfg->readIntEntry("EntryTimestamp", 0); + + printf("\n[SPLITTER SAVE] %s w=%d h=%d s1=%d s2=%d", windowName().toUtf8().data(), width(), height(), (int)m_pSplitter->sizes().at(0), (int)m_pSplitter->sizes().at(1)); + fflush(NULL); + + // int iTimeStamp= pCfg->readIntEntry("EntryTimestamp", 0); // qDebug("window %s, group %s, view %d==%d, ulist %d==%d timestamp %d", // m_szName.toUtf8().data(), pCfg->group().toUtf8().data(), // m_pIrcView->width(), sizes.at(0), m_pUserListView->width(), sizes.at(1), iTimeStamp); @@ -657,6 +669,9 @@ void KviChannelWindow::resizeEvent(QResizeEvent *) m_pButtonBox->setGeometry(0,0,width(),iHeight2); m_pSplitter->setGeometry(0,iHeight2,width(),height() - (iHeight + iHeight2)); m_pInput->setGeometry(0,height() - iHeight, width(),iHeight); + printf("\n[WINDOW] %s w=%d h=%d s1=%d s2=%d", windowName().toUtf8().data(), width(), height(), (int)m_pSplitter->sizes().at(0), (int)m_pSplitter->sizes().at(1)); + fflush(NULL); + } QSize KviChannelWindow::sizeHint() const diff --git a/src/kvirc/ui/KviChannelWindow.h b/src/kvirc/ui/KviChannelWindow.h index 6d3ced5e7..3822efa6e 100644 --- a/src/kvirc/ui/KviChannelWindow.h +++ b/src/kvirc/ui/KviChannelWindow.h @@ -1053,6 +1053,7 @@ private slots: */ void toggleToolButtons(); + void splitterMoved(int pos, int index); signals: /** * \brief Emitted when our op status change |
