-ContextMenuActionProvider::ContextMenuActionProvider(QObject *parent) : NetworkModelController(parent) {
- registerAction(NetworkConnect, SmallIcon("network-connect"), tr("Connect"));
- registerAction(NetworkDisconnect, SmallIcon("network-disconnect"), tr("Disconnect"));
-
- registerAction(BufferJoin, SmallIcon("irc-join-channel"), tr("Join"));
- registerAction(BufferPart, SmallIcon("irc-close-channel"), tr("Part"));
- registerAction(BufferRemove, tr("Delete Chat(s)..."));
- registerAction(BufferSwitchTo, tr("Go to Chat"));
-
- registerAction(HideJoin, tr("Joins"), true);
- registerAction(HidePart, tr("Parts"), true);
- registerAction(HideQuit, tr("Quits"), true);
- registerAction(HideNick, tr("Nick Changes"), true);
- registerAction(HideMode, tr("Mode Changes"), true);
- registerAction(HideDayChange, tr("Day Changes"), true);
- registerAction(HideTopic, tr("Topic Changes"), true);
- registerAction(HideApplyToAll, tr("Set as Default..."));
- registerAction(HideUseDefaults, tr("Use Defaults..."));
-
- registerAction(JoinChannel, SmallIcon("irc-join-channel"), tr("Join Channel..."));
-
- registerAction(NickQuery, tr("Start Query"));
- registerAction(NickSwitchTo, tr("Show Query"));
- registerAction(NickWhois, tr("Whois"));
-
- registerAction(NickCtcpVersion, tr("Version"));
- registerAction(NickCtcpTime, tr("Time"));
- registerAction(NickCtcpPing, tr("Ping"));
- registerAction(NickCtcpFinger, tr("Finger"));
- registerAction(NickIgnoreCustom, tr("Custom..."));
-
- // these texts are only dummies! don't think about tr() here!
- registerAction(NickIgnoreUser, "*!ident@host.domain.tld");
- registerAction(NickIgnoreHost, "*!*@host.domain.tld");
- registerAction(NickIgnoreDomain, "*!ident@*.domain.tld");
- registerAction(NickIgnoreToggleEnabled0, "Enable", true);
- registerAction(NickIgnoreToggleEnabled1, "Enable", true);
- registerAction(NickIgnoreToggleEnabled2, "Enable", true);
- registerAction(NickIgnoreToggleEnabled3, "Enable", true);
- registerAction(NickIgnoreToggleEnabled4, "Enable", true);
-
- registerAction(NickOp, SmallIcon("irc-operator"), tr("Give Operator Status"));
- registerAction(NickDeop, SmallIcon("irc-remove-operator"), tr("Take Operator Status"));
- registerAction(NickVoice, SmallIcon("irc-voice"), tr("Give Voice"));
- registerAction(NickDevoice, SmallIcon("irc-unvoice"), tr("Take Voice"));
- registerAction(NickKick, SmallIcon("im-kick-user"), tr("Kick From Channel"));
- registerAction(NickBan, SmallIcon("im-ban-user"), tr("Ban From Channel"));
- registerAction(NickKickBan, SmallIcon("im-ban-kick-user"), tr("Kick && Ban"));
-
- registerAction(HideBufferTemporarily, tr("Hide Chat(s) Temporarily"));
- registerAction(HideBufferPermanently, tr("Hide Chat(s) Permanently"));
- registerAction(ShowChannelList, tr("Show Channel List"));
- registerAction(ShowIgnoreList, tr("Show Ignore List"));
-
- QMenu *hideEventsMenu = new QMenu();
- hideEventsMenu->addAction(action(HideJoin));
- hideEventsMenu->addAction(action(HidePart));
- hideEventsMenu->addAction(action(HideQuit));
- hideEventsMenu->addAction(action(HideNick));
- hideEventsMenu->addAction(action(HideMode));
- hideEventsMenu->addAction(action(HideTopic));
- hideEventsMenu->addAction(action(HideDayChange));
- hideEventsMenu->addSeparator();
- hideEventsMenu->addAction(action(HideApplyToAll));
- hideEventsMenu->addAction(action(HideUseDefaults));
- _hideEventsMenuAction = new Action(tr("Hide Events"), 0);
- _hideEventsMenuAction->setMenu(hideEventsMenu);
-
- QMenu *nickCtcpMenu = new QMenu();
- nickCtcpMenu->addAction(action(NickCtcpPing));
- nickCtcpMenu->addAction(action(NickCtcpVersion));
- nickCtcpMenu->addAction(action(NickCtcpTime));
- nickCtcpMenu->addAction(action(NickCtcpFinger));
- _nickCtcpMenuAction = new Action(tr("CTCP"), 0);
- _nickCtcpMenuAction->setMenu(nickCtcpMenu);
-
- QMenu *nickModeMenu = new QMenu();
- nickModeMenu->addAction(action(NickOp));
- nickModeMenu->addAction(action(NickDeop));
- nickModeMenu->addAction(action(NickVoice));
- nickModeMenu->addAction(action(NickDevoice));
- nickModeMenu->addSeparator();
- nickModeMenu->addAction(action(NickKick));
- nickModeMenu->addAction(action(NickBan));
- nickModeMenu->addAction(action(NickKickBan));
- _nickModeMenuAction = new Action(tr("Actions"), 0);
- _nickModeMenuAction->setMenu(nickModeMenu);
-
- QMenu *ignoreMenu = new QMenu();
- _nickIgnoreMenuAction = new Action(tr("Ignore"), 0);
- _nickIgnoreMenuAction->setMenu(ignoreMenu);
-
- // These are disabled actions used as descriptions
- // They don't need any of the Action fancyness so we use plain QActions
- _ignoreDescriptions << new QAction(tr("Add Ignore Rule"), this);
- _ignoreDescriptions << new QAction(tr("Existing Rules"), this);
- foreach(QAction *act, _ignoreDescriptions)
+ContextMenuActionProvider::ContextMenuActionProvider(QObject *parent) : NetworkModelController(parent)
+{
+ registerAction(NetworkConnect, SmallIcon("network-connect"), tr("Connect"));
+ registerAction(NetworkDisconnect, SmallIcon("network-disconnect"), tr("Disconnect"));
+
+ registerAction(BufferJoin, SmallIcon("irc-join-channel"), tr("Join"));
+ registerAction(BufferPart, SmallIcon("irc-close-channel"), tr("Part"));
+ registerAction(BufferRemove, tr("Delete Chat(s)..."));
+ registerAction(BufferSwitchTo, tr("Go to Chat"));
+
+ registerAction(HideJoin, tr("Joins"), true);
+ registerAction(HidePart, tr("Parts"), true);
+ registerAction(HideQuit, tr("Quits"), true);
+ registerAction(HideNick, tr("Nick Changes"), true);
+ registerAction(HideMode, tr("Mode Changes"), true);
+ registerAction(HideDayChange, tr("Day Changes"), true);
+ registerAction(HideTopic, tr("Topic Changes"), true);
+ registerAction(HideApplyToAll, tr("Set as Default..."));
+ registerAction(HideUseDefaults, tr("Use Defaults..."));
+
+ registerAction(JoinChannel, SmallIcon("irc-join-channel"), tr("Join Channel..."));
+
+ registerAction(NickQuery, tr("Start Query"));
+ registerAction(NickSwitchTo, tr("Show Query"));
+ registerAction(NickWhois, tr("Whois"));
+
+ registerAction(NickCtcpVersion, tr("Version"));
+ registerAction(NickCtcpTime, tr("Time"));
+ registerAction(NickCtcpPing, tr("Ping"));
+ registerAction(NickCtcpClientinfo, tr("Client info"));
+ registerAction(NickIgnoreCustom, tr("Custom..."));
+
+ // these texts are only dummies! don't think about tr() here!
+ registerAction(NickIgnoreUser, "*!ident@host.domain.tld");
+ registerAction(NickIgnoreHost, "*!*@host.domain.tld");
+ registerAction(NickIgnoreDomain, "*!ident@*.domain.tld");
+ registerAction(NickIgnoreToggleEnabled0, "Enable", true);
+ registerAction(NickIgnoreToggleEnabled1, "Enable", true);
+ registerAction(NickIgnoreToggleEnabled2, "Enable", true);
+ registerAction(NickIgnoreToggleEnabled3, "Enable", true);
+ registerAction(NickIgnoreToggleEnabled4, "Enable", true);
+
+ registerAction(NickOp, SmallIcon("irc-operator"), tr("Give Operator Status"));
+ registerAction(NickDeop, SmallIcon("irc-remove-operator"), tr("Take Operator Status"));
+ registerAction(NickHalfop, SmallIcon("irc-voice"), tr("Give Half-Operator Status"));
+ registerAction(NickDehalfop, SmallIcon("irc-unvoice"), tr("Take Half-Operator Status"));
+ registerAction(NickVoice, SmallIcon("irc-voice"), tr("Give Voice"));
+ registerAction(NickDevoice, SmallIcon("irc-unvoice"), tr("Take Voice"));
+ registerAction(NickKick, SmallIcon("im-kick-user"), tr("Kick From Channel"));
+ registerAction(NickBan, SmallIcon("im-ban-user"), tr("Ban From Channel"));
+ registerAction(NickKickBan, SmallIcon("im-ban-kick-user"), tr("Kick && Ban"));
+
+ registerAction(HideBufferTemporarily, tr("Hide Chat(s) Temporarily"));
+ registerAction(HideBufferPermanently, tr("Hide Chat(s) Permanently"));
+ registerAction(ShowChannelList, tr("Show Channel List"));
+ registerAction(ShowIgnoreList, tr("Show Ignore List"));
+
+ QMenu *hideEventsMenu = new QMenu();
+ hideEventsMenu->addAction(action(HideJoin));
+ hideEventsMenu->addAction(action(HidePart));
+ hideEventsMenu->addAction(action(HideQuit));
+ hideEventsMenu->addAction(action(HideNick));
+ hideEventsMenu->addAction(action(HideMode));
+ hideEventsMenu->addAction(action(HideTopic));
+ hideEventsMenu->addAction(action(HideDayChange));
+ hideEventsMenu->addSeparator();
+ hideEventsMenu->addAction(action(HideApplyToAll));
+ hideEventsMenu->addAction(action(HideUseDefaults));
+ _hideEventsMenuAction = new Action(tr("Hide Events"), 0);
+ _hideEventsMenuAction->setMenu(hideEventsMenu);
+
+ QMenu *nickCtcpMenu = new QMenu();
+ nickCtcpMenu->addAction(action(NickCtcpPing));
+ nickCtcpMenu->addAction(action(NickCtcpVersion));
+ nickCtcpMenu->addAction(action(NickCtcpTime));
+ nickCtcpMenu->addAction(action(NickCtcpClientinfo));
+ _nickCtcpMenuAction = new Action(tr("CTCP"), 0);
+ _nickCtcpMenuAction->setMenu(nickCtcpMenu);
+
+ QMenu *nickModeMenu = new QMenu();
+ nickModeMenu->addAction(action(NickOp));
+ nickModeMenu->addAction(action(NickDeop));
+ // this is where the halfops will be placed if available
+ nickModeMenu->addAction(action(NickHalfop));
+ nickModeMenu->addAction(action(NickDehalfop));
+ nickModeMenu->addAction(action(NickVoice));
+ nickModeMenu->addAction(action(NickDevoice));
+ nickModeMenu->addSeparator();
+ nickModeMenu->addAction(action(NickKick));
+ nickModeMenu->addAction(action(NickBan));
+ nickModeMenu->addAction(action(NickKickBan));
+ _nickModeMenuAction = new Action(tr("Actions"), 0);
+ _nickModeMenuAction->setMenu(nickModeMenu);
+
+ QMenu *ignoreMenu = new QMenu();
+ _nickIgnoreMenuAction = new Action(tr("Ignore"), 0);
+ _nickIgnoreMenuAction->setMenu(ignoreMenu);
+
+ // These are disabled actions used as descriptions
+ // They don't need any of the Action fancyness so we use plain QActions
+ _ignoreDescriptions << new QAction(tr("Add Ignore Rule"), this);
+ _ignoreDescriptions << new QAction(tr("Existing Rules"), this);
+ foreach(QAction *act, _ignoreDescriptions)