diff options
author | Kevin Smith <git@kismith.co.uk> | 2010-03-21 22:33:09 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2010-03-22 14:54:54 (GMT) |
commit | f5c2750f56c78d115bb9e8a7c5d50316da98b6d5 (patch) | |
tree | 661c761e7ebb526e1d71848c127046605e036729 /Swift/Controllers/RosterController.h | |
parent | 37a3ff6afe96c39bbf075d05da72e5f2c684dfa4 (diff) | |
download | swift-f5c2750f56c78d115bb9e8a7c5d50316da98b6d5.zip swift-f5c2750f56c78d115bb9e8a7c5d50316da98b6d5.tar.bz2 |
Lots of plumbing for event view.
This isn't ready yet, but clicking on a message in the event view will now cause the chat to pop up, and the plumbing is there for doing something with subscription requests - I just don't, yet.
Diffstat (limited to 'Swift/Controllers/RosterController.h')
-rw-r--r-- | Swift/Controllers/RosterController.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/Swift/Controllers/RosterController.h b/Swift/Controllers/RosterController.h index f3d96e1..cef0e48 100644 --- a/Swift/Controllers/RosterController.h +++ b/Swift/Controllers/RosterController.h @@ -19,10 +19,14 @@ namespace Swift { class TreeWidgetFactory; class OfflineRosterFilter; class NickResolver; + class PresenceOracle; + class EventController; + class SubscriptionRequestEvent; + class UIEventStream; class RosterController { public: - RosterController(const JID& jid, boost::shared_ptr<XMPPRoster> xmppRoster, AvatarManager* avatarManager, MainWindowFactory* mainWindowFactory, TreeWidgetFactory* treeWidgetFactory, NickResolver* nickResolver); + RosterController(const JID& jid, boost::shared_ptr<XMPPRoster> xmppRoster, AvatarManager* avatarManager, MainWindowFactory* mainWindowFactory, TreeWidgetFactory* treeWidgetFactory, NickResolver* nickResolver, PresenceOracle* presenceOracle, EventController* eventController, UIEventStream* uiEventStream); ~RosterController(); void showRosterWindow(); MainWindow* getWindow() {return mainWindow_;}; @@ -32,7 +36,6 @@ namespace Swift { boost::signal<void (const JID&, const String&)> onJoinMUCRequest; boost::signal<void (StatusShow::Type, const String&)> onChangeStatusRequest; boost::signal<void ()> onSignOutRequest; - void handleIncomingPresence(boost::shared_ptr<Presence> presence); void handleAvatarChanged(const JID& jid, const String& hash); void setEnabled(bool enabled); private: @@ -44,6 +47,10 @@ namespace Swift { void handleUserAction(boost::shared_ptr<UserRosterAction> action); void handleChangeStatusRequest(StatusShow::Type show, const String &statusText); void handleShowOfflineToggled(bool state); + void handleIncomingPresence(boost::shared_ptr<Presence> newPresence, boost::shared_ptr<Presence> oldPresence); + void handleSubscriptionRequest(const JID& jid, const String& message); + void handleSubscriptionRequestAccepted(SubscriptionRequestEvent* event); + void handleSubscriptionRequestDeclined(SubscriptionRequestEvent* event); JID myJID_; boost::shared_ptr<XMPPRoster> xmppRoster_; MainWindowFactory* mainWindowFactory_; @@ -53,6 +60,8 @@ namespace Swift { OfflineRosterFilter* offlineFilter_; AvatarManager* avatarManager_; NickResolver* nickResolver_; + PresenceOracle* presenceOracle_; + EventController* eventController_; }; } #endif |