~ubuntu-branches/ubuntu/karmic/ekiga/karmic

« back to all changes in this revision

Viewing changes to lib/engine/gui/gtk-frontend/presentity-view.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Ken VanDine
  • Date: 2009-03-17 15:14:12 UTC
  • mfrom: (1.1.9 upstream)
  • Revision ID: james.westby@ubuntu.com-20090317151412-no6uq0wl8zz2hsw3
Tags: 3.2.0-0ubuntu1
* New upstream release (LP: #341367)
  - Better NAT support in case of Cone NAT
  - Uniformise detection of libnotify; fix compilation with mingw
  - Fix "URL completion combobox shows identical completions"
  - Fix "Assistant loosing values when going backward"
  - Fix GmConf settings when compiled with another package name
  - Fix unregistration of accounts
  - Fix build with --enable-kde
  - Fixed possible crash when retrieving presence information
  - New translations: crh, or
  - Updated translations: as, bg, bn_IN, da, de, el, eu, gl, gu, hi, hu,
    ja, kn, ko, ku, lt, ml, mr, or, pt, ro, ru, ta, te, tr
  - New help translation: en_GB
  - Updated help translation: fr
  - Better NAT support in case of Cone NAT
  - There is now only one H.263 plugin implementing both H.263 and H.263+
  - Allow several ALSA devices to have the same name
  - Added support for the G.722 audio codec: G.722 is a 16 kHz wideband
    audio codec advertised as HD Voice by the famous Polycom. It is a
    great boost in quality and interoperability
  - Added support for the CELT ultral-low delay audio codec: CELT delivers
    high quality audio at 32 kHz or 48 kHz, allowing to transmit music in
    high quality, with low delay and low bitrate
  - Added support for SIP dialog-info notifications: they allow displaying
    notifications of incoming calls in the roster. With software like
    kamailio or Asterisk, it allows being informed of incoming calls
    reaching your colleagues
  - Largely improved LDAP support: the OpenLDAP guys contributed several
    patches to provide state-of-the-art LDAP support in the Ekiga address
    book. The new code even supports authentication
  - Killed the gconf_test_age test, Ekiga can now finally work with
    badly installed GConf schemas
  - Better handling of multiple network interfaces with dynamic addition
    and removal
  - Added settings migration from Ekiga 2.0.x.
  - Other various fixes, cleanups, removal of deprecated symbols etc.
  - New translations: crh, or
  - New help translation: en_GB, eu
  - Updated many translations and help
  - Experimental features:
    * Significant improvements in IPv6 support
    * Gstreamer audio and video capture support near to be finished...
* debian/patches/migrate_2.0_settings.patch:
  - Removed, migration is now upstream
* debian/patches/00_news.patch
  - Removed
* debian/patches/ubuntu_lpi.patch:
  - Modified to work with 3.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
 
2
2
/* Ekiga -- A VoIP and Video-Conferencing application
3
 
 * Copyright (C) 2000-2008 Damien Sandras
 
3
 * Copyright (C) 2000-2009 Damien Sandras <dsandras@seconix.com>
4
4
 *
5
5
 * This program is free software; you can redistribute it and/or modify
6
6
 * it under the terms of the GNU General Public License as published by
41
41
 
42
42
struct _PresentityViewPrivate
43
43
{
44
 
  Ekiga::Presentity* presentity;
 
44
  gmref_ptr<Ekiga::Presentity> presentity;
45
45
  sigc::connection updated_conn;
46
46
  sigc::connection removed_conn;
47
47
 
66
66
/* declaration of internal api */
67
67
 
68
68
static void presentity_view_set_presentity (PresentityView* self,
69
 
                                            Ekiga::Presentity* presentity);
 
69
                                            gmref_ptr<Ekiga::Presentity> presentity);
70
70
 
71
71
static void presentity_view_unset_presentity (PresentityView* self);
72
72
 
105
105
 
106
106
static void
107
107
presentity_view_set_presentity (PresentityView* self,
108
 
                                Ekiga::Presentity* presentity)
 
108
                                gmref_ptr<Ekiga::Presentity> presentity)
109
109
{
110
 
  g_return_if_fail (self->priv->presentity == NULL);
 
110
  g_return_if_fail ( !self->priv->presentity);
111
111
 
112
112
  self->priv->presentity = presentity;
113
113
  self->priv->updated_conn = self->priv->presentity->updated.connect (sigc::bind (sigc::ptr_fun (on_presentity_updated), self));
121
121
{
122
122
  if (self->priv->presentity) {
123
123
 
124
 
    self->priv->presentity = NULL;
 
124
    self->priv->presentity = gmref_ptr<Ekiga::Presentity>(0);
125
125
    self->priv->updated_conn.disconnect ();
126
126
    self->priv->removed_conn.disconnect ();
127
127
  }
159
159
 
160
160
  case PRESENTITY_VIEW_PROP_PRESENTITY:
161
161
    presentity = (Ekiga::Presentity*)g_value_get_pointer (value);
162
 
    presentity_view_set_presentity (self, presentity);
 
162
    presentity_view_set_presentity (self, gmref_ptr<Ekiga::Presentity>(presentity));
163
163
 
164
164
    break;
165
165
 
200
200
  self = (PresentityView*)instance;
201
201
 
202
202
  self->priv = new PresentityViewPrivate;
203
 
  self->priv->presentity = NULL;
204
203
 
205
204
  self->priv->presence_image = gtk_image_new ();
206
205
  gtk_box_pack_start (GTK_BOX (self), self->priv->presence_image,
250
249
/* public api */
251
250
 
252
251
GtkWidget*
253
 
presentity_view_new (Ekiga::Presentity& presentity)
 
252
presentity_view_new (gmref_ptr<Ekiga::Presentity> presentity)
254
253
{
255
254
  return (GtkWidget*)g_object_new (TYPE_PRESENTITY_VIEW,
256
 
                                   "presentity", &presentity,
 
255
                                   "presentity", &*presentity,
257
256
                                   NULL);
258
257
}