diff options
Diffstat (limited to 'Swift/Controllers/Chat/ChatController.h')
| -rw-r--r-- | Swift/Controllers/Chat/ChatController.h | 21 | 
1 files changed, 18 insertions, 3 deletions
diff --git a/Swift/Controllers/Chat/ChatController.h b/Swift/Controllers/Chat/ChatController.h index 66ec37d..414af09 100644 --- a/Swift/Controllers/Chat/ChatController.h +++ b/Swift/Controllers/Chat/ChatController.h @@ -1,5 +1,5 @@  /* - * Copyright (c) 2010-2012 Kevin Smith + * Copyright (c) 2010-2013 Kevin Smith   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information.   */ @@ -22,12 +22,15 @@ namespace Swift {  	class FileTransferController;  	class SettingsProvider;  	class HistoryController; +	class HighlightManager; +	class ClientBlockListManager;  	class ChatController : public ChatControllerBase {  		public: -			ChatController(const JID& self, StanzaChannel* stanzaChannel, IQRouter* iqRouter, ChatWindowFactory* chatWindowFactory, const JID &contact, NickResolver* nickResolver, PresenceOracle* presenceOracle, AvatarManager* avatarManager, bool isInMUC, bool useDelayForLatency, UIEventStream* eventStream, EventController* eventController, TimerFactory* timerFactory, EntityCapsProvider* entityCapsProvider, bool userWantsReceipts, SettingsProvider* settings, HistoryController* historyController, MUCRegistry* mucRegistry); +			ChatController(const JID& self, StanzaChannel* stanzaChannel, IQRouter* iqRouter, ChatWindowFactory* chatWindowFactory, const JID &contact, NickResolver* nickResolver, PresenceOracle* presenceOracle, AvatarManager* avatarManager, bool isInMUC, bool useDelayForLatency, UIEventStream* eventStream, EventController* eventController, TimerFactory* timerFactory, EntityCapsProvider* entityCapsProvider, bool userWantsReceipts, SettingsProvider* settings, HistoryController* historyController, MUCRegistry* mucRegistry, HighlightManager* highlightManager, ClientBlockListManager* clientBlockListManager, ChatMessageParser* chatMessageParser);  			virtual ~ChatController();  			virtual void setToJID(const JID& jid); +			virtual void setAvailableServerFeatures(boost::shared_ptr<DiscoInfo> info);  			virtual void setOnline(bool online);  			virtual void handleNewFileTransferController(FileTransferController* ftc);  			virtual void handleWhiteboardSessionRequest(bool senderIsSelf); @@ -45,7 +48,7 @@ namespace Swift {  			bool isIncomingMessageFromMe(boost::shared_ptr<Message> message);  			void postSendMessage(const std::string &body, boost::shared_ptr<Stanza> sentStanza);  			void preHandleIncomingMessage(boost::shared_ptr<MessageEvent> messageEvent); -			void postHandleIncomingMessage(boost::shared_ptr<MessageEvent> messageEvent); +			void postHandleIncomingMessage(boost::shared_ptr<MessageEvent> messageEvent, const HighlightAction&);  			void preSendMessageRequest(boost::shared_ptr<Message>);  			std::string senderDisplayNameFromMessage(const JID& from);  			virtual boost::optional<boost::posix_time::ptime> getMessageTimestamp(boost::shared_ptr<Message>) const; @@ -66,6 +69,13 @@ namespace Swift {  			void handleSettingChanged(const std::string& settingPath);  			void checkForDisplayingDisplayReceiptsAlert(); +			void handleBlockingStateChanged(); +			void handleBlockingItemAdded(const JID&); +			void handleBlockingItemRemoved(const JID&); + +			void handleBlockUserRequest(); +			void handleUnblockUserRequest(); +  		private:  			NickResolver* nickResolver_;  			ChatStateNotifier* chatStateNotifier_; @@ -85,6 +95,11 @@ namespace Swift {  			std::map<std::string, FileTransferController*> ftControllers;  			SettingsProvider* settings_;  			std::string lastWbID_; + +			ClientBlockListManager* clientBlockListManager_; +			boost::bsignals::scoped_connection blockingOnStateChangedConnection_; +			boost::bsignals::scoped_connection blockingOnItemAddedConnection_; +			boost::bsignals::scoped_connection blockingOnItemRemovedConnection_;  	};  }  | 
 Swift