[ekiga] Switched the smart pointers implementation to boost
- From: Julien Puydt <jpuydt src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [ekiga] Switched the smart pointers implementation to boost
- Date: Wed, 26 Aug 2009 16:55:41 +0000 (UTC)
commit 0132c8f83619b9317312a893d5bc71661cbe6795
Author: Julien Puydt <jpuydt gnome org>
Date: Wed Aug 26 18:55:22 2009 +0200
Switched the smart pointers implementation to boost
This is part of bug #575005
lib/engine/account/account.h | 6 +-
lib/engine/account/bank-impl.h | 8 +-
lib/engine/account/bank.h | 4 +-
lib/engine/addressbook/book-impl.h | 8 +-
lib/engine/addressbook/book.h | 4 +-
lib/engine/addressbook/contact-core.cpp | 4 +-
lib/engine/addressbook/contact-core.h | 6 +-
lib/engine/addressbook/contact.h | 6 +-
lib/engine/addressbook/source-impl.h | 14 +-
lib/engine/addressbook/source.h | 4 +-
lib/engine/chat/chat-multiple.h | 4 +-
lib/engine/chat/chat-simple.h | 4 +-
lib/engine/chat/chat.h | 10 +-
lib/engine/chat/dialect-impl.h | 44 ++++----
lib/engine/chat/dialect.h | 4 +-
.../avahi-publisher/avahi-publisher-main.cpp | 10 +-
lib/engine/components/avahi/avahi-cluster.cpp | 2 +-
lib/engine/components/avahi/avahi-cluster.h | 2 +-
lib/engine/components/avahi/avahi-heap.cpp | 11 +-
lib/engine/components/avahi/avahi-heap.h | 2 +-
lib/engine/components/avahi/avahi-main.cpp | 6 +-
.../components/call-history/history-book.cpp | 18 ++--
lib/engine/components/call-history/history-book.h | 12 +-
.../components/call-history/history-contact.cpp | 10 +-
.../components/call-history/history-contact.h | 10 +-
.../components/call-history/history-main.cpp | 8 +-
.../components/call-history/history-source.cpp | 2 +-
.../dx-videooutput/videooutput-main-dx.cpp | 2 +-
lib/engine/components/echo/echo-dialect.h | 2 +-
lib/engine/components/echo/echo-main.cpp | 4 +-
lib/engine/components/echo/echo-presentity.h | 4 +-
lib/engine/components/echo/echo-simple.cpp | 6 +-
lib/engine/components/echo/echo-simple.h | 8 +-
lib/engine/components/evolution/evolution-book.cpp | 12 +-
lib/engine/components/evolution/evolution-book.h | 2 +-
.../components/evolution/evolution-contact.cpp | 6 +-
.../components/evolution/evolution-contact.h | 2 +-
lib/engine/components/evolution/evolution-main.cpp | 6 +-
.../components/evolution/evolution-source.cpp | 19 ++-
.../gmconf-personal-details-main.cpp | 4 +-
.../gnome-session/gnome-session-main.cpp | 28 ++--
lib/engine/components/gstreamer/gst-main.cpp | 8 +-
lib/engine/components/hal-dbus/hal-main-dbus.cpp | 4 +-
lib/engine/components/kab/kab-book.h | 2 +-
lib/engine/components/kab/kab-contact.h | 2 +-
lib/engine/components/kab/kab-main.cpp | 6 +-
lib/engine/components/kab/kab-source.h | 2 +-
lib/engine/components/kde/kde-main.cpp | 2 +-
lib/engine/components/ldap/ldap-book.cpp | 12 +-
lib/engine/components/ldap/ldap-book.h | 12 +-
lib/engine/components/ldap/ldap-contact.cpp | 2 +-
lib/engine/components/ldap/ldap-contact.h | 2 +-
lib/engine/components/ldap/ldap-main.cpp | 6 +-
lib/engine/components/ldap/ldap-source.cpp | 10 +-
lib/engine/components/ldap/ldap-source.h | 2 +-
lib/engine/components/libnotify/libnotify-main.cpp | 22 ++--
.../components/local-roster/local-cluster.cpp | 4 +-
lib/engine/components/local-roster/local-cluster.h | 2 +-
lib/engine/components/local-roster/local-heap.cpp | 52 +++++---
lib/engine/components/local-roster/local-heap.h | 4 +-
.../components/local-roster/local-presentity.cpp | 14 +-
.../components/local-roster/local-presentity.h | 10 +-
.../local-roster/local-roster-bridge.cpp | 8 +-
.../components/local-roster/local-roster-main.cpp | 8 +-
.../components/loudmouth/loudmouth-account.cpp | 10 +-
.../components/loudmouth/loudmouth-account.h | 14 +-
lib/engine/components/loudmouth/loudmouth-bank.cpp | 8 +-
lib/engine/components/loudmouth/loudmouth-bank.h | 14 +-
.../components/loudmouth/loudmouth-chat-simple.cpp | 10 +-
.../components/loudmouth/loudmouth-chat-simple.h | 8 +-
.../components/loudmouth/loudmouth-cluster.h | 2 +-
.../components/loudmouth/loudmouth-dialect.h | 2 +-
lib/engine/components/loudmouth/loudmouth-heap.cpp | 6 +-
lib/engine/components/loudmouth/loudmouth-heap.h | 6 +-
lib/engine/components/loudmouth/loudmouth-main.cpp | 10 +-
.../components/loudmouth/loudmouth-presentity.cpp | 2 +-
.../components/loudmouth/loudmouth-presentity.h | 2 +-
.../mlogo-videoinput/videoinput-main-mlogo.cpp | 2 +-
.../null-audioinput/audioinput-main-null.cpp | 4 +-
.../null-audiooutput/audiooutput-main-null.cpp | 4 +-
lib/engine/components/opal/opal-account.cpp | 18 ++--
lib/engine/components/opal/opal-account.h | 2 +-
lib/engine/components/opal/opal-audio.cpp | 8 +-
lib/engine/components/opal/opal-audio.h | 4 +-
lib/engine/components/opal/opal-bank.cpp | 6 +-
lib/engine/components/opal/opal-call-manager.cpp | 8 +-
lib/engine/components/opal/opal-gmconf-bridge.cpp | 4 +-
lib/engine/components/opal/opal-main.cpp | 30 +++---
lib/engine/components/opal/opal-videoinput.cpp | 7 +-
lib/engine/components/opal/opal-videoinput.h | 2 +-
lib/engine/components/opal/opal-videooutput.cpp | 8 +-
lib/engine/components/opal/opal-videooutput.h | 2 +-
lib/engine/components/opal/sip-chat-simple.cpp | 14 +-
lib/engine/components/opal/sip-chat-simple.h | 8 +-
lib/engine/components/opal/sip-dialect.cpp | 2 +-
lib/engine/components/opal/sip-dialect.h | 2 +-
lib/engine/components/opal/sip-endpoint.cpp | 19 ++--
lib/engine/components/opal/sip-endpoint.h | 6 +-
.../components/ptlib/audioinput-main-ptlib.cpp | 4 +-
.../components/ptlib/audiooutput-main-ptlib.cpp | 4 +-
.../components/ptlib/videoinput-main-ptlib.cpp | 4 +-
.../resource-list/resource-list-main.cpp | 8 +-
lib/engine/components/resource-list/rl-cluster.cpp | 10 +-
lib/engine/components/resource-list/rl-cluster.h | 4 +-
.../components/resource-list/rl-entry-ref.cpp | 2 +-
lib/engine/components/resource-list/rl-entry-ref.h | 3 +-
lib/engine/components/resource-list/rl-entry.cpp | 12 +-
lib/engine/components/resource-list/rl-entry.h | 11 +-
lib/engine/components/resource-list/rl-heap.cpp | 22 ++--
lib/engine/components/resource-list/rl-heap.h | 8 +-
lib/engine/components/resource-list/rl-list.cpp | 52 ++++----
lib/engine/components/resource-list/rl-list.h | 10 +-
.../components/resource-list/rl-presentity.cpp | 18 ++--
.../components/resource-list/rl-presentity.h | 13 +-
.../x-videooutput/videooutput-main-x.cpp | 2 +-
lib/engine/components/xcap/xcap-core.cpp | 22 ++--
lib/engine/components/xcap/xcap-core.h | 6 +-
lib/engine/components/xcap/xcap-main.cpp | 4 +-
lib/engine/components/xcap/xcap-path.cpp | 12 +-
lib/engine/components/xcap/xcap-path.h | 10 +-
lib/engine/engine.cpp | 22 ++--
lib/engine/framework/form-request.h | 5 +-
lib/engine/framework/gmref.h | 54 ++++----
lib/engine/framework/kickstart.cpp | 14 +-
lib/engine/framework/kickstart.h | 8 +-
lib/engine/framework/menu-xml.cpp | 4 +-
lib/engine/framework/reflister.h | 26 ++--
lib/engine/framework/services.h | 10 +-
lib/engine/friend-or-foe/friend-or-foe.cpp | 2 +-
lib/engine/friend-or-foe/friend-or-foe.h | 6 +-
lib/engine/gui/gtk-core/gtk-core-main.cpp | 2 +-
.../gui/gtk-frontend/call-history-view-gtk.cpp | 4 +-
.../gui/gtk-frontend/call-history-view-gtk.h | 2 +-
lib/engine/gui/gtk-frontend/chat-area.cpp | 6 +-
lib/engine/gui/gtk-frontend/chat-area.h | 2 +-
lib/engine/gui/gtk-frontend/gtk-frontend.cpp | 14 +-
lib/engine/notification/notification-core.h | 8 +-
lib/engine/presence/cluster-impl.h | 22 ++--
lib/engine/presence/cluster.h | 4 +-
lib/engine/presence/heap-impl.h | 8 +-
lib/engine/presence/heap.h | 6 +-
lib/engine/presence/presence-core.cpp | 18 ++--
lib/engine/presence/presence-core.h | 20 ++--
lib/engine/presence/presentity.h | 6 +-
lib/engine/presence/uri-presentity.cpp | 6 +-
lib/engine/protocol/call-core.cpp | 34 +++---
lib/engine/protocol/call-core.h | 82 ++++++------
lib/engine/protocol/call-manager.cpp | 6 +-
lib/engine/protocol/call-manager.h | 16 ++--
lib/engine/protocol/call-protocol-manager.h | 4 +-
lib/engine/protocol/call.h | 4 +-
lib/engine/videoinput/videoinput-core.cpp | 2 -
lib/gui/xwindow.cpp | 2 +-
lib/gui/xwindow.h | 4 +-
src/dbus-helper/dbus.cpp | 2 +-
src/gui/accounts.cpp | 4 +-
src/gui/assistant.cpp | 20 ++--
src/gui/main.cpp | 133 ++++++++++----------
src/gui/preferences.cpp | 16 ++--
src/gui/statusicon.cpp | 34 +++---
src/gui/statusmenu.cpp | 4 +-
161 files changed, 836 insertions(+), 829 deletions(-)
---
diff --git a/lib/engine/account/account.h b/lib/engine/account/account.h
index aa11b94..533055b 100644
--- a/lib/engine/account/account.h
+++ b/lib/engine/account/account.h
@@ -41,7 +41,7 @@
#include <map>
#include <string>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chain-of-responsibility.h"
#include "form-request.h"
#include "menu-builder.h"
@@ -54,7 +54,7 @@ namespace Ekiga
* @{
*/
- class Account: public virtual GmRefCounted
+ class Account
{
public:
@@ -114,7 +114,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Account> AccountPtr;
+ typedef boost::shared_ptr<Account> AccountPtr;
/**
* @}
diff --git a/lib/engine/account/bank-impl.h b/lib/engine/account/bank-impl.h
index e859f72..e3b6e26 100644
--- a/lib/engine/account/bank-impl.h
+++ b/lib/engine/account/bank-impl.h
@@ -122,14 +122,14 @@ namespace Ekiga
* when the account has been updated and the Ekiga::BankImpl 'account_removed' signal
* will be emitted when the account has been removed from the Ekiga::BankImpl.
*/
- void add_account (gmref_ptr<AccountType> account);
+ void add_account (boost::shared_ptr<AccountType> account);
/** Removes a account from the Ekiga::BankImpl.
* @param: The account to be removed.
* @return: The Ekiga::BankImpl 'account_removed' signal is emitted when the account
* has been removed.
*/
- void remove_account (gmref_ptr<AccountType> account);
+ void remove_account (boost::shared_ptr<AccountType> account);
using RefLister<AccountType>::add_connection;
};
@@ -201,7 +201,7 @@ Ekiga::BankImpl<AccountType>::end () const
template<typename AccountType>
void
-Ekiga::BankImpl<AccountType>::add_account (gmref_ptr<AccountType> account)
+Ekiga::BankImpl<AccountType>::add_account (boost::shared_ptr<AccountType> account)
{
add_object (account);
@@ -211,7 +211,7 @@ Ekiga::BankImpl<AccountType>::add_account (gmref_ptr<AccountType> account)
template<typename AccountType>
void
-Ekiga::BankImpl<AccountType>::remove_account (gmref_ptr<AccountType> account)
+Ekiga::BankImpl<AccountType>::remove_account (boost::shared_ptr<AccountType> account)
{
remove_object (account);
}
diff --git a/lib/engine/account/bank.h b/lib/engine/account/bank.h
index d0e1889..053342d 100644
--- a/lib/engine/account/bank.h
+++ b/lib/engine/account/bank.h
@@ -49,7 +49,7 @@ namespace Ekiga
* @{
*/
- class Bank: public virtual GmRefCounted
+ class Bank
{
public:
@@ -89,7 +89,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Bank> BankPtr;
+ typedef boost::shared_ptr<Bank> BankPtr;
/**
* @}
diff --git a/lib/engine/addressbook/book-impl.h b/lib/engine/addressbook/book-impl.h
index e67d02a..0db3bd9 100644
--- a/lib/engine/addressbook/book-impl.h
+++ b/lib/engine/addressbook/book-impl.h
@@ -121,7 +121,7 @@ namespace Ekiga
* when the contact has been updated and the Ekiga::Book 'contact_removed' signal
* will be emitted when the contact has been removed from the Ekiga::Book.
*/
- void add_contact (gmref_ptr<ContactType> contact);
+ void add_contact (boost::shared_ptr<ContactType> contact);
/** Removes a contact from the Ekiga::Book.
@@ -129,7 +129,7 @@ namespace Ekiga
* @return: The Ekiga::Book 'contact_removed' signal is emitted when the contact
* has been removed.
*/
- void remove_contact (gmref_ptr<ContactType> contact);
+ void remove_contact (boost::shared_ptr<ContactType> contact);
using RefLister<ContactType>::add_connection;
};
@@ -201,7 +201,7 @@ Ekiga::BookImpl<ContactType>::end () const
template<typename ContactType>
void
-Ekiga::BookImpl<ContactType>::add_contact (gmref_ptr<ContactType> contact)
+Ekiga::BookImpl<ContactType>::add_contact (boost::shared_ptr<ContactType> contact)
{
contact->questions.connect (questions.make_slot ());
add_object (contact);
@@ -210,7 +210,7 @@ Ekiga::BookImpl<ContactType>::add_contact (gmref_ptr<ContactType> contact)
template<typename ContactType>
void
-Ekiga::BookImpl<ContactType>::remove_contact (gmref_ptr<ContactType> contact)
+Ekiga::BookImpl<ContactType>::remove_contact (boost::shared_ptr<ContactType> contact)
{
remove_object (contact);
}
diff --git a/lib/engine/addressbook/book.h b/lib/engine/addressbook/book.h
index 0580837..debf5c1 100644
--- a/lib/engine/addressbook/book.h
+++ b/lib/engine/addressbook/book.h
@@ -40,7 +40,7 @@
namespace Ekiga {
- class Book: public virtual GmRefCounted
+ class Book
{
public:
@@ -136,7 +136,7 @@ namespace Ekiga {
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Book> BookPtr;
+ typedef boost::shared_ptr<Book> BookPtr;
};
#endif
diff --git a/lib/engine/addressbook/contact-core.cpp b/lib/engine/addressbook/contact-core.cpp
index 1c5f9aa..2821b20 100644
--- a/lib/engine/addressbook/contact-core.cpp
+++ b/lib/engine/addressbook/contact-core.cpp
@@ -98,7 +98,7 @@ Ekiga::ContactCore::visit_sources (sigc::slot1<bool, SourcePtr > visitor)
}
void
-Ekiga::ContactCore::add_contact_decorator (gmref_ptr<ContactDecorator> decorator)
+Ekiga::ContactCore::add_contact_decorator (boost::shared_ptr<ContactDecorator> decorator)
{
contact_decorators.push_back (decorator);
}
@@ -111,7 +111,7 @@ Ekiga::ContactCore::populate_contact_menu (ContactPtr contact,
{
bool populated = false;
- for (std::list<gmref_ptr<ContactDecorator> >::const_iterator iter
+ for (std::list<boost::shared_ptr<ContactDecorator> >::const_iterator iter
= contact_decorators.begin ();
iter != contact_decorators.end ();
++iter) {
diff --git a/lib/engine/addressbook/contact-core.h b/lib/engine/addressbook/contact-core.h
index 97f4b6e..3c298b0 100644
--- a/lib/engine/addressbook/contact-core.h
+++ b/lib/engine/addressbook/contact-core.h
@@ -48,7 +48,7 @@ namespace Ekiga
* @{
*/
- class ContactDecorator: public virtual GmRefCounted
+ class ContactDecorator
{
public:
@@ -155,7 +155,7 @@ namespace Ekiga
public:
- void add_contact_decorator (gmref_ptr<ContactDecorator> decorator);
+ void add_contact_decorator (boost::shared_ptr<ContactDecorator> decorator);
/** Create the menu for a given Contact and its actions.
* @param The Ekiga::Contact for which the actions could be made available.
@@ -168,7 +168,7 @@ namespace Ekiga
private:
- std::list<gmref_ptr<ContactDecorator> > contact_decorators;
+ std::list<boost::shared_ptr<ContactDecorator> > contact_decorators;
/*** Misc ***/
diff --git a/lib/engine/addressbook/contact.h b/lib/engine/addressbook/contact.h
index c9f45e9..b581186 100644
--- a/lib/engine/addressbook/contact.h
+++ b/lib/engine/addressbook/contact.h
@@ -41,7 +41,7 @@
#include <map>
#include <string>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chain-of-responsibility.h"
#include "form-request.h"
#include "menu-builder.h"
@@ -54,7 +54,7 @@ namespace Ekiga
* @{
*/
- class Contact: public virtual GmRefCounted
+ class Contact
{
public:
@@ -104,7 +104,7 @@ namespace Ekiga
};
- typedef gmref_ptr<Contact> ContactPtr;
+ typedef boost::shared_ptr<Contact> ContactPtr;
/**
* @}
*/
diff --git a/lib/engine/addressbook/source-impl.h b/lib/engine/addressbook/source-impl.h
index 0344cc6..62dec74 100644
--- a/lib/engine/addressbook/source-impl.h
+++ b/lib/engine/addressbook/source-impl.h
@@ -112,7 +112,7 @@ namespace Ekiga
* 'book_removed' signal will be emitted when the Ekiga::Book has been
* removed from the Ekiga::Source.
*/
- void add_book (gmref_ptr<BookType> book);
+ void add_book (boost::shared_ptr<BookType> book);
/** Removes a book from the Ekiga::Source.
@@ -120,7 +120,7 @@ namespace Ekiga
* @return: The Ekiga::Source 'book_removed' signal is emitted when the
* Ekiga::Book has been removed.
*/
- void remove_book (gmref_ptr<BookType> book);
+ void remove_book (boost::shared_ptr<BookType> book);
using RefLister<BookType>::add_connection;
@@ -150,7 +150,7 @@ namespace Ekiga
* Ekiga::Book.
* @param: The Book to remove.
*/
- void common_removal_steps (gmref_ptr<BookType> book);
+ void common_removal_steps (boost::shared_ptr<BookType> book);
/** This callback is triggered when the 'updated' signal is emitted on an
@@ -158,7 +158,7 @@ namespace Ekiga
* Ekiga::Book.
* @param: The updated book.
*/
- void on_book_updated (gmref_ptr<BookType> book);
+ void on_book_updated (boost::shared_ptr<BookType> book);
/** This callback is triggered when the 'removed' signal is emitted on an
@@ -166,7 +166,7 @@ namespace Ekiga
* and takes care of the deletion of the book.
* @param: The removed book.
*/
- void on_book_removed (gmref_ptr<BookType> book);
+ void on_book_removed (boost::shared_ptr<BookType> book);
};
/**
@@ -204,7 +204,7 @@ Ekiga::SourceImpl<BookType>::visit_books (sigc::slot1<bool, BookPtr > visitor)
template<typename BookType>
void
-Ekiga::SourceImpl<BookType>::add_book (gmref_ptr<BookType> book)
+Ekiga::SourceImpl<BookType>::add_book (boost::shared_ptr<BookType> book)
{
add_object (book);
@@ -220,7 +220,7 @@ Ekiga::SourceImpl<BookType>::add_book (gmref_ptr<BookType> book)
template<typename BookType>
void
-Ekiga::SourceImpl<BookType>::remove_book (gmref_ptr<BookType> book)
+Ekiga::SourceImpl<BookType>::remove_book (boost::shared_ptr<BookType> book)
{
remove_object (book);
}
diff --git a/lib/engine/addressbook/source.h b/lib/engine/addressbook/source.h
index ff5662f..53ceb7b 100644
--- a/lib/engine/addressbook/source.h
+++ b/lib/engine/addressbook/source.h
@@ -41,7 +41,7 @@
namespace Ekiga {
- class Source: public virtual GmRefCounted
+ class Source
{
public:
@@ -102,7 +102,7 @@ namespace Ekiga {
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Source> SourcePtr;
+ typedef boost::shared_ptr<Source> SourcePtr;
};
#endif
diff --git a/lib/engine/chat/chat-multiple.h b/lib/engine/chat/chat-multiple.h
index 168dc49..a8854a4 100644
--- a/lib/engine/chat/chat-multiple.h
+++ b/lib/engine/chat/chat-multiple.h
@@ -37,7 +37,7 @@
#ifndef __CHAT_MULTIPLE_H__
#define __CHAT_MULTIPLE_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chat.h"
#include "heap.h"
@@ -60,7 +60,7 @@ namespace Ekiga
virtual HeapPtr get_heap () const = 0;
};
- typedef gmref_ptr<MultipleChat> MultipleChatPtr;
+ typedef boost::shared_ptr<MultipleChat> MultipleChatPtr;
};
diff --git a/lib/engine/chat/chat-simple.h b/lib/engine/chat/chat-simple.h
index dcc1add..b162937 100644
--- a/lib/engine/chat/chat-simple.h
+++ b/lib/engine/chat/chat-simple.h
@@ -37,7 +37,7 @@
#ifndef __CHAT_SIMPLE_H__
#define __CHAT_SIMPLE_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chat.h"
#include "presentity.h"
@@ -60,7 +60,7 @@ namespace Ekiga
virtual PresentityPtr get_presentity () const = 0;
};
- typedef gmref_ptr<SimpleChat> SimpleChatPtr;
+ typedef boost::shared_ptr<SimpleChat> SimpleChatPtr;
};
#endif
diff --git a/lib/engine/chat/chat.h b/lib/engine/chat/chat.h
index 94e8de8..61c8a5e 100644
--- a/lib/engine/chat/chat.h
+++ b/lib/engine/chat/chat.h
@@ -39,7 +39,7 @@
#include <string>
#include <sigc++/sigc++.h>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chain-of-responsibility.h"
#include "form-request.h"
@@ -47,7 +47,7 @@
namespace Ekiga
{
- class ChatObserver: public virtual GmRefCounted
+ class ChatObserver
{
public:
@@ -68,7 +68,7 @@ namespace Ekiga
};
- class Chat: public virtual GmRefCounted
+ class Chat
{
public:
@@ -89,12 +89,12 @@ namespace Ekiga
* send a few previous messages to the new observer.
* @param The new observer
*/
- virtual void connect (gmref_ptr<ChatObserver> observer) = 0;
+ virtual void connect (boost::shared_ptr<ChatObserver> observer) = 0;
/** Disconnects the new observer from the Chat
* @param The observer to disconnect
*/
- virtual void disconnect (gmref_ptr<ChatObserver> observer) = 0;
+ virtual void disconnect (boost::shared_ptr<ChatObserver> observer) = 0;
/** Sends a message through the Chat, or at least attempts to :
* the two ideas are first that the text entry will get blanked
diff --git a/lib/engine/chat/dialect-impl.h b/lib/engine/chat/dialect-impl.h
index c6ce6b2..b4199e9 100644
--- a/lib/engine/chat/dialect-impl.h
+++ b/lib/engine/chat/dialect-impl.h
@@ -75,10 +75,10 @@ namespace Ekiga
/* More STL-like ways to access the chats within this Ekiga::DialectImpl
*/
- typedef typename Ekiga::map_key_iterator<std::map<gmref_ptr<SimpleChatType>, std::list<sigc::connection> > > simple_iterator;
- typedef typename Ekiga::map_key_const_iterator<std::map<gmref_ptr<SimpleChatType>, std::list<sigc::connection> > > simple_const_iterator;
- typedef typename Ekiga::map_key_iterator<std::map<gmref_ptr<MultipleChatType>, std::list<sigc::connection> > > multiple_iterator;
- typedef typename Ekiga::map_key_const_iterator<std::map<gmref_ptr<MultipleChatType>, std::list<sigc::connection> > > multiple_const_iterator;
+ typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<sigc::connection> > > simple_iterator;
+ typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<sigc::connection> > > simple_const_iterator;
+ typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<sigc::connection> > > multiple_iterator;
+ typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<sigc::connection> > > multiple_const_iterator;
simple_iterator simple_begin ();
simple_iterator simple_end ();
@@ -96,32 +96,32 @@ namespace Ekiga
* @param The SimpleChat to be added.
* @return: The Ekiga::Dialect 'simple_chat_added' signal is emitted.
*/
- void add_simple_chat (gmref_ptr<SimpleChatType> chat);
+ void add_simple_chat (boost::shared_ptr<SimpleChatType> chat);
/** Removes a SimpleChat from the Ekiga::Dialect.
* @param The SimpleChat to be removed.
*/
- void remove_simple_chat (gmref_ptr<SimpleChatType> chat);
+ void remove_simple_chat (boost::shared_ptr<SimpleChatType> chat);
/** Adds a MultipleChat to the Ekiga::Dialect.
* @param The MultipleChat to be added.
* @return: The Ekiga::Dialect 'multiple_chat_added' signal is emitted.
*/
- void add_multiple_chat (gmref_ptr<MultipleChatType> chat);
+ void add_multiple_chat (boost::shared_ptr<MultipleChatType> chat);
/** Removes a MultipleChat from the Ekiga::Dialect.
* @param The MultipleChat to be removed.
*/
- void remove_multiple_chat (gmref_ptr<MultipleChatType> chat);
+ void remove_multiple_chat (boost::shared_ptr<MultipleChatType> chat);
private:
- std::map<gmref_ptr<SimpleChatType>, std::list<sigc::connection> > simple_chats;
- std::map<gmref_ptr<MultipleChatType>, std::list<sigc::connection> > multiple_chats;
+ std::map<boost::shared_ptr<SimpleChatType>, std::list<sigc::connection> > simple_chats;
+ std::map<boost::shared_ptr<MultipleChatType>, std::list<sigc::connection> > multiple_chats;
- void on_simple_chat_removed (gmref_ptr<SimpleChatType> chat);
+ void on_simple_chat_removed (boost::shared_ptr<SimpleChatType> chat);
- void on_multiple_chat_removed (gmref_ptr<MultipleChatType> chat);
+ void on_multiple_chat_removed (boost::shared_ptr<MultipleChatType> chat);
};
};
@@ -133,7 +133,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::DialectImpl ()
template<typename SimpleChatType, typename MultipleChatType>
Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::~DialectImpl ()
{
- for (typename std::map<gmref_ptr<SimpleChatType>,std::list<sigc::connection> >::iterator iter = simple_chats.begin ();
+ for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<sigc::connection> >::iterator iter = simple_chats.begin ();
iter != simple_chats.end ();
iter++) {
@@ -144,7 +144,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::~DialectImpl ()
conn_iter->disconnect ();
}
}
- for (typename std::map<gmref_ptr<MultipleChatType>,std::list<sigc::connection> >::iterator iter = multiple_chats.begin ();
+ for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<sigc::connection> >::iterator iter = multiple_chats.begin ();
iter != multiple_chats.end ();
iter++) {
@@ -163,7 +163,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::visit_simple_chats (sigc::
{
bool go_on = true;
- for (typename std::map<gmref_ptr<SimpleChatType>,std::list<sigc::connection> >::iterator iter = simple_chats.begin ();
+ for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<sigc::connection> >::iterator iter = simple_chats.begin ();
go_on && iter != simple_chats.end ();
iter++) {
@@ -177,7 +177,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::visit_multiple_chats (sigc
{
bool go_on = true;
- for (typename std::map<gmref_ptr<MultipleChatType>,std::list<sigc::connection> >::iterator iter = multiple_chats.begin ();
+ for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<sigc::connection> >::iterator iter = multiple_chats.begin ();
go_on && iter != multiple_chats.end ();
iter++) {
@@ -243,7 +243,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::multiple_end () const
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_simple_chat (gmref_ptr<SimpleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_simple_chat (boost::shared_ptr<SimpleChatType> chat)
{
simple_chats[chat].push_back (chat->removed.connect (sigc::bind (sigc::mem_fun (this, &Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_simple_chat_removed), chat)));
simple_chat_added.emit (chat);
@@ -251,14 +251,14 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_simple_chat (gmref_ptr
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::remove_simple_chat (gmref_ptr<SimpleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::remove_simple_chat (boost::shared_ptr<SimpleChatType> chat)
{
chat->removed.emit ();
}
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_multiple_chat (gmref_ptr<MultipleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_multiple_chat (boost::shared_ptr<MultipleChatType> chat)
{
multiple_chats[chat].push_back (chat->removed.connect (sigc::bind (sigc::mem_fun (this, &Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_multiple_chat_removed), chat)));
multiple_chat_added.emit (chat);
@@ -266,14 +266,14 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::add_multiple_chat (gmref_p
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::remove_multiple_chat (gmref_ptr<MultipleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::remove_multiple_chat (boost::shared_ptr<MultipleChatType> chat)
{
chat->removed.emit ();
}
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_simple_chat_removed (gmref_ptr<SimpleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_simple_chat_removed (boost::shared_ptr<SimpleChatType> chat)
{
for (typename std::list<sigc::connection>::iterator iter = simple_chats[chat].begin ();
iter != simple_chats[chat].end ();
@@ -286,7 +286,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_simple_chat_removed (gm
template<typename SimpleChatType, typename MultipleChatType>
void
-Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_multiple_chat_removed (gmref_ptr<MultipleChatType> chat)
+Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_multiple_chat_removed (boost::shared_ptr<MultipleChatType> chat)
{
for (typename std::list<sigc::connection>::iterator iter = multiple_chats[chat].begin ();
iter != multiple_chats[chat].end ();
diff --git a/lib/engine/chat/dialect.h b/lib/engine/chat/dialect.h
index b9c414f..0b22eab 100644
--- a/lib/engine/chat/dialect.h
+++ b/lib/engine/chat/dialect.h
@@ -43,7 +43,7 @@
namespace Ekiga
{
- class Dialect: public virtual GmRefCounted
+ class Dialect
{
public:
@@ -84,7 +84,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequest*> questions;
};
- typedef gmref_ptr<Dialect> DialectPtr;
+ typedef boost::shared_ptr<Dialect> DialectPtr;
};
diff --git a/lib/engine/components/avahi-publisher/avahi-publisher-main.cpp b/lib/engine/components/avahi-publisher/avahi-publisher-main.cpp
index 738cbcc..eb10935 100644
--- a/lib/engine/components/avahi-publisher/avahi-publisher-main.cpp
+++ b/lib/engine/components/avahi-publisher/avahi-publisher-main.cpp
@@ -48,13 +48,13 @@ struct AVAHIPUBSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("avahi-presence-publisher");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
- gmref_ptr<Ekiga::PersonalDetails> details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
+ boost::shared_ptr<Ekiga::PersonalDetails> details = core.get<Ekiga::PersonalDetails> ("personal-details");
if (presence_core && call_core && details && !service) {
- gmref_ptr<Avahi::PresencePublisher> publisher (new Avahi::PresencePublisher (core, *details, *call_core));
+ boost::shared_ptr<Avahi::PresencePublisher> publisher (new Avahi::PresencePublisher (core, *details, *call_core));
presence_core->add_presence_publisher (publisher);
core.add (publisher);
result = true;
@@ -75,6 +75,6 @@ struct AVAHIPUBSpark: public Ekiga::Spark
void
avahi_publisher_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new AVAHIPUBSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new AVAHIPUBSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/avahi/avahi-cluster.cpp b/lib/engine/components/avahi/avahi-cluster.cpp
index d52cecb..4af6845 100644
--- a/lib/engine/components/avahi/avahi-cluster.cpp
+++ b/lib/engine/components/avahi/avahi-cluster.cpp
@@ -44,7 +44,7 @@ Avahi::Cluster::Cluster (Ekiga::ServiceCore &_core): core(_core)
add_heap (heap);
/* don't check the cast: it has been checked already by avahi-main! */
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
presence_core->add_presence_fetcher (heap);
}
diff --git a/lib/engine/components/avahi/avahi-cluster.h b/lib/engine/components/avahi/avahi-cluster.h
index bb76c6c..38c95f9 100644
--- a/lib/engine/components/avahi/avahi-cluster.h
+++ b/lib/engine/components/avahi/avahi-cluster.h
@@ -77,7 +77,7 @@ namespace Avahi
HeapPtr heap;
};
- typedef gmref_ptr<Cluster> ClusterPtr;
+ typedef boost::shared_ptr<Cluster> ClusterPtr;
/**
* @}
diff --git a/lib/engine/components/avahi/avahi-heap.cpp b/lib/engine/components/avahi/avahi-heap.cpp
index 6a3a651..cf262c8 100644
--- a/lib/engine/components/avahi/avahi-heap.cpp
+++ b/lib/engine/components/avahi/avahi-heap.cpp
@@ -232,11 +232,12 @@ public:
resolver_callback_helper (const std::string name_): name(name_)
{}
- bool test (gmref_ptr<Ekiga::URIPresentity> presentity_)
+ bool test (Ekiga::PresentityPtr pres_)
{
+ boost::shared_ptr<Ekiga::URIPresentity> presentity_ = boost::dynamic_pointer_cast<Ekiga::URIPresentity> (pres_);
bool result;
- if (presentity_->get_name () == name) {
+ if (presentity_ && presentity_->get_name () == name) {
presentity = presentity_;
result = false;
@@ -244,11 +245,11 @@ public:
return result;
}
- gmref_ptr<Ekiga::URIPresentity> found_presentity () const
+ boost::shared_ptr<Ekiga::URIPresentity> found_presentity () const
{ return presentity; }
private:
- gmref_ptr<Ekiga::URIPresentity> presentity;
+ boost::shared_ptr<Ekiga::URIPresentity> presentity;
const std::string name;
};
@@ -318,7 +319,7 @@ Avahi::Heap::ResolverCallback (AvahiServiceResolver *resolver,
groups.insert (_("Neighbours"));
url = g_strdup_printf ("%s:neighbour %s:%d", broken[1], host_name, port);
- gmref_ptr<Ekiga::URIPresentity> presentity (new Ekiga::URIPresentity (core, name, url, groups));
+ boost::shared_ptr<Ekiga::URIPresentity> presentity (new Ekiga::URIPresentity (core, name, url, groups));
status_received.emit (url, status);
presence_received.emit (url, presence);
add_presentity (presentity);
diff --git a/lib/engine/components/avahi/avahi-heap.h b/lib/engine/components/avahi/avahi-heap.h
index 76c1aa1..1272cce 100644
--- a/lib/engine/components/avahi/avahi-heap.h
+++ b/lib/engine/components/avahi/avahi-heap.h
@@ -116,7 +116,7 @@ namespace Avahi
const std::string name);
};
- typedef gmref_ptr<Heap> HeapPtr;
+ typedef boost::shared_ptr<Heap> HeapPtr;
/**
* @}
diff --git a/lib/engine/components/avahi/avahi-main.cpp b/lib/engine/components/avahi/avahi-main.cpp
index 2ea1738..0e08887 100644
--- a/lib/engine/components/avahi/avahi-main.cpp
+++ b/lib/engine/components/avahi/avahi-main.cpp
@@ -49,11 +49,11 @@ struct AVAHISpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("avahi-core");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
if ( !service && presence_core) {
- gmref_ptr<Avahi::Cluster> cluster (new Avahi::Cluster (core));
+ boost::shared_ptr<Avahi::Cluster> cluster (new Avahi::Cluster (core));
core.add (cluster);
presence_core->add_cluster (cluster);
result = true;
@@ -74,6 +74,6 @@ struct AVAHISpark: public Ekiga::Spark
void
avahi_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new AVAHISpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new AVAHISpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/call-history/history-book.cpp b/lib/engine/components/call-history/history-book.cpp
index 55dda92..79148ba 100644
--- a/lib/engine/components/call-history/history-book.cpp
+++ b/lib/engine/components/call-history/history-book.cpp
@@ -58,9 +58,9 @@ History::Book::Book (Ekiga::ServiceCore &_core) :
const std::string raw = c_raw;
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlDocGetRootElement (doc.get ());
if (root == NULL) {
@@ -80,12 +80,12 @@ History::Book::Book (Ekiga::ServiceCore &_core) :
g_free (c_raw);
} else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlNewDocNode (doc.get (), NULL, BAD_CAST "list", NULL);
xmlDocSetRootElement (doc.get (), root);
}
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
call_core->missed_call.connect (sigc::mem_fun (this, &History::Book::on_missed_call));
call_core->cleared_call.connect (sigc::mem_fun (this, &History::Book::on_cleared_call));
@@ -176,7 +176,7 @@ History::Book::clear ()
remove_all_objects ();
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlNewDocNode (doc.get (), NULL, BAD_CAST "list", NULL);
xmlDocSetRootElement (doc.get (), root);
@@ -185,8 +185,8 @@ History::Book::clear ()
}
void
-History::Book::on_missed_call (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call)
+History::Book::on_missed_call (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call)
{
add (call->get_remote_party_name (),
call->get_remote_uri (),
@@ -196,8 +196,8 @@ History::Book::on_missed_call (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
void
-History::Book::on_cleared_call (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call,
+History::Book::on_cleared_call (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call,
std::string /*message*/)
{
add (call->get_remote_party_name (),
diff --git a/lib/engine/components/call-history/history-book.h b/lib/engine/components/call-history/history-book.h
index d085d8a..ae9400e 100644
--- a/lib/engine/components/call-history/history-book.h
+++ b/lib/engine/components/call-history/history-book.h
@@ -98,18 +98,18 @@ namespace History
void common_add (Contact &contact);
- void on_missed_call (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call);
+ void on_missed_call (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call);
- void on_cleared_call (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call,
+ void on_cleared_call (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call,
std::string message);
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
};
- typedef gmref_ptr<Book> BookPtr;
+ typedef boost::shared_ptr<Book> BookPtr;
/**
* @}
diff --git a/lib/engine/components/call-history/history-contact.cpp b/lib/engine/components/call-history/history-contact.cpp
index c7cacd0..7129cd7 100644
--- a/lib/engine/components/call-history/history-contact.cpp
+++ b/lib/engine/components/call-history/history-contact.cpp
@@ -45,12 +45,12 @@
History::Contact::Contact (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr _node):
core(_core), doc(_doc), node(_node)
{
xmlChar* xml_str = NULL;
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
xml_str = xmlGetProp (node, (const xmlChar *)"type");
if (xml_str != NULL) {
@@ -102,7 +102,7 @@ History::Contact::Contact (Ekiga::ServiceCore &_core,
History::Contact::Contact (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
const std::string _name,
const std::string _uri,
time_t _call_start,
@@ -112,7 +112,7 @@ History::Contact::Contact (Ekiga::ServiceCore &_core,
{
gchar* tmp = NULL;
std::string callp;
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
node = xmlNewNode (NULL, BAD_CAST "entry");
@@ -171,7 +171,7 @@ History::Contact::get_groups () const
bool
History::Contact::populate_menu (Ekiga::MenuBuilder &builder)
{
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
return contact_core->populate_contact_menu (ContactPtr (this),
uri, builder);
}
diff --git a/lib/engine/components/call-history/history-contact.h b/lib/engine/components/call-history/history-contact.h
index cd33502..5f681be 100644
--- a/lib/engine/components/call-history/history-contact.h
+++ b/lib/engine/components/call-history/history-contact.h
@@ -38,7 +38,7 @@
#include <libxml/tree.h>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include "services.h"
#include "contact-core.h"
@@ -64,11 +64,11 @@ namespace History
public:
Contact (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr _node);
Contact (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
const std::string _name,
const std::string _uri,
time_t call_start,
@@ -101,7 +101,7 @@ namespace History
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
std::string name;
std::string uri;
@@ -110,7 +110,7 @@ namespace History
call_type m_type;
};
- typedef gmref_ptr<Contact> ContactPtr;
+ typedef boost::shared_ptr<Contact> ContactPtr;
/**
* @}
diff --git a/lib/engine/components/call-history/history-main.cpp b/lib/engine/components/call-history/history-main.cpp
index 947a322..6a5e21c 100644
--- a/lib/engine/components/call-history/history-main.cpp
+++ b/lib/engine/components/call-history/history-main.cpp
@@ -50,12 +50,12 @@ struct HISTORYSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("call-history-store");
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
if (contact_core && call_core && !service) {
- gmref_ptr<History::Source> source (new History::Source (core));
+ boost::shared_ptr<History::Source> source (new History::Source (core));
core.add (source);
contact_core->add_source (source);
result = true;
@@ -76,6 +76,6 @@ struct HISTORYSpark: public Ekiga::Spark
void
history_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new HISTORYSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new HISTORYSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/call-history/history-source.cpp b/lib/engine/components/call-history/history-source.cpp
index 124dadc..3e7b301 100644
--- a/lib/engine/components/call-history/history-source.cpp
+++ b/lib/engine/components/call-history/history-source.cpp
@@ -39,7 +39,7 @@
History::Source::Source (Ekiga::ServiceCore &_core): core(_core)
{
- book = gmref_ptr<Book>(new Book (core));
+ book = boost::shared_ptr<Book>(new Book (core));
add_book (book);
}
diff --git a/lib/engine/components/dx-videooutput/videooutput-main-dx.cpp b/lib/engine/components/dx-videooutput/videooutput-main-dx.cpp
index b6d2dc1..569589e 100644
--- a/lib/engine/components/dx-videooutput/videooutput-main-dx.cpp
+++ b/lib/engine/components/dx-videooutput/videooutput-main-dx.cpp
@@ -45,7 +45,7 @@ videooutput_dx_init (Ekiga::ServiceCore &core,
char **/*argv*/[])
{
bool result = false;
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get ("videooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get<Ekiga::VideoOutputCore> ("videooutput-core");
if (videooutput_core) {
diff --git a/lib/engine/components/echo/echo-dialect.h b/lib/engine/components/echo/echo-dialect.h
index 907ec41..be0bfa1 100644
--- a/lib/engine/components/echo/echo-dialect.h
+++ b/lib/engine/components/echo/echo-dialect.h
@@ -65,7 +65,7 @@ namespace Echo
void new_chat ();
};
- typedef gmref_ptr<Dialect> DialectPtr;
+ typedef boost::shared_ptr<Dialect> DialectPtr;
};
diff --git a/lib/engine/components/echo/echo-main.cpp b/lib/engine/components/echo/echo-main.cpp
index 17eee9c..31a5b13 100644
--- a/lib/engine/components/echo/echo-main.cpp
+++ b/lib/engine/components/echo/echo-main.cpp
@@ -45,11 +45,11 @@ echo_init (Ekiga::ServiceCore &core,
char **/*argv*/[])
{
bool result = false;
- gmref_ptr<Ekiga::ChatCore> chat_core = core.get ("chat-core");
+ boost::shared_ptr<Ekiga::ChatCore> chat_core = core.get<Ekiga::ChatCore> ("chat-core");
if (chat_core) {
- gmref_ptr<Echo::Dialect> dialect (new Echo::Dialect);
+ boost::shared_ptr<Echo::Dialect> dialect (new Echo::Dialect);
core.add (dialect);
chat_core->add_dialect (dialect);
result = true;
diff --git a/lib/engine/components/echo/echo-presentity.h b/lib/engine/components/echo/echo-presentity.h
index 1ede74e..f3560f0 100644
--- a/lib/engine/components/echo/echo-presentity.h
+++ b/lib/engine/components/echo/echo-presentity.h
@@ -36,7 +36,7 @@
#ifndef __ECHO_PRESENTITY__
#define __ECHO_PRESENTITY__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "presentity.h"
namespace Echo
@@ -64,7 +64,7 @@ namespace Echo
bool populate_menu (Ekiga::MenuBuilder &);
};
- typedef gmref_ptr<Presentity> PresentityPtr;
+ typedef boost::shared_ptr<Presentity> PresentityPtr;
};
diff --git a/lib/engine/components/echo/echo-simple.cpp b/lib/engine/components/echo/echo-simple.cpp
index 6e3789b..1b6ca6e 100644
--- a/lib/engine/components/echo/echo-simple.cpp
+++ b/lib/engine/components/echo/echo-simple.cpp
@@ -61,7 +61,7 @@ Echo::SimpleChat::populate_menu (Ekiga::MenuBuilder &/*builder*/)
}
void
-Echo::SimpleChat::connect (gmref_ptr<Ekiga::ChatObserver> observer)
+Echo::SimpleChat::connect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observer->notice ("This is just an echo chat : type and see back");
@@ -69,7 +69,7 @@ Echo::SimpleChat::connect (gmref_ptr<Ekiga::ChatObserver> observer)
}
void
-Echo::SimpleChat::disconnect (gmref_ptr<Ekiga::ChatObserver> observer)
+Echo::SimpleChat::disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observers.remove (observer);
@@ -80,7 +80,7 @@ Echo::SimpleChat::disconnect (gmref_ptr<Ekiga::ChatObserver> observer)
bool
Echo::SimpleChat::send_message (const std::string msg)
{
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter)
(*iter)->message ("Echo", msg);
diff --git a/lib/engine/components/echo/echo-simple.h b/lib/engine/components/echo/echo-simple.h
index 1c6a307..e85a1d9 100644
--- a/lib/engine/components/echo/echo-simple.h
+++ b/lib/engine/components/echo/echo-simple.h
@@ -51,9 +51,9 @@ namespace Echo
const std::string get_title() const;
- void connect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void connect (boost::shared_ptr<Ekiga::ChatObserver> observer);
- void disconnect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer);
bool send_message (const std::string msg);
@@ -63,11 +63,11 @@ namespace Echo
private:
- std::list<gmref_ptr<Ekiga::ChatObserver> > observers;
+ std::list<boost::shared_ptr<Ekiga::ChatObserver> > observers;
PresentityPtr presentity;
};
- typedef gmref_ptr<SimpleChat> SimpleChatPtr;
+ typedef boost::shared_ptr<SimpleChat> SimpleChatPtr;
};
diff --git a/lib/engine/components/evolution/evolution-book.cpp b/lib/engine/components/evolution/evolution-book.cpp
index abe1321..2720469 100644
--- a/lib/engine/components/evolution/evolution-book.cpp
+++ b/lib/engine/components/evolution/evolution-book.cpp
@@ -95,11 +95,12 @@ public:
contacts_removed_helper (const std::string id_): id(id_)
{}
- bool test (Evolution::ContactPtr contact)
+ bool test (Ekiga::ContactPtr contact_)
{
+ Evolution::ContactPtr contact = boost::dynamic_pointer_cast<Evolution::Contact> (contact_);
bool result;
- if (contact->get_id () == id) {
+ if (contact && contact->get_id () == id) {
contact->removed.emit ();
result = false;
@@ -139,11 +140,12 @@ public:
id = (const gchar*)e_contact_get_const (econtact, E_CONTACT_UID);
}
- bool test (Evolution::ContactPtr contact)
+ bool test (Ekiga::ContactPtr contact_)
{
+ Evolution::ContactPtr contact = boost::dynamic_pointer_cast<Evolution::Contact> (contact_);
bool result = true;
- if (contact->get_id () == id) {
+ if (contact && contact->get_id () == id) {
contact->update_econtact (econtact);
result = false;
@@ -313,7 +315,7 @@ Evolution::Book::refresh ()
void
Evolution::Book::new_contact_action ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Book::on_new_contact_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Book::on_new_contact_form_submitted)));
request->title (_("New contact"));
diff --git a/lib/engine/components/evolution/evolution-book.h b/lib/engine/components/evolution/evolution-book.h
index d3f147e..dbe2d56 100644
--- a/lib/engine/components/evolution/evolution-book.h
+++ b/lib/engine/components/evolution/evolution-book.h
@@ -104,7 +104,7 @@ namespace Evolution
std::string search_filter;
};
- typedef gmref_ptr<Book> BookPtr;
+ typedef boost::shared_ptr<Book> BookPtr;
/**
* @}
diff --git a/lib/engine/components/evolution/evolution-contact.cpp b/lib/engine/components/evolution/evolution-contact.cpp
index 4faff35..15ea8eb 100644
--- a/lib/engine/components/evolution/evolution-contact.cpp
+++ b/lib/engine/components/evolution/evolution-contact.cpp
@@ -184,7 +184,7 @@ Evolution::Contact::remove ()
bool
Evolution::Contact::populate_menu (Ekiga::MenuBuilder &builder)
{
- gmref_ptr<Ekiga::ContactCore> core = services.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> core = services.get<Ekiga::ContactCore> ("contact-core");
bool populated = false;
std::map<std::string, std::string> uris;
@@ -301,7 +301,7 @@ Evolution::Contact::set_attribute_value (unsigned int attr_type,
void
Evolution::Contact::edit_action ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Contact::on_edit_form_submitted)));;
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Contact::on_edit_form_submitted)));;
request->title (_("Edit contact"));
@@ -354,7 +354,7 @@ Evolution::Contact::on_edit_form_submitted (bool submitted,
void
Evolution::Contact::remove_action ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple>(new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Contact::on_remove_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple>(new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Evolution::Contact::on_remove_form_submitted)));
gchar* instructions = NULL;
request->title (_("Remove contact"));
diff --git a/lib/engine/components/evolution/evolution-contact.h b/lib/engine/components/evolution/evolution-contact.h
index f841ce6..1b6c097 100644
--- a/lib/engine/components/evolution/evolution-contact.h
+++ b/lib/engine/components/evolution/evolution-contact.h
@@ -111,7 +111,7 @@ namespace Evolution
Ekiga::Form &result);
};
- typedef gmref_ptr<Contact> ContactPtr;
+ typedef boost::shared_ptr<Contact> ContactPtr;
/**
* @}
diff --git a/lib/engine/components/evolution/evolution-main.cpp b/lib/engine/components/evolution/evolution-main.cpp
index 99dff78..295aeb9 100644
--- a/lib/engine/components/evolution/evolution-main.cpp
+++ b/lib/engine/components/evolution/evolution-main.cpp
@@ -50,12 +50,12 @@ struct EVOSpark: public Ekiga::Spark
int */*argc*/,
char **/*argv*/[])
{
- gmref_ptr<Ekiga::ContactCore> core = services.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> core = services.get<Ekiga::ContactCore> ("contact-core");
Ekiga::ServicePtr service = services.get ("evolution-source");
if (core && !service) {
- gmref_ptr<Evolution::Source> source (new Evolution::Source (services));
+ boost::shared_ptr<Evolution::Source> source (new Evolution::Source (services));
services.add (source);
core->add_source (source);
result = true;
@@ -76,6 +76,6 @@ struct EVOSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new EVOSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new EVOSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/evolution/evolution-source.cpp b/lib/engine/components/evolution/evolution-source.cpp
index ccb2431..a7c2c22 100644
--- a/lib/engine/components/evolution/evolution-source.cpp
+++ b/lib/engine/components/evolution/evolution-source.cpp
@@ -110,17 +110,22 @@ public :
inline void ready ()
{ found = false; }
- bool test (Evolution::BookPtr book)
+ bool test (Ekiga::BookPtr book_)
{
- EBook *book_ebook = book->get_ebook ();
- ESource *book_source = e_book_get_source (book_ebook);
- ESourceGroup *book_group = e_source_peek_group (book_source);
+ Evolution::BookPtr book = boost::dynamic_pointer_cast<Evolution::Book> (book_);
+ if (book) {
- if (book_group == group) {
+ EBook *book_ebook = book->get_ebook ();
+ ESource *book_source = e_book_get_source (book_ebook);
+ ESourceGroup *book_group = e_source_peek_group (book_source);
- book->removed.emit ();
- found = true;
+ if (book_group == group) {
+
+ book->removed.emit ();
+ found = true;
+ }
}
+
return !found;
}
diff --git a/lib/engine/components/gmconf-personal-details/gmconf-personal-details-main.cpp b/lib/engine/components/gmconf-personal-details/gmconf-personal-details-main.cpp
index 6dcbc18..4d97f1f 100644
--- a/lib/engine/components/gmconf-personal-details/gmconf-personal-details-main.cpp
+++ b/lib/engine/components/gmconf-personal-details/gmconf-personal-details-main.cpp
@@ -45,11 +45,11 @@ gmconf_personal_details_init (Ekiga::ServiceCore &core,
char ** /*argv*/[])
{
bool result = false;
- gmref_ptr<Ekiga::PersonalDetails> personal_details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PersonalDetails> personal_details = core.get<Ekiga::PersonalDetails> ("personal-details");
if ( !personal_details) {
- gmref_ptr<Gmconf::PersonalDetails> gmconf_details (new Gmconf::PersonalDetails ());
+ boost::shared_ptr<Gmconf::PersonalDetails> gmconf_details (new Gmconf::PersonalDetails ());
core.add (gmconf_details);
result = true;
}
diff --git a/lib/engine/components/gnome-session/gnome-session-main.cpp b/lib/engine/components/gnome-session/gnome-session-main.cpp
index 0f8ef01..980fc49 100644
--- a/lib/engine/components/gnome-session/gnome-session-main.cpp
+++ b/lib/engine/components/gnome-session/gnome-session-main.cpp
@@ -50,7 +50,7 @@
struct GNOMESESSIONService: public Ekiga::Service
{
- GNOMESESSIONService (gmref_ptr<Ekiga::CallCore> call_core);
+ GNOMESESSIONService (boost::shared_ptr<Ekiga::CallCore> call_core);
~GNOMESESSIONService ();
@@ -62,14 +62,14 @@ struct GNOMESESSIONService: public Ekiga::Service
private:
- void on_established_call (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call);
+ void on_established_call (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call);
- void on_cleared_call (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call);
+ void on_cleared_call (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call);
DBusGProxy* proxy;
- std::map<gmref_ptr<Ekiga::Call>, guint> cookies;
+ std::map<boost::shared_ptr<Ekiga::Call>, guint> cookies;
};
struct GNOMESESSIONSpark: public Ekiga::Spark
@@ -81,7 +81,7 @@ struct GNOMESESSIONSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
Ekiga::ServicePtr service = core.get ("gnome-session");
if (call_core && !service) {
@@ -105,11 +105,11 @@ struct GNOMESESSIONSpark: public Ekiga::Spark
void
gnomesession_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new GNOMESESSIONSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new GNOMESESSIONSpark);
kickstart.add_spark (spark);
}
-GNOMESESSIONService::GNOMESESSIONService (gmref_ptr<Ekiga::CallCore> call_core)
+GNOMESESSIONService::GNOMESESSIONService (boost::shared_ptr<Ekiga::CallCore> call_core)
{
GError* error = NULL;
@@ -146,8 +146,8 @@ GNOMESESSIONService::~GNOMESESSIONService ()
}
void
-GNOMESESSIONService::on_established_call (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call)
+GNOMESESSIONService::on_established_call (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call)
{
guint cookie;
@@ -166,10 +166,10 @@ GNOMESESSIONService::on_established_call (gmref_ptr<Ekiga::CallManager> /*manage
}
void
-GNOMESESSIONService::on_cleared_call (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call)
+GNOMESESSIONService::on_cleared_call (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call)
{
- std::map<gmref_ptr<Ekiga::Call>, guint>::iterator iter = cookies.find (call);
+ std::map<boost::shared_ptr<Ekiga::Call>, guint>::iterator iter = cookies.find (call);
if (iter != cookies.end ()) {
diff --git a/lib/engine/components/gstreamer/gst-main.cpp b/lib/engine/components/gstreamer/gst-main.cpp
index 1739bb4..e33239b 100644
--- a/lib/engine/components/gstreamer/gst-main.cpp
+++ b/lib/engine/components/gstreamer/gst-main.cpp
@@ -71,9 +71,9 @@ struct GSTSpark: public Ekiga::Spark
int* argc,
char** argv[])
{
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core.get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get ("audiooutput-core");
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core.get ("videoinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core.get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
Ekiga::ServicePtr service = core.get ("gstreamer");
if (audioinput_core && audiooutput_core && videoinput_core && !service) {
@@ -111,6 +111,6 @@ struct GSTSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new GSTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new GSTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/hal-dbus/hal-main-dbus.cpp b/lib/engine/components/hal-dbus/hal-main-dbus.cpp
index f7e6193..cefa93f 100644
--- a/lib/engine/components/hal-dbus/hal-main-dbus.cpp
+++ b/lib/engine/components/hal-dbus/hal-main-dbus.cpp
@@ -49,7 +49,7 @@ struct HALDBUSSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::HalCore> hal_core = core.get ("hal-core");
+ boost::shared_ptr<Ekiga::HalCore> hal_core = core.get<Ekiga::HalCore> ("hal-core");
if (hal_core) {
@@ -76,6 +76,6 @@ struct HALDBUSSpark: public Ekiga::Spark
void
hal_dbus_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new HALDBUSSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new HALDBUSSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/kab/kab-book.h b/lib/engine/components/kab/kab-book.h
index a682fa9..b59b9de 100644
--- a/lib/engine/components/kab/kab-book.h
+++ b/lib/engine/components/kab/kab-book.h
@@ -78,7 +78,7 @@ namespace KAB
Ekiga::ContactCore &core;
};
- typedef gmref_ptr<Book> BookPtr;
+ typedef boost::shared_ptr<Book> BookPtr;
/**
* @}
diff --git a/lib/engine/components/kab/kab-contact.h b/lib/engine/components/kab/kab-contact.h
index 3998723..f57cfde 100644
--- a/lib/engine/components/kab/kab-contact.h
+++ b/lib/engine/components/kab/kab-contact.h
@@ -75,7 +75,7 @@ namespace KAB
KABC::Addressee& addressee;
};
- typedef gmref_ptr<Contact> ContactPtr;
+ typedef boost::shared_ptr<Contact> ContactPtr;
/**
* @}
diff --git a/lib/engine/components/kab/kab-main.cpp b/lib/engine/components/kab/kab-main.cpp
index c7fd71c..fe8fecb 100644
--- a/lib/engine/components/kab/kab-main.cpp
+++ b/lib/engine/components/kab/kab-main.cpp
@@ -49,11 +49,11 @@ struct KABSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr kde_core = core.get ("kde-core");
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
if (contact_core && kde_core) {
- gmref_ptr<KAB::Source> source (new KAB::Source (*contact_core));
+ boost::shared_ptr<KAB::Source> source (new KAB::Source (*contact_core));
core.add (source);
contact_core->add_source (source);
result = true;
@@ -75,6 +75,6 @@ struct KABSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new KABSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new KABSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/kab/kab-source.h b/lib/engine/components/kab/kab-source.h
index ac0870c..d103263 100644
--- a/lib/engine/components/kab/kab-source.h
+++ b/lib/engine/components/kab/kab-source.h
@@ -76,7 +76,7 @@ namespace KAB
Ekiga::ContactCore &core;
};
- typedef gmref_ptr<Source> SourcePtr;
+ typedef boost::shared_ptr<Source> SourcePtr;
/**
* @}
diff --git a/lib/engine/components/kde/kde-main.cpp b/lib/engine/components/kde/kde-main.cpp
index 15d036e..28e7295 100644
--- a/lib/engine/components/kde/kde-main.cpp
+++ b/lib/engine/components/kde/kde-main.cpp
@@ -86,6 +86,6 @@ struct KDESpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new KDESpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new KDESpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/ldap/ldap-book.cpp b/lib/engine/components/ldap/ldap-book.cpp
index 6ef7f2a..2bfdf63 100644
--- a/lib/engine/components/ldap/ldap-book.cpp
+++ b/lib/engine/components/ldap/ldap-book.cpp
@@ -169,7 +169,7 @@ struct RefreshData
/* actual implementation */
OPENLDAP::Book::Book (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr _node):
saslform(NULL), core(_core), doc(_doc), node(_node),
name_node(NULL), uri_node(NULL), authcID_node(NULL), password_node(NULL),
@@ -338,7 +338,7 @@ OPENLDAP::Book::Book (Ekiga::ServiceCore &_core,
}
OPENLDAP::Book::Book (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
OPENLDAP::BookInfo _bookinfo):
saslform(NULL), core(_core), doc(_doc), name_node(NULL),
uri_node(NULL), authcID_node(NULL), password_node(NULL),
@@ -535,7 +535,7 @@ extern "C" {
/* If there are missing items, try to get them all in one dialog */
if (nprompts) {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (ctx->book, &OPENLDAP::Book::on_sasl_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (ctx->book, &OPENLDAP::Book::on_sasl_form_submitted)));
Ekiga::FormBuilder result;
std::string prompt;
std::string ctxt = "";
@@ -909,7 +909,7 @@ OPENLDAP::Book::refresh_result ()
}
void
-OPENLDAP::BookForm (gmref_ptr<Ekiga::FormRequestSimple> request,
+OPENLDAP::BookForm (boost::shared_ptr<Ekiga::FormRequestSimple> request,
struct BookInfo &info,
std::string title)
{
@@ -985,7 +985,7 @@ OPENLDAP::BookForm (gmref_ptr<Ekiga::FormRequestSimple> request,
void
OPENLDAP::Book::edit ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Book::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Book::on_edit_form_submitted)));
OPENLDAP::BookForm (request, bookinfo, std::string(_("Edit LDAP directory")));
@@ -1095,7 +1095,7 @@ OPENLDAP::Book::on_edit_form_submitted (bool submitted,
std::string errmsg;
if (OPENLDAP::BookFormInfo (result, bookinfo, errmsg)) {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Book::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Book::on_edit_form_submitted)));
result.visit (*request);
request->error (errmsg);
diff --git a/lib/engine/components/ldap/ldap-book.h b/lib/engine/components/ldap/ldap-book.h
index eea73e1..0e99849 100644
--- a/lib/engine/components/ldap/ldap-book.h
+++ b/lib/engine/components/ldap/ldap-book.h
@@ -40,7 +40,7 @@
#define __LDAP_BOOK_H__
#include <vector>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include <libxml/tree.h>
#include <glib/gi18n.h>
@@ -68,7 +68,7 @@ namespace OPENLDAP
bool starttls;
};
- void BookForm (gmref_ptr<Ekiga::FormRequestSimple> req,
+ void BookForm (boost::shared_ptr<Ekiga::FormRequestSimple> req,
struct BookInfo &info,
std::string title );
@@ -89,11 +89,11 @@ namespace OPENLDAP
public:
Book (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr node);
Book (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
OPENLDAP::BookInfo _bookinfo);
~Book ();
@@ -136,7 +136,7 @@ namespace OPENLDAP
Ekiga::Form &form);
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
xmlNodePtr name_node;
@@ -153,7 +153,7 @@ namespace OPENLDAP
std::string search_filter;
};
- typedef gmref_ptr<Book> BookPtr;
+ typedef boost::shared_ptr<Book> BookPtr;
/**
* @}
diff --git a/lib/engine/components/ldap/ldap-contact.cpp b/lib/engine/components/ldap/ldap-contact.cpp
index 3c84840..6391cbe 100644
--- a/lib/engine/components/ldap/ldap-contact.cpp
+++ b/lib/engine/components/ldap/ldap-contact.cpp
@@ -62,7 +62,7 @@ OPENLDAP::Contact::get_name () const
bool
OPENLDAP::Contact::populate_menu (Ekiga::MenuBuilder &builder)
{
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
/* FIXME: add here the specific actions we want to allow
* (before or after the uri-specific actions)
*/
diff --git a/lib/engine/components/ldap/ldap-contact.h b/lib/engine/components/ldap/ldap-contact.h
index 31cd75e..1268c2d 100644
--- a/lib/engine/components/ldap/ldap-contact.h
+++ b/lib/engine/components/ldap/ldap-contact.h
@@ -74,7 +74,7 @@ namespace OPENLDAP
std::map<std::string, std::string> uris;
};
- typedef gmref_ptr<Contact> ContactPtr;
+ typedef boost::shared_ptr<Contact> ContactPtr;
/**
* @}
diff --git a/lib/engine/components/ldap/ldap-main.cpp b/lib/engine/components/ldap/ldap-main.cpp
index 0f4ecda..896612e 100644
--- a/lib/engine/components/ldap/ldap-main.cpp
+++ b/lib/engine/components/ldap/ldap-main.cpp
@@ -52,11 +52,11 @@ struct LDAPSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
if (contact_core) {
- gmref_ptr<OPENLDAP::Source> service (new OPENLDAP::Source (core));
+ boost::shared_ptr<OPENLDAP::Source> service (new OPENLDAP::Source (core));
core.add (service);
contact_core->add_source (service);
sasl_client_init (NULL); // FIXME: shouldn't it be done by the source!?
@@ -78,6 +78,6 @@ struct LDAPSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new LDAPSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new LDAPSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/ldap/ldap-source.cpp b/lib/engine/components/ldap/ldap-source.cpp
index b8ade6b..48e00af 100644
--- a/lib/engine/components/ldap/ldap-source.cpp
+++ b/lib/engine/components/ldap/ldap-source.cpp
@@ -57,9 +57,9 @@ OPENLDAP::Source::Source (Ekiga::ServiceCore &_core):
const std::string raw = c_raw;
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlDocGetRootElement (doc.get ());
@@ -82,7 +82,7 @@ OPENLDAP::Source::Source (Ekiga::ServiceCore &_core):
g_free (c_raw);
} else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlNewDocNode (doc.get (), NULL, BAD_CAST "list", NULL);
xmlDocSetRootElement (doc.get (), root);
@@ -136,7 +136,7 @@ OPENLDAP::Source::populate_menu (Ekiga::MenuBuilder &builder)
void
OPENLDAP::Source::new_book ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Source::on_new_book_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Source::on_new_book_form_submitted)));
bookinfo.name = "";
bookinfo.uri = "ldap://localhost/dc=net?cn,telephoneNumber?sub?(cn=$)",
@@ -180,7 +180,7 @@ OPENLDAP::Source::on_new_book_form_submitted (bool submitted,
std::string errmsg;
if (OPENLDAP::BookFormInfo (result, bookinfo, errmsg)) {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Source::on_new_book_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &OPENLDAP::Source::on_new_book_form_submitted)));
result.visit (*request);
request->error (errmsg);
diff --git a/lib/engine/components/ldap/ldap-source.h b/lib/engine/components/ldap/ldap-source.h
index 3cc1418..4259b33 100644
--- a/lib/engine/components/ldap/ldap-source.h
+++ b/lib/engine/components/ldap/ldap-source.h
@@ -76,7 +76,7 @@ namespace OPENLDAP
private:
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
struct BookInfo bookinfo;
diff --git a/lib/engine/components/libnotify/libnotify-main.cpp b/lib/engine/components/libnotify/libnotify-main.cpp
index 124143f..dab3550 100644
--- a/lib/engine/components/libnotify/libnotify-main.cpp
+++ b/lib/engine/components/libnotify/libnotify-main.cpp
@@ -36,7 +36,7 @@
*/
#include <map>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include <libnotify/notify.h>
@@ -52,7 +52,7 @@ class LibNotify:
{
public:
- LibNotify (gmref_ptr<Ekiga::NotificationCore> core);
+ LibNotify (boost::shared_ptr<Ekiga::NotificationCore> core);
~LibNotify ();
@@ -64,10 +64,10 @@ public:
private:
- void on_notification_added (gmref_ptr<Ekiga::Notification> notif);
- void on_notification_removed (gmref_ptr<Ekiga::Notification> notif);
+ void on_notification_added (boost::shared_ptr<Ekiga::Notification> notif);
+ void on_notification_removed (boost::shared_ptr<Ekiga::Notification> notif);
- typedef std::map<gmref_ptr<Ekiga::Notification>, std::pair<sigc::connection, std::tr1::shared_ptr<NotifyNotification> > > container_type;
+ typedef std::map<boost::shared_ptr<Ekiga::Notification>, std::pair<sigc::connection, boost::shared_ptr<NotifyNotification> > > container_type;
container_type live;
};
@@ -81,7 +81,7 @@ struct LIBNOTIFYSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::NotificationCore> notification = core.get ("notification-core");
+ boost::shared_ptr<Ekiga::NotificationCore> notification = core.get<Ekiga::NotificationCore> ("notification-core");
Ekiga::ServicePtr service = core.get ("libnotify");
if (notification && !service) {
@@ -106,11 +106,11 @@ struct LIBNOTIFYSpark: public Ekiga::Spark
void
libnotify_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new LIBNOTIFYSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new LIBNOTIFYSpark);
kickstart.add_spark (spark);
}
-LibNotify::LibNotify (gmref_ptr<Ekiga::NotificationCore> core)
+LibNotify::LibNotify (boost::shared_ptr<Ekiga::NotificationCore> core)
{
notify_init ("Ekiga");
core->notification_added.connect (sigc::mem_fun (this, &LibNotify::on_notification_added));
@@ -131,7 +131,7 @@ on_notif_closed (NotifyNotification* /*notif*/,
}
void
-LibNotify::on_notification_added (gmref_ptr<Ekiga::Notification> notification)
+LibNotify::on_notification_added (boost::shared_ptr<Ekiga::Notification> notification)
{
NotifyNotification* notif = NULL;
const gchar* urgency = NULL;
@@ -164,13 +164,13 @@ LibNotify::on_notification_added (gmref_ptr<Ekiga::Notification> notification)
G_CALLBACK (on_notif_closed), notification.get ());
sigc::connection conn = notification->removed.connect (sigc::bind (sigc::mem_fun (this, &LibNotify::on_notification_removed), notification));
- live[notification] = std::pair<sigc::connection, std::tr1::shared_ptr<NotifyNotification> > (conn, std::tr1::shared_ptr<NotifyNotification> (notif, g_object_unref));
+ live[notification] = std::pair<sigc::connection, boost::shared_ptr<NotifyNotification> > (conn, boost::shared_ptr<NotifyNotification> (notif, g_object_unref));
(void)notify_notification_show (notif, NULL);
}
void
-LibNotify::on_notification_removed (gmref_ptr<Ekiga::Notification> notification)
+LibNotify::on_notification_removed (boost::shared_ptr<Ekiga::Notification> notification)
{
container_type::iterator iter = live.find (notification);
diff --git a/lib/engine/components/local-roster/local-cluster.cpp b/lib/engine/components/local-roster/local-cluster.cpp
index 4c4fd19..27f67fb 100644
--- a/lib/engine/components/local-roster/local-cluster.cpp
+++ b/lib/engine/components/local-roster/local-cluster.cpp
@@ -42,7 +42,7 @@
Local::Cluster::Cluster (Ekiga::ServiceCore &_core): core(_core)
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
heap = HeapPtr (new Heap (core));
@@ -59,7 +59,7 @@ Local::Cluster::~Cluster ()
bool
Local::Cluster::is_supported_uri (const std::string uri) const
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
return presence_core->is_supported_uri (uri);
}
diff --git a/lib/engine/components/local-roster/local-cluster.h b/lib/engine/components/local-roster/local-cluster.h
index fcab78e..45d39da 100644
--- a/lib/engine/components/local-roster/local-cluster.h
+++ b/lib/engine/components/local-roster/local-cluster.h
@@ -90,7 +90,7 @@ namespace Local
std::string status);
};
- typedef gmref_ptr<Cluster> ClusterPtr;
+ typedef boost::shared_ptr<Cluster> ClusterPtr;
/**
* @}
*/
diff --git a/lib/engine/components/local-roster/local-heap.cpp b/lib/engine/components/local-roster/local-heap.cpp
index c84a769..0177699 100644
--- a/lib/engine/components/local-roster/local-heap.cpp
+++ b/lib/engine/components/local-roster/local-heap.cpp
@@ -59,9 +59,9 @@ Local::Heap::Heap (Ekiga::ServiceCore &_core): core (_core), doc ()
if (c_raw != NULL) {
const std::string raw = c_raw;
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlDocGetRootElement (doc.get ());
if (root == NULL) {
@@ -82,7 +82,7 @@ Local::Heap::Heap (Ekiga::ServiceCore &_core): core (_core), doc ()
}
else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
root = xmlNewDocNode (doc.get (), NULL, BAD_CAST "list", NULL);
xmlDocSetRootElement (doc.get (), root);
@@ -138,9 +138,10 @@ struct has_presentity_with_uri_helper
bool found;
- bool test (Local::PresentityPtr presentity)
+ bool test (Ekiga::PresentityPtr pres)
{
- if (presentity->get_uri () == uri) {
+ Local::PresentityPtr presentity = boost::dynamic_pointer_cast<Local::Presentity> (pres);
+ if (presentity && presentity->get_uri () == uri) {
found = true;
}
@@ -163,12 +164,17 @@ struct existing_groups_helper
{
std::set<std::string> groups;
- bool test (Local::PresentityPtr presentity)
+ bool test (Ekiga::PresentityPtr pres)
{
- const std::set<std::string> presentity_groups = presentity->get_groups ();
+ Local::PresentityPtr presentity = boost::dynamic_pointer_cast<Local::Presentity> (pres);
- groups.insert (presentity_groups.begin (),
- presentity_groups.end ());
+ if (pres) {
+
+ const std::set<std::string> presentity_groups = presentity->get_groups ();
+
+ groups.insert (presentity_groups.begin (),
+ presentity_groups.end ());
+ }
return true;
}
@@ -218,8 +224,8 @@ Local::Heap::new_presentity (const std::string name,
{
if (!has_presentity_with_uri (uri)) {
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Heap::new_presentity_form_submitted)));
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Heap::new_presentity_form_submitted)));
std::set<std::string> groups = existing_groups ();
request->title (_("Add to local roster"));
@@ -254,9 +260,10 @@ struct push_presence_helper
presence(presence_)
{}
- bool test (Local::PresentityPtr presentity)
+ bool test (Ekiga::PresentityPtr pres_)
{
- if (presentity->get_uri () == uri) {
+ Local::PresentityPtr presentity = boost::dynamic_pointer_cast<Local::Presentity> (pres_);
+ if (presentity && presentity->get_uri () == uri) {
presentity->set_presence (presence);
}
@@ -284,9 +291,10 @@ struct push_status_helper
status(status_)
{}
- bool test (Local::PresentityPtr presentity)
+ bool test (Ekiga::PresentityPtr pres_)
{
- if (presentity->get_uri () == uri) {
+ Local::PresentityPtr presentity = boost::dynamic_pointer_cast<Local::Presentity> (pres_);
+ if (presentity && presentity->get_uri () == uri) {
presentity->set_status (status);
}
@@ -341,7 +349,7 @@ Local::Heap::add (const std::string name,
void
Local::Heap::common_add (PresentityPtr presentity)
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
// Add the presentity to this Heap
add_presentity (presentity);
@@ -375,7 +383,7 @@ Local::Heap::new_presentity_form_submitted (bool submitted,
if (!submitted)
return;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
const std::string name = result.text ("name");
const std::string good_uri = result.hidden ("good-uri");
std::string uri;
@@ -396,7 +404,7 @@ Local::Heap::new_presentity_form_submitted (bool submitted,
save ();
} else {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple>(new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Heap::new_presentity_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple>(new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Heap::new_presentity_form_submitted)));
result.visit (*request);
if (!presence_core->is_supported_uri (uri))
@@ -411,7 +419,7 @@ Local::Heap::new_presentity_form_submitted (bool submitted,
void
Local::Heap::on_rename_group (std::string name)
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind<0>(sigc::mem_fun (this, &Local::Heap::rename_group_form_submitted), name)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind<0>(sigc::mem_fun (this, &Local::Heap::rename_group_form_submitted), name)));
request->title (_("Rename group"));
request->instructions (_("Please edit this group name"));
@@ -431,9 +439,11 @@ struct rename_group_form_submitted_helper
const std::string old_name;
const std::string new_name;
- bool rename_group (Local::PresentityPtr presentity)
+ bool rename_group (Ekiga::PresentityPtr pres)
{
- presentity->rename_group (old_name, new_name);
+ Local::PresentityPtr presentity = boost::dynamic_pointer_cast<Local::Presentity> (pres);
+ if (presentity)
+ presentity->rename_group (old_name, new_name);
return true;
}
};
diff --git a/lib/engine/components/local-roster/local-heap.h b/lib/engine/components/local-roster/local-heap.h
index a21638d..e571c2d 100644
--- a/lib/engine/components/local-roster/local-heap.h
+++ b/lib/engine/components/local-roster/local-heap.h
@@ -206,10 +206,10 @@ namespace Local
Ekiga::Form& result);
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
};
- typedef gmref_ptr<Heap> HeapPtr;
+ typedef boost::shared_ptr<Heap> HeapPtr;
/**
* @}
diff --git a/lib/engine/components/local-roster/local-presentity.cpp b/lib/engine/components/local-roster/local-presentity.cpp
index 4d13cb4..ed3ae42 100644
--- a/lib/engine/components/local-roster/local-presentity.cpp
+++ b/lib/engine/components/local-roster/local-presentity.cpp
@@ -47,7 +47,7 @@
* Public API
*/
Local::Presentity::Presentity (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr _node) :
core(_core), doc(_doc), node(_node), presence("unknown")
{
@@ -55,7 +55,7 @@ Local::Presentity::Presentity (Ekiga::ServiceCore &_core,
Local::Presentity::Presentity (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
const std::string name,
const std::string uri,
const std::set<std::string> groups) :
@@ -200,7 +200,7 @@ bool
Local::Presentity::populate_menu (Ekiga::MenuBuilder &builder)
{
bool populated = false;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
populated
= presence_core->populate_presentity_menu (PresentityPtr(this),
@@ -228,8 +228,8 @@ Local::Presentity::get_node () const
void
Local::Presentity::edit_presentity ()
{
- ClusterPtr cluster = core.get ("local-cluster");
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Presentity::edit_presentity_form_submitted)));
+ ClusterPtr cluster = core.get<Local::Cluster> ("local-cluster");
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Local::Presentity::edit_presentity_form_submitted)));
std::string name = get_name ();
std::string uri = get_uri ();
@@ -284,7 +284,7 @@ Local::Presentity::edit_presentity_form_submitted (bool submitted,
if (uri != new_uri) {
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
presence_core->unfetch_presence (uri);
presence = "unknown";
presence_core->fetch_presence (new_uri);
@@ -414,7 +414,7 @@ Local::Presentity::rename_group (const std::string old_name,
void
Local::Presentity::remove ()
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
presence_core->unfetch_presence (get_uri ());
xmlUnlinkNode (node);
diff --git a/lib/engine/components/local-roster/local-presentity.h b/lib/engine/components/local-roster/local-presentity.h
index df6ae9d..0bee718 100644
--- a/lib/engine/components/local-roster/local-presentity.h
+++ b/lib/engine/components/local-roster/local-presentity.h
@@ -40,7 +40,7 @@
#include <libxml/tree.h>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include "form.h"
@@ -73,11 +73,11 @@ namespace Local
* Constructors (and destructor)
*/
Presentity (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
xmlNodePtr _node);
Presentity (Ekiga::ServiceCore &_core,
- std::tr1::shared_ptr<xmlDoc> _doc,
+ boost::shared_ptr<xmlDoc> _doc,
const std::string _name,
const std::string _uri,
const std::set<std::string> _groups);
@@ -185,7 +185,7 @@ namespace Local
Ekiga::ServiceCore &core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
std::string presence;
@@ -193,7 +193,7 @@ namespace Local
std::string avatar;
};
- typedef gmref_ptr<Presentity> PresentityPtr;
+ typedef boost::shared_ptr<Presentity> PresentityPtr;
/**
* @}
diff --git a/lib/engine/components/local-roster/local-roster-bridge.cpp b/lib/engine/components/local-roster/local-roster-bridge.cpp
index 014dd7b..0add77e 100644
--- a/lib/engine/components/local-roster/local-roster-bridge.cpp
+++ b/lib/engine/components/local-roster/local-roster-bridge.cpp
@@ -113,12 +113,12 @@ struct LOCALROSTERBRIDGESpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("local-roster-bridge");
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
- gmref_ptr<Local::Cluster> cluster = core.get ("local-cluster");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
+ boost::shared_ptr<Local::Cluster> cluster = core.get<Local::Cluster> ("local-cluster");
if (cluster && contact_core && !service) {
- gmref_ptr<Local::ContactDecorator> decorator (new Local::ContactDecorator (cluster));
+ boost::shared_ptr<Local::ContactDecorator> decorator (new Local::ContactDecorator (cluster));
core.add (decorator);
contact_core->add_contact_decorator (decorator);
result = true;
@@ -139,6 +139,6 @@ struct LOCALROSTERBRIDGESpark: public Ekiga::Spark
void
local_roster_bridge_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new LOCALROSTERBRIDGESpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new LOCALROSTERBRIDGESpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/local-roster/local-roster-main.cpp b/lib/engine/components/local-roster/local-roster-main.cpp
index d698847..659407d 100644
--- a/lib/engine/components/local-roster/local-roster-main.cpp
+++ b/lib/engine/components/local-roster/local-roster-main.cpp
@@ -50,12 +50,12 @@ struct LOCALROSTERSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("local-cluster");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::FriendOrFoe> iff = core.get ("friend-or-foe");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::FriendOrFoe> iff = core.get<Ekiga::FriendOrFoe> ("friend-or-foe");
if (presence_core && iff && !service) {
- gmref_ptr<Local::Cluster> cluster (new Local::Cluster (core));
+ boost::shared_ptr<Local::Cluster> cluster (new Local::Cluster (core));
core.add (cluster);
iff->add_helper (cluster->get_heap ());
presence_core->add_cluster (cluster);
@@ -77,6 +77,6 @@ struct LOCALROSTERSpark: public Ekiga::Spark
void
local_roster_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new LOCALROSTERSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new LOCALROSTERSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/loudmouth/loudmouth-account.cpp b/lib/engine/components/loudmouth/loudmouth-account.cpp
index 1821b14..8cfec88 100644
--- a/lib/engine/components/loudmouth/loudmouth-account.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-account.cpp
@@ -66,9 +66,9 @@ on_authenticate_c (LmConnection* /*unused*/,
/* and here is the C++ code : */
-LM::Account::Account (gmref_ptr<Ekiga::PersonalDetails> details_,
- gmref_ptr<Dialect> dialect_,
- gmref_ptr<Cluster> cluster_,
+LM::Account::Account (boost::shared_ptr<Ekiga::PersonalDetails> details_,
+ boost::shared_ptr<Dialect> dialect_,
+ boost::shared_ptr<Cluster> cluster_,
xmlNodePtr node_):
details(details_), dialect(dialect_), cluster(cluster_), node(node_)
{
@@ -229,7 +229,7 @@ LM::Account::on_authenticate (bool result)
{
if (result) {
- heap = gmref_ptr<Heap> (new Heap (details, dialect, connection));
+ heap = boost::shared_ptr<Heap> (new Heap (details, dialect, connection));
{
xmlChar *xml_str = xmlGetProp (node, BAD_CAST "name");
heap->set_name ((const char*)xml_str);
@@ -256,7 +256,7 @@ LM::Account::get_node () const
void
LM::Account::edit ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Account::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Account::on_edit_form_submitted)));
xmlChar* xml_str = NULL;
request->title (_("Edit account"));
diff --git a/lib/engine/components/loudmouth/loudmouth-account.h b/lib/engine/components/loudmouth/loudmouth-account.h
index 93c8a2c..183c757 100644
--- a/lib/engine/components/loudmouth/loudmouth-account.h
+++ b/lib/engine/components/loudmouth/loudmouth-account.h
@@ -48,9 +48,9 @@ namespace LM
class Account: public Ekiga::Account
{
public:
- Account (gmref_ptr<Ekiga::PersonalDetails> details_,
- gmref_ptr<Dialect> dialect_,
- gmref_ptr<Cluster> cluster_,
+ Account (boost::shared_ptr<Ekiga::PersonalDetails> details_,
+ boost::shared_ptr<Dialect> dialect_,
+ boost::shared_ptr<Cluster> cluster_,
xmlNodePtr node_);
~Account ();
@@ -86,16 +86,16 @@ namespace LM
void remove ();
- gmref_ptr<Ekiga::PersonalDetails> details;
- gmref_ptr<Dialect> dialect;
- gmref_ptr<Cluster> cluster;
+ boost::shared_ptr<Ekiga::PersonalDetails> details;
+ boost::shared_ptr<Dialect> dialect;
+ boost::shared_ptr<Cluster> cluster;
xmlNodePtr node;
std::string status;
LmConnection* connection;
- gmref_ptr<Heap> heap;
+ boost::shared_ptr<Heap> heap;
};
};
diff --git a/lib/engine/components/loudmouth/loudmouth-bank.cpp b/lib/engine/components/loudmouth/loudmouth-bank.cpp
index 520cc26..bd2969e 100644
--- a/lib/engine/components/loudmouth/loudmouth-bank.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-bank.cpp
@@ -43,9 +43,9 @@
#define KEY "/apps/" PACKAGE_NAME "/contacts/jabber"
-LM::Bank::Bank (gmref_ptr<Ekiga::PersonalDetails> details_,
- gmref_ptr<Dialect> dialect_,
- gmref_ptr<Cluster> cluster_):
+LM::Bank::Bank (boost::shared_ptr<Ekiga::PersonalDetails> details_,
+ boost::shared_ptr<Dialect> dialect_,
+ boost::shared_ptr<Cluster> cluster_):
details(details_), cluster(cluster_), dialect(dialect_), doc (NULL)
{
gchar* c_raw = gm_conf_get_string (KEY);
@@ -81,7 +81,7 @@ LM::Bank::Bank (gmref_ptr<Ekiga::PersonalDetails> details_,
void
LM::Bank::add (xmlNodePtr node)
{
- gmref_ptr<Account> account (new Account (details, dialect, cluster, node));
+ boost::shared_ptr<Account> account (new Account (details, dialect, cluster, node));
if (node == NULL) { // that was a new one
diff --git a/lib/engine/components/loudmouth/loudmouth-bank.h b/lib/engine/components/loudmouth/loudmouth-bank.h
index df6f5ec..91e0411 100644
--- a/lib/engine/components/loudmouth/loudmouth-bank.h
+++ b/lib/engine/components/loudmouth/loudmouth-bank.h
@@ -51,9 +51,9 @@ namespace LM
public Ekiga::BankImpl<Account>
{
public:
- Bank (gmref_ptr<Ekiga::PersonalDetails> details_,
- gmref_ptr<Dialect> dialect_,
- gmref_ptr<Cluster> cluster_);
+ Bank (boost::shared_ptr<Ekiga::PersonalDetails> details_,
+ boost::shared_ptr<Dialect> dialect_,
+ boost::shared_ptr<Cluster> cluster_);
~Bank ();
@@ -71,9 +71,9 @@ namespace LM
private:
- gmref_ptr<Ekiga::PersonalDetails> details;
- gmref_ptr<Cluster> cluster;
- gmref_ptr<Dialect> dialect;
+ boost::shared_ptr<Ekiga::PersonalDetails> details;
+ boost::shared_ptr<Cluster> cluster;
+ boost::shared_ptr<Dialect> dialect;
xmlDocPtr doc;
@@ -82,7 +82,7 @@ namespace LM
void save () const;
};
- typedef gmref_ptr<Bank> BankPtr;
+ typedef boost::shared_ptr<Bank> BankPtr;
};
#endif
diff --git a/lib/engine/components/loudmouth/loudmouth-chat-simple.cpp b/lib/engine/components/loudmouth/loudmouth-chat-simple.cpp
index 7198acf..0f884a1 100644
--- a/lib/engine/components/loudmouth/loudmouth-chat-simple.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-chat-simple.cpp
@@ -58,13 +58,13 @@ LM::SimpleChat::get_title () const
}
void
-LM::SimpleChat::connect (gmref_ptr<Ekiga::ChatObserver> observer)
+LM::SimpleChat::connect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observers.push_back (observer);
}
void
-LM::SimpleChat::disconnect (gmref_ptr<Ekiga::ChatObserver> observer)
+LM::SimpleChat::disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observers.remove (observer);
}
@@ -77,7 +77,7 @@ LM::SimpleChat::send_message (const std::string msg)
if (lm_connection_is_authenticated (presentity->get_connection ())) {
result = true;
- gmref_ptr<Ekiga::PersonalDetails> details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PersonalDetails> details = core.get<Ekiga::PersonalDetails> ("personal-details");
const std::string my_name = details->get_display_name ();
LmMessage* message = lm_message_new (NULL, LM_MESSAGE_TYPE_MESSAGE);
lm_message_node_set_attributes (lm_message_get_node (message),
@@ -87,7 +87,7 @@ LM::SimpleChat::send_message (const std::string msg)
lm_message_node_add_child (lm_message_get_node (message), "body", msg.c_str ());
lm_connection_send (presentity->get_connection (), message, NULL);
lm_message_unref (message);
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter) {
@@ -101,7 +101,7 @@ LM::SimpleChat::send_message (const std::string msg)
void
LM::SimpleChat::got_message (const std::string msg)
{
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter) {
diff --git a/lib/engine/components/loudmouth/loudmouth-chat-simple.h b/lib/engine/components/loudmouth/loudmouth-chat-simple.h
index d52953b..80410ba 100644
--- a/lib/engine/components/loudmouth/loudmouth-chat-simple.h
+++ b/lib/engine/components/loudmouth/loudmouth-chat-simple.h
@@ -55,9 +55,9 @@ namespace LM
const std::string get_title () const;
- void connect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void connect (boost::shared_ptr<Ekiga::ChatObserver> observer);
- void disconnect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer);
bool send_message (const std::string msg);
@@ -73,10 +73,10 @@ namespace LM
Ekiga::ServiceCore& core;
PresentityPtr presentity;
- std::list<gmref_ptr<Ekiga::ChatObserver> > observers;
+ std::list<boost::shared_ptr<Ekiga::ChatObserver> > observers;
};
- typedef gmref_ptr<SimpleChat> SimpleChatPtr;
+ typedef boost::shared_ptr<SimpleChat> SimpleChatPtr;
};
diff --git a/lib/engine/components/loudmouth/loudmouth-cluster.h b/lib/engine/components/loudmouth/loudmouth-cluster.h
index 7125ca2..f99c1b8 100644
--- a/lib/engine/components/loudmouth/loudmouth-cluster.h
+++ b/lib/engine/components/loudmouth/loudmouth-cluster.h
@@ -56,7 +56,7 @@ namespace LM
bool populate_menu (Ekiga::MenuBuilder& builder);
};
- typedef gmref_ptr<Cluster> ClusterPtr;
+ typedef boost::shared_ptr<Cluster> ClusterPtr;
};
diff --git a/lib/engine/components/loudmouth/loudmouth-dialect.h b/lib/engine/components/loudmouth/loudmouth-dialect.h
index 18dcaf3..2d91c51 100644
--- a/lib/engine/components/loudmouth/loudmouth-dialect.h
+++ b/lib/engine/components/loudmouth/loudmouth-dialect.h
@@ -64,7 +64,7 @@ namespace LM
Ekiga::ServiceCore& core;
};
- typedef gmref_ptr<Dialect> DialectPtr;
+ typedef boost::shared_ptr<Dialect> DialectPtr;
};
#endif
diff --git a/lib/engine/components/loudmouth/loudmouth-heap.cpp b/lib/engine/components/loudmouth/loudmouth-heap.cpp
index e8dbe0a..b6242aa 100644
--- a/lib/engine/components/loudmouth/loudmouth-heap.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-heap.cpp
@@ -67,7 +67,7 @@ message_handler_c (LmMessageHandler* /*handler*/,
return heap->message_handler (message);
}
-LM::Heap::Heap (gmref_ptr<Ekiga::PersonalDetails> details_,
+LM::Heap::Heap (boost::shared_ptr<Ekiga::PersonalDetails> details_,
DialectPtr dialect_,
LmConnection* connection_):
details(details_), dialect(dialect_), connection(connection_)
@@ -194,7 +194,7 @@ LM::Heap::presence_handler (LmMessage* message)
if (type_attr != NULL && strcmp (type_attr, "subscribe") == 0) {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Heap::subscribe_from_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Heap::subscribe_from_form_submitted)));
LmMessageNode* status = lm_message_node_find_child (lm_message_get_node (message), "status");
gchar* instructions = NULL;
std::string item_name;
@@ -310,7 +310,7 @@ LM::Heap::parse_roster (LmMessageNode* query)
void
LM::Heap::add_item ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Heap::add_item_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Heap::add_item_form_submitted)));
request->title (_("Add a roster element"));
request->instructions (_("Please fill in this form to add a new"
diff --git a/lib/engine/components/loudmouth/loudmouth-heap.h b/lib/engine/components/loudmouth/loudmouth-heap.h
index 016db45..2a5a913 100644
--- a/lib/engine/components/loudmouth/loudmouth-heap.h
+++ b/lib/engine/components/loudmouth/loudmouth-heap.h
@@ -48,7 +48,7 @@ namespace LM
{
public:
- Heap (gmref_ptr<Ekiga::PersonalDetails> details_,
+ Heap (boost::shared_ptr<Ekiga::PersonalDetails> details_,
DialectPtr dialect_,
LmConnection* connection_);
@@ -77,7 +77,7 @@ namespace LM
private:
- gmref_ptr<Ekiga::PersonalDetails> details;
+ boost::shared_ptr<Ekiga::PersonalDetails> details;
DialectPtr dialect;
@@ -108,7 +108,7 @@ namespace LM
void on_chat_requested (PresentityPtr presentity);
};
- typedef gmref_ptr<Heap> HeapPtr;
+ typedef boost::shared_ptr<Heap> HeapPtr;
};
diff --git a/lib/engine/components/loudmouth/loudmouth-main.cpp b/lib/engine/components/loudmouth/loudmouth-main.cpp
index ce08c9a..20624ee 100644
--- a/lib/engine/components/loudmouth/loudmouth-main.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-main.cpp
@@ -55,10 +55,10 @@ struct LOUDMOUTHSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("loudmouth-bank");
- gmref_ptr<Ekiga::PresenceCore> presence = core.get ("presence-core");
- gmref_ptr<Ekiga::AccountCore> account = core.get ("account-core");
- gmref_ptr<Ekiga::ChatCore> chat = core.get ("chat-core");
- gmref_ptr<Ekiga::PersonalDetails> details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PresenceCore> presence = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::AccountCore> account = core.get<Ekiga::AccountCore> ("account-core");
+ boost::shared_ptr<Ekiga::ChatCore> chat = core.get<Ekiga::ChatCore> ("chat-core");
+ boost::shared_ptr<Ekiga::PersonalDetails> details = core.get<Ekiga::PersonalDetails> ("personal-details");
if ( !service && presence && account && chat && details) {
@@ -87,6 +87,6 @@ struct LOUDMOUTHSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new LOUDMOUTHSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new LOUDMOUTHSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/loudmouth/loudmouth-presentity.cpp b/lib/engine/components/loudmouth/loudmouth-presentity.cpp
index 909e8af..87f18d0 100644
--- a/lib/engine/components/loudmouth/loudmouth-presentity.cpp
+++ b/lib/engine/components/loudmouth/loudmouth-presentity.cpp
@@ -257,7 +257,7 @@ LM::Presentity::push_presence (const std::string resource,
void
LM::Presentity::edit_presentity ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Presentity::edit_presentity_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &LM::Presentity::edit_presentity_form_submitted)));
request->title (_("Edit roster element"));
request->instructions (_("Please fill in this form to change an existing "
diff --git a/lib/engine/components/loudmouth/loudmouth-presentity.h b/lib/engine/components/loudmouth/loudmouth-presentity.h
index 884a2ff..d90a54b 100644
--- a/lib/engine/components/loudmouth/loudmouth-presentity.h
+++ b/lib/engine/components/loudmouth/loudmouth-presentity.h
@@ -107,7 +107,7 @@ namespace LM
void remove_presentity ();
};
- typedef gmref_ptr<Presentity> PresentityPtr;
+ typedef boost::shared_ptr<Presentity> PresentityPtr;
};
diff --git a/lib/engine/components/mlogo-videoinput/videoinput-main-mlogo.cpp b/lib/engine/components/mlogo-videoinput/videoinput-main-mlogo.cpp
index 4a07bed..baf23a4 100644
--- a/lib/engine/components/mlogo-videoinput/videoinput-main-mlogo.cpp
+++ b/lib/engine/components/mlogo-videoinput/videoinput-main-mlogo.cpp
@@ -46,7 +46,7 @@ videoinput_mlogo_init (Ekiga::ServiceCore &core,
char **/*argv*/[])
{
bool result = false;
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core.get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
if (videoinput_core) {
diff --git a/lib/engine/components/null-audioinput/audioinput-main-null.cpp b/lib/engine/components/null-audioinput/audioinput-main-null.cpp
index 72c1e86..790e624 100644
--- a/lib/engine/components/null-audioinput/audioinput-main-null.cpp
+++ b/lib/engine/components/null-audioinput/audioinput-main-null.cpp
@@ -49,7 +49,7 @@ struct NULLAUDIOINPUTSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core.get ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core.get<Ekiga::AudioInputCore> ("audioinput-core");
if (audioinput_core) {
@@ -76,6 +76,6 @@ struct NULLAUDIOINPUTSpark: public Ekiga::Spark
void
audioinput_null_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new NULLAUDIOINPUTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new NULLAUDIOINPUTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/null-audiooutput/audiooutput-main-null.cpp b/lib/engine/components/null-audiooutput/audiooutput-main-null.cpp
index 12ba429..f41368b 100644
--- a/lib/engine/components/null-audiooutput/audiooutput-main-null.cpp
+++ b/lib/engine/components/null-audiooutput/audiooutput-main-null.cpp
@@ -50,7 +50,7 @@ struct NULLAUDIOOUTPUTSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("null-audio-output");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (audiooutput_core && !service) {
@@ -78,6 +78,6 @@ struct NULLAUDIOOUTPUTSpark: public Ekiga::Spark
void
audiooutput_null_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new NULLAUDIOOUTPUTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new NULLAUDIOOUTPUTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/opal/opal-account.cpp b/lib/engine/components/opal/opal-account.cpp
index 7d6820b..439b4fa 100644
--- a/lib/engine/components/opal/opal-account.cpp
+++ b/lib/engine/components/opal/opal-account.cpp
@@ -280,7 +280,7 @@ void Opal::Account::enable ()
{
enabled = true;
- gmref_ptr<Sip::EndPoint> endpoint = core.get ("opal-sip-endpoint");
+ boost::shared_ptr<Sip::EndPoint> endpoint = core.get<Sip::EndPoint> ("opal-sip-endpoint");
endpoint->subscribe (*this);
updated.emit ();
@@ -292,7 +292,7 @@ void Opal::Account::disable ()
{
enabled = false;
- gmref_ptr<Sip::EndPoint> endpoint = core.get ("opal-sip-endpoint");
+ boost::shared_ptr<Sip::EndPoint> endpoint = core.get<Sip::EndPoint> ("opal-sip-endpoint");
endpoint->unsubscribe (*this);
updated.emit ();
@@ -323,7 +323,7 @@ void Opal::Account::remove ()
enabled = false;
dead = true;
- gmref_ptr<Sip::EndPoint> endpoint = core.get ("opal-sip-endpoint");
+ boost::shared_ptr<Sip::EndPoint> endpoint = core.get<Sip::EndPoint> ("opal-sip-endpoint");
endpoint->unsubscribe (*this);
trigger_saving.emit ();
@@ -379,7 +379,7 @@ bool Opal::Account::populate_menu (Ekiga::MenuBuilder &builder)
void Opal::Account::edit ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Opal::Account::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Opal::Account::on_edit_form_submitted)));
std::stringstream str;
str << get_timeout ();
@@ -437,7 +437,7 @@ void Opal::Account::on_edit_form_submitted (bool submitted,
if (!error.empty ()) {
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Opal::Account::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &Opal::Account::on_edit_form_submitted)));
result.visit (*request);
request->error (error);
@@ -478,8 +478,8 @@ Opal::Account::handle_registration_event (RegistrationState state_,
if (state != Registered) {
status = _("Registered");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::PersonalDetails> personal_details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::PersonalDetails> personal_details = core.get<Ekiga::PersonalDetails> ("personal-details");
if (presence_core && personal_details) {
presence_core->publish (personal_details);
@@ -507,7 +507,7 @@ Opal::Account::handle_registration_event (RegistrationState state_,
if (!limited) {
limited = true;
- gmref_ptr<Sip::EndPoint> endpoint = core.get ("opal-sip-endpoint");
+ boost::shared_ptr<Sip::EndPoint> endpoint = core.get<Sip::EndPoint> ("opal-sip-endpoint");
endpoint->subscribe (*this);
} else {
status = _("Could not register");
@@ -535,7 +535,7 @@ Opal::Account::handle_message_waiting_information (const std::string info)
if (loc != std::string::npos) {
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
std::stringstream new_messages;
new_messages << info.substr (0, loc);
new_messages >> message_waiting_number;
diff --git a/lib/engine/components/opal/opal-account.h b/lib/engine/components/opal/opal-account.h
index e6b5e7c..ba1d410 100644
--- a/lib/engine/components/opal/opal-account.h
+++ b/lib/engine/components/opal/opal-account.h
@@ -178,7 +178,7 @@ private:
Ekiga::ServiceCore & core;
};
- typedef gmref_ptr<Account> AccountPtr;
+ typedef boost::shared_ptr<Account> AccountPtr;
/**
* @}
diff --git a/lib/engine/components/opal/opal-audio.cpp b/lib/engine/components/opal/opal-audio.cpp
index 7505624..d1e8d47 100644
--- a/lib/engine/components/opal/opal-audio.cpp
+++ b/lib/engine/components/opal/opal-audio.cpp
@@ -78,8 +78,8 @@ PCREATE_PLUGIN(EKIGA, PSoundChannel, &PSoundChannel_EKIGA_descriptor);
PSoundChannel_EKIGA::PSoundChannel_EKIGA (Ekiga::ServiceCore & _core):
core (_core),
- audioinput_core (core.get ("audioinput-core")),
- audiooutput_core (core.get ("audiooutput-core"))
+ audioinput_core (core.get<Ekiga::AudioInputCore> ("audioinput-core")),
+ audiooutput_core (core.get<Ekiga::AudioOutputCore> ("audiooutput-core"))
{
opened = false;
}
@@ -92,8 +92,8 @@ PSoundChannel_EKIGA::PSoundChannel_EKIGA (const PString & /*_device*/,
unsigned bitsPerSample,
Ekiga::ServiceCore & _core):
core (_core),
- audioinput_core (core.get ("audioinput-core")),
- audiooutput_core (core.get ("audiooutput-core"))
+ audioinput_core (core.get<Ekiga::AudioInputCore> ("audioinput-core")),
+ audiooutput_core (core.get<Ekiga::AudioOutputCore> ("audiooutput-core"))
{
opened = false;
Open (device, dir, numChannels, sampleRate, bitsPerSample);
diff --git a/lib/engine/components/opal/opal-audio.h b/lib/engine/components/opal/opal-audio.h
index 87943e8..6dcd828 100644
--- a/lib/engine/components/opal/opal-audio.h
+++ b/lib/engine/components/opal/opal-audio.h
@@ -92,8 +92,8 @@ public:
PINDEX storedVolume;
Ekiga::ServiceCore & core;
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core;
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core;
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core;
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core;
bool opened;
};
diff --git a/lib/engine/components/opal/opal-bank.cpp b/lib/engine/components/opal/opal-bank.cpp
index da36a95..0f53a2c 100644
--- a/lib/engine/components/opal/opal-bank.cpp
+++ b/lib/engine/components/opal/opal-bank.cpp
@@ -56,7 +56,7 @@ Opal::Bank::Bank (Ekiga::ServiceCore &_core): core(_core)
while (accounts_iter) {
- gmref_ptr<Account> account = gmref_ptr<Account> (new Account (core, (char *)accounts_iter->data));
+ boost::shared_ptr<Account> account = boost::shared_ptr<Account> (new Account (core, (char *)accounts_iter->data));
add_account (account);
Ekiga::BankImpl<Account>::add_connection (account, account->trigger_saving.connect (sigc::mem_fun (this, &Opal::Bank::save)));
@@ -89,7 +89,7 @@ Opal::Bank::new_account (Account::Type acc_type,
std::string username,
std::string password)
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind (sigc::mem_fun (this, &Opal::Bank::on_new_account_form_submitted), acc_type)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind (sigc::mem_fun (this, &Opal::Bank::on_new_account_form_submitted), acc_type)));
request->title (_("Edit account"));
request->instructions (_("Please update the following fields."));
@@ -152,7 +152,7 @@ void Opal::Bank::on_new_account_form_submitted (bool submitted,
if (!submitted)
return;
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind (sigc::mem_fun (this, &Opal::Bank::on_new_account_form_submitted) ,acc_type)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::bind (sigc::mem_fun (this, &Opal::Bank::on_new_account_form_submitted) ,acc_type)));
std::string error;
std::string new_name = (acc_type == Opal::Account::SIP
diff --git a/lib/engine/components/opal/opal-call-manager.cpp b/lib/engine/components/opal/opal-call-manager.cpp
index 72b6045..e849d94 100644
--- a/lib/engine/components/opal/opal-call-manager.cpp
+++ b/lib/engine/components/opal/opal-call-manager.cpp
@@ -631,10 +631,10 @@ void CallManager::get_video_options (CallManager::VideoOptions & options) const
void
CallManager::create_call_in_main (Opal::Call* call)
{
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
- call_core->add_call (gmref_ptr<Opal::Call>(call),
- gmref_ptr<CallManager>(this));
+ call_core->add_call (boost::shared_ptr<Opal::Call>(call),
+ boost::shared_ptr<CallManager>(this));
}
OpalCall *CallManager::CreateCall (void *uri)
@@ -766,7 +766,7 @@ CallManager::HandleSTUNResult ()
void
CallManager::ReportSTUNError (const std::string error)
{
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
// notice we're in for an infinite loop if nobody ever reports to the user!
if ( !call_core->errors.emit (error)) {
diff --git a/lib/engine/components/opal/opal-gmconf-bridge.cpp b/lib/engine/components/opal/opal-gmconf-bridge.cpp
index e1d04fc..b241b0f 100644
--- a/lib/engine/components/opal/opal-gmconf-bridge.cpp
+++ b/lib/engine/components/opal/opal-gmconf-bridge.cpp
@@ -266,7 +266,7 @@ void ConfBridge::on_property_changed (std::string key, GmConfEntry *entry)
#ifdef HAVE_SIP
else if (key.find (SIP_KEY) != string::npos) {
- gmref_ptr<Opal::Sip::EndPoint> sip_manager = manager.get_protocol_manager ("sip");
+ boost::shared_ptr<Opal::Sip::EndPoint> sip_manager = boost::dynamic_pointer_cast<Opal::Sip::EndPoint> (manager.get_protocol_manager ("sip"));
if (sip_manager) {
if (key == SIP_KEY "outbound_proxy_host") {
@@ -299,7 +299,7 @@ void ConfBridge::on_property_changed (std::string key, GmConfEntry *entry)
#ifdef HAVE_H323
else if (key.find (SIP_KEY) != string::npos) {
- gmref_ptr<Opal::H323::EndPoint> h323_manager = manager.get_protocol_manager ("h323");
+ boost::shared_ptr<Opal::H323::EndPoint> h323_manager = boost::dynamic_pointer_cast<Opal::H323::EndPoint> (manager.get_protocol_manager ("h323"));
if (h323_manager) {
if (key == H323_KEY "enable_h245_tunneling") {
diff --git a/lib/engine/components/opal/opal-main.cpp b/lib/engine/components/opal/opal-main.cpp
index ed23dac..87be8c7 100644
--- a/lib/engine/components/opal/opal-main.cpp
+++ b/lib/engine/components/opal/opal-main.cpp
@@ -103,16 +103,16 @@ struct OPALSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
- gmref_ptr<Ekiga::ChatCore> chat_core = core.get ("chat-core");
- gmref_ptr<Ekiga::AccountCore> account_core = core.get ("account-core");
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core.get ("audioinput-core");
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core.get ("videoinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get ("audiooutput-core");
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get ("videooutput-core");
- gmref_ptr<Ekiga::PersonalDetails> personal_details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
+ boost::shared_ptr<Ekiga::ChatCore> chat_core = core.get<Ekiga::ChatCore> ("chat-core");
+ boost::shared_ptr<Ekiga::AccountCore> account_core = core.get<Ekiga::AccountCore> ("account-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core.get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get<Ekiga::VideoOutputCore> ("videooutput-core");
+ boost::shared_ptr<Ekiga::PersonalDetails> personal_details = core.get<Ekiga::PersonalDetails> ("personal-details");
Ekiga::ServicePtr account_store = core.get ("opal-account-store");
Ekiga::ServicePtr sip_endpoint = core.get ("opal-sip-endpoint");
@@ -121,9 +121,9 @@ struct OPALSpark: public Ekiga::Spark
&& audiooutput_core && videooutput_core && personal_details
&& !account_store && !sip_endpoint) {
- gmref_ptr<CallManager> call_manager (new CallManager (core));
+ boost::shared_ptr<CallManager> call_manager (new CallManager (core));
- gmref_ptr<Opal::Bank> bank (new Bank (core));
+ boost::shared_ptr<Opal::Bank> bank (new Bank (core));
account_core->add_bank (bank);
core.add (bank);
@@ -131,7 +131,7 @@ struct OPALSpark: public Ekiga::Spark
#ifdef HAVE_SIP
unsigned sip_port = gm_conf_get_int (SIP_KEY "listen_port");
- gmref_ptr<Sip::EndPoint> sip_manager (new Sip::EndPoint (*call_manager, core, sip_port));
+ boost::shared_ptr<Sip::EndPoint> sip_manager (new Sip::EndPoint (*call_manager, core, sip_port));
call_manager->add_protocol_manager (sip_manager);
contact_core->add_contact_decorator (sip_manager);
presence_core->add_presentity_decorator (sip_manager);
@@ -142,7 +142,7 @@ struct OPALSpark: public Ekiga::Spark
#ifdef HAVE_H323
unsigned h323_port = gm_conf_get_int (H323_KEY "listen_port");
- gmref_ptr<H323::EndPoint> h323_manager (new H323::EndPoint (*call_manager, core, h323_port));
+ boost::shared_ptr<H323::EndPoint> h323_manager (new H323::EndPoint (*call_manager, core, h323_port));
call_manager->add_protocol_manager (h323_manager);
contact_core->add_contact_decorator (h323_manager);
presence_core->add_presentity_decorator (h323_manager);
@@ -179,6 +179,6 @@ struct OPALSpark: public Ekiga::Spark
void
opal_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new OPALSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new OPALSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/opal/opal-videoinput.cpp b/lib/engine/components/opal/opal-videoinput.cpp
index e23fc46..4a168b7 100644
--- a/lib/engine/components/opal/opal-videoinput.cpp
+++ b/lib/engine/components/opal/opal-videoinput.cpp
@@ -80,11 +80,7 @@ int PVideoInputDevice_EKIGA::devices_nbr = 0;
PVideoInputDevice_EKIGA::PVideoInputDevice_EKIGA (Ekiga::ServiceCore & _core):
core (_core)
{
- {
- gmref_ptr<Ekiga::VideoInputCore> smart = core.get ("videoinput-core");
- smart->reference (); // take a reference in the main thread
- videoinput_core = smart.get ();
- }
+ videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
opened = false;
is_active = false;
}
@@ -93,7 +89,6 @@ PVideoInputDevice_EKIGA::PVideoInputDevice_EKIGA (Ekiga::ServiceCore & _core):
PVideoInputDevice_EKIGA::~PVideoInputDevice_EKIGA ()
{
Close ();
- videoinput_core->unreference (); // leave a reference in the main thread
}
bool
diff --git a/lib/engine/components/opal/opal-videoinput.h b/lib/engine/components/opal/opal-videoinput.h
index ab97f64..b9192e5 100644
--- a/lib/engine/components/opal/opal-videoinput.h
+++ b/lib/engine/components/opal/opal-videoinput.h
@@ -181,7 +181,7 @@ class PVideoInputDevice_EKIGA : public PVideoInputDevice
protected:
Ekiga::ServiceCore & core;
- Ekiga::VideoInputCore* videoinput_core;
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core;
bool opened;
};
diff --git a/lib/engine/components/opal/opal-videooutput.cpp b/lib/engine/components/opal/opal-videooutput.cpp
index 457699e..41dadf6 100644
--- a/lib/engine/components/opal/opal-videooutput.cpp
+++ b/lib/engine/components/opal/opal-videooutput.cpp
@@ -87,11 +87,7 @@ PVideoOutputDevice_EKIGA::PVideoOutputDevice_EKIGA (Ekiga::ServiceCore & _core)
* or not mutex.
*/
- {
- gmref_ptr<Ekiga::VideoOutputCore> smart = core.get ("videooutput-core");
- smart->reference (); // take a reference in the main thread
- videooutput_core = smart.get ();
- }
+ videooutput_core = core.get<Ekiga::VideoOutputCore> ("videooutput-core");
is_active = FALSE;
@@ -107,8 +103,6 @@ PVideoOutputDevice_EKIGA::~PVideoOutputDevice_EKIGA()
* have played with 'core' from a thread
*/
- videooutput_core-> unreference (); // leave a reference in the main thread
-
if (is_active) {
devices_nbr--;
if (devices_nbr==0)
diff --git a/lib/engine/components/opal/opal-videooutput.h b/lib/engine/components/opal/opal-videooutput.h
index 2127028..fdd7eeb 100644
--- a/lib/engine/components/opal/opal-videooutput.h
+++ b/lib/engine/components/opal/opal-videooutput.h
@@ -140,7 +140,7 @@ class PVideoOutputDevice_EKIGA : public PVideoOutputDevice
enum {REMOTE, LOCAL};
Ekiga::ServiceCore & core;
- Ekiga::VideoOutputCore* videooutput_core;
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core;
};
#endif
diff --git a/lib/engine/components/opal/sip-chat-simple.cpp b/lib/engine/components/opal/sip-chat-simple.cpp
index aa23eff..695fb20 100644
--- a/lib/engine/components/opal/sip-chat-simple.cpp
+++ b/lib/engine/components/opal/sip-chat-simple.cpp
@@ -45,7 +45,7 @@ SIP::SimpleChat::SimpleChat (Ekiga::ServiceCore& core_,
sigc::slot1<bool, std::string> sender_)
: core(core_), sender(sender_), uri(uri_)
{
- presentity = gmref_ptr<Ekiga::URIPresentity> (new Ekiga::URIPresentity (core, name, uri,
+ presentity = boost::shared_ptr<Ekiga::URIPresentity> (new Ekiga::URIPresentity (core, name, uri,
std::set<std::string>()));
}
@@ -67,13 +67,13 @@ SIP::SimpleChat::get_title () const
}
void
-SIP::SimpleChat::connect (gmref_ptr<Ekiga::ChatObserver> observer)
+SIP::SimpleChat::connect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observers.push_front (observer);
}
void
-SIP::SimpleChat::disconnect (gmref_ptr<Ekiga::ChatObserver> observer)
+SIP::SimpleChat::disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer)
{
observers.remove (observer);
@@ -85,9 +85,9 @@ bool
SIP::SimpleChat::send_message (const std::string msg)
{
bool result;
- gmref_ptr<Ekiga::PersonalDetails> personal = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PersonalDetails> personal = core.get<Ekiga::PersonalDetails> ("personal-details");
result = sender (msg);
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter)
(*iter)->message (personal->get_display_name (), msg);
@@ -97,7 +97,7 @@ SIP::SimpleChat::send_message (const std::string msg)
void
SIP::SimpleChat::receive_message (const std::string msg)
{
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter)
(*iter)->message (presentity->get_name (), msg);
@@ -106,7 +106,7 @@ SIP::SimpleChat::receive_message (const std::string msg)
void
SIP::SimpleChat::receive_notice (const std::string msg)
{
- for (std::list<gmref_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
+ for (std::list<boost::shared_ptr<Ekiga::ChatObserver> >::iterator iter = observers.begin ();
iter != observers.end ();
++iter)
(*iter)->notice (msg);
diff --git a/lib/engine/components/opal/sip-chat-simple.h b/lib/engine/components/opal/sip-chat-simple.h
index 7a3de61..490869d 100644
--- a/lib/engine/components/opal/sip-chat-simple.h
+++ b/lib/engine/components/opal/sip-chat-simple.h
@@ -57,9 +57,9 @@ namespace SIP
const std::string get_title () const;
- void connect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void connect (boost::shared_ptr<Ekiga::ChatObserver> observer);
- void disconnect (gmref_ptr<Ekiga::ChatObserver> observer);
+ void disconnect (boost::shared_ptr<Ekiga::ChatObserver> observer);
bool send_message (const std::string msg);
@@ -75,12 +75,12 @@ namespace SIP
Ekiga::ServiceCore& core;
sigc::slot1<bool, std::string> sender;
- std::list<gmref_ptr<Ekiga::ChatObserver> > observers;
+ std::list<boost::shared_ptr<Ekiga::ChatObserver> > observers;
Ekiga::PresentityPtr presentity;
std::string uri;
};
- typedef gmref_ptr<SimpleChat> SimpleChatPtr;
+ typedef boost::shared_ptr<SimpleChat> SimpleChatPtr;
};
diff --git a/lib/engine/components/opal/sip-dialect.cpp b/lib/engine/components/opal/sip-dialect.cpp
index b4d4bc7..f54903d 100644
--- a/lib/engine/components/opal/sip-dialect.cpp
+++ b/lib/engine/components/opal/sip-dialect.cpp
@@ -86,7 +86,7 @@ SIP::Dialect::start_chat_with (std::string uri,
(void)open_chat_with (uri, name, true);
}
-gmref_ptr<SIP::SimpleChat>
+boost::shared_ptr<SIP::SimpleChat>
SIP::Dialect::open_chat_with (std::string uri,
std::string name,
bool user_request)
diff --git a/lib/engine/components/opal/sip-dialect.h b/lib/engine/components/opal/sip-dialect.h
index b047147..60637a3 100644
--- a/lib/engine/components/opal/sip-dialect.h
+++ b/lib/engine/components/opal/sip-dialect.h
@@ -75,7 +75,7 @@ namespace SIP
bool user_request);
};
- typedef gmref_ptr<Dialect> DialectPtr;
+ typedef boost::shared_ptr<Dialect> DialectPtr;
};
diff --git a/lib/engine/components/opal/sip-endpoint.cpp b/lib/engine/components/opal/sip-endpoint.cpp
index a079347..d86066b 100644
--- a/lib/engine/components/opal/sip-endpoint.cpp
+++ b/lib/engine/components/opal/sip-endpoint.cpp
@@ -108,15 +108,15 @@ Opal::Sip::EndPoint::EndPoint (Opal::CallManager & _manager,
manager (_manager),
core (_core)
{
- gmref_ptr<Ekiga::ChatCore> chat_core = core.get ("chat-core");
- gmref_ptr<Opal::Bank> bank = core.get ("opal-account-store");
+ boost::shared_ptr<Ekiga::ChatCore> chat_core = core.get<Ekiga::ChatCore> ("chat-core");
+ boost::shared_ptr<Opal::Bank> bank = core.get<Opal::Bank> ("opal-account-store");
auto_answer_call = false;
protocol_name = "sip";
uri_prefix = "sip:";
listen_port = (_listen_port > 0 ? _listen_port : 5060);
- dialect = gmref_ptr<SIP::Dialect>(new SIP::Dialect (core, sigc::mem_fun (this, &Opal::Sip::EndPoint::send_message)));
+ dialect = boost::shared_ptr<SIP::Dialect>(new SIP::Dialect (core, sigc::mem_fun (this, &Opal::Sip::EndPoint::send_message)));
chat_core->add_dialect (dialect);
bank->account_added.connect (sigc::mem_fun (this, &Opal::Sip::EndPoint::on_bank_updated));
@@ -176,7 +176,7 @@ Opal::Sip::EndPoint::menu_builder_add_actions (const std::string& fullname,
{
bool populated = false;
- gmref_ptr<Opal::Bank> bank = core.get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = core.get<Opal::Bank> ("opal-account-store");
std::list<std::string> uris;
std::list<std::string> accounts;
@@ -1254,7 +1254,7 @@ Opal::Sip::EndPoint::registration_event_in_main (const std::string aor,
Opal::Account::RegistrationState state,
const std::string msg)
{
- gmref_ptr<Opal::Bank> bank = core.get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = core.get<Opal::Bank> ("opal-account-store");
AccountPtr account = bank->find_account (aor);
if (account) {
@@ -1293,7 +1293,7 @@ void
Opal::Sip::EndPoint::mwi_received_in_main (const std::string aor,
const std::string info)
{
- gmref_ptr<Opal::Bank> bank = core.get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = core.get<Opal::Bank> ("opal-account-store");
AccountPtr account = bank->find_account (aor);
if (account) {
@@ -1303,7 +1303,7 @@ Opal::Sip::EndPoint::mwi_received_in_main (const std::string aor,
}
void
-Opal::Sip::EndPoint::on_bank_updated (Ekiga::ContactPtr /*contact*/)
+Opal::Sip::EndPoint::on_bank_updated (Ekiga::AccountPtr /*account*/)
{
{ // first we flush the existing value
PWaitAndSignal mut(defaultAORMutex);
@@ -1311,14 +1311,15 @@ Opal::Sip::EndPoint::on_bank_updated (Ekiga::ContactPtr /*contact*/)
}
{ // and now we compute it again
- gmref_ptr<Opal::Bank> bank = core.get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = core.get<Opal::Bank> ("opal-account-store");
bank->visit_accounts (sigc::mem_fun (this, &Opal::Sip::EndPoint::search_for_default_account));
}
}
bool
-Opal::Sip::EndPoint::search_for_default_account (Opal::AccountPtr account)
+Opal::Sip::EndPoint::search_for_default_account (Ekiga::AccountPtr account_)
{
+ Opal::AccountPtr account = boost::dynamic_pointer_cast<Opal::Account> (account_);
PWaitAndSignal mut(defaultAORMutex);
bool result = true;
diff --git a/lib/engine/components/opal/sip-endpoint.h b/lib/engine/components/opal/sip-endpoint.h
index 4de4108..0b4d4b4 100644
--- a/lib/engine/components/opal/sip-endpoint.h
+++ b/lib/engine/components/opal/sip-endpoint.h
@@ -235,8 +235,8 @@ namespace Opal {
PMutex defaultAORMutex;
std::string default_aor;
- void on_bank_updated (Ekiga::ContactPtr contact);
- bool search_for_default_account(Opal::AccountPtr account);
+ void on_bank_updated (Ekiga::AccountPtr account);
+ bool search_for_default_account(Ekiga::AccountPtr account);
Ekiga::ServiceCore & core;
@@ -250,7 +250,7 @@ namespace Opal {
unsigned listen_port;
bool auto_answer_call;
- gmref_ptr<SIP::Dialect> dialect;
+ boost::shared_ptr<SIP::Dialect> dialect;
domain_list active_domains; // List of active domains
uri_info_map presence_infos; // List of uri presences
diff --git a/lib/engine/components/ptlib/audioinput-main-ptlib.cpp b/lib/engine/components/ptlib/audioinput-main-ptlib.cpp
index de46151..ab1ab8f 100644
--- a/lib/engine/components/ptlib/audioinput-main-ptlib.cpp
+++ b/lib/engine/components/ptlib/audioinput-main-ptlib.cpp
@@ -49,7 +49,7 @@ struct PTLIBAUDIOINPUTSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core.get ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core.get<Ekiga::AudioInputCore> ("audioinput-core");
if (audioinput_core) {
@@ -76,6 +76,6 @@ struct PTLIBAUDIOINPUTSpark: public Ekiga::Spark
void
audioinput_ptlib_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new PTLIBAUDIOINPUTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new PTLIBAUDIOINPUTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/ptlib/audiooutput-main-ptlib.cpp b/lib/engine/components/ptlib/audiooutput-main-ptlib.cpp
index 45e5e04..b26df07 100644
--- a/lib/engine/components/ptlib/audiooutput-main-ptlib.cpp
+++ b/lib/engine/components/ptlib/audiooutput-main-ptlib.cpp
@@ -49,7 +49,7 @@ struct PTLIBAUDIOOUTPUTSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (audiooutput_core) {
@@ -76,6 +76,6 @@ struct PTLIBAUDIOOUTPUTSpark: public Ekiga::Spark
void
audiooutput_ptlib_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new PTLIBAUDIOOUTPUTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new PTLIBAUDIOOUTPUTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/ptlib/videoinput-main-ptlib.cpp b/lib/engine/components/ptlib/videoinput-main-ptlib.cpp
index ecd0c6d..0972afd 100644
--- a/lib/engine/components/ptlib/videoinput-main-ptlib.cpp
+++ b/lib/engine/components/ptlib/videoinput-main-ptlib.cpp
@@ -49,7 +49,7 @@ struct PTLIBVIDEOINPUTSpark: public Ekiga::Spark
int* /*argc*/,
char** /*argv*/[])
{
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core.get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
if (videoinput_core) {
@@ -76,6 +76,6 @@ struct PTLIBVIDEOINPUTSpark: public Ekiga::Spark
void
videoinput_ptlib_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new PTLIBVIDEOINPUTSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new PTLIBVIDEOINPUTSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/resource-list/resource-list-main.cpp b/lib/engine/components/resource-list/resource-list-main.cpp
index 61c0b8e..23d8110 100644
--- a/lib/engine/components/resource-list/resource-list-main.cpp
+++ b/lib/engine/components/resource-list/resource-list-main.cpp
@@ -51,12 +51,12 @@ struct RLSpark: public Ekiga::Spark
char** /*argv*/[])
{
Ekiga::ServicePtr service = core.get ("resource-list");
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<XCAP::Core> xcap = core.get ("xcap-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<XCAP::Core> xcap = core.get<XCAP::Core> ("xcap-core");
if ( !service && presence_core && xcap) {
- gmref_ptr<RL::Cluster> cluster (new RL::Cluster (core));
+ boost::shared_ptr<RL::Cluster> cluster (new RL::Cluster (core));
core.add (cluster);
presence_core->add_cluster (cluster);
result = true;
@@ -77,6 +77,6 @@ struct RLSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new RLSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new RLSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/resource-list/rl-cluster.cpp b/lib/engine/components/resource-list/rl-cluster.cpp
index f531c00..66bc0ce 100644
--- a/lib/engine/components/resource-list/rl-cluster.cpp
+++ b/lib/engine/components/resource-list/rl-cluster.cpp
@@ -52,7 +52,7 @@ RL::Cluster::Cluster (Ekiga::ServiceCore& core_): core(core_), doc()
{
gchar* c_raw = NULL;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
presence_core->presence_received.connect (sigc::mem_fun (this, &RL::Cluster::on_presence_received));
presence_core->status_received.connect (sigc::mem_fun (this, &RL::Cluster::on_status_received));
@@ -62,9 +62,9 @@ RL::Cluster::Cluster (Ekiga::ServiceCore& core_): core(core_), doc()
if (c_raw != NULL) {
const std::string raw = c_raw;
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
xmlNodePtr root = xmlDocGetRootElement (doc.get ());
if (root == NULL) {
@@ -85,7 +85,7 @@ RL::Cluster::Cluster (Ekiga::ServiceCore& core_): core(core_), doc()
} else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
xmlNodePtr root = xmlNewDocNode (doc.get (), NULL, BAD_CAST "list", NULL);
xmlDocSetRootElement (doc.get (), root);
add ("https://xcap.sipthor.net/xcap-root", "alice", "123", "alice example com", "XCAP Test", false); // FIXME: remove
@@ -161,7 +161,7 @@ RL::Cluster::new_heap (const std::string name,
const std::string user,
bool writable)
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Cluster::on_new_heap_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Cluster::on_new_heap_form_submitted)));
request->title (_("Add new resource-list"));
request->instructions (_("Please fill in this form to add a new "
diff --git a/lib/engine/components/resource-list/rl-cluster.h b/lib/engine/components/resource-list/rl-cluster.h
index 89352d3..5e169fc 100644
--- a/lib/engine/components/resource-list/rl-cluster.h
+++ b/lib/engine/components/resource-list/rl-cluster.h
@@ -65,7 +65,7 @@ namespace RL {
private:
Ekiga::ServiceCore& core;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
void add (xmlNodePtr node);
void add (const std::string uri,
@@ -93,7 +93,7 @@ namespace RL {
std::string presence);
};
- typedef gmref_ptr<Cluster> ClusterPtr;
+ typedef boost::shared_ptr<Cluster> ClusterPtr;
};
diff --git a/lib/engine/components/resource-list/rl-entry-ref.cpp b/lib/engine/components/resource-list/rl-entry-ref.cpp
index 8cd462f..a6a96a4 100644
--- a/lib/engine/components/resource-list/rl-entry-ref.cpp
+++ b/lib/engine/components/resource-list/rl-entry-ref.cpp
@@ -126,7 +126,7 @@ bool
RL::EntryRef::populate_menu (Ekiga::MenuBuilder& builder)
{
bool populated = false;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
std::string uri(get_uri ());
builder.add_action ("refresh", _("_Refresh"),
diff --git a/lib/engine/components/resource-list/rl-entry-ref.h b/lib/engine/components/resource-list/rl-entry-ref.h
index 77574a4..5195ab5 100644
--- a/lib/engine/components/resource-list/rl-entry-ref.h
+++ b/lib/engine/components/resource-list/rl-entry-ref.h
@@ -39,7 +39,7 @@
#ifndef __RL_ENTRY_REF_H__
#define __RL_ENTRY_REF_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "services.h"
#include "presentity.h"
@@ -49,7 +49,6 @@
namespace RL {
class EntryRef:
- public virtual GmRefCounted,
public Ekiga::Presentity
{
public:
diff --git a/lib/engine/components/resource-list/rl-entry.cpp b/lib/engine/components/resource-list/rl-entry.cpp
index df2e3a6..bcdfcfe 100644
--- a/lib/engine/components/resource-list/rl-entry.cpp
+++ b/lib/engine/components/resource-list/rl-entry.cpp
@@ -44,10 +44,10 @@
#include "presence-core.h"
RL::Entry::Entry (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr node_):
core(core_), position(pos), doc(doc_), node(node_), name_node(NULL),
presence("unknown"), status("")
@@ -138,7 +138,7 @@ bool
RL::Entry::populate_menu (Ekiga::MenuBuilder& builder)
{
bool populated = false;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
std::string uri(get_uri ());
builder.add_action ("refresh", _("_Refresh"),
@@ -161,7 +161,7 @@ RL::Entry::refresh ()
status = ("");
updated.emit ();
- gmref_ptr<XCAP::Core> xcap = core.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = core.get<XCAP::Core> ("xcap-core");
xcap->read (path, sigc::mem_fun (this, &RL::Entry::on_xcap_answer));
}
@@ -175,9 +175,9 @@ RL::Entry::on_xcap_answer (bool error,
} else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (value.c_str (), value.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (value.c_str (), value.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
node = xmlDocGetRootElement (doc.get ());
if (node == NULL
diff --git a/lib/engine/components/resource-list/rl-entry.h b/lib/engine/components/resource-list/rl-entry.h
index 60dd474..10e8bf5 100644
--- a/lib/engine/components/resource-list/rl-entry.h
+++ b/lib/engine/components/resource-list/rl-entry.h
@@ -44,21 +44,20 @@
#include <libxml/tree.h>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
namespace RL {
class Entry:
- public virtual GmRefCounted,
public Ekiga::Presentity
{
public:
Entry (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr node_);
~Entry ();
@@ -91,12 +90,12 @@ namespace RL {
private:
Ekiga::ServiceCore& core;
- gmref_ptr<XCAP::Path> path;
+ boost::shared_ptr<XCAP::Path> path;
int position;
std::set<std::string> groups;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
xmlNodePtr name_node;
diff --git a/lib/engine/components/resource-list/rl-heap.cpp b/lib/engine/components/resource-list/rl-heap.cpp
index e2cd8fc..2cf6b7e 100644
--- a/lib/engine/components/resource-list/rl-heap.cpp
+++ b/lib/engine/components/resource-list/rl-heap.cpp
@@ -44,7 +44,7 @@
#include "rl-heap.h"
RL::Heap::Heap (Ekiga::ServiceCore& services_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr node_):
services(services_),
node(node_), name(NULL),
@@ -113,7 +113,7 @@ RL::Heap::Heap (Ekiga::ServiceCore& services_,
}
RL::Heap::Heap (Ekiga::ServiceCore& services_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
const std::string name_,
const std::string root_,
const std::string user_,
@@ -220,7 +220,7 @@ RL::Heap::get_node () const
void
RL::Heap::refresh ()
{
- gmref_ptr<XCAP::Core> xcap = services.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = services.get<XCAP::Core> ("xcap-core");
std::string root_str;
std::string username_str;
std::string password_str;
@@ -246,7 +246,7 @@ RL::Heap::refresh ()
if (str != NULL)
password_str = (const char*)str;
}
- gmref_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
+ boost::shared_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
user_str));
path->set_credentials (username_str, password_str);
path = path->build_child ("resource-lists");
@@ -284,9 +284,9 @@ RL::Heap::on_document_received (bool error,
void
RL::Heap::parse_doc (std::string raw)
{
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (raw.c_str (), raw.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
xmlNodePtr doc_root = xmlDocGetRootElement (doc.get ());
if (doc_root == NULL
@@ -352,7 +352,7 @@ RL::Heap::parse_list (xmlNodePtr list)
}
}
- gmref_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
+ boost::shared_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
user_str));
path->set_credentials (username_str, password_str);
path = path->build_child ("resource-lists");
@@ -408,7 +408,7 @@ RL::Heap::push_status (const std::string uri_,
void
RL::Heap::edit ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Heap::on_edit_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Heap::on_edit_form_submitted)));
std::string name_str;
std::string root_str;
@@ -507,7 +507,7 @@ RL::Heap::on_edit_form_submitted (bool submitted,
void
RL::Heap::new_entry ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Heap::on_new_entry_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Heap::on_new_entry_form_submitted)));
request->title (_("Add a remote contact"));
request->instructions (_("Please fill in this form to create a new "
@@ -593,13 +593,13 @@ RL::Heap::on_new_entry_form_submitted (bool submitted,
if (str != NULL)
password_str = (const char*)str;
}
- gmref_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
+ boost::shared_ptr<XCAP::Path> path(new XCAP::Path (root_str, "resource-lists",
user_str));
path->set_credentials (username_str, password_str);
path = path->build_child ("resource-lists");
path = path->build_child ("list");
path = path->build_child_with_attribute ("entry", "uri", entry_uri);
- gmref_ptr<XCAP::Core> xcap = services.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = services.get<XCAP::Core> ("xcap-core");
xcap->write (path, "application/xcap-el+xml",
(const char*)xmlBufferContent (buffer),
sigc::mem_fun (this, &RL::Heap::new_entry_result));
diff --git a/lib/engine/components/resource-list/rl-heap.h b/lib/engine/components/resource-list/rl-heap.h
index c9fef1f..76f7ff1 100644
--- a/lib/engine/components/resource-list/rl-heap.h
+++ b/lib/engine/components/resource-list/rl-heap.h
@@ -49,7 +49,7 @@ namespace RL {
public:
Heap (Ekiga::ServiceCore& services_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr node);
/* name: the name of the Heap in the GUI
@@ -63,7 +63,7 @@ namespace RL {
*
*/
Heap (Ekiga::ServiceCore& core_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<xmlDoc> doc_,
const std::string name_,
const std::string root_,
const std::string user_,
@@ -103,7 +103,7 @@ namespace RL {
xmlNodePtr username;
xmlNodePtr password;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr list_node;
std::map<PresentityPtr, std::list<sigc::connection> > presentities;
@@ -126,7 +126,7 @@ namespace RL {
void new_entry_result (std::string error);
};
- typedef gmref_ptr<Heap> HeapPtr;
+ typedef boost::shared_ptr<Heap> HeapPtr;
};
diff --git a/lib/engine/components/resource-list/rl-list.cpp b/lib/engine/components/resource-list/rl-list.cpp
index 359e9af..9f14ed4 100644
--- a/lib/engine/components/resource-list/rl-list.cpp
+++ b/lib/engine/components/resource-list/rl-list.cpp
@@ -47,7 +47,7 @@ class RL::ListImpl
public: // no need to make anything private
ListImpl (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group_,
xmlNodePtr node_);
@@ -77,12 +77,12 @@ public: // no need to make anything private
Ekiga::ServiceCore& core;
- gmref_ptr<XCAP::Path> path;
+ boost::shared_ptr<XCAP::Path> path;
int position;
std::string group;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
xmlNodePtr name_node;
@@ -94,24 +94,24 @@ public: // no need to make anything private
void publish () const;
- sigc::signal1<void, gmref_ptr<Entry> > entry_added;
- sigc::signal1<void, gmref_ptr<Entry> > entry_updated;
- sigc::signal1<void, gmref_ptr<Entry> > entry_removed;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_added;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_updated;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_removed;
/* data for its children */
typedef enum { LIST, ENTRY } ChildType;
std::list<ChildType> ordering;
- std::list<gmref_ptr<List> > lists;
- std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > > entries;
+ std::list<boost::shared_ptr<List> > lists;
+ std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > > entries;
};
/* implementation of the List class */
RL::List::List (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group_,
xmlNodePtr node_)
@@ -168,7 +168,7 @@ RL::List::publish () const
/* implementation of the ListImpl class */
RL::ListImpl::ListImpl (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group_,
xmlNodePtr node_):
@@ -227,13 +227,13 @@ RL::ListImpl::flush ()
{
ordering.clear ();
- for (std::list<gmref_ptr<List> >::iterator iter = lists.begin ();
+ for (std::list<boost::shared_ptr<List> >::iterator iter = lists.begin ();
iter != lists.end ();
++iter)
(*iter)->flush ();
lists.clear ();
- for (std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > >::iterator iter = entries.begin ();
+ for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > >::iterator iter = entries.begin ();
iter != entries.end ();
++iter) {
@@ -256,7 +256,7 @@ RL::ListImpl::refresh ()
{
flush ();
- gmref_ptr<XCAP::Core> xcap = core.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = core.get<XCAP::Core> ("xcap-core");
xcap->read (path, sigc::mem_fun (this, &RL::ListImpl::on_xcap_answer));
}
@@ -270,9 +270,9 @@ RL::ListImpl::on_xcap_answer (bool error,
} else {
- doc = std::tr1::shared_ptr<xmlDoc> (xmlRecoverMemory (value.c_str (), value.length ()), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlRecoverMemory (value.c_str (), value.length ()), xmlFreeDoc);
if ( !doc)
- doc = std::tr1::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
+ doc = boost::shared_ptr<xmlDoc> (xmlNewDoc (BAD_CAST "1.0"), xmlFreeDoc);
node = xmlDocGetRootElement (doc.get ());
if (node == NULL
|| node->name == NULL
@@ -319,7 +319,7 @@ RL::ListImpl::parse ()
&& child->name != NULL
&& xmlStrEqual (BAD_CAST "list", child->name)) {
- gmref_ptr<List> list = gmref_ptr<List> (new List (core, path,
+ boost::shared_ptr<List> list = boost::shared_ptr<List> (new List (core, path,
list_pos, display_name,
child));
list->entry_added.connect (entry_added.make_slot ());
@@ -336,14 +336,14 @@ RL::ListImpl::parse ()
&& child->name != NULL
&& xmlStrEqual (BAD_CAST "entry", child->name)) {
- gmref_ptr<Entry> entry = gmref_ptr<Entry> (new Entry (core, path,
+ boost::shared_ptr<Entry> entry = boost::shared_ptr<Entry> (new Entry (core, path,
entry_pos,
display_name,
doc, child));
std::list<sigc::connection> conns;
conns.push_back (entry->updated.connect (sigc::bind (entry_updated.make_slot (), entry)));
conns.push_back (entry->removed.connect (sigc::bind (entry_removed.make_slot (), entry)));
- entries.push_back (std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > (entry, conns));
+ entries.push_back (std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > (entry, conns));
ordering.push_back (ENTRY);
entry_pos++;
entry_added.emit (entry);
@@ -356,12 +356,12 @@ void
RL::ListImpl::push_presence (const std::string uri_,
const std::string presence)
{
- for (std::list<gmref_ptr<List> >::const_iterator iter = lists.begin ();
+ for (std::list<boost::shared_ptr<List> >::const_iterator iter = lists.begin ();
iter != lists.end ();
++iter)
(*iter)->push_presence (uri_, presence);
- for (std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
+ for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
iter != entries.end ();
++iter) {
@@ -374,12 +374,12 @@ void
RL::ListImpl::push_status (const std::string uri_,
const std::string status)
{
- for (std::list<gmref_ptr<List> >::const_iterator iter = lists.begin ();
+ for (std::list<boost::shared_ptr<List> >::const_iterator iter = lists.begin ();
iter != lists.end ();
++iter)
(*iter)->push_status (uri_, status);
- for (std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
+ for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
iter != entries.end ();
++iter) {
@@ -393,12 +393,12 @@ RL::ListImpl::visit_presentities (sigc::slot1<bool, Ekiga::Presentity&> visitor)
{
bool go_on = true;
- for (std::list<gmref_ptr<List> >::const_iterator iter = lists.begin ();
+ for (std::list<boost::shared_ptr<List> >::const_iterator iter = lists.begin ();
go_on && iter != lists.end ();
++iter)
go_on = (*iter)->visit_presentities (visitor);
- for (std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
+ for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
go_on && iter != entries.end ();
++iter) {
@@ -411,12 +411,12 @@ RL::ListImpl::visit_presentities (sigc::slot1<bool, Ekiga::Presentity&> visitor)
void
RL::ListImpl::publish () const
{
- for (std::list<gmref_ptr<List> >::const_iterator iter = lists.begin ();
+ for (std::list<boost::shared_ptr<List> >::const_iterator iter = lists.begin ();
iter != lists.end ();
++iter)
(*iter)->publish ();
- for (std::list<std::pair<gmref_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
+ for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<sigc::connection> > >::const_iterator iter = entries.begin ();
iter != entries.end ();
++iter) {
diff --git a/lib/engine/components/resource-list/rl-list.h b/lib/engine/components/resource-list/rl-list.h
index 5f2dae4..65d5e4b 100644
--- a/lib/engine/components/resource-list/rl-list.h
+++ b/lib/engine/components/resource-list/rl-list.h
@@ -45,12 +45,12 @@ namespace RL
{
class ListImpl; // pimpling : both it and external need to know each other
- class List: public virtual GmRefCounted
+ class List
{
public:
List (Ekiga::ServiceCore& core_,
- gmref_ptr<XCAP::Path> path_,
+ boost::shared_ptr<XCAP::Path> path_,
int pos,
const std::string group_,
xmlNodePtr node_);
@@ -74,9 +74,9 @@ namespace RL
void publish () const;
- sigc::signal1<void, gmref_ptr<Entry> > entry_added;
- sigc::signal1<void, gmref_ptr<Entry> > entry_updated;
- sigc::signal1<void, gmref_ptr<Entry> > entry_removed;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_added;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_updated;
+ sigc::signal1<void, boost::shared_ptr<Entry> > entry_removed;
/* this method orders the list to get rid of all its children */
void flush ();
diff --git a/lib/engine/components/resource-list/rl-presentity.cpp b/lib/engine/components/resource-list/rl-presentity.cpp
index d47a523..7560626 100644
--- a/lib/engine/components/resource-list/rl-presentity.cpp
+++ b/lib/engine/components/resource-list/rl-presentity.cpp
@@ -46,14 +46,14 @@
RL::Presentity::Presentity (Ekiga::ServiceCore &services_,
- gmref_ptr<XCAP::Path> path_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<XCAP::Path> path_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr node_,
bool writable_) :
services(services_), doc(doc_), node(node_), writable(writable_),
name_node(NULL), presence("unknown"), status(""), avatar("")
{
- gmref_ptr<Ekiga::PresenceCore> presence_core(services.get ("presence-core"));
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core(services.get<Ekiga::PresenceCore> ("presence-core"));
xmlChar *xml_str = NULL;
xmlNsPtr ns = xmlSearchNsByHref (doc.get (), node,
BAD_CAST "http://www.ekiga.org");
@@ -191,7 +191,7 @@ bool
RL::Presentity::populate_menu (Ekiga::MenuBuilder &builder)
{
bool populated = false;
- gmref_ptr<Ekiga::PresenceCore> presence_core(services.get ("presence-core"));
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core(services.get<Ekiga::PresenceCore> ("presence-core"));
populated = presence_core->populate_presentity_menu (PresentityPtr (this), uri, builder);
@@ -213,7 +213,7 @@ RL::Presentity::populate_menu (Ekiga::MenuBuilder &builder)
void
RL::Presentity::edit_presentity ()
{
- gmref_ptr<Ekiga::FormRequestSimple> request = gmref_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Presentity::edit_presentity_form_submitted)));
+ boost::shared_ptr<Ekiga::FormRequestSimple> request = boost::shared_ptr<Ekiga::FormRequestSimple> (new Ekiga::FormRequestSimple (sigc::mem_fun (this, &RL::Presentity::edit_presentity_form_submitted)));
// FIXME: we should be able to know all groups in the heap
std::set<std::string> all_groups = groups;
@@ -251,7 +251,7 @@ RL::Presentity::edit_presentity_form_submitted (bool submitted,
if (uri != new_uri) {
xmlSetProp (node, (const xmlChar*)"uri", (const xmlChar*)uri.c_str ());
- gmref_ptr<Ekiga::PresenceCore> presence_core(services.get ("presence-core"));
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core(services.get<Ekiga::PresenceCore> ("presence-core"));
presence_core->unfetch_presence (uri);
reload = true;
}
@@ -295,7 +295,7 @@ RL::Presentity::save (bool reload)
if (result >= 0) {
- gmref_ptr<XCAP::Core> xcap = services.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = services.get<XCAP::Core> ("xcap-core");
xcap->write (path, "application/xcap-el+xml",
(const char*)xmlBufferContent (buffer),
sigc::bind (sigc::mem_fun (this, &RL::Presentity::save_result),
@@ -311,11 +311,11 @@ RL::Presentity::remove ()
{
xmlUnlinkNode (node);
xmlFreeNode (node);
- gmref_ptr<Ekiga::PresenceCore> presence_core = services.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = services.get<Ekiga::PresenceCore> ("presence-core");
presence_core->unfetch_presence (uri);
- gmref_ptr<XCAP::Core> xcap = services.get ("xcap-core");
+ boost::shared_ptr<XCAP::Core> xcap = services.get<XCAP::Core> ("xcap-core");
xcap->erase (path,
sigc::mem_fun (this, &RL::Presentity::erase_result));
}
diff --git a/lib/engine/components/resource-list/rl-presentity.h b/lib/engine/components/resource-list/rl-presentity.h
index 9ba50bc..bab874d 100644
--- a/lib/engine/components/resource-list/rl-presentity.h
+++ b/lib/engine/components/resource-list/rl-presentity.h
@@ -39,7 +39,7 @@
#define __RL_PRESENTITY_H__
#include <libxml/tree.h>
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include "form.h"
#include "presence-core.h"
@@ -49,14 +49,13 @@
namespace RL
{
class Presentity:
- public virtual GmRefCounted,
public Ekiga::Presentity
{
public:
Presentity (Ekiga::ServiceCore &_core,
- gmref_ptr<XCAP::Path> path_,
- std::tr1::shared_ptr<xmlDoc> doc_,
+ boost::shared_ptr<XCAP::Path> path_,
+ boost::shared_ptr<xmlDoc> doc_,
xmlNodePtr _node,
bool writable_);
@@ -100,8 +99,8 @@ namespace RL
Ekiga::ServiceCore &services;
- gmref_ptr<XCAP::Path> path;
- std::tr1::shared_ptr<xmlDoc> doc;
+ boost::shared_ptr<XCAP::Path> path;
+ boost::shared_ptr<xmlDoc> doc;
xmlNodePtr node;
bool writable;
@@ -116,7 +115,7 @@ namespace RL
std::set<std::string> groups;
};
- typedef gmref_ptr<Presentity> PresentityPtr;
+ typedef boost::shared_ptr<Presentity> PresentityPtr;
};
diff --git a/lib/engine/components/x-videooutput/videooutput-main-x.cpp b/lib/engine/components/x-videooutput/videooutput-main-x.cpp
index b25ab22..7659abe 100644
--- a/lib/engine/components/x-videooutput/videooutput-main-x.cpp
+++ b/lib/engine/components/x-videooutput/videooutput-main-x.cpp
@@ -45,7 +45,7 @@ videooutput_x_init (Ekiga::ServiceCore &core,
char **/*argv*/[])
{
bool result = false;
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get ("videooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = core.get<Ekiga::VideoOutputCore> ("videooutput-core");
if (videooutput_core) {
diff --git a/lib/engine/components/xcap/xcap-core.cpp b/lib/engine/components/xcap/xcap-core.cpp
index e59fd44..0a53db2 100644
--- a/lib/engine/components/xcap/xcap-core.cpp
+++ b/lib/engine/components/xcap/xcap-core.cpp
@@ -52,13 +52,13 @@ public:
~CoreImpl ();
- void read (gmref_ptr<XCAP::Path> path,
+ void read (boost::shared_ptr<XCAP::Path> path,
sigc::slot2<void,bool,std::string> callback);
- void write (gmref_ptr<Path>,
+ void write (boost::shared_ptr<Path>,
const std::string content_type,
const std::string content,
sigc::slot1<void,std::string> callback);
- void erase (gmref_ptr<Path>,
+ void erase (boost::shared_ptr<Path>,
sigc::slot1<void,std::string> callback);
/* public to be used by C callbacks */
@@ -102,14 +102,14 @@ public:
struct cb_read_data
{
XCAP::CoreImpl* core;
- gmref_ptr<XCAP::Path> path;
+ boost::shared_ptr<XCAP::Path> path;
sigc::slot2<void, bool, std::string> callback;
};
struct cb_other_data
{
XCAP::CoreImpl* core;
- gmref_ptr<XCAP::Path> path;
+ boost::shared_ptr<XCAP::Path> path;
sigc::slot1<void, std::string> callback;
};
@@ -222,7 +222,7 @@ XCAP::CoreImpl::clear_old_sessions ()
}
void
-XCAP::CoreImpl::read (gmref_ptr<Path> path,
+XCAP::CoreImpl::read (boost::shared_ptr<Path> path,
sigc::slot2<void, bool, std::string> callback)
{
SoupSession* session = NULL;
@@ -249,7 +249,7 @@ XCAP::CoreImpl::read (gmref_ptr<Path> path,
}
void
-XCAP::CoreImpl::write (gmref_ptr<Path> path,
+XCAP::CoreImpl::write (boost::shared_ptr<Path> path,
const std::string content_type,
const std::string content,
sigc::slot1<void,std::string> callback)
@@ -282,7 +282,7 @@ XCAP::CoreImpl::write (gmref_ptr<Path> path,
}
void
-XCAP::CoreImpl::erase (gmref_ptr<Path> path,
+XCAP::CoreImpl::erase (boost::shared_ptr<Path> path,
sigc::slot1<void,std::string> callback)
{
SoupSession* session = NULL;
@@ -321,14 +321,14 @@ XCAP::Core::~Core ()
}
void
-XCAP::Core::read (gmref_ptr<XCAP::Path> path,
+XCAP::Core::read (boost::shared_ptr<XCAP::Path> path,
sigc::slot2<void, bool,std::string> callback)
{
impl->read (path, callback);
}
void
-XCAP::Core::write (gmref_ptr<Path> path,
+XCAP::Core::write (boost::shared_ptr<Path> path,
const std::string content_type,
const std::string content,
sigc::slot1<void,std::string> callback)
@@ -337,7 +337,7 @@ XCAP::Core::write (gmref_ptr<Path> path,
}
void
-XCAP::Core::erase (gmref_ptr<Path> path,
+XCAP::Core::erase (boost::shared_ptr<Path> path,
sigc::slot1<void,std::string> callback)
{
impl->erase (path, callback);
diff --git a/lib/engine/components/xcap/xcap-core.h b/lib/engine/components/xcap/xcap-core.h
index 745aec6..356e6a7 100644
--- a/lib/engine/components/xcap/xcap-core.h
+++ b/lib/engine/components/xcap/xcap-core.h
@@ -61,14 +61,14 @@ namespace XCAP
* - if the boolean is true, there was an error and the string is the
* error message.
*/
- void read (gmref_ptr<Path>,
+ void read (boost::shared_ptr<Path>,
sigc::slot2<void,bool,std::string> callback);
/* the callback gets only a string :
* - if the string is empty, all went well ;
* - if it's not, then it's the error message.
*/
- void write (gmref_ptr<Path>,
+ void write (boost::shared_ptr<Path>,
const std::string content_type,
const std::string content,
sigc::slot1<void,std::string> callback);
@@ -77,7 +77,7 @@ namespace XCAP
* - if the string is empty, all went well ;
* - if it's not, then it's the error message.
*/
- void erase (gmref_ptr<Path>,
+ void erase (boost::shared_ptr<Path>,
sigc::slot1<void,std::string> callback);
/* implementation of the Ekiga::Service api */
diff --git a/lib/engine/components/xcap/xcap-main.cpp b/lib/engine/components/xcap/xcap-main.cpp
index 170f3fc..0a0e6d5 100644
--- a/lib/engine/components/xcap/xcap-main.cpp
+++ b/lib/engine/components/xcap/xcap-main.cpp
@@ -51,7 +51,7 @@ struct XCAPSpark: public Ekiga::Spark
if ( !service) {
- gmref_ptr<XCAP::Core> xcap(new XCAP::Core ());
+ boost::shared_ptr<XCAP::Core> xcap(new XCAP::Core ());
core.add (xcap);
result = true;
@@ -73,6 +73,6 @@ struct XCAPSpark: public Ekiga::Spark
extern "C" void
ekiga_plugin_init (Ekiga::KickStart& kickstart)
{
- gmref_ptr<Ekiga::Spark> spark(new XCAPSpark);
+ boost::shared_ptr<Ekiga::Spark> spark(new XCAPSpark);
kickstart.add_spark (spark);
}
diff --git a/lib/engine/components/xcap/xcap-path.cpp b/lib/engine/components/xcap/xcap-path.cpp
index c6748e8..8009e6d 100644
--- a/lib/engine/components/xcap/xcap-path.cpp
+++ b/lib/engine/components/xcap/xcap-path.cpp
@@ -86,34 +86,34 @@ XCAP::Path::set_credentials (std::string username_,
password = password_;
}
-gmref_ptr<XCAP::Path>
+boost::shared_ptr<XCAP::Path>
XCAP::Path::build_child (const std::string name)
{
- gmref_ptr<Path> result (new Path (root, application, user,
+ boost::shared_ptr<Path> result (new Path (root, application, user,
relative, username, password));
result->relative = relative + "/" + name;
return result;
}
-gmref_ptr<XCAP::Path>
+boost::shared_ptr<XCAP::Path>
XCAP::Path::build_child_with_attribute (const std::string name,
const std::string attr,
const std::string value)
{
- gmref_ptr<Path> result (new Path (root, application, user, relative,
+ boost::shared_ptr<Path> result (new Path (root, application, user, relative,
username, password));
result->relative = relative + "/" + name +"%5b@" + attr + "=%22" + value + "%22%5d";
return result;
}
-gmref_ptr<XCAP::Path>
+boost::shared_ptr<XCAP::Path>
XCAP::Path::build_child_with_position (const std::string name,
int position)
{
std::ostringstream stream;
- gmref_ptr<Path> result (new Path (root, application, user, relative,
+ boost::shared_ptr<Path> result (new Path (root, application, user, relative,
username, password));
/* notice: Snark hates C++ */
diff --git a/lib/engine/components/xcap/xcap-path.h b/lib/engine/components/xcap/xcap-path.h
index 27c27ff..824317a 100644
--- a/lib/engine/components/xcap/xcap-path.h
+++ b/lib/engine/components/xcap/xcap-path.h
@@ -38,14 +38,14 @@
#ifndef __XCAP_PATH_H__
#define __XCAP_PATH_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include <string>
#include <list>
namespace XCAP
{
- class Path: public virtual GmRefCounted
+ class Path
{
public:
@@ -66,13 +66,13 @@ namespace XCAP
void set_credentials (std::string username,
std::string password);
- gmref_ptr<Path> build_child (const std::string name);
+ boost::shared_ptr<Path> build_child (const std::string name);
- gmref_ptr<Path> build_child_with_attribute (const std::string name,
+ boost::shared_ptr<Path> build_child_with_attribute (const std::string name,
const std::string attr,
const std::string value);
- gmref_ptr<Path> build_child_with_position (const std::string name,
+ boost::shared_ptr<Path> build_child_with_position (const std::string name,
int position);
private:
diff --git a/lib/engine/engine.cpp b/lib/engine/engine.cpp
index 4ee148e..47219be 100644
--- a/lib/engine/engine.cpp
+++ b/lib/engine/engine.cpp
@@ -117,16 +117,16 @@ engine_init (int argc,
/* VideoInputCore depends on VideoOutputCore and must this *
* be constructed thereafter */
- gmref_ptr<Ekiga::AccountCore> account_core (new Ekiga::AccountCore);
- gmref_ptr<Ekiga::ContactCore> contact_core (new Ekiga::ContactCore);
- gmref_ptr<Ekiga::CallCore> call_core (new Ekiga::CallCore);
- gmref_ptr<Ekiga::ChatCore> chat_core (new Ekiga::ChatCore);
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core (new Ekiga::VideoOutputCore);
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core (new Ekiga::VideoInputCore(*videooutput_core));
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core (new Ekiga::AudioOutputCore);
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core (new Ekiga::AudioInputCore(*audiooutput_core));
- gmref_ptr<Ekiga::HalCore> hal_core (new Ekiga::HalCore);
- gmref_ptr<Ekiga::FriendOrFoe> friend_or_foe (new Ekiga::FriendOrFoe);
+ boost::shared_ptr<Ekiga::AccountCore> account_core (new Ekiga::AccountCore);
+ boost::shared_ptr<Ekiga::ContactCore> contact_core (new Ekiga::ContactCore);
+ boost::shared_ptr<Ekiga::CallCore> call_core (new Ekiga::CallCore);
+ boost::shared_ptr<Ekiga::ChatCore> chat_core (new Ekiga::ChatCore);
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core (new Ekiga::VideoOutputCore);
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core (new Ekiga::VideoInputCore(*videooutput_core));
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core (new Ekiga::AudioOutputCore);
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core (new Ekiga::AudioInputCore(*audiooutput_core));
+ boost::shared_ptr<Ekiga::HalCore> hal_core (new Ekiga::HalCore);
+ boost::shared_ptr<Ekiga::FriendOrFoe> friend_or_foe (new Ekiga::FriendOrFoe);
/* The last item in the following list will be destroyed first. *
@@ -150,7 +150,7 @@ engine_init (int argc,
return;
}
- gmref_ptr<Ekiga::PresenceCore> presence_core (new Ekiga::PresenceCore (*service_core));
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core (new Ekiga::PresenceCore (*service_core));
service_core->add (presence_core);
#ifndef WIN32
diff --git a/lib/engine/framework/form-request.h b/lib/engine/framework/form-request.h
index 630933d..10f4fc3 100644
--- a/lib/engine/framework/form-request.h
+++ b/lib/engine/framework/form-request.h
@@ -38,7 +38,7 @@
#include "form.h"
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
namespace Ekiga
{
@@ -49,7 +49,6 @@ namespace Ekiga
*/
class FormRequest:
- public virtual GmRefCounted,
public virtual Form
{
public:
@@ -60,7 +59,7 @@ namespace Ekiga
};
- typedef gmref_ptr<FormRequest> FormRequestPtr;
+ typedef boost::shared_ptr<FormRequest> FormRequestPtr;
/**
* @}
diff --git a/lib/engine/framework/gmref.h b/lib/engine/framework/gmref.h
index f570070..202b3b3 100644
--- a/lib/engine/framework/gmref.h
+++ b/lib/engine/framework/gmref.h
@@ -60,7 +60,7 @@ public:
gmref_ptr (const gmref_ptr& ptr);
- template<typename Tprim> gmref_ptr (const gmref_ptr<Tprim>& ptr);
+ template<typename Tprim> gmref_ptr (const boost::shared_ptr<Tprim>& ptr);
gmref_ptr& operator= (const gmref_ptr& other);
@@ -83,14 +83,14 @@ private:
T* obj;
};
-template<typename T> bool operator==(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b);
+template<typename T> bool operator==(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b);
-template<typename T> bool operator!=(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b);
+template<typename T> bool operator!=(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b);
-template<typename T> bool operator<(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b);
+template<typename T> bool operator<(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b);
/* base class for a reference counted object
*/
@@ -120,25 +120,25 @@ private:
/* implementation of the templates */
template<typename T>
-gmref_ptr<T>::gmref_ptr (): obj(0)
+boost::shared_ptr<T>::gmref_ptr (): obj(0)
{
}
template<typename T>
-gmref_ptr<T>::~gmref_ptr ()
+boost::shared_ptr<T>::~gmref_ptr ()
{
reset ();
}
template<typename T>
-gmref_ptr<T>::gmref_ptr (T* obj_): obj(obj_)
+boost::shared_ptr<T>::gmref_ptr (T* obj_): obj(obj_)
{
if (obj != 0)
obj->reference ();
}
template<typename T>
-gmref_ptr<T>::gmref_ptr (const gmref_ptr<T>& ptr): obj(ptr.obj)
+boost::shared_ptr<T>::gmref_ptr (const boost::shared_ptr<T>& ptr): obj(ptr.obj)
{
if (obj != 0)
obj->reference ();
@@ -146,17 +146,17 @@ gmref_ptr<T>::gmref_ptr (const gmref_ptr<T>& ptr): obj(ptr.obj)
template<typename T>
template<typename Tprim>
-gmref_ptr<T>::gmref_ptr (const gmref_ptr<Tprim>& ptr): obj(dynamic_cast<T*>(ptr.obj))
+boost::shared_ptr<T>::gmref_ptr (const boost::shared_ptr<Tprim>& ptr): obj(dynamic_cast<T*>(ptr.obj))
{
if (obj != 0)
obj->reference ();
}
template<typename T>
-gmref_ptr<T>&
-gmref_ptr<T>::operator= (const gmref_ptr<T>& other)
+boost::shared_ptr<T>&
+boost::shared_ptr<T>::operator= (const boost::shared_ptr<T>& other)
{
- gmref_ptr<T> temp(other);
+ boost::shared_ptr<T> temp(other);
this->swap (temp);
return *this;
@@ -164,28 +164,28 @@ gmref_ptr<T>::operator= (const gmref_ptr<T>& other)
template<typename T>
T*
-gmref_ptr<T>::operator-> () const
+boost::shared_ptr<T>::operator-> () const
{
return obj;
}
template<typename T>
T&
-gmref_ptr<T>::operator* () const
+boost::shared_ptr<T>::operator* () const
{
return *obj;
}
template<typename T>
T*
-gmref_ptr<T>::get () const
+boost::shared_ptr<T>::get () const
{
return obj;
}
template<typename T>
void
-gmref_ptr<T>::swap (gmref_ptr<T>& other)
+boost::shared_ptr<T>::swap (boost::shared_ptr<T>& other)
{
T* temp = obj;
obj = other.obj;
@@ -193,14 +193,14 @@ gmref_ptr<T>::swap (gmref_ptr<T>& other)
}
template<typename T>
-gmref_ptr<T>::operator bool () const
+boost::shared_ptr<T>::operator bool () const
{
return obj != 0;
}
template<typename T>
void
-gmref_ptr<T>::reset ()
+boost::shared_ptr<T>::reset ()
{
if (obj != 0)
obj->unreference ();
@@ -209,23 +209,23 @@ gmref_ptr<T>::reset ()
template<typename T>
bool
-operator==(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b)
+operator==(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b)
{
return a.get () == b.get ();
}
template<typename T>
-bool operator!=(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b)
+bool operator!=(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b)
{
return !operator==(a, b);
}
template<typename T>
bool
-operator<(const gmref_ptr<T>& a,
- const gmref_ptr<T>& b)
+operator<(const boost::shared_ptr<T>& a,
+ const boost::shared_ptr<T>& b)
{
return a.get () < b.get ();
}
diff --git a/lib/engine/framework/kickstart.cpp b/lib/engine/framework/kickstart.cpp
index 8a5b331..88213c1 100644
--- a/lib/engine/framework/kickstart.cpp
+++ b/lib/engine/framework/kickstart.cpp
@@ -54,7 +54,7 @@ Ekiga::KickStart::~KickStart ()
<< std::endl;
std::cout << "\tBLANK: ";
- for (std::list<gmref_ptr<Spark> >::iterator iter = blanks.begin ();
+ for (std::list<boost::shared_ptr<Spark> >::iterator iter = blanks.begin ();
iter != blanks.end ();
++iter) {
std::cout << (*iter)->get_name () << ", ";
@@ -62,7 +62,7 @@ Ekiga::KickStart::~KickStart ()
std::cout << std::endl;
std::cout << "\tPARTIAL: ";
- for (std::list<gmref_ptr<Spark> >::iterator iter = partials.begin ();
+ for (std::list<boost::shared_ptr<Spark> >::iterator iter = partials.begin ();
iter != partials.end ();
++iter) {
std::cout << (*iter)->get_name () << ", ";
@@ -72,7 +72,7 @@ Ekiga::KickStart::~KickStart ()
}
void
-Ekiga::KickStart::add_spark (gmref_ptr<Ekiga::Spark>& spark)
+Ekiga::KickStart::add_spark (boost::shared_ptr<Ekiga::Spark>& spark)
{
blanks.push_back (spark);
#if KICKSTART_DEBUG
@@ -114,7 +114,7 @@ Ekiga::KickStart::kick (Ekiga::ServiceCore& core,
went_on = false;
{ // first try the blanks
- std::list<gmref_ptr<Spark> > temp;
+ std::list<boost::shared_ptr<Spark> > temp;
temp.swap (blanks);
#if KICKSTART_DEBUG
@@ -122,7 +122,7 @@ Ekiga::KickStart::kick (Ekiga::ServiceCore& core,
std::cout << "KickStart(kick): looping on BLANK sparks" << std::endl;
#endif
- for (std::list<gmref_ptr<Spark> >::iterator iter = temp.begin ();
+ for (std::list<boost::shared_ptr<Spark> >::iterator iter = temp.begin ();
iter != temp.end ();
++iter) {
@@ -192,7 +192,7 @@ Ekiga::KickStart::kick (Ekiga::ServiceCore& core,
}
{ // then try the partials
- std::list<gmref_ptr<Spark> > temp;
+ std::list<boost::shared_ptr<Spark> > temp;
temp.swap (partials);
#if KICKSTART_DEBUG
@@ -200,7 +200,7 @@ Ekiga::KickStart::kick (Ekiga::ServiceCore& core,
std::cout << "KickStart(kick): looping on PARTIAL sparks" << std::endl;
#endif
- for (std::list<gmref_ptr<Spark> >::iterator iter = temp.begin ();
+ for (std::list<boost::shared_ptr<Spark> >::iterator iter = temp.begin ();
iter != temp.end ();
++iter) {
diff --git a/lib/engine/framework/kickstart.h b/lib/engine/framework/kickstart.h
index a4d4b06..23942fc 100644
--- a/lib/engine/framework/kickstart.h
+++ b/lib/engine/framework/kickstart.h
@@ -66,7 +66,7 @@
namespace Ekiga
{
- struct Spark: public virtual GmRefCounted
+ struct Spark
{
typedef enum { BLANK, PARTIAL, FULL } state;
@@ -90,7 +90,7 @@ namespace Ekiga
~KickStart ();
- void add_spark (gmref_ptr<Spark>& spark);
+ void add_spark (boost::shared_ptr<Spark>& spark);
/* try to do more with the known blank/partial sparks */
void kick (Ekiga::ServiceCore& core,
@@ -98,8 +98,8 @@ namespace Ekiga
char** argv[]);
private:
- std::list<gmref_ptr<Spark> > blanks;
- std::list<gmref_ptr<Spark> > partials;
+ std::list<boost::shared_ptr<Spark> > blanks;
+ std::list<boost::shared_ptr<Spark> > partials;
};
};
diff --git a/lib/engine/framework/menu-xml.cpp b/lib/engine/framework/menu-xml.cpp
index 24b36cd..6f01140 100644
--- a/lib/engine/framework/menu-xml.cpp
+++ b/lib/engine/framework/menu-xml.cpp
@@ -52,7 +52,7 @@ static void run_command (const std::string command)
g_spawn_command_line_async (command.c_str (), NULL);
}
-static void pull_trigger (gmref_ptr<Ekiga::Trigger> trigger)
+static void pull_trigger (boost::shared_ptr<Ekiga::Trigger> trigger)
{
trigger->pull ();
}
@@ -175,7 +175,7 @@ populate_item (Ekiga::ServiceCore &core,
command));
} else {
- gmref_ptr<Ekiga::Trigger> trigger = core.get (command);
+ boost::shared_ptr<Ekiga::Trigger> trigger = core.get<Ekiga::Trigger> (command);
if (trigger)
builder.add_action (icon, label,
sigc::bind (sigc::ptr_fun (pull_trigger),
diff --git a/lib/engine/framework/reflister.h b/lib/engine/framework/reflister.h
index 08bc5f0..98cacf3 100644
--- a/lib/engine/framework/reflister.h
+++ b/lib/engine/framework/reflister.h
@@ -40,7 +40,7 @@
#include <sigc++/sigc++.h>
#include <list>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "map-key-iterator.h"
#include "map-key-const-iterator.h"
@@ -51,20 +51,20 @@ namespace Ekiga
{
protected:
- typedef std::map<gmref_ptr<ObjectType>,std::list<sigc::connection> > container_type;
+ typedef std::map<boost::shared_ptr<ObjectType>,std::list<sigc::connection> > container_type;
typedef Ekiga::map_key_iterator<container_type> iterator;
typedef Ekiga::map_key_const_iterator<container_type> const_iterator;
virtual ~RefLister ();
- void visit_objects (sigc::slot1<bool, gmref_ptr<ObjectType> > visitor);
+ void visit_objects (sigc::slot1<bool, boost::shared_ptr<ObjectType> > visitor);
- void add_object (gmref_ptr<ObjectType> obj);
+ void add_object (boost::shared_ptr<ObjectType> obj);
- void add_connection (gmref_ptr<ObjectType> obj,
+ void add_connection (boost::shared_ptr<ObjectType> obj,
sigc::connection connection);
- void remove_object (gmref_ptr<ObjectType> obj);
+ void remove_object (boost::shared_ptr<ObjectType> obj);
void remove_all_objects ();
@@ -74,9 +74,9 @@ namespace Ekiga
const_iterator begin () const;
const_iterator end () const;
- sigc::signal1<void, gmref_ptr<ObjectType> > object_added;
- sigc::signal1<void, gmref_ptr<ObjectType> > object_removed;
- sigc::signal1<void, gmref_ptr<ObjectType> > object_updated;
+ sigc::signal1<void, boost::shared_ptr<ObjectType> > object_added;
+ sigc::signal1<void, boost::shared_ptr<ObjectType> > object_removed;
+ sigc::signal1<void, boost::shared_ptr<ObjectType> > object_updated;
private:
container_type objects;
@@ -102,7 +102,7 @@ Ekiga::RefLister<ObjectType>::~RefLister ()
template<typename ObjectType>
void
-Ekiga::RefLister<ObjectType>::visit_objects (sigc::slot1<bool, gmref_ptr<ObjectType> > visitor)
+Ekiga::RefLister<ObjectType>::visit_objects (sigc::slot1<bool, boost::shared_ptr<ObjectType> > visitor)
{
bool go_on = true;
for (typename container_type::iterator iter = objects.begin ();
@@ -113,7 +113,7 @@ Ekiga::RefLister<ObjectType>::visit_objects (sigc::slot1<bool, gmref_ptr<ObjectT
template<typename ObjectType>
void
-Ekiga::RefLister<ObjectType>::add_object (gmref_ptr<ObjectType> obj)
+Ekiga::RefLister<ObjectType>::add_object (boost::shared_ptr<ObjectType> obj)
{
objects[obj].push_back (obj->updated.connect (sigc::bind (object_updated.make_slot (), obj)));
objects[obj].push_back (obj->removed.connect (sigc::bind (sigc::mem_fun (this, &Ekiga::RefLister<ObjectType>::remove_object), obj)));
@@ -123,7 +123,7 @@ Ekiga::RefLister<ObjectType>::add_object (gmref_ptr<ObjectType> obj)
template<typename ObjectType>
void
-Ekiga::RefLister<ObjectType>::add_connection (gmref_ptr<ObjectType> obj,
+Ekiga::RefLister<ObjectType>::add_connection (boost::shared_ptr<ObjectType> obj,
sigc::connection connection)
{
objects[obj].push_back (connection);
@@ -131,7 +131,7 @@ Ekiga::RefLister<ObjectType>::add_connection (gmref_ptr<ObjectType> obj,
template<typename ObjectType>
void
-Ekiga::RefLister<ObjectType>::remove_object (gmref_ptr<ObjectType> obj)
+Ekiga::RefLister<ObjectType>::remove_object (boost::shared_ptr<ObjectType> obj)
{
std::list<sigc::connection> connections = objects[obj];
for (std::list<sigc::connection>::iterator iter = connections.begin ();
diff --git a/lib/engine/framework/services.h b/lib/engine/framework/services.h
index d50d20e..bc122e9 100644
--- a/lib/engine/framework/services.h
+++ b/lib/engine/framework/services.h
@@ -40,7 +40,7 @@
* it!
*/
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include <list>
#include <string>
@@ -54,7 +54,7 @@ namespace Ekiga
* @{
*/
- struct Service: public virtual GmRefCounted
+ struct Service
{
virtual ~Service () {}
@@ -62,7 +62,7 @@ namespace Ekiga
virtual const std::string get_description () const = 0;
};
- typedef gmref_ptr<Service> ServicePtr;
+ typedef boost::shared_ptr<Service> ServicePtr;
class ServiceCore
@@ -77,6 +77,10 @@ namespace Ekiga
ServicePtr get (const std::string name);
+ template<typename T>
+ boost::shared_ptr<T> get (const std::string name)
+ { return boost::dynamic_pointer_cast<T> (get (name)); }
+
void dump (std::ostream &stream) const;
sigc::signal1<void, ServicePtr> service_added;
diff --git a/lib/engine/friend-or-foe/friend-or-foe.cpp b/lib/engine/friend-or-foe/friend-or-foe.cpp
index b0b75b9..343a605 100644
--- a/lib/engine/friend-or-foe/friend-or-foe.cpp
+++ b/lib/engine/friend-or-foe/friend-or-foe.cpp
@@ -20,7 +20,7 @@ Ekiga::FriendOrFoe::decide (const std::string domain,
}
void
-Ekiga::FriendOrFoe::add_helper (gmref_ptr<Ekiga::FriendOrFoe::Helper> helper)
+Ekiga::FriendOrFoe::add_helper (boost::shared_ptr<Ekiga::FriendOrFoe::Helper> helper)
{
helpers.push_front (helper);
}
diff --git a/lib/engine/friend-or-foe/friend-or-foe.h b/lib/engine/friend-or-foe/friend-or-foe.h
index fd8bb7b..54fc7fe 100644
--- a/lib/engine/friend-or-foe/friend-or-foe.h
+++ b/lib/engine/friend-or-foe/friend-or-foe.h
@@ -63,7 +63,7 @@ namespace Ekiga
/* beware of the order : we prefer erring on the side of safety */
typedef enum { Unknown, Foe, Neutral, Friend } Identification;
- class Helper: public virtual GmRefCounted
+ class Helper
{
public:
virtual ~Helper ()
@@ -76,7 +76,7 @@ namespace Ekiga
Identification decide (const std::string domain,
const std::string token) const;
- void add_helper (gmref_ptr<Helper> helper);
+ void add_helper (boost::shared_ptr<Helper> helper);
/* this turns us into a service */
const std::string get_name () const
@@ -86,7 +86,7 @@ namespace Ekiga
{ return "\tObject helping determine if an incoming call is acceptable"; }
private:
- typedef std::list<gmref_ptr<Helper> > helpers_type;
+ typedef std::list<boost::shared_ptr<Helper> > helpers_type;
helpers_type helpers;
};
};
diff --git a/lib/engine/gui/gtk-core/gtk-core-main.cpp b/lib/engine/gui/gtk-core/gtk-core-main.cpp
index 612c0a0..34b8679 100644
--- a/lib/engine/gui/gtk-core/gtk-core-main.cpp
+++ b/lib/engine/gui/gtk-core/gtk-core-main.cpp
@@ -48,7 +48,7 @@ gtk_core_init (Ekiga::ServiceCore &core,
{
if (gtk_init_check (argc, argv)) {
- gmref_ptr<Gtk::Core> gtk (new Gtk::Core);
+ boost::shared_ptr<Gtk::Core> gtk (new Gtk::Core);
core.add (gtk);
diff --git a/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp b/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
index 0054fc4..9c5d631 100644
--- a/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
+++ b/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
@@ -78,7 +78,7 @@ on_contact_added (Ekiga::ContactPtr contact,
std::stringstream info;
const gchar *id = NULL;
- gmref_ptr<History::Contact> hcontact = contact;
+ boost::shared_ptr<History::Contact> hcontact = boost::dynamic_pointer_cast<History::Contact> (contact);
GtkTreeIter iter;
if (hcontact) {
@@ -189,7 +189,7 @@ on_clicked (GtkWidget *tree,
/* public api */
GtkWidget *
-call_history_view_gtk_new (gmref_ptr<History::Book> book)
+call_history_view_gtk_new (boost::shared_ptr<History::Book> book)
{
GtkWidget *result = NULL;
std::list<sigc::connection> *conns = NULL;
diff --git a/lib/engine/gui/gtk-frontend/call-history-view-gtk.h b/lib/engine/gui/gtk-frontend/call-history-view-gtk.h
index 7f767f5..6b48ea0 100644
--- a/lib/engine/gui/gtk-frontend/call-history-view-gtk.h
+++ b/lib/engine/gui/gtk-frontend/call-history-view-gtk.h
@@ -41,6 +41,6 @@
#include <gtk/gtk.h>
#include "history-book.h"
-GtkWidget *call_history_view_gtk_new (gmref_ptr<History::Book> book);
+GtkWidget *call_history_view_gtk_new (boost::shared_ptr<History::Book> book);
#endif
diff --git a/lib/engine/gui/gtk-frontend/chat-area.cpp b/lib/engine/gui/gtk-frontend/chat-area.cpp
index 663ee68..dfe4a11 100644
--- a/lib/engine/gui/gtk-frontend/chat-area.cpp
+++ b/lib/engine/gui/gtk-frontend/chat-area.cpp
@@ -59,7 +59,7 @@ struct _ChatAreaPrivate
{
Ekiga::Chat* chat;
sigc::connection connection;
- gmref_ptr<ChatAreaHelper> helper;
+ boost::shared_ptr<ChatAreaHelper> helper;
GmTextBufferEnhancer* enhancer;
GtkWidget* smiley_menu;
@@ -689,7 +689,7 @@ chat_area_set_property (GObject* obj,
ptr = g_value_get_pointer (value);
self->priv->chat = (Ekiga::Chat *)ptr;
self->priv->connection = self->priv->chat->removed.connect (sigc::bind (sigc::ptr_fun (on_chat_removed), self));
- self->priv->helper = gmref_ptr<ChatAreaHelper>(new ChatAreaHelper (self));
+ self->priv->helper = boost::shared_ptr<ChatAreaHelper>(new ChatAreaHelper (self));
self->priv->chat->connect (self->priv->helper);
break;
@@ -1009,7 +1009,7 @@ chat_area_get_type ()
/* public api */
GtkWidget*
-chat_area_new (gmref_ptr<Ekiga::Chat> chat)
+chat_area_new (boost::shared_ptr<Ekiga::Chat> chat)
{
return (GtkWidget*)g_object_new (TYPE_CHAT_AREA,
"chat", chat.get (),
diff --git a/lib/engine/gui/gtk-frontend/chat-area.h b/lib/engine/gui/gtk-frontend/chat-area.h
index 1ba9c5c..e03073a 100644
--- a/lib/engine/gui/gtk-frontend/chat-area.h
+++ b/lib/engine/gui/gtk-frontend/chat-area.h
@@ -65,7 +65,7 @@ struct _ChatAreaClass
/* public api */
-GtkWidget *chat_area_new (gmref_ptr<Ekiga::Chat> chat);
+GtkWidget *chat_area_new (boost::shared_ptr<Ekiga::Chat> chat);
const std::string chat_area_get_title (ChatArea* chat);
diff --git a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
index cababba..634bd17 100644
--- a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
+++ b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
@@ -63,14 +63,14 @@ gtk_frontend_init (Ekiga::ServiceCore &core,
{
bool result = false;
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
- gmref_ptr<Ekiga::ChatCore> chat_core = core.get ("chat-core");
- gmref_ptr<History::Source> history_source = core.get ("call-history-store");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
+ boost::shared_ptr<Ekiga::ChatCore> chat_core = core.get<Ekiga::ChatCore> ("chat-core");
+ boost::shared_ptr<History::Source> history_source = core.get<History::Source> ("call-history-store");
if (presence_core && contact_core && chat_core && history_source) {
- gmref_ptr<GtkFrontend> gtk_frontend (new GtkFrontend (core));
+ boost::shared_ptr<GtkFrontend> gtk_frontend (new GtkFrontend (core));
core.add (gtk_frontend);
result = true;
}
@@ -80,8 +80,8 @@ gtk_frontend_init (Ekiga::ServiceCore &core,
GtkFrontend::GtkFrontend (Ekiga::ServiceCore &core)
{
- gmref_ptr<Ekiga::ContactCore> contact_core = core.get ("contact-core");
- gmref_ptr<Ekiga::ChatCore> chat_core = core.get ("chat-core");
+ boost::shared_ptr<Ekiga::ContactCore> contact_core = core.get<Ekiga::ContactCore> ("contact-core");
+ boost::shared_ptr<Ekiga::ChatCore> chat_core = core.get<Ekiga::ChatCore> ("chat-core");
addressbook_window =
addressbook_window_new_with_key (*contact_core, "/apps/" PACKAGE_NAME "/general/user_interface/addressbook_window");
diff --git a/lib/engine/notification/notification-core.h b/lib/engine/notification/notification-core.h
index 45dbfdf..f1252eb 100644
--- a/lib/engine/notification/notification-core.h
+++ b/lib/engine/notification/notification-core.h
@@ -36,7 +36,7 @@
#ifndef __NOTIFICATION_CORE_H__
#define __NOTIFICATION_CORE_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
namespace Ekiga
{
@@ -44,7 +44,7 @@ namespace Ekiga
* with a decent memory management and a signal to know if it's still
* there
*/
- class Notification: public virtual GmRefCounted
+ class Notification
{
public:
@@ -94,10 +94,10 @@ namespace Ekiga
/*** Public API ***/
- void push_notification (gmref_ptr<Notification> notification)
+ void push_notification (boost::shared_ptr<Notification> notification)
{ notification_added.emit (notification); }
- sigc::signal1<void, gmref_ptr<Notification> > notification_added;
+ sigc::signal1<void, boost::shared_ptr<Notification> > notification_added;
};
};
diff --git a/lib/engine/presence/cluster-impl.h b/lib/engine/presence/cluster-impl.h
index 68fefad..77c17d3 100644
--- a/lib/engine/presence/cluster-impl.h
+++ b/lib/engine/presence/cluster-impl.h
@@ -84,9 +84,9 @@ namespace Ekiga
protected:
- void add_heap (gmref_ptr<HeapType> heap);
+ void add_heap (boost::shared_ptr<HeapType> heap);
- void remove_heap (gmref_ptr<HeapType> heap);
+ void remove_heap (boost::shared_ptr<HeapType> heap);
using RefLister<HeapType>::add_connection;
@@ -97,13 +97,13 @@ namespace Ekiga
private:
- void common_removal_steps (gmref_ptr<HeapType> heap);
+ void common_removal_steps (boost::shared_ptr<HeapType> heap);
- void on_presentity_added (PresentityPtr presentity, gmref_ptr<HeapType> heap);
+ void on_presentity_added (PresentityPtr presentity, boost::shared_ptr<HeapType> heap);
- void on_presentity_updated (PresentityPtr presentity, gmref_ptr<HeapType> heap);
+ void on_presentity_updated (PresentityPtr presentity, boost::shared_ptr<HeapType> heap);
- void on_presentity_removed (PresentityPtr presentity, gmref_ptr<HeapType> heap);
+ void on_presentity_removed (PresentityPtr presentity, boost::shared_ptr<HeapType> heap);
};
/**
@@ -137,7 +137,7 @@ Ekiga::ClusterImpl<HeapType>::visit_heaps (sigc::slot1<bool, HeapPtr > visitor)
template<typename HeapType>
void
-Ekiga::ClusterImpl<HeapType>::add_heap (gmref_ptr<HeapType> heap)
+Ekiga::ClusterImpl<HeapType>::add_heap (boost::shared_ptr<HeapType> heap)
{
add_connection (heap, heap->presentity_added.connect (sigc::bind (sigc::mem_fun (this, &ClusterImpl::on_presentity_added), heap)));
@@ -152,28 +152,28 @@ Ekiga::ClusterImpl<HeapType>::add_heap (gmref_ptr<HeapType> heap)
template<typename HeapType>
void
-Ekiga::ClusterImpl<HeapType>::remove_heap (gmref_ptr<HeapType> heap)
+Ekiga::ClusterImpl<HeapType>::remove_heap (boost::shared_ptr<HeapType> heap)
{
remove_object (heap);
}
template<typename HeapType>
void
-Ekiga::ClusterImpl<HeapType>::on_presentity_added (PresentityPtr presentity, gmref_ptr<HeapType> heap)
+Ekiga::ClusterImpl<HeapType>::on_presentity_added (PresentityPtr presentity, boost::shared_ptr<HeapType> heap)
{
presentity_added.emit (heap, presentity);
}
template<typename HeapType>
void
-Ekiga::ClusterImpl<HeapType>::on_presentity_updated (PresentityPtr presentity, gmref_ptr<HeapType> heap)
+Ekiga::ClusterImpl<HeapType>::on_presentity_updated (PresentityPtr presentity, boost::shared_ptr<HeapType> heap)
{
presentity_updated.emit (heap, presentity);
}
template<typename HeapType>
void
-Ekiga::ClusterImpl<HeapType>::on_presentity_removed (PresentityPtr presentity, gmref_ptr<HeapType> heap)
+Ekiga::ClusterImpl<HeapType>::on_presentity_removed (PresentityPtr presentity, boost::shared_ptr<HeapType> heap)
{
presentity_removed.emit (heap, presentity);
}
diff --git a/lib/engine/presence/cluster.h b/lib/engine/presence/cluster.h
index 38a5456..0b07551 100644
--- a/lib/engine/presence/cluster.h
+++ b/lib/engine/presence/cluster.h
@@ -47,7 +47,7 @@ namespace Ekiga
* @{
*/
- class Cluster: public virtual GmRefCounted
+ class Cluster
{
public:
@@ -86,7 +86,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Cluster> ClusterPtr;
+ typedef boost::shared_ptr<Cluster> ClusterPtr;
/**
* @}
diff --git a/lib/engine/presence/heap-impl.h b/lib/engine/presence/heap-impl.h
index 9d71f77..901b9f5 100644
--- a/lib/engine/presence/heap-impl.h
+++ b/lib/engine/presence/heap-impl.h
@@ -92,9 +92,9 @@ namespace Ekiga
using RefLister<PresentityType>::add_connection;
- void add_presentity (gmref_ptr<PresentityType> presentity);
+ void add_presentity (boost::shared_ptr<PresentityType> presentity);
- void remove_presentity (gmref_ptr<PresentityType> presentity);
+ void remove_presentity (boost::shared_ptr<PresentityType> presentity);
};
/**
@@ -156,7 +156,7 @@ Ekiga::HeapImpl<PresentityType>::end () const
template<typename PresentityType>
void
-Ekiga::HeapImpl<PresentityType>::add_presentity (gmref_ptr<PresentityType> presentity)
+Ekiga::HeapImpl<PresentityType>::add_presentity (boost::shared_ptr<PresentityType> presentity)
{
presentity->questions.connect (questions.make_slot ());
@@ -165,7 +165,7 @@ Ekiga::HeapImpl<PresentityType>::add_presentity (gmref_ptr<PresentityType> prese
template<typename PresentityType>
void
-Ekiga::HeapImpl<PresentityType>::remove_presentity (gmref_ptr<PresentityType> presentity)
+Ekiga::HeapImpl<PresentityType>::remove_presentity (boost::shared_ptr<PresentityType> presentity)
{
remove_object (presentity);
}
diff --git a/lib/engine/presence/heap.h b/lib/engine/presence/heap.h
index 9201f79..775569c 100644
--- a/lib/engine/presence/heap.h
+++ b/lib/engine/presence/heap.h
@@ -38,7 +38,7 @@
#ifndef __HEAP_H__
#define __HEAP_H__
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "presentity.h"
@@ -50,7 +50,7 @@ namespace Ekiga
* @{
*/
- class Heap: public virtual GmRefCounted
+ class Heap
{
public:
@@ -112,7 +112,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Heap> HeapPtr;
+ typedef boost::shared_ptr<Heap> HeapPtr;
/**
* @}
diff --git a/lib/engine/presence/presence-core.cpp b/lib/engine/presence/presence-core.cpp
index cd17db3..8a598a9 100644
--- a/lib/engine/presence/presence-core.cpp
+++ b/lib/engine/presence/presence-core.cpp
@@ -41,7 +41,7 @@
Ekiga::PresenceCore::PresenceCore (Ekiga::ServiceCore& core)
{
- gmref_ptr<Ekiga::PersonalDetails> details = core.get ("personal-details");
+ boost::shared_ptr<Ekiga::PersonalDetails> details = core.get<Ekiga::PersonalDetails> ("personal-details");
if (details)
conns.push_back (details->updated.connect (sigc::bind (sigc::mem_fun (this, &Ekiga::PresenceCore::publish), details)));
@@ -135,7 +135,7 @@ Ekiga::PresenceCore::on_presentity_removed (HeapPtr heap,
}
void
-Ekiga::PresenceCore::add_presentity_decorator (gmref_ptr<PresentityDecorator> decorator)
+Ekiga::PresenceCore::add_presentity_decorator (boost::shared_ptr<PresentityDecorator> decorator)
{
presentity_decorators.push_back (decorator);
}
@@ -147,7 +147,7 @@ Ekiga::PresenceCore::populate_presentity_menu (PresentityPtr presentity,
{
bool populated = false;
- for (std::list<gmref_ptr<PresentityDecorator> >::const_iterator iter
+ for (std::list<boost::shared_ptr<PresentityDecorator> >::const_iterator iter
= presentity_decorators.begin ();
iter != presentity_decorators.end ();
++iter) {
@@ -159,7 +159,7 @@ Ekiga::PresenceCore::populate_presentity_menu (PresentityPtr presentity,
}
void
-Ekiga::PresenceCore::add_presence_fetcher (gmref_ptr<PresenceFetcher> fetcher)
+Ekiga::PresenceCore::add_presence_fetcher (boost::shared_ptr<PresenceFetcher> fetcher)
{
presence_fetchers.push_back (fetcher);
conns.push_back (fetcher->presence_received.connect (sigc::mem_fun (this, &Ekiga::PresenceCore::on_presence_received)));
@@ -178,7 +178,7 @@ Ekiga::PresenceCore::fetch_presence (const std::string uri)
if (uri_infos[uri].count == 1) {
- for (std::list<gmref_ptr<PresenceFetcher> >::iterator iter
+ for (std::list<boost::shared_ptr<PresenceFetcher> >::iterator iter
= presence_fetchers.begin ();
iter != presence_fetchers.end ();
++iter)
@@ -197,7 +197,7 @@ void Ekiga::PresenceCore::unfetch_presence (const std::string uri)
uri_infos.erase (uri_infos.find (uri));
- for (std::list<gmref_ptr<PresenceFetcher> >::iterator iter
+ for (std::list<boost::shared_ptr<PresenceFetcher> >::iterator iter
= presence_fetchers.begin ();
iter != presence_fetchers.end ();
++iter)
@@ -222,14 +222,14 @@ Ekiga::PresenceCore::on_status_received (const std::string uri,
}
void
-Ekiga::PresenceCore::add_presence_publisher (gmref_ptr<PresencePublisher> publisher)
+Ekiga::PresenceCore::add_presence_publisher (boost::shared_ptr<PresencePublisher> publisher)
{
presence_publishers.push_back (publisher);
}
-void Ekiga::PresenceCore::publish (gmref_ptr<PersonalDetails> details)
+void Ekiga::PresenceCore::publish (boost::shared_ptr<PersonalDetails> details)
{
- for (std::list<gmref_ptr<PresencePublisher> >::iterator iter
+ for (std::list<boost::shared_ptr<PresencePublisher> >::iterator iter
= presence_publishers.begin ();
iter != presence_publishers.end ();
++iter)
diff --git a/lib/engine/presence/presence-core.h b/lib/engine/presence/presence-core.h
index 18d4ff3..f7099da 100644
--- a/lib/engine/presence/presence-core.h
+++ b/lib/engine/presence/presence-core.h
@@ -52,7 +52,7 @@ namespace Ekiga
*/
- class PresentityDecorator: public virtual GmRefCounted
+ class PresentityDecorator
{
public:
@@ -70,7 +70,7 @@ namespace Ekiga
MenuBuilder &/*builder*/) = 0;
};
- class PresenceFetcher: public virtual GmRefCounted
+ class PresenceFetcher
{
public:
@@ -101,7 +101,7 @@ namespace Ekiga
sigc::signal2<void, std::string, std::string> status_received;
};
- class PresencePublisher: public virtual GmRefCounted
+ class PresencePublisher
{
public:
@@ -218,7 +218,7 @@ namespace Ekiga
/** Adds a decorator to the pool of presentity decorators.
* @param The presentity decorator.
*/
- void add_presentity_decorator (gmref_ptr<PresentityDecorator> decorator);
+ void add_presentity_decorator (boost::shared_ptr<PresentityDecorator> decorator);
/** Populates a menu with the actions available on a given uri.
* @param The uri for which the decoration is needed.
@@ -230,7 +230,7 @@ namespace Ekiga
private:
- std::list<gmref_ptr<PresentityDecorator> > presentity_decorators;
+ std::list<boost::shared_ptr<PresentityDecorator> > presentity_decorators;
/*** API to help presentities get presence ***/
public:
@@ -238,7 +238,7 @@ namespace Ekiga
/** Adds a fetcher to the pool of presentce fetchers.
* @param The presence fetcher.
*/
- void add_presence_fetcher (gmref_ptr<PresenceFetcher> fetcher);
+ void add_presence_fetcher (boost::shared_ptr<PresenceFetcher> fetcher);
/** Tells the PresenceCore that someone is interested in presence
* information for the given uri.
@@ -260,7 +260,7 @@ namespace Ekiga
private:
- std::list<gmref_ptr<PresenceFetcher> > presence_fetchers;
+ std::list<boost::shared_ptr<PresenceFetcher> > presence_fetchers;
void on_presence_received (const std::string uri,
const std::string presence);
void on_status_received (const std::string uri,
@@ -280,13 +280,13 @@ namespace Ekiga
/* help publishing presence */
public:
- void add_presence_publisher (gmref_ptr<PresencePublisher> publisher);
+ void add_presence_publisher (boost::shared_ptr<PresencePublisher> publisher);
- void publish (gmref_ptr<PersonalDetails> details);
+ void publish (boost::shared_ptr<PersonalDetails> details);
private:
- std::list<gmref_ptr<PresencePublisher> > presence_publishers;
+ std::list<boost::shared_ptr<PresencePublisher> > presence_publishers;
void on_personal_details_updated (PersonalDetails &details);
/*** API to control which uri are supported by runtime ***/
diff --git a/lib/engine/presence/presentity.h b/lib/engine/presence/presentity.h
index 99a9a2a..4e31985 100644
--- a/lib/engine/presence/presentity.h
+++ b/lib/engine/presence/presentity.h
@@ -39,7 +39,7 @@
#include <set>
#include <string>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "chain-of-responsibility.h"
#include "form-request.h"
#include "menu-builder.h"
@@ -54,7 +54,7 @@ namespace Ekiga
/** A presentity is a piece of presence information for a single URI.
*/
- class Presentity: public virtual GmRefCounted
+ class Presentity
{
public:
@@ -105,7 +105,7 @@ namespace Ekiga
ChainOfResponsibility<FormRequestPtr> questions;
};
- typedef gmref_ptr<Presentity> PresentityPtr;
+ typedef boost::shared_ptr<Presentity> PresentityPtr;
/**
* @}
*/
diff --git a/lib/engine/presence/uri-presentity.cpp b/lib/engine/presence/uri-presentity.cpp
index a7a750b..db931ac 100644
--- a/lib/engine/presence/uri-presentity.cpp
+++ b/lib/engine/presence/uri-presentity.cpp
@@ -41,7 +41,7 @@ Ekiga::URIPresentity::URIPresentity (Ekiga::ServiceCore &_core,
std::set<std::string> groups_)
: core(_core), name(name_), uri(uri_), presence("unknown"), groups(groups_)
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
presence_core->presence_received.connect (sigc::mem_fun (this, &Ekiga::URIPresentity::on_presence_received));
presence_core->status_received.connect (sigc::mem_fun (this, &Ekiga::URIPresentity::on_status_received));
presence_core->fetch_presence (uri);
@@ -49,7 +49,7 @@ Ekiga::URIPresentity::URIPresentity (Ekiga::ServiceCore &_core,
Ekiga::URIPresentity::~URIPresentity ()
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
if (presence_core)
presence_core->unfetch_presence (uri);
}
@@ -93,7 +93,7 @@ Ekiga::URIPresentity::get_uri () const
bool
Ekiga::URIPresentity::populate_menu (Ekiga::MenuBuilder &builder)
{
- gmref_ptr<Ekiga::PresenceCore> presence_core = core.get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = core.get<Ekiga::PresenceCore> ("presence-core");
return presence_core->populate_presentity_menu (PresentityPtr(this),
uri, builder);
}
diff --git a/lib/engine/protocol/call-core.cpp b/lib/engine/protocol/call-core.cpp
index 92c60ab..40f7839 100644
--- a/lib/engine/protocol/call-core.cpp
+++ b/lib/engine/protocol/call-core.cpp
@@ -52,7 +52,7 @@ CallCore::~CallCore ()
}
-void CallCore::add_manager (gmref_ptr<CallManager> manager)
+void CallCore::add_manager (boost::shared_ptr<CallManager> manager)
{
managers.insert (manager);
manager_added.emit (manager);
@@ -87,7 +87,7 @@ CallCore::const_iterator CallCore::end () const
bool CallCore::dial (const std::string uri)
{
- for (std::set<gmref_ptr<CallManager> >::iterator iter = managers.begin ();
+ for (std::set<boost::shared_ptr<CallManager> >::iterator iter = managers.begin ();
iter != managers.end ();
iter++) {
if ((*iter)->dial (uri))
@@ -98,7 +98,7 @@ bool CallCore::dial (const std::string uri)
}
-void CallCore::add_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::add_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
std::list<sigc::connection> conns;
@@ -119,7 +119,7 @@ void CallCore::add_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
}
-void CallCore::remove_call (gmref_ptr<Call> call)
+void CallCore::remove_call (boost::shared_ptr<Call> call)
{
for (std::list<sigc::connection>::iterator iter2 = call_connections [call->get_id ()].begin ();
iter2 != call_connections [call->get_id ()].end ();
@@ -130,73 +130,73 @@ void CallCore::remove_call (gmref_ptr<Call> call)
}
-void CallCore::on_ringing_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_ringing_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
ringing_call.emit (manager, call);
}
-void CallCore::on_setup_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_setup_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
setup_call.emit (manager, call);
}
-void CallCore::on_missed_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_missed_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
missed_call.emit (manager, call);
}
-void CallCore::on_cleared_call (std::string reason, gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_cleared_call (std::string reason, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
cleared_call.emit (manager, call, reason);
}
-void CallCore::on_established_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_established_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
established_call.emit (manager, call);
}
-void CallCore::on_held_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_held_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
held_call.emit (manager, call);
}
-void CallCore::on_retrieved_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_retrieved_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
retrieved_call.emit (manager, call);
}
-void CallCore::on_stream_opened (std::string name, Call::StreamType type, bool is_transmitting, gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_stream_opened (std::string name, Call::StreamType type, bool is_transmitting, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
stream_opened.emit (manager, call, name, type, is_transmitting);
}
-void CallCore::on_stream_closed (std::string name, Call::StreamType type, bool is_transmitting, gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_stream_closed (std::string name, Call::StreamType type, bool is_transmitting, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
stream_closed.emit (manager, call, name, type, is_transmitting);
}
-void CallCore::on_stream_paused (std::string name, Call::StreamType type, gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_stream_paused (std::string name, Call::StreamType type, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
stream_paused.emit (manager, call, name, type);
}
-void CallCore::on_stream_resumed (std::string name, Call::StreamType type, gmref_ptr<Call> call, gmref_ptr<CallManager> manager)
+void CallCore::on_stream_resumed (std::string name, Call::StreamType type, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
{
stream_resumed.emit (manager, call, name, type);
}
-void CallCore::on_manager_ready (gmref_ptr<CallManager> manager)
+void CallCore::on_manager_ready (boost::shared_ptr<CallManager> manager)
{
manager_ready.emit (manager);
nr_ready++;
@@ -206,7 +206,7 @@ void CallCore::on_manager_ready (gmref_ptr<CallManager> manager)
}
-void CallCore::on_call_removed (gmref_ptr<Call> call)
+void CallCore::on_call_removed (boost::shared_ptr<Call> call)
{
remove_call (call);
}
diff --git a/lib/engine/protocol/call-core.h b/lib/engine/protocol/call-core.h
index 1c7c407..8ccae9f 100644
--- a/lib/engine/protocol/call-core.h
+++ b/lib/engine/protocol/call-core.h
@@ -43,7 +43,7 @@
#include "call.h"
#include "call-manager.h"
#include "call-protocol-manager.h"
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include <sigc++/sigc++.h>
#include <set>
@@ -66,8 +66,8 @@ namespace Ekiga
{
public:
- typedef std::set<gmref_ptr<CallManager> >::iterator iterator;
- typedef std::set<gmref_ptr<CallManager> >::const_iterator const_iterator;
+ typedef std::set<boost::shared_ptr<CallManager> >::iterator iterator;
+ typedef std::set<boost::shared_ptr<CallManager> >::const_iterator const_iterator;
/** The constructor
*/
@@ -98,17 +98,17 @@ namespace Ekiga
* @param call is the call to be added.
* @param manager is the CallManager handling it.
*/
- void add_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
+ void add_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
/** Remove a call handled by the CallCore serice.
* @param call is the call to be removed.
*/
- void remove_call (gmref_ptr<Call> call);
+ void remove_call (boost::shared_ptr<Call> call);
/** Adds a CallManager to the CallCore service.
* @param The manager to be added.
*/
- void add_manager (gmref_ptr<CallManager> manager);
+ void add_manager (boost::shared_ptr<CallManager> manager);
/** Return iterator to beginning
* @return iterator to beginning
@@ -125,7 +125,7 @@ namespace Ekiga
/** This signal is emitted when a Ekiga::CallManager has been
* added to the CallCore Service.
*/
- sigc::signal1<void, gmref_ptr<CallManager> > manager_added;
+ sigc::signal1<void, boost::shared_ptr<CallManager> > manager_added;
/*** Call Management ***/
@@ -140,20 +140,20 @@ namespace Ekiga
/** See call.h for the API
*/
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > ringing_call;
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > setup_call;
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > missed_call;
- sigc::signal3<void, gmref_ptr<CallManager> , gmref_ptr<Call>, std::string> cleared_call;
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > established_call;
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > held_call;
- sigc::signal2<void, gmref_ptr<CallManager> , gmref_ptr<Call> > retrieved_call;
- sigc::signal5<void, gmref_ptr<CallManager> , gmref_ptr<Call>, std::string, Call::StreamType, bool> stream_opened;
- sigc::signal5<void, gmref_ptr<CallManager> , gmref_ptr<Call>, std::string, Call::StreamType, bool> stream_closed;
- sigc::signal4<void, gmref_ptr<CallManager> , gmref_ptr<Call>, std::string, Call::StreamType> stream_paused;
- sigc::signal4<void, gmref_ptr<CallManager> , gmref_ptr<Call>, std::string, Call::StreamType> stream_resumed;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > ringing_call;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > setup_call;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > missed_call;
+ sigc::signal3<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string> cleared_call;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > established_call;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > held_call;
+ sigc::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > retrieved_call;
+ sigc::signal5<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType, bool> stream_opened;
+ sigc::signal5<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType, bool> stream_closed;
+ sigc::signal4<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType> stream_paused;
+ sigc::signal4<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType> stream_resumed;
/*** Misc ***/
- sigc::signal1<void, gmref_ptr<CallManager> > manager_ready;
+ sigc::signal1<void, boost::shared_ptr<CallManager> > manager_ready;
sigc::signal0<void> ready;
/** This chain allows the CallCore to report errors to the user
@@ -161,30 +161,30 @@ namespace Ekiga
ChainOfResponsibility<std::string> errors;
private:
- void on_new_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_ringing_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_setup_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_missed_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_cleared_call (std::string, gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_established_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_held_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_retrieved_call (gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_stream_opened (std::string name, Call::StreamType type, bool is_transmitting, gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_stream_closed (std::string name, Call::StreamType type, bool is_transmitting, gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_stream_paused (std::string name, Call::StreamType type, gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
- void on_stream_resumed (std::string name, Call::StreamType type, gmref_ptr<Call> call, gmref_ptr<CallManager> manager);
-
- void on_im_failed (std::string, std::string, gmref_ptr<CallManager> manager);
- void on_im_sent (std::string, std::string, gmref_ptr<CallManager> manager);
- void on_im_received (std::string, std::string, std::string, gmref_ptr<CallManager> manager);
- void on_new_chat (std::string, std::string, gmref_ptr<CallManager> manager);
-
- void on_manager_ready (gmref_ptr<CallManager> manager);
-
- void on_call_removed (gmref_ptr<Call> call);
+ void on_new_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_ringing_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_setup_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_missed_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_cleared_call (std::string, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_established_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_held_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_retrieved_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_stream_opened (std::string name, Call::StreamType type, bool is_transmitting, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_stream_closed (std::string name, Call::StreamType type, bool is_transmitting, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_stream_paused (std::string name, Call::StreamType type, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+ void on_stream_resumed (std::string name, Call::StreamType type, boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager);
+
+ void on_im_failed (std::string, std::string, boost::shared_ptr<CallManager> manager);
+ void on_im_sent (std::string, std::string, boost::shared_ptr<CallManager> manager);
+ void on_im_received (std::string, std::string, std::string, boost::shared_ptr<CallManager> manager);
+ void on_new_chat (std::string, std::string, boost::shared_ptr<CallManager> manager);
+
+ void on_manager_ready (boost::shared_ptr<CallManager> manager);
+
+ void on_call_removed (boost::shared_ptr<Call> call);
- std::set<gmref_ptr<CallManager> > managers;
+ std::set<boost::shared_ptr<CallManager> > managers;
std::list<sigc::connection> manager_connections;
std::map<std::string, std::list<sigc::connection> > call_connections;
unsigned nr_ready;
diff --git a/lib/engine/protocol/call-manager.cpp b/lib/engine/protocol/call-manager.cpp
index c6368cd..b7121d5 100644
--- a/lib/engine/protocol/call-manager.cpp
+++ b/lib/engine/protocol/call-manager.cpp
@@ -43,14 +43,14 @@
using namespace Ekiga;
-void CallManager::add_protocol_manager (gmref_ptr<CallProtocolManager> manager)
+void CallManager::add_protocol_manager (boost::shared_ptr<CallProtocolManager> manager)
{
managers.insert (manager);
manager_added.emit (manager);
}
-gmref_ptr<CallProtocolManager> CallManager::get_protocol_manager (const std::string &protocol) const
+boost::shared_ptr<CallProtocolManager> CallManager::get_protocol_manager (const std::string &protocol) const
{
for (CallManager::iterator iter = begin ();
iter != end ();
@@ -58,7 +58,7 @@ gmref_ptr<CallProtocolManager> CallManager::get_protocol_manager (const std::str
if ((*iter)->get_protocol_name () == protocol)
return (*iter);
- return gmref_ptr<CallProtocolManager>();
+ return boost::shared_ptr<CallProtocolManager>();
}
diff --git a/lib/engine/protocol/call-manager.h b/lib/engine/protocol/call-manager.h
index bd891aa..92867e3 100644
--- a/lib/engine/protocol/call-manager.h
+++ b/lib/engine/protocol/call-manager.h
@@ -42,7 +42,7 @@
#include <set>
#include <sigc++/sigc++.h>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "call-protocol-manager.h"
#include "codec-description.h"
@@ -55,14 +55,14 @@ namespace Ekiga
* @{
*/
- class CallManager : public virtual GmRefCounted
+ class CallManager
{
public:
typedef std::list<CallProtocolManager::Interface> InterfaceList;
- typedef std::set<gmref_ptr<CallProtocolManager> >::iterator iterator;
- typedef std::set<gmref_ptr<CallProtocolManager> >::const_iterator const_iterator;
+ typedef std::set<boost::shared_ptr<CallProtocolManager> >::iterator iterator;
+ typedef std::set<boost::shared_ptr<CallProtocolManager> >::const_iterator const_iterator;
/* The constructor
*/
@@ -75,13 +75,13 @@ namespace Ekiga
/** Add a CallProtocolManager to the CallManager.
* @param The manager to be added.
*/
- void add_protocol_manager (gmref_ptr<CallProtocolManager> manager);
+ void add_protocol_manager (boost::shared_ptr<CallProtocolManager> manager);
/** Return a pointer to a CallProtocolManager of the CallManager.
* @param protocol is the protcol name.
* @return a pointer to the CallProtocolManager or NULL if none.
*/
- gmref_ptr<CallProtocolManager> get_protocol_manager (const std::string &protocol) const;
+ boost::shared_ptr<CallProtocolManager> get_protocol_manager (const std::string &protocol) const;
/** Return iterator to beginning
* @return iterator to beginning
@@ -98,7 +98,7 @@ namespace Ekiga
/** This signal is emitted when a Ekiga::CallProtocolManager has been
* added to the CallManager.
*/
- sigc::signal1<void, gmref_ptr<CallProtocolManager> > manager_added;
+ sigc::signal1<void, boost::shared_ptr<CallProtocolManager> > manager_added;
/*
@@ -215,7 +215,7 @@ namespace Ekiga
sigc::signal0<void> ready;
private:
- std::set<gmref_ptr<CallProtocolManager> > managers;
+ std::set<boost::shared_ptr<CallProtocolManager> > managers;
};
/**
diff --git a/lib/engine/protocol/call-protocol-manager.h b/lib/engine/protocol/call-protocol-manager.h
index c96a088..93271fa 100644
--- a/lib/engine/protocol/call-protocol-manager.h
+++ b/lib/engine/protocol/call-protocol-manager.h
@@ -41,7 +41,7 @@
#include <string>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
namespace Ekiga
{
@@ -51,7 +51,7 @@ namespace Ekiga
* @{:
*/
- class CallProtocolManager: public virtual GmRefCounted
+ class CallProtocolManager
{
public:
diff --git a/lib/engine/protocol/call.h b/lib/engine/protocol/call.h
index 289506f..098002b 100644
--- a/lib/engine/protocol/call.h
+++ b/lib/engine/protocol/call.h
@@ -41,7 +41,7 @@
#include <sigc++/sigc++.h>
#include <string>
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
namespace Ekiga
{
@@ -55,7 +55,7 @@ namespace Ekiga
* Everything is handled asynchronously and signaled through the
* Ekiga::CallManager
*/
- class Call : public virtual GmRefCounted
+ class Call
{
public:
diff --git a/lib/engine/videoinput/videoinput-core.cpp b/lib/engine/videoinput/videoinput-core.cpp
index b9d3730..4b64f6f 100644
--- a/lib/engine/videoinput/videoinput-core.cpp
+++ b/lib/engine/videoinput/videoinput-core.cpp
@@ -49,7 +49,6 @@ VideoInputCore::VideoPreviewManager::VideoPreviewManager (VideoInputCore& _video
videoinput_core (_videoinput_core),
videooutput_core (_videooutput_core)
{
- videooutput_core.reference ();
width = 176;
height = 144;;
pause_thread = true;
@@ -68,7 +67,6 @@ VideoInputCore::VideoPreviewManager::~VideoPreviewManager ()
end_thread = true;
run_thread.Signal();
thread_ended.Wait();
- videooutput_core.unreference ();
}
void VideoInputCore::VideoPreviewManager::start (unsigned _width, unsigned _height)
diff --git a/lib/gui/xwindow.cpp b/lib/gui/xwindow.cpp
index d58bad0..be476d4 100644
--- a/lib/gui/xwindow.cpp
+++ b/lib/gui/xwindow.cpp
@@ -270,7 +270,7 @@ XWindow::Init (Display* dp,
if (!_colorConverter)
return 0;
- _frameBuffer = std::tr1::shared_ptr<void> (malloc (_imageWidth * _imageHeight * _planes), free);
+ _frameBuffer = boost::shared_ptr<void> (malloc (_imageWidth * _imageHeight * _planes), free);
// detect the window manager type
_wmType = GetWMType ();
diff --git a/lib/gui/xwindow.h b/lib/gui/xwindow.h
index 325c6d3..b5cdec9 100644
--- a/lib/gui/xwindow.h
+++ b/lib/gui/xwindow.h
@@ -39,7 +39,7 @@
#include <stdint.h>
#include "config.h"
-#include <tr1/memory>
+#include <boost/smart_ptr.hpp>
#include <ptlib.h>
#include <ptlib/vconvert.h>
@@ -245,7 +245,7 @@ private:
int _planes;
PColourConverter* _colorConverter;
- std::tr1::shared_ptr<void> _frameBuffer;
+ boost::shared_ptr<void> _frameBuffer;
#ifdef HAVE_SHM
XShmSegmentInfo _XShmInfo;
diff --git a/src/dbus-helper/dbus.cpp b/src/dbus-helper/dbus.cpp
index 79fd3ea..46be4ae 100644
--- a/src/dbus-helper/dbus.cpp
+++ b/src/dbus-helper/dbus.cpp
@@ -136,7 +136,7 @@ ekiga_dbus_component_call (EkigaDBusComponent *self,
const gchar *uri,
G_GNUC_UNUSED GError **error)
{
- gmref_ptr<Ekiga::CallCore> call_core = self->priv->core->get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = self->priv->core->get<Ekiga::CallCore> ("call-core");
call_core->dial (uri);
return TRUE;
diff --git a/src/gui/accounts.cpp b/src/gui/accounts.cpp
index 348bdcb..ff8d7a9 100644
--- a/src/gui/accounts.cpp
+++ b/src/gui/accounts.cpp
@@ -175,7 +175,7 @@ populate_menu (GtkWidget *window)
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (aw->accounts_list));
model = gtk_tree_view_get_model (GTK_TREE_VIEW (aw->accounts_list));
- gmref_ptr<Ekiga::AccountCore> account_core = aw->core.get ("account-core");
+ boost::shared_ptr<Ekiga::AccountCore> account_core = aw->core.get<Ekiga::AccountCore> ("account-core");
if (account_core->populate_menu (builder)) {
item = gtk_separator_menu_item_new ();
@@ -708,7 +708,7 @@ gm_accounts_window_new (Ekiga::ServiceCore &core)
/* Engine Signals callbacks */
// FIXME sigc::connection conn;
- gmref_ptr<Ekiga::AccountCore> account_core = core.get ("account-core");
+ boost::shared_ptr<Ekiga::AccountCore> account_core = core.get<Ekiga::AccountCore> ("account-core");
account_core->bank_added.connect (sigc::bind (sigc::ptr_fun (on_bank_added), window));
account_core->account_added.connect (sigc::bind (sigc::ptr_fun (on_account_added), window));
account_core->account_updated.connect (sigc::bind (sigc::ptr_fun (on_account_updated), window));
diff --git a/src/gui/assistant.cpp b/src/gui/assistant.cpp
index 3b9d476..b5b75a9 100644
--- a/src/gui/assistant.cpp
+++ b/src/gui/assistant.cpp
@@ -624,7 +624,7 @@ create_ekiga_net_page (EkigaAssistant *assistant)
static void
prepare_ekiga_net_page (EkigaAssistant *assistant)
{
- gmref_ptr<Opal::Bank> bank = assistant->priv->core->get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = assistant->priv->core->get<Opal::Bank> ("opal-account-store");
Opal::AccountPtr account = bank->find_account ("ekiga.net");
if (account && !account->get_username ().empty ())
@@ -641,7 +641,7 @@ prepare_ekiga_net_page (EkigaAssistant *assistant)
static void
apply_ekiga_net_page (EkigaAssistant *assistant)
{
- gmref_ptr<Opal::Bank> bank = assistant->priv->core->get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = assistant->priv->core->get<Opal::Bank> ("opal-account-store");
Opal::AccountPtr account = bank->find_account ("ekiga.net");
bool new_account = !account;
@@ -768,7 +768,7 @@ create_ekiga_out_page (EkigaAssistant *assistant)
static void
prepare_ekiga_out_page (EkigaAssistant *assistant)
{
- gmref_ptr<Opal::Bank> account_core = assistant->priv->core->get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> account_core = assistant->priv->core->get<Opal::Bank> ("opal-account-store");
Opal::AccountPtr account = account_core->find_account ("sip.diamondcard.us");
if (account && !account->get_username ().empty ())
@@ -786,7 +786,7 @@ static void
apply_ekiga_out_page (EkigaAssistant *assistant)
{
/* Some specific Opal stuff for the Ekiga.net account */
- gmref_ptr<Opal::Bank> bank = assistant->priv->core->get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = assistant->priv->core->get<Opal::Bank> ("opal-account-store");
Opal::AccountPtr account = bank->find_account ("sip.diamondcard.us");
bool new_account = !account;
@@ -1213,7 +1213,7 @@ void
get_audiooutput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
std::vector <Ekiga::AudioOutputDevice> devices;
device_list.clear();
@@ -1236,7 +1236,7 @@ void
get_audioinput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core->get ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core->get<Ekiga::AudioInputCore> ("audioinput-core");
std::vector <Ekiga::AudioInputDevice> devices;
device_list.clear();
@@ -1259,7 +1259,7 @@ void
get_videoinput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core->get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core->get<Ekiga::VideoInputCore> ("videoinput-core");
std::vector<Ekiga::VideoInputDevice> devices;
device_list.clear();
@@ -1623,9 +1623,9 @@ ekiga_assistant_new (Ekiga::ServiceCore *core)
G_CALLBACK (ekiga_assistant_key_press_cb), NULL);
sigc::connection conn;
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core->get ("videoinput-core");
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core->get<Ekiga::VideoInputCore> ("videoinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
conn = videoinput_core->device_added.connect (sigc::bind (sigc::ptr_fun (on_videoinput_device_added_cb), assistant));
assistant->priv->connections.push_back (conn);
diff --git a/src/gui/main.cpp b/src/gui/main.cpp
index fdf3441..f363e45 100644
--- a/src/gui/main.cpp
+++ b/src/gui/main.cpp
@@ -55,7 +55,7 @@
#include "gmconnectbutton.h"
#include "gmstockicons.h"
#include "gmconf.h"
-#include "gmref.h"
+#include <boost/smart_ptr.hpp>
#include "gmwindow.h"
#include "gmmenuaddon.h"
#include "gmlevelmeter.h"
@@ -181,7 +181,7 @@ struct _EkigaMainWindowPrivate
GtkWidget *transfer_call_popup;
/* Calls */
- gmref_ptr<Ekiga::Call> current_call;
+ boost::shared_ptr<Ekiga::Call> current_call;
unsigned timeout_id;
unsigned calling_state;
bool audio_transmission_active;
@@ -252,11 +252,11 @@ void ekiga_main_window_clear_signal_levels (EkigaMainWindow *mw);
static void ekiga_main_window_selected_presentity_build_menu (EkigaMainWindow *mw);
static void ekiga_main_window_incoming_call_dialog_show (EkigaMainWindow *mw,
- gmref_ptr<Ekiga::Call> call);
+ boost::shared_ptr<Ekiga::Call> call);
#ifdef HAVE_NOTIFY
static void ekiga_main_window_incoming_call_notify (EkigaMainWindow *mw,
- gmref_ptr<Ekiga::Call> call);
+ boost::shared_ptr<Ekiga::Call> call);
#endif
@@ -534,12 +534,12 @@ on_account_updated (Ekiga::BankPtr /*bank*/,
}
-static void on_setup_call_cb (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call,
+static void on_setup_call_cb (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (!call->is_outgoing () && !manager->get_auto_answer ()) {
ekiga_main_window_update_calling_state (mw, Called);
@@ -560,12 +560,12 @@ static void on_setup_call_cb (gmref_ptr<Ekiga::CallManager> manager,
}
-static void on_ringing_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call,
+static void on_ringing_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (call->is_outgoing ()) {
audiooutput_core->start_play_event("ring_tone_sound", 3000, 256);
@@ -583,7 +583,7 @@ static gboolean on_stats_refresh_cb (gpointer self)
if (mw->priv->calling_state == Connected && mw->priv->current_call) {
Ekiga::VideoOutputStats videooutput_stats;
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get ("videooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get<Ekiga::VideoOutputCore> ("videooutput-core");
videooutput_core->get_videooutput_stats(videooutput_stats);
msg = g_strdup_printf (_("A:%.1f/%.1f V:%.1f/%.1f FPS:%d/%d"),
@@ -615,16 +615,16 @@ static gboolean on_signal_level_refresh_cb (gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
gm_level_meter_set_level (GM_LEVEL_METER (mw->priv->output_signal), audiooutput_core->get_average_level());
gm_level_meter_set_level (GM_LEVEL_METER (mw->priv->input_signal), audioinput_core->get_average_level());
return true;
}
-static void on_established_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call,
+static void on_established_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
@@ -651,7 +651,7 @@ static void on_established_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
mw->priv->timeout_id = g_timeout_add (1000, on_stats_refresh_cb, self);
#endif
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audiooutput_core->stop_play_event("incoming_call_sound");
audiooutput_core->stop_play_event("ring_tone_sound");
@@ -660,8 +660,8 @@ static void on_established_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_cleared_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call,
+static void on_cleared_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call,
std::string reason,
gpointer self)
{
@@ -681,11 +681,11 @@ static void on_cleared_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
ekiga_main_window_update_logo_have_window (mw);
if (mw->priv->current_call && mw->priv->current_call->get_id () == call->get_id ()) {
- mw->priv->current_call = gmref_ptr<Ekiga::Call>();
+ mw->priv->current_call = boost::shared_ptr<Ekiga::Call>();
g_source_remove (mw->priv->timeout_id);
mw->priv->timeout_id = -1;
}
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audiooutput_core->stop_play_event("incoming_call_sound");
audiooutput_core->stop_play_event("ring_tone_sound");
@@ -700,7 +700,7 @@ static void on_cleared_incoming_call_cb (std::string /*reason*/,
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (GnomeMeeting::Process ()->GetMainWindow ());
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audiooutput_core->stop_play_event("incoming_call_sound");
audiooutput_core->stop_play_event("ring_tone_sound");
@@ -722,8 +722,8 @@ static void on_incoming_call_gone_cb (gpointer self)
}
-static void on_held_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+static void on_held_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
@@ -733,8 +733,8 @@ static void on_held_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_retrieved_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+static void on_retrieved_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
@@ -744,12 +744,12 @@ static void on_retrieved_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_missed_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> call,
+static void on_missed_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> call,
gpointer self)
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (self);
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audiooutput_core->stop_play_event ("incoming_call_sound");
audiooutput_core->stop_play_event ("ring_tone_sound");
@@ -764,8 +764,8 @@ static void on_missed_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_stream_opened_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /* call */,
+static void on_stream_opened_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /* call */,
std::string name,
Ekiga::Call::StreamType type,
bool is_transmitting,
@@ -813,8 +813,8 @@ static void on_stream_opened_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_stream_closed_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /* call */,
+static void on_stream_closed_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /* call */,
std::string name,
Ekiga::Call::StreamType type,
bool is_transmitting,
@@ -862,8 +862,8 @@ static void on_stream_closed_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_stream_paused_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+static void on_stream_paused_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
std::string /*name*/,
Ekiga::Call::StreamType type,
gpointer self)
@@ -872,8 +872,8 @@ static void on_stream_paused_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
}
-static void on_stream_resumed_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+static void on_stream_resumed_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
std::string /*name*/,
Ekiga::Call::StreamType type,
gpointer self)
@@ -1450,7 +1450,7 @@ place_call_cb (GtkWidget * /*widget*/,
return;
ekiga_main_window_update_calling_state (mw, Calling);
- gmref_ptr<Ekiga::CallCore> call_core = mw->priv->core->get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = mw->priv->core->get<Ekiga::CallCore> ("call-core");
// Remove appended spaces
pos = uri.find_first_of (' ');
@@ -1830,7 +1830,7 @@ on_chat_unread_alert (G_GNUC_UNUSED GtkWidget* widget,
return;
Ekiga::ServiceCore *core = GnomeMeeting::Process ()->GetServiceCore ();
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
std::string file_name_string = gm_conf_get_string (SOUND_EVENTS_KEY "new_message_sound");
@@ -1964,8 +1964,8 @@ audio_volume_changed_cb (GtkAdjustment * /*adjustment*/,
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (data);
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audiooutput_core->set_volume (Ekiga::primary, (unsigned) GTK_ADJUSTMENT (mw->priv->adj_output_volume)->value);
audioinput_core->set_volume ((unsigned) GTK_ADJUSTMENT (mw->priv->adj_input_volume)->value);
@@ -1977,8 +1977,8 @@ audio_volume_window_shown_cb (GtkWidget * /*widget*/,
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (data);
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
audioinput_core->set_average_collection (true);
audiooutput_core->set_average_collection (true);
@@ -1992,8 +1992,8 @@ audio_volume_window_hidden_cb (GtkWidget * /*widget*/,
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (data);
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
g_source_remove (mw->priv->levelmeter_timeout_id);
audioinput_core->set_average_collection (false);
@@ -2006,7 +2006,7 @@ video_settings_changed_cb (GtkAdjustment * /*adjustment*/,
{
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (data);
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = mw->priv->core->get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = mw->priv->core->get<Ekiga::VideoInputCore> ("videoinput-core");
videoinput_core->set_whiteness ((unsigned) GTK_ADJUSTMENT (mw->priv->adj_whiteness)->value);
videoinput_core->set_brightness ((unsigned) GTK_ADJUSTMENT (mw->priv->adj_brightness)->value);
@@ -2197,11 +2197,12 @@ fullscreen_changed_cb (G_GNUC_UNUSED GtkWidget *widget,
static bool
-account_completion_helper (Opal::AccountPtr account,
+account_completion_helper (Ekiga::AccountPtr acc,
const gchar* text,
EkigaMainWindow* mw)
{
- if (account->is_active ()) {
+ Opal::AccountPtr account = boost::dynamic_pointer_cast<Opal::Account>(acc);
+ if (account && account->is_active ()) {
if (g_ascii_strncasecmp (text, "sip:", 4) == 0 && account->get_protocol_name () == "SIP") {
@@ -2229,7 +2230,7 @@ url_changed_cb (GtkEditable *e,
if (g_strrstr (tip_text, "@") == NULL) {
- gmref_ptr<Opal::Bank> bank = mw->priv->core->get ("opal-account-store");
+ boost::shared_ptr<Opal::Bank> bank = mw->priv->core->get<Opal::Bank> ("opal-account-store");
if (bank) {
@@ -2632,7 +2633,7 @@ ekiga_main_window_selected_presentity_build_menu (EkigaMainWindow *mw)
static void
ekiga_main_window_incoming_call_dialog_show (EkigaMainWindow *mw,
- gmref_ptr<Ekiga::Call> call)
+ boost::shared_ptr<Ekiga::Call> call)
{
GdkPixbuf *pixbuf = NULL;
@@ -2768,14 +2769,14 @@ closed_cb (NotifyNotification* /*notify*/,
mw = EKIGA_MAIN_WINDOW (main_window);
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (audiooutput_core)
audiooutput_core->stop_play_event ("incoming_call_sound");
}
static void
ekiga_main_window_incoming_call_notify (EkigaMainWindow *mw,
- gmref_ptr<Ekiga::Call> call)
+ boost::shared_ptr<Ekiga::Call> call)
{
NotifyNotification *notify = NULL;
@@ -3099,8 +3100,8 @@ ekiga_main_window_init_menu (EkigaMainWindow *mw)
g_return_if_fail (mw != NULL);
services = GnomeMeeting::Process ()->GetServiceCore ();
- gmref_ptr<Ekiga::Trigger> local_cluster_trigger = services->get ("local-cluster");
- gmref_ptr<GtkFrontend> gtk_frontend = services->get ("gtk-frontend");
+ boost::shared_ptr<Ekiga::Trigger> local_cluster_trigger = services->get<Ekiga::Trigger> ("local-cluster");
+ boost::shared_ptr<GtkFrontend> gtk_frontend = services->get<GtkFrontend> ("gtk-frontend");
addressbook_window = GTK_WIDGET (gtk_frontend->get_addressbook_window ());
accounts_window = GnomeMeeting::Process ()->GetAccountsWindow ();
@@ -3403,7 +3404,7 @@ ekiga_main_window_init_contact_list (EkigaMainWindow *mw)
services = GnomeMeeting::Process ()->GetServiceCore ();
g_return_if_fail (services != NULL);
- gmref_ptr<Ekiga::PresenceCore> presence_core = services->get ("presence-core");
+ boost::shared_ptr<Ekiga::PresenceCore> presence_core = services->get<Ekiga::PresenceCore> ("presence-core");
label = gtk_label_new (_("Contacts"));
roster_view = roster_view_gtk_new (*presence_core);
@@ -3446,8 +3447,8 @@ ekiga_main_window_init_history (EkigaMainWindow *mw)
services = GnomeMeeting::Process ()->GetServiceCore ();
g_return_if_fail (services != NULL);
- gmref_ptr<History::Source> history_source = services->get ("call-history-store");
- gmref_ptr<History::Book> history_book = history_source->get_book ();
+ boost::shared_ptr<History::Source> history_source = services->get<History::Source> ("call-history-store");
+ boost::shared_ptr<History::Book> history_book = history_source->get_book ();
GtkWidget* call_history_view = call_history_view_gtk_new (history_book);
label = gtk_label_new (_("Call history"));
@@ -3736,7 +3737,7 @@ ekiga_main_window_init (EkigaMainWindow *mw)
mw->priv->presentity = NULL;
mw->priv->transfer_call_popup = NULL;
- mw->priv->current_call = gmref_ptr<Ekiga::Call>();
+ mw->priv->current_call = boost::shared_ptr<Ekiga::Call>();
mw->priv->timeout_id = -1;
mw->priv->levelmeter_timeout_id = -1;
mw->priv->audio_transmission_active = false;
@@ -3827,7 +3828,7 @@ ekiga_main_window_expose_event (GtkWidget *widget,
display_info.widget_info_set = TRUE;
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get ("videooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get<Ekiga::VideoOutputCore> ("videooutput-core");
videooutput_core->set_display_info (display_info);
return handled;
@@ -3940,7 +3941,7 @@ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
g_return_if_fail (EKIGA_IS_MAIN_WINDOW (mw));
/* New Display Engine signals */
- gmref_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get ("videooutput-core");
+ boost::shared_ptr<Ekiga::VideoOutputCore> videooutput_core = mw->priv->core->get<Ekiga::VideoOutputCore> ("videooutput-core");
conn = videooutput_core->device_opened.connect (sigc::bind (sigc::ptr_fun (on_videooutput_device_opened_cb), (gpointer) mw));
mw->priv->connections.push_back (conn);
@@ -3958,7 +3959,7 @@ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
mw->priv->connections.push_back (conn);
/* New VideoInput Engine signals */
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = mw->priv->core->get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = mw->priv->core->get<Ekiga::VideoInputCore> ("videoinput-core");
conn = videoinput_core->device_opened.connect (sigc::bind (sigc::ptr_fun (on_videoinput_device_opened_cb), (gpointer) mw));
mw->priv->connections.push_back (conn);
@@ -3976,7 +3977,7 @@ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
mw->priv->connections.push_back (conn);
/* New AudioInput Engine signals */
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = mw->priv->core->get<Ekiga::AudioInputCore> ("audioinput-core");
conn = audioinput_core->device_opened.connect (sigc::bind (sigc::ptr_fun (on_audioinput_device_opened_cb), (gpointer) mw));
mw->priv->connections.push_back (conn);
@@ -3994,7 +3995,7 @@ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
mw->priv->connections.push_back (conn);
/* New AudioOutput Engine signals */
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = mw->priv->core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
conn = audiooutput_core->device_opened.connect (sigc::bind (sigc::ptr_fun (on_audiooutput_device_opened_cb), (gpointer) mw));
mw->priv->connections.push_back (conn);
@@ -4012,8 +4013,8 @@ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
mw->priv->connections.push_back (conn);
/* New Call Engine signals */
- gmref_ptr<Ekiga::CallCore> call_core = mw->priv->core->get ("call-core");
- gmref_ptr<Ekiga::AccountCore> account_core = mw->priv->core->get ("account-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = mw->priv->core->get<Ekiga::CallCore> ("call-core");
+ boost::shared_ptr<Ekiga::AccountCore> account_core = mw->priv->core->get<Ekiga::AccountCore> ("account-core");
/* Engine Signals callbacks */
conn = account_core->account_updated.connect (sigc::bind (sigc::ptr_fun (on_account_updated), (gpointer) mw));
@@ -4081,7 +4082,7 @@ gm_main_window_new (Ekiga::ServiceCore & core)
/* initialize the callback to play IM message sound */
/* FIXME: move this to the chat window code */
- gmref_ptr<GtkFrontend> gtk_frontend = core.get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> gtk_frontend = core.get<GtkFrontend> ("gtk-frontend");
chat_window = GTK_WIDGET (gtk_frontend->get_chat_window ());
g_signal_connect (chat_window, "unread-alert",
@@ -4457,7 +4458,7 @@ main (int argc,
*/
main_window = GnomeMeeting::Process ()->GetMainWindow ();
EkigaMainWindow *mw = EKIGA_MAIN_WINDOW (main_window); //TODO no priv here
- gmref_ptr<Ekiga::CallCore> call_core = mw->priv->core->get ("call-core");
+ boost::shared_ptr<Ekiga::CallCore> call_core = mw->priv->core->get<Ekiga::CallCore> ("call-core");
if (error == -1) {
if (gm_conf_get_int (GENERAL_KEY "version")
diff --git a/src/gui/preferences.cpp b/src/gui/preferences.cpp
index c61dcd3..551f3dc 100644
--- a/src/gui/preferences.cpp
+++ b/src/gui/preferences.cpp
@@ -788,7 +788,7 @@ void
gm_prefs_window_get_videoinput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core->get ("videoinput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core->get<Ekiga::VideoInputCore> ("videoinput-core");
std::vector <Ekiga::VideoInputDevice> devices;
device_list.clear();
@@ -810,7 +810,7 @@ void
gm_prefs_window_get_audiooutput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
std::vector <Ekiga::AudioOutputDevice> devices;
std::string device_string;
@@ -835,7 +835,7 @@ void
gm_prefs_window_get_audioinput_devices_list (Ekiga::ServiceCore *core,
std::vector<std::string> & device_list)
{
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core->get ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core->get<Ekiga::AudioInputCore> ("audioinput-core");
std::vector <Ekiga::AudioInputDevice> devices;
device_list.clear();
@@ -1159,7 +1159,7 @@ sound_event_play_cb (G_GNUC_UNUSED GtkWidget *widget,
//FIXME
Ekiga::ServiceCore *core = GnomeMeeting::Process ()->GetServiceCore ();
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
if (sound_event) {
audiooutput_core->play_event(sound_event);
@@ -1206,7 +1206,7 @@ audioev_filename_browse_play_cb (GtkWidget* /* playbutton */,
//FIXME
Ekiga::ServiceCore *core = GnomeMeeting::Process ()->GetServiceCore ();
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
gchar* file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (data));
std::string file_name_string = file_name;
@@ -1406,9 +1406,9 @@ gm_prefs_window_new (Ekiga::ServiceCore *core)
G_CALLBACK (delete_window_cb), NULL);
sigc::connection conn;
- gmref_ptr<Ekiga::VideoInputCore> videoinput_core = core->get ("videoinput-core");
- gmref_ptr<Ekiga::AudioInputCore> audioinput_core = core->get ("audioinput-core");
- gmref_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get ("audiooutput-core");
+ boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core->get<Ekiga::VideoInputCore> ("videoinput-core");
+ boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core->get<Ekiga::AudioInputCore> ("audioinput-core");
+ boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core->get<Ekiga::AudioOutputCore> ("audiooutput-core");
conn = videoinput_core->device_added.connect (sigc::bind (sigc::ptr_fun (on_videoinput_device_added_cb), window));
pw->connections.push_back (conn);
diff --git a/src/gui/statusicon.cpp b/src/gui/statusicon.cpp
index 4c8d1e9..f0586ba 100644
--- a/src/gui/statusicon.cpp
+++ b/src/gui/statusicon.cpp
@@ -127,13 +127,13 @@ statusicon_set_inacall (StatusIcon *widget,
bool inacall);
static void
-established_call_cb (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call,
+established_call_cb (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call,
gpointer self);
static void
-cleared_call_cb (gmref_ptr<Ekiga::CallManager> manager,
- gmref_ptr<Ekiga::Call> call,
+cleared_call_cb (boost::shared_ptr<Ekiga::CallManager> manager,
+ boost::shared_ptr<Ekiga::Call> call,
std::string reason,
gpointer self);
@@ -278,7 +278,7 @@ statusicon_activated_cb (G_GNUC_UNUSED GtkStatusIcon *icon,
}
else {
- gmref_ptr<GtkFrontend> frontend = self->priv->core.get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> frontend = self->priv->core.get<GtkFrontend> ("gtk-frontend");
GtkWidget *w = GTK_WIDGET (frontend->get_chat_window ());
gtk_widget_show (w);
@@ -337,7 +337,7 @@ statusicon_blink_cb (gpointer data)
g_return_val_if_fail (data != NULL, false);
- gmref_ptr<GtkFrontend> frontend = statusicon->priv->core.get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> frontend = statusicon->priv->core.get<GtkFrontend> ("gtk-frontend");
// FIXME use main_window here
chat_window = GTK_WIDGET (frontend->get_chat_window ());
@@ -357,15 +357,15 @@ statusicon_blink_cb (gpointer data)
static void
personal_details_updated_cb (StatusIcon* self,
- gmref_ptr<Ekiga::PersonalDetails> details)
+ boost::shared_ptr<Ekiga::PersonalDetails> details)
{
statusicon_set_status (self, details->get_presence ());
}
static void
-established_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+established_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
gpointer self)
{
statusicon_set_inacall (STATUSICON (self), true);
@@ -373,8 +373,8 @@ established_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
static void
-cleared_call_cb (gmref_ptr<Ekiga::CallManager> /*manager*/,
- gmref_ptr<Ekiga::Call> /*call*/,
+cleared_call_cb (boost::shared_ptr<Ekiga::CallManager> /*manager*/,
+ boost::shared_ptr<Ekiga::Call> /*call*/,
std::string /*reason*/,
gpointer self)
{
@@ -393,7 +393,7 @@ statusicon_build_menu ()
Ekiga::ServiceCore *services = NULL;
services = GnomeMeeting::Process ()->GetServiceCore ();
- gmref_ptr<GtkFrontend> gtk_frontend = services->get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> gtk_frontend = services->get<GtkFrontend> ("gtk-frontend");
main_window = GnomeMeeting::Process ()->GetMainWindow ();
static MenuEntry menu [] =
@@ -469,7 +469,7 @@ statusicon_set_status (StatusIcon *statusicon,
g_return_if_fail (statusicon != NULL);
- gmref_ptr<GtkFrontend> frontend = statusicon->priv->core.get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> frontend = statusicon->priv->core.get<GtkFrontend> ("gtk-frontend");
// FIXME use main_window here
chat_window = GTK_WIDGET (frontend->get_chat_window ());
@@ -501,7 +501,7 @@ statusicon_set_inacall (StatusIcon *statusicon,
g_return_if_fail (statusicon != NULL);
- gmref_ptr<GtkFrontend> frontend = statusicon->priv->core.get ("gtk-frontend");
+ boost::shared_ptr<GtkFrontend> frontend = statusicon->priv->core.get<GtkFrontend> ("gtk-frontend");
// FIXME use main_window here
chat_window = GTK_WIDGET (frontend->get_chat_window ());
@@ -543,9 +543,9 @@ statusicon_new (Ekiga::ServiceCore & core)
self->priv->blink_image = NULL;
self->priv->unread_messages = false;
- gmref_ptr<GtkFrontend> frontend = core.get ("gtk-frontend");
- gmref_ptr<Ekiga::PersonalDetails> details = core.get ("personal-details");
- gmref_ptr<Ekiga::CallCore> call_core = core.get ("call-core");
+ boost::shared_ptr<GtkFrontend> frontend = core.get<GtkFrontend> ("gtk-frontend");
+ boost::shared_ptr<Ekiga::PersonalDetails> details = core.get<Ekiga::PersonalDetails> ("personal-details");
+ boost::shared_ptr<Ekiga::CallCore> call_core = core.get<Ekiga::CallCore> ("call-core");
GtkWidget *chat_window = GTK_WIDGET (frontend->get_chat_window ());
statusicon_set_status (self, details->get_presence ());
diff --git a/src/gui/statusmenu.cpp b/src/gui/statusmenu.cpp
index 2ccd02d..845c300 100644
--- a/src/gui/statusmenu.cpp
+++ b/src/gui/statusmenu.cpp
@@ -50,7 +50,7 @@
struct _StatusMenuPrivate
{
- gmref_ptr<Ekiga::PersonalDetails> personal_details;
+ boost::shared_ptr<Ekiga::PersonalDetails> personal_details;
std::vector<sigc::connection> connections;
GtkListStore *list_store; // List store storing the menu
@@ -810,7 +810,7 @@ status_menu_new (Ekiga::ServiceCore & core)
self = (StatusMenu *) g_object_new (STATUS_MENU_TYPE, NULL);
self->priv = new StatusMenuPrivate ();
- self->priv->personal_details = core.get ("personal-details");
+ self->priv->personal_details = core.get<Ekiga::PersonalDetails> ("personal-details");
self->priv->parent = NULL;
self->priv->list_store = gtk_list_store_new (NUM_COLUMNS,
GDK_TYPE_PIXBUF,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]