summaryrefslogtreecommitdiff
path: root/tubes/inc
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@gmail.com>2012-08-03 23:50:03 +0200
committerMatúš Kukan <matus.kukan@gmail.com>2012-08-04 01:57:16 +0200
commit8aef9f4027a9908f9f7f8e023fed4d9db50c5696 (patch)
tree6b14b9c57cbf64d8b42dafa0ea7e99abe1774d61 /tubes/inc
parent374fb913a78edaa765e0f731d823d6e8180f56fe (diff)
tubes: stop collaborating when the contact leaves
Change-Id: I779aededb95eac6cbfb2fec3e97d207704244e25
Diffstat (limited to 'tubes/inc')
-rw-r--r--tubes/inc/tubes/collaboration.hxx1
-rw-r--r--tubes/inc/tubes/conference.hxx5
2 files changed, 6 insertions, 0 deletions
diff --git a/tubes/inc/tubes/collaboration.hxx b/tubes/inc/tubes/collaboration.hxx
index 31eff7a4b937..6249173fda7e 100644
--- a/tubes/inc/tubes/collaboration.hxx
+++ b/tubes/inc/tubes/collaboration.hxx
@@ -23,6 +23,7 @@ public:
Collaboration() {}
virtual ~Collaboration() {}
+ virtual void ContactLeft() = 0;
virtual TeleConference* GetConference() = 0;
virtual sal_uInt64 GetId() = 0;
virtual void SetCollaboration( TeleConference* pConference ) = 0;
diff --git a/tubes/inc/tubes/conference.hxx b/tubes/inc/tubes/conference.hxx
index 99eb009ec5b4..150e77ffe2fd 100644
--- a/tubes/inc/tubes/conference.hxx
+++ b/tubes/inc/tubes/conference.hxx
@@ -34,6 +34,7 @@
#include <rtl/ustring.hxx>
#include <tubes/warnings_guard_boost_signals2.hpp>
+class Collaboration;
class TeleManager;
class TeleConferenceImpl;
typedef struct _TpAccount TpAccount;
@@ -73,6 +74,9 @@ public:
TUBES_DLLPUBLIC void sendFile( TpContact* pContact, rtl::OUString &localUri, FileSentCallback pCallback, void* pUserData);
const OString& getUuid() const { return msUuid; }
+ Collaboration* getCollaboration() const { return mpCollaboration; }
+ void setCollaboration( Collaboration* pCollaboration ) { mpCollaboration = pCollaboration; }
+
// --- following only to be called only by manager's callbacks ---
// TODO: make friends instead
void setChannel( TpAccount* pAccount, TpDBusTubeChannel* pChannel );
@@ -98,6 +102,7 @@ private:
// Private:
bool spinUntilTubeEstablished();
+ Collaboration* mpCollaboration;
TeleManager* mpManager;
TpAccount* mpAccount;
TpDBusTubeChannel* mpChannel;