diff --git a/sflphone-qt/Account.cpp b/sflphone-qt/Account.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..5b2af91b9f41437790b8f0e3b0b4e167cfa4e666
--- /dev/null
+++ b/sflphone-qt/Account.cpp
@@ -0,0 +1,134 @@
+#include "Account.h"
+#include "sflphone_const.h"
+#include "daemon_interface_singleton.h"
+
+const QString account_state_name(account_state_t & s)
+{
+  QString state;
+  switch(s)
+  {
+  case ACCOUNT_STATE_REGISTERED:
+    state = QApplication::translate("ConfigurationDialog", "Registered", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_UNREGISTERED:
+    state = QApplication::translate("ConfigurationDialog", "Not Registered", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_TRYING:
+    state = QApplication::translate("ConfigurationDialog", "Trying...", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR:
+    state = QApplication::translate("ConfigurationDialog", "Error", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR_AUTH:
+    state = QApplication::translate("ConfigurationDialog", "Bad authentification", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR_NETWORK:
+    state = QApplication::translate("ConfigurationDialog", "Network unreachable", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR_HOST:
+    state = QApplication::translate("ConfigurationDialog", "Host unreachable", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR_CONF_STUN:
+    state = QApplication::translate("ConfigurationDialog", "Stun configuration error", 0, QApplication::UnicodeUTF8);
+    break;
+  case ACCOUNT_STATE_ERROR_EXIST_STUN:
+    state = QApplication::translate("ConfigurationDialog", "Stun server invalid", 0, QApplication::UnicodeUTF8);
+    break;
+  default:
+    state = QApplication::translate("ConfigurationDialog", "Invalid", 0, QApplication::UnicodeUTF8);
+    break;
+  }
+  return state;
+}
+
+//Constructors
+Account::Account(QListWidgetItem & _item, QString & alias)
+{
+	accountDetails = new MapStringString();
+	(*accountDetails)[ACCOUNT_ALIAS] = alias;
+	item = & _item;
+}
+/*
+Account::Account(QString & _accountId, MapStringString & _accountDetails, account_state_t & _state)
+{
+	*accountDetails = _accountDetails;
+	*accountId = _accountId;
+	*state = _state;
+}
+*/
+Account::Account(QString & _accountId)
+{
+	accountDetails = & DaemonInterfaceSingleton::getInstance().getAccountDetails(_accountId).value();
+}
+
+Account::~Account()
+{
+	delete accountId;
+	delete accountDetails;
+	delete state;
+	delete item;
+}
+
+//Getters
+QString & Account::getAccountId()
+{
+	return *accountId; 
+}
+
+MapStringString & Account::getAccountDetails()
+{
+	return *accountDetails;
+}
+
+account_state_t & Account::getState()
+{
+	return *state;
+}
+
+QListWidgetItem & Account::getItem()
+{
+	return *item;
+}
+
+QString Account::getStateName()
+{
+	return account_state_name(*state);
+}
+
+QString Account::getAccountDetail(QString & param)
+{
+	return (*accountDetails)[param];
+}
+/*
+QString Account::getAccountDetail(std::string param)
+{
+	return (*accountDetails)[QString(param)];
+}
+*/
+//Setters
+/*
+void Account::setAccountId(QString id)
+{
+	accountId = id;
+}
+*/
+void Account::setAccountDetails(MapStringString m)
+{
+	*accountDetails = m;
+}
+/*
+void Account::setState(account_state_t s)
+{
+	
+}
+*/
+void Account::setAccountDetail(QString param, QString val)
+{
+	(*accountDetails)[param] = val;
+}
+
+//Operators
+bool Account::operator==(const Account& a)const
+{
+	return *accountId == *a.accountId;
+}
diff --git a/sflphone-qt/Account.h b/sflphone-qt/Account.h
new file mode 100644
index 0000000000000000000000000000000000000000..492cde7a804022bd11b60d0fc34a9a18af3785a0
--- /dev/null
+++ b/sflphone-qt/Account.h
@@ -0,0 +1,78 @@
+#ifndef HEADER_ACCOUNT
+#define HEADER_ACCOUNT
+
+
+
+#include <QtGui>
+#include "metatypes.h"
+
+/** @enum account_state_t 
+  * This enum have all the states an account can take.
+  */
+typedef enum
+{
+  /** Invalid state */
+   ACCOUNT_STATE_INVALID = 0,
+   /** The account is registered  */
+   ACCOUNT_STATE_REGISTERED,   
+   /** The account is not registered */
+   ACCOUNT_STATE_UNREGISTERED,   
+   /** The account is trying to register */
+   ACCOUNT_STATE_TRYING, 
+   /** Error state. The account is not registered */
+   ACCOUNT_STATE_ERROR,
+   /** An authentification error occured. Wrong password or wrong username. The account is not registered */
+   ACCOUNT_STATE_ERROR_AUTH,
+   /** The network is unreachable. The account is not registered */
+   ACCOUNT_STATE_ERROR_NETWORK,
+   /** Host is unreachable. The account is not registered */
+   ACCOUNT_STATE_ERROR_HOST,
+   /** Stun server configuration error. The account is not registered */
+   ACCOUNT_STATE_ERROR_CONF_STUN,
+   /** Stun server is not existing. The account is not registered */
+   ACCOUNT_STATE_ERROR_EXIST_STUN
+
+} account_state_t;
+
+const QString account_state_name(account_state_t & s);
+
+class Account{
+	
+private:
+
+	QString * accountId;
+	MapStringString * accountDetails;
+	account_state_t * state;
+	QListWidgetItem * item;
+
+public:
+	
+	//Constructors
+	Account(QListWidgetItem & _item, QString & alias);
+	//Account(QString & _accountId, MapStringString & _accountDetails, account_state_t & _state);
+	Account(QString & _accountId);
+	~Account();
+	
+	//Getters
+	QString & getAccountId();
+	MapStringString & getAccountDetails();
+	account_state_t & getState();
+	QListWidgetItem & getItem();
+	QString getStateName();
+	QString getAccountDetail(QString & param);
+	//QString getAccountDetail(std::string param);
+	
+	//Setters
+	//void setAccountId(QString id);
+	void setAccountDetails(MapStringString m);
+	//void setState(account_state_t s);
+	void setAccountDetail(QString param, QString val);
+	
+	//Operators
+	bool operator==(const Account&)const;
+	
+};
+
+
+
+#endif
\ No newline at end of file
diff --git a/sflphone-qt/AccountList.cpp b/sflphone-qt/AccountList.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..99ca88a7718891c220f04e98d8b6e23b4f10f8f9
--- /dev/null
+++ b/sflphone-qt/AccountList.cpp
@@ -0,0 +1,82 @@
+#include "AccountList.h"
+
+
+//Constructors
+
+AccountList::AccountList(VectorString & _accountIds)
+{
+	accounts = new QVector<Account *>();
+	for (int i = 0; i < _accountIds.size(); ++i){
+		(*accounts) += new Account(_accountIds[i]);
+	}
+}
+
+AccountList::AccountList(QStringList & _accountIds)
+{
+	accounts = new QVector<Account *>();
+	for (int i = 0; i < _accountIds.size(); ++i){
+		(*accounts) += new Account(_accountIds[i]);
+	}
+}
+
+AccountList::~AccountList()
+{
+	delete accounts;
+}
+
+//Getters
+QVector<Account *> & AccountList::getAccounts()
+{
+	return *accounts;
+}
+
+Account * AccountList::getAccountById(QString & id)
+{
+	for (int i = 0; i < accounts->size(); ++i){
+		if ((*accounts)[i]->getAccountId() == id)
+			return (*accounts)[i];
+	}
+	return NULL;
+}
+
+QVector<Account *> AccountList::getAccountByState(account_state_t & state)
+{
+	QVector<Account *> v;
+	for (int i = 0; i < accounts->size(); ++i){
+		if ((*accounts)[i]->getState() == state)
+			v += (*accounts)[i];
+	}
+	return v;
+
+}
+/*
+Account AccountList::getAccountByRow(int row)
+{
+	
+}
+*/
+Account * AccountList::getAccountByItem(QListWidgetItem * item)
+{
+	for (int i = 0; i < accounts->size(); ++i){
+		if ( &(*accounts)[i]->getItem() == item)
+			return (*accounts)[i];
+	}
+	return NULL;
+}
+
+int AccountList::getSize()
+{
+	return accounts->size();
+}
+
+//Setters
+/*
+void AccountList::addAccount(Account & account)
+{
+	accounts->add(account);
+}
+*/
+void AccountList::addAccount(QListWidgetItem & _item, QString & alias)
+{
+	(*accounts) += new Account(_item, alias);
+}
diff --git a/sflphone-qt/AccountList.h b/sflphone-qt/AccountList.h
new file mode 100644
index 0000000000000000000000000000000000000000..db01d88c1164d299b4ef72bf875ea646c7ba7a7f
--- /dev/null
+++ b/sflphone-qt/AccountList.h
@@ -0,0 +1,36 @@
+#ifndef HEADER_ACCOUNTLIST
+#define HEADER_ACCOUNTLIST
+
+#include <QtGui>
+#include "Account.h"
+
+class AccountList{
+	
+private:
+
+	QVector<Account *> * accounts;
+
+public:
+
+	//Constructors
+	AccountList(VectorString & _accountIds);
+	AccountList(QStringList & _accountIds);
+	~AccountList();
+	
+	//Getters
+	QVector<Account *> & getAccounts();
+	Account * getAccountById(QString & id);
+	QVector<Account *>  getAccountByState(account_state_t & id);
+	//Account * getAccountByRow(int row);
+	Account * getAccountByItem(QListWidgetItem * item);
+	int getSize();
+	
+	//Setters
+	//void addAccount(Account & account);
+	void addAccount(QListWidgetItem & _item, QString & alias);
+};
+
+
+
+
+#endif
\ No newline at end of file
diff --git a/sflphone-qt/ConfigDialog.cpp b/sflphone-qt/ConfigDialog.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c7bbf96075021301209f01fd837f52cb2f4ccbee
--- /dev/null
+++ b/sflphone-qt/ConfigDialog.cpp
@@ -0,0 +1,97 @@
+#include <QtGui>
+#include <QtCore>
+#include <iostream>
+#include <stdarg.h>
+#include "sflphone_const.h"
+#include "metatypes.h"
+#include "ConfigDialog.h"
+
+using namespace std;
+
+ConfigurationDialog::ConfigurationDialog(QDialog *parent) : QDialog(parent)
+{
+
+	setupUi(this);
+
+	registerCommTypes();
+	
+	daemon = new DaemonInterface("org.sflphone.SFLphone", "/org/sflphone/SFLphone/ConfigurationManager",
+                           QDBusConnection::sessionBus(), this);
+
+
+	QDBusReply<QStringList> r = (daemon->getAccountList());
+	QStringList accountIds= r.value();
+	//accountIds = r.value();
+	QString str = accountIds[0];
+	QDBusReply<MapStringString> r2 = (daemon->getAccountDetails(str));
+	//string st = accountIds[0].toStdString();
+	//QString str = "youpi";
+	//cout << str;
+	//accountList = new AccountList(accountIds);
+
+}
+
+void ConfigurationDialog::on_buttonNouveauCompte_clicked()
+{
+	QString itemName = QInputDialog::getText(this, "Item", "Enter new item");
+	itemName = itemName.simplified();
+	if (!itemName.isEmpty()) {
+		listWidgetComptes->addItem(itemName);
+		int r = listWidgetComptes->count() - 1;
+		QListWidgetItem * item = listWidgetComptes->item(r);
+		item->setCheckState(Qt::Unchecked);
+		item->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEditable|Qt::ItemIsDragEnabled|Qt::ItemIsDropEnabled|Qt::ItemIsUserCheckable|Qt::ItemIsEnabled);
+		accountList->addAccount(*item, itemName);
+		listWidgetComptes->setCurrentRow(r);
+	}
+}
+
+void ConfigurationDialog::on_listWidgetComptes_currentItemChanged ( QListWidgetItem * current, QListWidgetItem * previous )
+{
+	saveAccount(previous);
+	loadAccount(current);
+}
+
+void ConfigurationDialog::loadAccount(QListWidgetItem * item)
+{
+	Account * a = accountList->getAccountByItem(item);
+	if(! a )
+	{
+		cout << "Chargement d'un compte inexistant\n";
+	}
+	else
+	{
+		edit1_Alias->setText( a->getAccountDetail(*(new QString(ACCOUNT_ALIAS))));
+		edit2_Protocole->setCurrentIndex(getProtocoleIndex(a->getAccountDetail(*(new QString(ACCOUNT_TYPE)))));
+		edit3_Serveur->setText( a->getAccountDetail(*(new QString(ACCOUNT_HOSTNAME))));
+		edit4_Usager->setText( a->getAccountDetail(*(new QString(ACCOUNT_USERNAME))));
+		edit5_Mdp->setText( a->getAccountDetail(*(new QString(ACCOUNT_PASSWORD))));
+		edit6_BoiteVocale->setText( a->getAccountDetail(*(new QString(ACCOUNT_MAILBOX))));
+	}
+}
+
+
+void ConfigurationDialog::saveAccount(QListWidgetItem * item)
+{
+	Account * a = accountList->getAccountByItem(item);
+	if(! a)
+	{
+		cout << "Sauvegarde d'un compte inexistant\n";
+	}
+	else
+	{
+		a->setAccountDetail(ACCOUNT_ALIAS, edit1_Alias->text());
+		a->setAccountDetail(ACCOUNT_TYPE, getIndexProtocole(edit2_Protocole->currentIndex()));
+		a->setAccountDetail(ACCOUNT_HOSTNAME, edit3_Serveur->text());
+		a->setAccountDetail(ACCOUNT_USERNAME, edit4_Usager->text());
+		a->setAccountDetail(ACCOUNT_PASSWORD, edit5_Mdp->text());
+		a->setAccountDetail(ACCOUNT_MAILBOX, edit6_BoiteVocale->text());
+	}
+}
+
+
+
+void ConfigurationDialog::on_edit1_Alias_textChanged(const QString & text)
+{
+	listWidgetComptes->currentItem()->setText(text);
+}
diff --git a/sflphone-qt/ConfigDialog.h b/sflphone-qt/ConfigDialog.h
new file mode 100644
index 0000000000000000000000000000000000000000..3b3cf95f64f04282f6f527a3bf42870688398dce
--- /dev/null
+++ b/sflphone-qt/ConfigDialog.h
@@ -0,0 +1,36 @@
+#ifndef HEADER_CONFIGDIALOG
+#define HEADER_CONFIGDIALOG
+
+#include <QtGui>
+#include "ui_ConfigDialog.h"
+#include "daemon_interface_p.h"
+#include "AccountList.h"
+
+//struct QListViewItem;
+
+class DaemonInterface;
+
+class ConfigurationDialog : public QDialog, private Ui::ConfigurationDialog
+{
+	Q_OBJECT
+
+public:
+	ConfigurationDialog(QDialog *parent = 0);
+	void loadAccount(QListWidgetItem * item);
+	void saveAccount(QListWidgetItem * item);
+
+private:
+	DaemonInterface * daemon;
+	AccountList * accountList;
+
+
+    private slots:
+        /* Insérez les prototypes de vos slots personnalisés ici */
+	void on_buttonNouveauCompte_clicked();
+	void on_edit1_Alias_textChanged(const QString & text);
+	void on_listWidgetComptes_currentItemChanged ( QListWidgetItem * current, QListWidgetItem * previous );
+};
+
+
+
+#endif 
diff --git a/sflphone-qt/ConfigDialog.ui b/sflphone-qt/ConfigDialog.ui
new file mode 100644
index 0000000000000000000000000000000000000000..2cf49be18a6ba501941c5dbb5856c40e6aeab463
--- /dev/null
+++ b/sflphone-qt/ConfigDialog.ui
@@ -0,0 +1,1112 @@
+<ui version="4.0" >
+ <author>Jérémy Quentin</author>
+ <class>ConfigurationDialog</class>
+ <widget class="QDialog" name="ConfigurationDialog" >
+  <property name="geometry" >
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>504</width>
+    <height>392</height>
+   </rect>
+  </property>
+  <property name="minimumSize" >
+   <size>
+    <width>0</width>
+    <height>0</height>
+   </size>
+  </property>
+  <property name="windowTitle" >
+   <string>Dialog</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout" >
+   <property name="margin" >
+    <number>1</number>
+   </property>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayoutDialog" >
+     <property name="sizeConstraint" >
+      <enum>QLayout::SetDefaultConstraint</enum>
+     </property>
+     <item>
+      <widget class="QListWidget" name="listOptions" >
+       <property name="sizePolicy" >
+        <sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
+         <horstretch>0</horstretch>
+         <verstretch>0</verstretch>
+        </sizepolicy>
+       </property>
+       <property name="minimumSize" >
+        <size>
+         <width>100</width>
+         <height>300</height>
+        </size>
+       </property>
+       <property name="maximumSize" >
+        <size>
+         <width>100</width>
+         <height>16777215</height>
+        </size>
+       </property>
+       <property name="sizeIncrement" >
+        <size>
+         <width>0</width>
+         <height>0</height>
+        </size>
+       </property>
+       <property name="mouseTracking" >
+        <bool>false</bool>
+       </property>
+       <property name="contextMenuPolicy" >
+        <enum>Qt::DefaultContextMenu</enum>
+       </property>
+       <property name="acceptDrops" >
+        <bool>false</bool>
+       </property>
+       <property name="layoutDirection" >
+        <enum>Qt::LeftToRight</enum>
+       </property>
+       <property name="autoFillBackground" >
+        <bool>true</bool>
+       </property>
+       <property name="autoScrollMargin" >
+        <number>16</number>
+       </property>
+       <property name="editTriggers" >
+        <set>QAbstractItemView::AllEditTriggers</set>
+       </property>
+       <property name="dragEnabled" >
+        <bool>true</bool>
+       </property>
+       <property name="iconSize" >
+        <size>
+         <width>200</width>
+         <height>200</height>
+        </size>
+       </property>
+       <property name="textElideMode" >
+        <enum>Qt::ElideMiddle</enum>
+       </property>
+       <property name="verticalScrollMode" >
+        <enum>QAbstractItemView::ScrollPerItem</enum>
+       </property>
+       <property name="horizontalScrollMode" >
+        <enum>QAbstractItemView::ScrollPerItem</enum>
+       </property>
+       <property name="movement" >
+        <enum>QListView::Static</enum>
+       </property>
+       <property name="flow" >
+        <enum>QListView::TopToBottom</enum>
+       </property>
+       <property name="resizeMode" >
+        <enum>QListView::Adjust</enum>
+       </property>
+       <property name="layoutMode" >
+        <enum>QListView::SinglePass</enum>
+       </property>
+       <property name="viewMode" >
+        <enum>QListView::IconMode</enum>
+       </property>
+       <property name="modelColumn" >
+        <number>0</number>
+       </property>
+       <property name="uniformItemSizes" >
+        <bool>false</bool>
+       </property>
+       <property name="wordWrap" >
+        <bool>false</bool>
+       </property>
+       <property name="sortingEnabled" >
+        <bool>false</bool>
+       </property>
+       <item>
+        <property name="text" >
+         <string>Général</string>
+        </property>
+        <property name="icon" >
+         <iconset resource="../../sflphone-qt/resources.qrc" >
+          <normaloff>:/Images/sflphone.png</normaloff>:/Images/sflphone.png</iconset>
+        </property>
+       </item>
+       <item>
+        <property name="text" >
+         <string>Affichage</string>
+        </property>
+        <property name="icon" >
+         <iconset resource="../../sflphone-qt/resources.qrc" >
+          <normaloff>:/Images/sflphone.png</normaloff>:/Images/sflphone.png</iconset>
+        </property>
+       </item>
+       <item>
+        <property name="text" >
+         <string>Comptes</string>
+        </property>
+        <property name="icon" >
+         <iconset resource="../../sflphone-qt/resources.qrc" >
+          <normaloff>:/Images/stock_person.svg</normaloff>:/Images/stock_person.svg</iconset>
+        </property>
+       </item>
+       <item>
+        <property name="text" >
+         <string>Audio</string>
+        </property>
+        <property name="icon" >
+         <iconset resource="../../sflphone-qt/resources.qrc" >
+          <normaloff>:/Images/icon_volume_off.svg</normaloff>:/Images/icon_volume_off.svg</iconset>
+        </property>
+       </item>
+      </widget>
+     </item>
+     <item>
+      <widget class="Line" name="lineOptions" >
+       <property name="orientation" >
+        <enum>Qt::Vertical</enum>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QStackedWidget" name="stackedWidgetOptions" >
+       <property name="currentIndex" >
+        <number>2</number>
+       </property>
+       <widget class="QWidget" name="page_General" >
+        <layout class="QVBoxLayout" name="verticalLayout_18" >
+         <property name="leftMargin" >
+          <number>4</number>
+         </property>
+         <item>
+          <widget class="QLabel" name="label_ConfGeneral" >
+           <property name="text" >
+            <string>Configuration des paramètres généraux</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="Line" name="line_ConfGeneral" >
+           <property name="orientation" >
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="groupBox1_Historique" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="title" >
+            <string>Historique des appels</string>
+           </property>
+           <layout class="QVBoxLayout" name="verticalLayout_19" >
+            <item>
+             <widget class="QWidget" native="1" name="widget_CapaciteHist" >
+              <layout class="QHBoxLayout" name="horizontalLayout_10" >
+               <item>
+                <widget class="QLabel" name="label_Capacite" >
+                 <property name="text" >
+                  <string>&amp;Capacité</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>horizontalSlider</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QSlider" name="horizontalSlider" >
+                 <property name="maximum" >
+                  <number>100</number>
+                 </property>
+                 <property name="orientation" >
+                  <enum>Qt::Horizontal</enum>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QSpinBox" name="spinBox_CapaciteHist" />
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="toolButtonEffacerHist" >
+              <property name="text" >
+               <string>&amp;Effacer l'Historique</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="groupBox2_Connexion" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="title" >
+            <string>Connexion</string>
+           </property>
+           <layout class="QFormLayout" name="formLayout_12" >
+            <item row="0" column="0" >
+             <widget class="QLabel" name="label_PortSIP" >
+              <property name="text" >
+               <string>Port SIP</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1" >
+             <widget class="QSpinBox" name="spinBox_PortSIP" />
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QWidget" native="1" name="widget_RemplissageConfGeneral" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+       <widget class="QWidget" name="page_Affichage" >
+        <layout class="QVBoxLayout" name="verticalLayout_9" >
+         <item>
+          <widget class="QLabel" name="label_ConfAffichage" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="text" >
+            <string>Configuration de l'affichage</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="Line" name="line_ConfAffichage" >
+           <property name="orientation" >
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QFrame" name="frameAffichage" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="frameShape" >
+            <enum>QFrame::StyledPanel</enum>
+           </property>
+           <property name="frameShadow" >
+            <enum>QFrame::Raised</enum>
+           </property>
+           <layout class="QVBoxLayout" name="verticalLayout_8" >
+            <item>
+             <widget class="QLabel" name="label1_Notifications" >
+              <property name="sizePolicy" >
+               <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <property name="text" >
+               <string>Activer les notifications du bureau</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QWidget" native="1" name="widget1_Notifications" >
+              <property name="sizePolicy" >
+               <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <layout class="QHBoxLayout" name="horizontalLayout_5" >
+               <item>
+                <widget class="QCheckBox" name="checkBox1_NotifAppels" >
+                 <property name="text" >
+                  <string>&amp;Appels entrants</string>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QCheckBox" name="checkBox2_NotifMessages" >
+                 <property name="text" >
+                  <string>&amp;Messages vocaux</string>
+                 </property>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <widget class="QLabel" name="label2_FenetrePrincipale" >
+              <property name="sizePolicy" >
+               <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <property name="text" >
+               <string>Faire apparaître la fenêtre principale</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QWidget" native="1" name="widget_FenetrePrincipale" >
+              <property name="sizePolicy" >
+               <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <layout class="QHBoxLayout" name="horizontalLayout_6" >
+               <item>
+                <widget class="QCheckBox" name="checkBox1_FenDemarrage" >
+                 <property name="text" >
+                  <string>Au &amp;démarrage</string>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QCheckBox" name="checkBox2_FenAppel" >
+                 <property name="text" >
+                  <string>Lors d'un appel &amp;entrant</string>
+                 </property>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <widget class="QWidget" native="1" name="widget_5" />
+            </item>
+           </layout>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+       <widget class="QWidget" name="page_Comptes" >
+        <layout class="QVBoxLayout" name="verticalLayout_2" >
+         <item>
+          <widget class="QLabel" name="label_ConfComptes" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="text" >
+            <string>Configuration des comptes utilisateur</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="Line" name="line_ConfComptes" >
+           <property name="orientation" >
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QWidget" native="1" name="widget1_ConfComptes" >
+           <layout class="QHBoxLayout" name="horizontalLayout_3" >
+            <item>
+             <widget class="QFrame" name="frame1_ListeComptes" >
+              <property name="minimumSize" >
+               <size>
+                <width>0</width>
+                <height>0</height>
+               </size>
+              </property>
+              <property name="maximumSize" >
+               <size>
+                <width>16777215</width>
+                <height>16777215</height>
+               </size>
+              </property>
+              <property name="frameShape" >
+               <enum>QFrame::StyledPanel</enum>
+              </property>
+              <property name="frameShadow" >
+               <enum>QFrame::Raised</enum>
+              </property>
+              <layout class="QVBoxLayout" name="verticalLayout_6" >
+               <item>
+                <widget class="QListWidget" name="listWidgetComptes" >
+                 <property name="sizePolicy" >
+                  <sizepolicy vsizetype="Expanding" hsizetype="Fixed" >
+                   <horstretch>0</horstretch>
+                   <verstretch>0</verstretch>
+                  </sizepolicy>
+                 </property>
+                 <property name="minimumSize" >
+                  <size>
+                   <width>150</width>
+                   <height>0</height>
+                  </size>
+                 </property>
+                 <property name="maximumSize" >
+                  <size>
+                   <width>150</width>
+                   <height>16777215</height>
+                  </size>
+                 </property>
+                 <property name="dragEnabled" >
+                  <bool>true</bool>
+                 </property>
+                </widget>
+               </item>
+               <item>
+                <widget class="QGroupBox" name="groupBoxGestionComptes" >
+                 <property name="sizePolicy" >
+                  <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
+                   <horstretch>0</horstretch>
+                   <verstretch>0</verstretch>
+                  </sizepolicy>
+                 </property>
+                 <property name="maximumSize" >
+                  <size>
+                   <width>16777215</width>
+                   <height>16777215</height>
+                  </size>
+                 </property>
+                 <property name="layoutDirection" >
+                  <enum>Qt::RightToLeft</enum>
+                 </property>
+                 <property name="title" >
+                  <string/>
+                 </property>
+                 <property name="alignment" >
+                  <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+                 </property>
+                 <layout class="QHBoxLayout" name="horizontalLayout_2" >
+                  <property name="spacing" >
+                   <number>0</number>
+                  </property>
+                  <property name="margin" >
+                   <number>0</number>
+                  </property>
+                  <item>
+                   <widget class="QToolButton" name="buttonSupprimerCompte" >
+                    <property name="sizePolicy" >
+                     <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                      <horstretch>0</horstretch>
+                      <verstretch>0</verstretch>
+                     </sizepolicy>
+                    </property>
+                    <property name="text" >
+                     <string/>
+                    </property>
+                    <property name="icon" >
+                     <iconset resource="../../sflphone-qt/resources.qrc" >
+                      <normaloff>:/Images/hang_up.svg</normaloff>:/Images/hang_up.svg</iconset>
+                    </property>
+                    <property name="shortcut" >
+                     <string>+</string>
+                    </property>
+                   </widget>
+                  </item>
+                  <item>
+                   <widget class="QToolButton" name="buttonNouveauCompte" >
+                    <property name="sizePolicy" >
+                     <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+                      <horstretch>0</horstretch>
+                      <verstretch>0</verstretch>
+                     </sizepolicy>
+                    </property>
+                    <property name="sizeIncrement" >
+                     <size>
+                      <width>0</width>
+                      <height>0</height>
+                     </size>
+                    </property>
+                    <property name="text" >
+                     <string>...</string>
+                    </property>
+                    <property name="icon" >
+                     <iconset resource="../../sflphone-qt/resources.qrc" >
+                      <normaloff>:/Images/accept.svg</normaloff>:/Images/accept.svg</iconset>
+                    </property>
+                   </widget>
+                  </item>
+                 </layout>
+                 <zorder>buttonSupprimerCompte</zorder>
+                 <zorder>toolButton</zorder>
+                 <zorder>toolButton_2</zorder>
+                 <zorder>buttonNouveauCompte</zorder>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+            <item>
+             <widget class="QFrame" name="frame2_EditComptes" >
+              <property name="sizePolicy" >
+               <sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
+                <horstretch>0</horstretch>
+                <verstretch>0</verstretch>
+               </sizepolicy>
+              </property>
+              <property name="frameShape" >
+               <enum>QFrame::StyledPanel</enum>
+              </property>
+              <property name="frameShadow" >
+               <enum>QFrame::Raised</enum>
+              </property>
+              <layout class="QFormLayout" name="formLayout_2" >
+               <property name="fieldGrowthPolicy" >
+                <enum>QFormLayout::ExpandingFieldsGrow</enum>
+               </property>
+               <item row="0" column="0" >
+                <widget class="QLabel" name="label1_Alias" >
+                 <property name="text" >
+                  <string>&amp;Alias</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit1_Alias</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="0" column="1" >
+                <widget class="QLineEdit" name="edit1_Alias" >
+                 <property name="minimumSize" >
+                  <size>
+                   <width>0</width>
+                   <height>0</height>
+                  </size>
+                 </property>
+                </widget>
+               </item>
+               <item row="1" column="0" >
+                <widget class="QLabel" name="label2_Protocole" >
+                 <property name="text" >
+                  <string>&amp;Protocole</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit2_Protocole</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="2" column="0" >
+                <widget class="QLabel" name="label3_Serveur" >
+                 <property name="text" >
+                  <string>&amp;Serveur</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit3_Serveur</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="3" column="0" >
+                <widget class="QLabel" name="label4_Usager" >
+                 <property name="text" >
+                  <string>&amp;Usager</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit4_Usager</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="4" column="0" >
+                <widget class="QLabel" name="label5_Mdp" >
+                 <property name="text" >
+                  <string>&amp;Mot de Passe</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit5_Mdp</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="5" column="0" >
+                <widget class="QLabel" name="label6_BoiteVocale" >
+                 <property name="text" >
+                  <string>&amp;Boîte Vocale</string>
+                 </property>
+                 <property name="buddy" >
+                  <cstring>edit6_BoiteVocale</cstring>
+                 </property>
+                </widget>
+               </item>
+               <item row="2" column="1" >
+                <widget class="QLineEdit" name="edit3_Serveur" >
+                 <property name="minimumSize" >
+                  <size>
+                   <width>0</width>
+                   <height>0</height>
+                  </size>
+                 </property>
+                </widget>
+               </item>
+               <item row="3" column="1" >
+                <widget class="QLineEdit" name="edit4_Usager" />
+               </item>
+               <item row="4" column="1" >
+                <widget class="QLineEdit" name="edit5_Mdp" >
+                 <property name="echoMode" >
+                  <enum>QLineEdit::Password</enum>
+                 </property>
+                </widget>
+               </item>
+               <item row="5" column="1" >
+                <widget class="QLineEdit" name="edit6_BoiteVocale" />
+               </item>
+               <item row="1" column="1" >
+                <widget class="QComboBox" name="edit2_Protocole" >
+                 <item>
+                  <property name="text" >
+                   <string>SIP</string>
+                  </property>
+                 </item>
+                 <item>
+                  <property name="text" >
+                   <string>IAX</string>
+                  </property>
+                 </item>
+                </widget>
+               </item>
+              </layout>
+             </widget>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="groupBox_ConfComptesCommuns" >
+           <property name="title" >
+            <string/>
+           </property>
+           <layout class="QVBoxLayout" name="verticalLayout_10" >
+            <item>
+             <widget class="QLabel" name="label_ConfComptesCommus" >
+              <property name="text" >
+               <string>Les paramètres STUN seront appliqués à tous les comptes</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <layout class="QFormLayout" name="formLayoutConfComptesCommus" >
+              <property name="fieldGrowthPolicy" >
+               <enum>QFormLayout::ExpandingFieldsGrow</enum>
+              </property>
+              <item row="0" column="0" >
+               <widget class="QCheckBox" name="checkBoxStun" >
+                <property name="text" >
+                 <string>Activer Stun</string>
+                </property>
+               </widget>
+              </item>
+              <item row="0" column="1" >
+               <widget class="QLineEdit" name="lineEdit_Stun" >
+                <property name="enabled" >
+                 <bool>false</bool>
+                </property>
+               </widget>
+              </item>
+             </layout>
+            </item>
+           </layout>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+       <widget class="QWidget" name="page_Audio" >
+        <layout class="QVBoxLayout" name="verticalLayout_5" >
+         <item>
+          <widget class="QLabel" name="label_ConfAudio" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="text" >
+            <string>Configuration des paramètres audio</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="Line" name="line_ConfAudio" >
+           <property name="orientation" >
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="groupBox1_Audio" >
+           <property name="title" >
+            <string/>
+           </property>
+           <layout class="QFormLayout" name="formLayout_3" >
+            <item row="0" column="0" >
+             <widget class="QLabel" name="label_Interface" >
+              <property name="text" >
+               <string>&amp;Interface audio</string>
+              </property>
+              <property name="buddy" >
+               <cstring>comboBox_Interface</cstring>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1" >
+             <widget class="QComboBox" name="comboBox_Interface" >
+              <property name="minimumSize" >
+               <size>
+                <width>100</width>
+                <height>0</height>
+               </size>
+              </property>
+              <item>
+               <property name="text" >
+                <string>ALSA</string>
+               </property>
+              </item>
+              <item>
+               <property name="text" >
+                <string>PulseAudio</string>
+               </property>
+              </item>
+             </widget>
+            </item>
+            <item row="1" column="0" >
+             <widget class="QCheckBox" name="checkBox_Sonneries" >
+              <property name="text" >
+               <string>&amp;Activer les sonneries</string>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="groupBox2_Codecs" >
+           <property name="title" >
+            <string>&amp;Codecs</string>
+           </property>
+           <layout class="QGridLayout" name="gridLayout" >
+            <item row="0" column="0" >
+             <widget class="QTableView" name="tableViewCodecs" >
+              <property name="dragEnabled" >
+               <bool>true</bool>
+              </property>
+              <property name="sortingEnabled" >
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="2" >
+             <layout class="QVBoxLayout" name="verticalLayout_OrdreCodecs" >
+              <property name="leftMargin" >
+               <number>0</number>
+              </property>
+              <property name="rightMargin" >
+               <number>0</number>
+              </property>
+              <item>
+               <widget class="QToolButton" name="toolButton_MonterCodec" >
+                <property name="text" >
+                 <string>...</string>
+                </property>
+               </widget>
+              </item>
+              <item>
+               <widget class="QToolButton" name="toolButton_DescendreCodec" >
+                <property name="text" >
+                 <string>...</string>
+                </property>
+               </widget>
+              </item>
+             </layout>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QStackedWidget" name="stackedWidget_ParametresSpecif" >
+           <property name="sizePolicy" >
+            <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="currentIndex" >
+            <number>1</number>
+           </property>
+           <widget class="QWidget" name="page1_Alsa" >
+            <layout class="QVBoxLayout" name="verticalLayout_20" >
+             <property name="margin" >
+              <number>0</number>
+             </property>
+             <item>
+              <widget class="QGroupBox" name="groupBox_Alsa" >
+               <property name="title" >
+                <string>Paramètres ALSA</string>
+               </property>
+               <layout class="QFormLayout" name="formLayout_4" >
+                <item row="2" column="1" >
+                 <widget class="QComboBox" name="comboBox2_Entree" >
+                  <property name="minimumSize" >
+                   <size>
+                    <width>100</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item row="2" column="0" >
+                 <widget class="QLabel" name="label2_Entree" >
+                  <property name="text" >
+                   <string>&amp;Entrée</string>
+                  </property>
+                  <property name="buddy" >
+                   <cstring>comboBox2_Entree</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item row="3" column="0" >
+                 <widget class="QLabel" name="label3_Sortie" >
+                  <property name="text" >
+                   <string>&amp;Sortie</string>
+                  </property>
+                  <property name="buddy" >
+                   <cstring>comboBox3_Sortie</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item row="3" column="1" >
+                 <widget class="QComboBox" name="comboBox3_Sortie" >
+                  <property name="minimumSize" >
+                   <size>
+                    <width>100</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item row="0" column="0" >
+                 <widget class="QLabel" name="label1_GreffonAlsa" >
+                  <property name="text" >
+                   <string>&amp;Greffon ALSA</string>
+                  </property>
+                  <property name="buddy" >
+                   <cstring>comboBox1_GreffonAlsa</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item row="0" column="1" >
+                 <widget class="QComboBox" name="comboBox1_GreffonAlsa" >
+                  <property name="minimumSize" >
+                   <size>
+                    <width>100</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+           <widget class="QWidget" name="page2_PulseAudio" >
+            <layout class="QVBoxLayout" name="verticalLayout_7" >
+             <item>
+              <widget class="QGroupBox" name="groupBox_PulseAudio" >
+               <property name="sizePolicy" >
+                <sizepolicy vsizetype="Preferred" hsizetype="Expanding" >
+                 <horstretch>0</horstretch>
+                 <verstretch>0</verstretch>
+                </sizepolicy>
+               </property>
+               <property name="title" >
+                <string>Paramètres PulseAudio</string>
+               </property>
+               <layout class="QFormLayout" name="formLayout_11" >
+                <item row="0" column="0" >
+                 <widget class="QCheckBox" name="checkBox_ModifVolumeApps" >
+                  <property name="text" >
+                   <string>Autoriser à &amp;modifier le volume des autres applications</string>
+                  </property>
+                 </widget>
+                </item>
+                <item row="1" column="0" >
+                 <widget class="QPushButton" name="pushButton" >
+                  <property name="text" >
+                   <string>PushButton</string>
+                  </property>
+                  <property name="default" >
+                   <bool>false</bool>
+                  </property>
+                 </widget>
+                </item>
+               </layout>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="Line" name="lineDialog" >
+     <property name="orientation" >
+      <enum>Qt::Horizontal</enum>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <widget class="QDialogButtonBox" name="buttonBoxDialog" >
+     <property name="layoutDirection" >
+      <enum>Qt::LeftToRight</enum>
+     </property>
+     <property name="orientation" >
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons" >
+      <set>QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::RestoreDefaults</set>
+     </property>
+     <property name="centerButtons" >
+      <bool>false</bool>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <layoutdefault spacing="4" margin="4" />
+ <resources>
+  <include location="../../sflphone-qt/resources.qrc" />
+ </resources>
+ <connections>
+  <connection>
+   <sender>buttonBoxDialog</sender>
+   <signal>accepted()</signal>
+   <receiver>ConfigurationDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>231</x>
+     <y>390</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBoxDialog</sender>
+   <signal>rejected()</signal>
+   <receiver>ConfigurationDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>299</x>
+     <y>390</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>listOptions</sender>
+   <signal>currentRowChanged(int)</signal>
+   <receiver>stackedWidgetOptions</receiver>
+   <slot>setCurrentIndex(int)</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>73</x>
+     <y>92</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>191</x>
+     <y>82</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>checkBoxStun</sender>
+   <signal>toggled(bool)</signal>
+   <receiver>lineEdit_Stun</receiver>
+   <slot>setEnabled(bool)</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>228</x>
+     <y>319</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>441</x>
+     <y>319</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>comboBox_Interface</sender>
+   <signal>currentIndexChanged(int)</signal>
+   <receiver>stackedWidget_ParametresSpecif</receiver>
+   <slot>setCurrentIndex(int)</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>378</x>
+     <y>52</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>331</x>
+     <y>342</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>horizontalSlider</sender>
+   <signal>valueChanged(int)</signal>
+   <receiver>spinBox_CapaciteHist</receiver>
+   <slot>setValue(int)</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>170</x>
+     <y>31</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>196</x>
+     <y>31</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>spinBox_CapaciteHist</sender>
+   <signal>valueChanged(int)</signal>
+   <receiver>horizontalSlider</receiver>
+   <slot>setValue(int)</slot>
+   <hints>
+    <hint type="sourcelabel" >
+     <x>196</x>
+     <y>31</y>
+    </hint>
+    <hint type="destinationlabel" >
+     <x>170</x>
+     <y>31</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/sflphone-qt/accept.svg b/sflphone-qt/accept.svg
new file mode 100644
index 0000000000000000000000000000000000000000..8d84af6b017730112f197bf2eafd5c0c00adbace
--- /dev/null
+++ b/sflphone-qt/accept.svg
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="24"
+   height="24"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docbase="/home/plbeaudoin/SFLPhone/sflphone/sflphone-gtk/pixmaps"
+   sodipodi:docname="accept.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   sodipodi:modified="true">
+  <defs
+     id="defs4">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2433">
+      <stop
+         style="stop-color:#008000;stop-opacity:1;"
+         offset="0"
+         id="stop2435" />
+      <stop
+         style="stop-color:#008000;stop-opacity:0;"
+         offset="1"
+         id="stop2437" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 12 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="24 : 12 : 1"
+       inkscape:persp3d-origin="12 : 8 : 1"
+       id="perspective32" />
+    <linearGradient
+       id="linearGradient4269">
+      <stop
+         style="stop-color:#26b000;stop-opacity:1;"
+         offset="0"
+         id="stop4271" />
+      <stop
+         style="stop-color:#26b000;stop-opacity:0;"
+         offset="1"
+         id="stop4273" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4183">
+      <stop
+         id="stop4185"
+         offset="0"
+         style="stop-color:#26b000;stop-opacity:1;" />
+      <stop
+         id="stop4187"
+         offset="1"
+         style="stop-color:#145f00;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4167">
+      <stop
+         style="stop-color:#80000e;stop-opacity:1;"
+         offset="0"
+         id="stop4169" />
+      <stop
+         style="stop-color:#b00014;stop-opacity:0;"
+         offset="1"
+         id="stop4171" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient4275"
+       x1="15.630395"
+       y1="22.874208"
+       x2="15.630395"
+       y2="8.5305319"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.256521,0,0,-1.256521,-7.854319,28.773309)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2433"
+       id="linearGradient2439"
+       x1="2.965755"
+       y1="-0.80084854"
+       x2="32.578228"
+       y2="16.739393"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="16"
+     inkscape:cx="18.87396"
+     inkscape:cy="2.756874"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="32px"
+     height="32px"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-width="1331"
+     inkscape:window-height="922"
+     inkscape:window-x="169"
+     inkscape:window-y="24"
+     showgrid="false">
+    <sodipodi:guide
+       orientation="vertical"
+       position="15.982143"
+       id="guide3146" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <path
+       style="opacity:1;fill:url(#linearGradient4275);fill-opacity:1;stroke:none;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 7.3417195,21.902705 L 7.3417195,9.4553023 L 3.2972955,9.4553023 L 12.250001,0.03140142 L 21.202707,9.4553023 L 17.158282,9.4553023 L 17.158282,21.902705 L 7.3417195,21.902705 z "
+       id="rect4262" />
+    <g
+       id="g2181"
+       transform="matrix(0.8753565,0,0,0.8754652,-11.955751,23.215691)"
+       style="fill:none;stroke:#000000;stroke-opacity:0.44968554">
+      <path
+         style="opacity:1;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.65573961;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.44968554"
+         d="M 41.109694,-0.41817229 C 40.505298,0.20454826 39.040867,0.77635346 37.592239,0.77635106 C 36.102089,0.77635106 34.114653,0.15682998 33.532659,-0.49267807 L 33.569913,-2.0031726 L 33.569913,-3.0835065 C 31.027414,-3.5787101 30.997014,-3.8285637 27.525623,-3.8285643 C 24.054233,-3.8285649 23.830777,-3.5759718 21.29017,-3.0462535 L 21.29017,-0.3436665 C 20.685773,0.27905404 19.221343,0.87609843 17.772714,0.87609724 C 16.282564,0.87609724 14.623294,0.43325774 13.915083,-0.41817229 L 14.138601,-5.7646408 C 18.129172,-7.3187814 22.030595,-8.3970767 27.437882,-8.5586077 C 32.38601,-8.450833 36.259126,-7.7053161 40.886177,-5.8763994 L 41.109694,-0.41817229 z "
+         id="path2183"
+         sodipodi:nodetypes="csccczccsccccc" />
+    </g>
+    <g
+       id="g4160"
+       transform="matrix(0.880119,0,0,0.880119,-2.1102174,12.142342)"
+       style="fill:url(#linearGradient2439);fill-opacity:1">
+      <path
+         sodipodi:nodetypes="cccsccsccsccc"
+         id="path3153"
+         d="M 16.100095,4.59375 C 10.946289,4.7477067 7.2256019,5.7999634 3.4220983,7.28125 L 3.2345983,10.227679 C 3.7846813,10.972881 5.0136533,11.508929 6.4220983,11.508929 C 7.7912983,11.508929 8.9758403,11.004648 9.5470983,10.290179 L 9.5470983,9.1875 C 11.968608,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 20.38467,8.6842603 22.807982,9.15625 L 22.807982,10.165179 C 23.37924,10.879648 24.563781,11.383929 25.932982,11.383929 C 27.341427,11.383929 28.53915,10.847881 29.089232,10.102679 L 28.901732,7.15625 C 24.491586,5.413068 20.816266,4.6964725 16.100095,4.59375 z "
+         style="opacity:1;fill:url(#linearGradient2439);fill-opacity:1;stroke:#0f5600;stroke-width:0.62500000000000000;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccsccc"
+         id="path3161"
+         d="M 6.4075414,13.019293 C 7.7882612,13.019293 8.983936,12.610489 9.5600003,12.01696 L 9.5600003,10.430989 C 8.8231919,11.109285 7.789205,11.494948 6.4075414,11.494948 C 4.9854414,11.494948 3.9881276,11.13019 3.2127675,10.48174 L 3.2127675,11.966208 C 3.7674786,12.585269 4.9872465,13.019293 6.4075414,13.019293 z "
+         style="opacity:1;fill:url(#linearGradient2439);fill-opacity:1;stroke:#0f5600;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccsccc"
+         id="path4140"
+         d="M 25.967532,12.944669 C 27.348252,12.944669 28.543927,12.535865 29.119991,11.942336 L 29.119991,10.356365 C 28.383183,11.034661 27.349196,11.420324 25.967532,11.420324 C 24.545432,11.420324 23.548118,11.055566 22.772758,10.407116 L 22.772758,11.891584 C 23.327469,12.510645 24.547237,12.944669 25.967532,12.944669 z "
+         style="opacity:1;fill:url(#linearGradient2439);fill-opacity:1;stroke:#0f5600;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccsccc"
+         id="path4246"
+         d="M 6.6822725,11.157918 C 8.0629923,11.157918 8.7535908,10.73333 9.3296551,10.139801 L 9.8978659,7.4805434 C 9.1610575,8.1588394 8.1270706,8.5445024 6.745407,8.5445024 C 5.323307,8.5445024 4.4996132,8.1797444 3.7242531,7.5312944 L 3.4874986,10.104833 C 4.0422097,10.723894 5.2619776,11.157918 6.6822725,11.157918 z "
+         style="opacity:1;fill:url(#linearGradient2439);fill-opacity:1;stroke:none;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccsccc"
+         id="path4258"
+         d="M 25.633599,11.055324 C 24.252879,11.055324 23.56228,10.630736 22.986216,10.037207 L 22.418005,7.3779497 C 23.154814,8.0562457 24.188801,8.4419087 25.570464,8.4419087 C 26.992564,8.4419087 27.816258,8.0771507 28.591618,7.4287007 L 28.828373,10.002239 C 28.273662,10.6213 27.053894,11.055324 25.633599,11.055324 z "
+         style="opacity:1;fill:url(#linearGradient2439);fill-opacity:1;stroke:none;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+    </g>
+  </g>
+</svg>
diff --git a/sflphone-qt/config_en.ts b/sflphone-qt/config_en.ts
new file mode 100644
index 0000000000000000000000000000000000000000..1819343595da581d5dc8ec7676a5c24e7422a7dd
--- /dev/null
+++ b/sflphone-qt/config_en.ts
@@ -0,0 +1,181 @@
+<!DOCTYPE TS><TS>
+<context>
+    <name>ConfigurationDialog</name>
+    <message>
+        <source>Dialog</source>
+        <translation>Dialog</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Général</source>
+        <translation>General</translation>
+    </message>
+    <message>
+        <source>Affichage</source>
+        <translation>Display</translation>
+    </message>
+    <message>
+        <source>Comptes</source>
+        <translation>Accounts</translation>
+    </message>
+    <message>
+        <source>Audio</source>
+        <translation>Audio</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Configuration des paramètres généraux</source>
+        <translation>General settings</translation>
+    </message>
+    <message>
+        <source>Historique des appels</source>
+        <translation>Call history</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>&amp;Capacité</source>
+        <translation>&amp;Capacity</translation>
+    </message>
+    <message>
+        <source>&amp;Effacer l&apos;Historique</source>
+        <translation>&amp;Clean history</translation>
+    </message>
+    <message>
+        <source>Connexion</source>
+        <translation>Connection</translation>
+    </message>
+    <message>
+        <source>Port SIP</source>
+        <translation>SIP port</translation>
+    </message>
+    <message>
+        <source>Configuration de l&apos;affichage</source>
+        <translation>Display settings</translation>
+    </message>
+    <message>
+        <source>Activer les notifications du bureau</source>
+        <translation>Enable desktop notifications</translation>
+    </message>
+    <message>
+        <source>&amp;Appels entrants</source>
+        <translation>Calls</translation>
+    </message>
+    <message>
+        <source>&amp;Messages vocaux</source>
+        <translation>Vocal messages</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Faire apparaître la fenêtre principale</source>
+        <translation>Show the main window</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Au &amp;démarrage</source>
+        <translation>At &amp;start</translation>
+    </message>
+    <message>
+        <source>Lors d&apos;un appel &amp;entrant</source>
+        <translation>When &amp;receiving a call</translation>
+    </message>
+    <message>
+        <source>Configuration des comptes utilisateur</source>
+        <translation>Acounts settings</translation>
+    </message>
+    <message>
+        <source>+</source>
+        <translation>+</translation>
+    </message>
+    <message>
+        <source>...</source>
+        <translation>...</translation>
+    </message>
+    <message>
+        <source>&amp;Alias</source>
+        <translation>&amp;Alias</translation>
+    </message>
+    <message>
+        <source>&amp;Protocole</source>
+        <translation>&amp;Protocole</translation>
+    </message>
+    <message>
+        <source>&amp;Serveur</source>
+        <translation>&amp;Server</translation>
+    </message>
+    <message>
+        <source>&amp;Usager</source>
+        <translation>&amp;User</translation>
+    </message>
+    <message>
+        <source>&amp;Mot de Passe</source>
+        <translation>Pass&amp;Word</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>&amp;Boîte Vocale</source>
+        <translation>&amp;Voicemail</translation>
+    </message>
+    <message>
+        <source>SIP</source>
+        <translation>SIP</translation>
+    </message>
+    <message>
+        <source>IAX</source>
+        <translation>IAX</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Les paramètres STUN seront appliqués à tous les comptes</source>
+        <translation>STUN settings will be applied on all accounts</translation>
+    </message>
+    <message>
+        <source>Activer Stun</source>
+        <translation>Enable STUN</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Configuration des paramètres audio</source>
+        <translation>Audio settings</translation>
+    </message>
+    <message>
+        <source>&amp;Interface audio</source>
+        <translation>Audio &amp;interface</translation>
+    </message>
+    <message>
+        <source>ALSA</source>
+        <translation>ALSA</translation>
+    </message>
+    <message>
+        <source>PulseAudio</source>
+        <translation>PulseAudio</translation>
+    </message>
+    <message>
+        <source>&amp;Activer les sonneries</source>
+        <translation>Enable &amp;ringtones</translation>
+    </message>
+    <message>
+        <source>&amp;Codecs</source>
+        <translation>&amp;Codecs</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Paramètres ALSA</source>
+        <translation>ALSA settings</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>&amp;Entrée</source>
+        <translation>&amp;Entry</translation>
+    </message>
+    <message>
+        <source>&amp;Sortie</source>
+        <translation>&amp;Out</translation>
+    </message>
+    <message>
+        <source>&amp;Greffon ALSA</source>
+        <translation>ALSA &amp;plugin</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Paramètres PulseAudio</source>
+        <translation>Pulseaudio settings</translation>
+    </message>
+    <message encoding="UTF-8">
+        <source>Autoriser à &amp;modifier le volume des autres applications</source>
+        <translation>Allow to &amp;modify other applications' volume</translation>
+    </message>
+    <message>
+        <source>PushButton</source>
+        <translation>PushButton</translation>
+    </message>
+</context>
+</TS>
diff --git a/sflphone-qt/daemon_interface.cpp b/sflphone-qt/daemon_interface.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c6d316c988a78b519b49d60c515869608108b4ce
--- /dev/null
+++ b/sflphone-qt/daemon_interface.cpp
@@ -0,0 +1,26 @@
+/*
+ * This file was generated by dbusxml2cpp version 0.6
+ * Command line was: dbusxml2cpp -c DaemonInterface -p daemon_interface_p.h:daemon_interface.cpp -i metatypes.h configurationmanager-introspec.xml
+ *
+ * dbusxml2cpp is Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
+ *
+ * This is an auto-generated file.
+ * This file may have been hand-edited. Look for HAND-EDIT comments
+ * before re-generating it.
+ */
+
+#include "daemon_interface_p.h"
+
+/*
+ * Implementation of interface class DaemonInterface
+ */
+
+DaemonInterface::DaemonInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent)
+    : QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
+{
+}
+
+DaemonInterface::~DaemonInterface()
+{
+}
+
diff --git a/sflphone-qt/daemon_interface_p.h b/sflphone-qt/daemon_interface_p.h
new file mode 100644
index 0000000000000000000000000000000000000000..f3cf9d1ed2edb357424a29642ef106e00ba8e9d9
--- /dev/null
+++ b/sflphone-qt/daemon_interface_p.h
@@ -0,0 +1,412 @@
+/*
+ * This file was generated by dbusxml2cpp version 0.6
+ * Command line was: dbusxml2cpp -c DaemonInterface -p daemon_interface_p.h:daemon_interface.cpp -i metatypes.h configurationmanager-introspec.xml
+ *
+ * dbusxml2cpp is Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
+ *
+ * This is an auto-generated file.
+ * Do not edit! All changes made to it will be lost.
+ */
+
+#ifndef DAEMON_INTERFACE_P_H_1234818066
+#define DAEMON_INTERFACE_P_H_1234818066
+
+#include <QtCore/QObject>
+#include <QtCore/QByteArray>
+#include <QtCore/QList>
+#include <QtCore/QMap>
+#include <QtCore/QString>
+#include <QtCore/QStringList>
+#include <QtCore/QVariant>
+#include <QtDBus/QtDBus>
+#include "metatypes.h"
+
+/*
+ * Proxy class for interface org.sflphone.SFLphone.ConfigurationManager
+ */
+class DaemonInterface: public QDBusAbstractInterface
+{
+    Q_OBJECT
+public:
+    static inline const char *staticInterfaceName()
+    { return "org.sflphone.SFLphone.ConfigurationManager"; }
+
+public:
+    DaemonInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = 0);
+
+    ~DaemonInterface();
+
+public Q_SLOTS: // METHODS
+    inline QDBusReply<void> addAccount(MapStringString details)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(details);
+        return callWithArgumentList(QDBus::Block, QLatin1String("addAccount"), argumentList);
+    }
+
+    inline QDBusReply<void> enableStun()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("enableStun"), argumentList);
+    }
+
+    inline QDBusReply<MapStringString> getAccountDetails(const QString &accountID)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(accountID);
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAccountDetails"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getAccountList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAccountList"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getActiveCodecList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getActiveCodecList"), argumentList);
+    }
+
+    inline QDBusReply<int> getAudioDeviceIndex(const QString &name)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(name);
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAudioDeviceIndex"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getAudioInputDeviceList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAudioInputDeviceList"), argumentList);
+    }
+
+    inline QDBusReply<int> getAudioManager()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAudioManager"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getAudioOutputDeviceList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getAudioOutputDeviceList"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getCodecDetails(int payload)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(payload);
+        return callWithArgumentList(QDBus::Block, QLatin1String("getCodecDetails"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getCodecList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getCodecList"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getCurrentAudioDevicesIndex()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getCurrentAudioDevicesIndex"), argumentList);
+    }
+
+    inline QDBusReply<QString> getCurrentAudioOutputPlugin()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getCurrentAudioOutputPlugin"), argumentList);
+    }
+
+    inline QDBusReply<int> getDialpad()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getDialpad"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getInputAudioPluginList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getInputAudioPluginList"), argumentList);
+    }
+
+    inline QDBusReply<int> getMailNotify()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getMailNotify"), argumentList);
+    }
+
+    inline QDBusReply<int> getMaxCalls()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getMaxCalls"), argumentList);
+    }
+
+    inline QDBusReply<int> getNotify()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getNotify"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getOutputAudioPluginList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getOutputAudioPluginList"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getPlaybackDeviceList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getPlaybackDeviceList"), argumentList);
+    }
+
+    inline QDBusReply<int> getPulseAppVolumeControl()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getPulseAppVolumeControl"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getRecordDeviceList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getRecordDeviceList"), argumentList);
+    }
+
+    inline QDBusReply<QString> getRingtoneChoice()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getRingtoneChoice"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getRingtoneList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getRingtoneList"), argumentList);
+    }
+
+    inline QDBusReply<int> getSearchbar()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getSearchbar"), argumentList);
+    }
+
+    inline QDBusReply<int> getSipPort()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getSipPort"), argumentList);
+    }
+
+    inline QDBusReply<QString> getStunServer()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getStunServer"), argumentList);
+    }
+
+    inline QDBusReply<QStringList> getToneLocaleList()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getToneLocaleList"), argumentList);
+    }
+
+    inline QDBusReply<QString> getVersion()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getVersion"), argumentList);
+    }
+
+    inline QDBusReply<int> getVolumeControls()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("getVolumeControls"), argumentList);
+    }
+
+    inline QDBusReply<int> isIax2Enabled()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("isIax2Enabled"), argumentList);
+    }
+
+    inline QDBusReply<int> isRingtoneEnabled()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("isRingtoneEnabled"), argumentList);
+    }
+
+    inline QDBusReply<int> isStartHidden()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("isStartHidden"), argumentList);
+    }
+
+    inline QDBusReply<int> isStunEnabled()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("isStunEnabled"), argumentList);
+    }
+
+    inline QDBusReply<int> popupMode()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("popupMode"), argumentList);
+    }
+
+    inline QDBusReply<void> removeAccount(const QString &accoundID)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(accoundID);
+        return callWithArgumentList(QDBus::Block, QLatin1String("removeAccount"), argumentList);
+    }
+
+    inline QDBusReply<void> ringtoneEnabled()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("ringtoneEnabled"), argumentList);
+    }
+
+    inline QDBusReply<void> sendRegister(const QString &accountID, int expire)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(accountID) << qVariantFromValue(expire);
+        return callWithArgumentList(QDBus::Block, QLatin1String("sendRegister"), argumentList);
+    }
+
+    inline QDBusReply<void> setAccountDetails(const QString &accountID, MapStringString details)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(accountID) << qVariantFromValue(details);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setAccountDetails"), argumentList);
+    }
+
+    inline QDBusReply<void> setActiveCodecList(const QStringList &list)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(list);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setActiveCodecList"), argumentList);
+    }
+
+    inline QDBusReply<void> setAudioInputDevice(int index)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(index);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setAudioInputDevice"), argumentList);
+    }
+
+    inline QDBusReply<void> setAudioManager(int api)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(api);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setAudioManager"), argumentList);
+    }
+
+    inline QDBusReply<void> setAudioOutputDevice(int index)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(index);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setAudioOutputDevice"), argumentList);
+    }
+
+    inline QDBusReply<void> setDialpad()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setDialpad"), argumentList);
+    }
+
+    inline QDBusReply<void> setInputAudioPlugin(const QString &audioPlugin)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(audioPlugin);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setInputAudioPlugin"), argumentList);
+    }
+
+    inline QDBusReply<void> setMailNotify()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setMailNotify"), argumentList);
+    }
+
+    inline QDBusReply<void> setMaxCalls(int calls)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(calls);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setMaxCalls"), argumentList);
+    }
+
+    inline QDBusReply<void> setNotify()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setNotify"), argumentList);
+    }
+
+    inline QDBusReply<void> setOutputAudioPlugin(const QString &audioPlugin)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(audioPlugin);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setOutputAudioPlugin"), argumentList);
+    }
+
+    inline QDBusReply<void> setPulseAppVolumeControl()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setPulseAppVolumeControl"), argumentList);
+    }
+
+    inline QDBusReply<void> setRingtoneChoice(const QString &tone)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(tone);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setRingtoneChoice"), argumentList);
+    }
+
+    inline QDBusReply<void> setSearchbar()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setSearchbar"), argumentList);
+    }
+
+    inline QDBusReply<void> setSipPort(int port)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(port);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setSipPort"), argumentList);
+    }
+
+    inline QDBusReply<void> setStunServer(const QString &server)
+    {
+        QList<QVariant> argumentList;
+        argumentList << qVariantFromValue(server);
+        return callWithArgumentList(QDBus::Block, QLatin1String("setStunServer"), argumentList);
+    }
+
+    inline QDBusReply<void> setVolumeControls()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("setVolumeControls"), argumentList);
+    }
+
+    inline QDBusReply<void> startHidden()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("startHidden"), argumentList);
+    }
+
+    inline QDBusReply<void> switchPopupMode()
+    {
+        QList<QVariant> argumentList;
+        return callWithArgumentList(QDBus::Block, QLatin1String("switchPopupMode"), argumentList);
+    }
+
+Q_SIGNALS: // SIGNALS
+    void accountsChanged();
+    void errorAlert(int code);
+    void parametersChanged(MapStringString details);
+};
+
+namespace org {
+  namespace sflphone {
+    namespace SFLphone {
+      typedef ::DaemonInterface ConfigurationManager;
+    }
+  }
+}
+#endif
diff --git a/sflphone-qt/daemon_interface_singleton.cpp b/sflphone-qt/daemon_interface_singleton.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..7257b97a1d875c95c9915114c063eb83ae94c395
--- /dev/null
+++ b/sflphone-qt/daemon_interface_singleton.cpp
@@ -0,0 +1,13 @@
+#include "daemon_interface_singleton.h"
+
+
+DaemonInterface * DaemonInterfaceSingleton::daemon = new DaemonInterface("org.sflphone.SFLphone", "/org/sflphone/SFLphone/ConfigurationManager", QDBusConnection::sessionBus());
+
+
+DaemonInterface & DaemonInterfaceSingleton::getInstance(){
+	if(!daemon){
+		daemon = new DaemonInterface("org.sflphone.SFLphone", "/org/sflphone/SFLphone/ConfigurationManager", QDBusConnection::sessionBus());
+	}
+	return *daemon;
+}
+	
\ No newline at end of file
diff --git a/sflphone-qt/daemon_interface_singleton.h b/sflphone-qt/daemon_interface_singleton.h
new file mode 100644
index 0000000000000000000000000000000000000000..35c21ae01755b5531962db9008a00afcb91e6340
--- /dev/null
+++ b/sflphone-qt/daemon_interface_singleton.h
@@ -0,0 +1,15 @@
+#include "daemon_interface_p.h"
+
+class DaemonInterfaceSingleton
+{
+
+private:
+
+	static DaemonInterface * daemon;
+
+public:
+
+	//TODO verifier pointeur ou pas pour singleton en c++
+	static DaemonInterface & getInstance();
+
+};
diff --git a/sflphone-qt/hang_up.svg b/sflphone-qt/hang_up.svg
new file mode 100644
index 0000000000000000000000000000000000000000..8fa89cfe6e7eb35f4102ecfbdbc598fd183408c2
--- /dev/null
+++ b/sflphone-qt/hang_up.svg
@@ -0,0 +1,772 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="24"
+   height="24"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docbase="/home/plbeaudoin/SFLPhone/sflphone/sflphone-gtk/pixmaps"
+   sodipodi:docname="hang_up.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   sodipodi:modified="true">
+  <defs
+     id="defs4">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2500">
+      <stop
+         style="stop-color:#800000;stop-opacity:1;"
+         offset="0"
+         id="stop2502" />
+      <stop
+         style="stop-color:#800000;stop-opacity:0;"
+         offset="1"
+         id="stop2504" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 12 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="24 : 12 : 1"
+       inkscape:persp3d-origin="12 : 8 : 1"
+       id="perspective127" />
+    <linearGradient
+       id="linearGradient4357"
+       inkscape:collect="always">
+      <stop
+         id="stop4359"
+         offset="0"
+         style="stop-color:#b00000;stop-opacity:1" />
+      <stop
+         id="stop4361"
+         offset="1"
+         style="stop-color:#b02100;stop-opacity:0" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4269">
+      <stop
+         style="stop-color:#b00014;stop-opacity:1;"
+         offset="0"
+         id="stop4271" />
+      <stop
+         style="stop-color:#b00014;stop-opacity:0;"
+         offset="1"
+         id="stop4273" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4183">
+      <stop
+         id="stop4185"
+         offset="0"
+         style="stop-color:#b00014;stop-opacity:1;" />
+      <stop
+         id="stop4187"
+         offset="1"
+         style="stop-color:#70000c;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4167">
+      <stop
+         style="stop-color:#80000e;stop-opacity:1;"
+         offset="0"
+         id="stop4169" />
+      <stop
+         style="stop-color:#b00014;stop-opacity:0;"
+         offset="1"
+         id="stop4171" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4167"
+       id="linearGradient4173"
+       x1="7.1249466"
+       y1="23.946518"
+       x2="20.06057"
+       y2="16.478132"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(6.313453e-2,-0.384275)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4357"
+       id="linearGradient4275"
+       x1="15.630395"
+       y1="22.874208"
+       x2="15.806232"
+       y2="6.6770978"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.158192,0,0,1.158192,-6.593576,-2.538854)" />
+    <linearGradient
+       id="linearGradient2278">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="0"
+         id="stop2280" />
+      <stop
+         style="stop-color:#fefee7;stop-opacity:0.89308178"
+         offset="1"
+         id="stop2282" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2284">
+      <stop
+         style="stop-color:#1db000;stop-opacity:1;"
+         offset="0"
+         id="stop2286" />
+      <stop
+         style="stop-color:#1db000;stop-opacity:0;"
+         offset="1"
+         id="stop2288" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2290">
+      <stop
+         id="stop2292"
+         offset="0"
+         style="stop-color:#1db000;stop-opacity:1;" />
+      <stop
+         id="stop2294"
+         offset="1"
+         style="stop-color:#0f5f00;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2392">
+      <stop
+         style="stop-color:#80000e;stop-opacity:1;"
+         offset="0"
+         id="stop2394" />
+      <stop
+         style="stop-color:#b00014;stop-opacity:0;"
+         offset="1"
+         id="stop2396" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient2390"
+       x1="16.826796"
+       y1="6.7288713"
+       x2="27.5625"
+       y2="22.512505"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.875025,0,0,0.875025,0.666703,0.177907)" />
+    <linearGradient
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2304"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(0.426158,-2.762136)"
+       gradientUnits="userSpaceOnUse"
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       id="linearGradient2306"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="10.576721"
+       x2="14.013638"
+       y1="2.7028866"
+       x1="15.647213"
+       id="linearGradient2386"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(-0.947018,-0.885198)"
+       gradientUnits="userSpaceOnUse"
+       y2="12.535715"
+       x2="31.31678"
+       y1="12.535715"
+       x1="24.397505"
+       id="linearGradient2310"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(1.262691,-1.100752)"
+       gradientUnits="userSpaceOnUse"
+       y2="12.825893"
+       x2="7.9239235"
+       y1="12.825893"
+       x1="1.0046476"
+       id="linearGradient2312"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2380">
+      <stop
+         id="stop2316"
+         offset="0"
+         style="stop-color:#80000e;stop-opacity:1;" />
+      <stop
+         id="stop2318"
+         offset="1"
+         style="stop-color:#b00014;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2376">
+      <stop
+         style="stop-color:#26b000;stop-opacity:1;"
+         offset="0"
+         id="stop2322" />
+      <stop
+         style="stop-color:#145f00;stop-opacity:1;"
+         offset="1"
+         id="stop2324" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2326">
+      <stop
+         id="stop2328"
+         offset="0"
+         style="stop-color:#26b000;stop-opacity:1;" />
+      <stop
+         id="stop2330"
+         offset="1"
+         style="stop-color:#26b000;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient2332"
+       gradientUnits="userSpaceOnUse"
+       x1="15.647213"
+       y1="2.7028866"
+       x2="14.013638"
+       y2="10.576721" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient2334"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.262691,-1.100752)"
+       x1="10.57493"
+       y1="12.115559"
+       x2="-0.68574232"
+       y2="12.115559" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient2336"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.947018,-0.885198)"
+       x1="31.692968"
+       y1="11.264216"
+       x2="23.888865"
+       y2="13.35532" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient2338"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0.426158,-2.762136)"
+       x1="7.8517423"
+       y1="15.912388"
+       x2="7.1114841"
+       y2="11.597325" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient2340"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)"
+       x1="2.0651877"
+       y1="12.625902"
+       x2="6.8378897"
+       y2="13.920053" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4045"
+       id="radialGradient2342"
+       cx="19.285715"
+       cy="9.8571424"
+       fx="19.285715"
+       fy="9.8571424"
+       r="10.885714"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="reflect"
+       gradientTransform="matrix(0.418975,2.444023e-18,-2.444023e-18,0.418975,11.20548,5.727248)" />
+    <linearGradient
+       gradientTransform="matrix(1.256521,0,0,-1.256521,-7.854319,28.773309)"
+       gradientUnits="userSpaceOnUse"
+       y2="8.5305319"
+       x2="15.630395"
+       y1="22.874208"
+       x1="15.630395"
+       id="linearGradient2444"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       gradientTransform="matrix(-1,0,0,1,31.179578,-2.86473)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2442"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(1.1362892,-2.762136)"
+       gradientUnits="userSpaceOnUse"
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       id="linearGradient2440"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="10.576721"
+       x2="14.013638"
+       y1="2.7028866"
+       x1="15.647213"
+       id="linearGradient2438"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(-1.9107675,-0.885198)"
+       gradientUnits="userSpaceOnUse"
+       y2="12.535715"
+       x2="31.31678"
+       y1="12.535715"
+       x1="24.397505"
+       id="linearGradient2436"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(1.9220986,-1.100752)"
+       gradientUnits="userSpaceOnUse"
+       y2="12.825893"
+       x2="7.9239235"
+       y1="12.825893"
+       x1="1.0046476"
+       id="linearGradient2434"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2428">
+      <stop
+         id="stop2430"
+         offset="0"
+         style="stop-color:#80000e;stop-opacity:1;" />
+      <stop
+         id="stop2432"
+         offset="1"
+         style="stop-color:#b00014;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2422">
+      <stop
+         style="stop-color:#26b000;stop-opacity:1;"
+         offset="0"
+         id="stop2424" />
+      <stop
+         style="stop-color:#145f00;stop-opacity:1;"
+         offset="1"
+         id="stop2426" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2416">
+      <stop
+         id="stop2418"
+         offset="0"
+         style="stop-color:#26b000;stop-opacity:1;" />
+      <stop
+         id="stop2420"
+         offset="1"
+         style="stop-color:#26b000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(0.418975,0,0,0.418975,11.20548,5.727248)"
+       spreadMethod="reflect"
+       gradientUnits="userSpaceOnUse"
+       r="10.885714"
+       fy="9.8571424"
+       fx="19.285715"
+       cy="9.8571424"
+       cx="19.285715"
+       id="radialGradient4051"
+       xlink:href="#linearGradient4045"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1414"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="11.597325"
+       x2="7.1114841"
+       y1="15.912388"
+       x1="7.8517423"
+       gradientTransform="translate(0.426158,-2.762136)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1412"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="13.35532"
+       x2="23.888865"
+       y1="11.264216"
+       x1="31.692968"
+       gradientTransform="translate(-0.947018,-0.885198)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1410"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="12.115559"
+       x2="-0.68574232"
+       y1="12.115559"
+       x1="10.57493"
+       gradientTransform="translate(1.262691,-1.100752)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1408"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="10.576721"
+       x2="14.013638"
+       y1="2.7028866"
+       x1="15.647213"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1406"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient1362">
+      <stop
+         style="stop-color:#26b000;stop-opacity:1;"
+         offset="0"
+         id="stop1364" />
+      <stop
+         style="stop-color:#26b000;stop-opacity:0;"
+         offset="1"
+         id="stop1366" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient1368">
+      <stop
+         id="stop1370"
+         offset="0"
+         style="stop-color:#26b000;stop-opacity:1;" />
+      <stop
+         id="stop1372"
+         offset="1"
+         style="stop-color:#145f00;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient1374">
+      <stop
+         style="stop-color:#80000e;stop-opacity:1;"
+         offset="0"
+         id="stop1376" />
+      <stop
+         style="stop-color:#b00014;stop-opacity:0;"
+         offset="1"
+         id="stop1378" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient1380"
+       x1="1.0046476"
+       y1="12.825893"
+       x2="7.9239235"
+       y2="12.825893"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.262691,-1.100752)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient1382"
+       x1="24.397505"
+       y1="12.535715"
+       x2="31.31678"
+       y2="12.535715"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.947018,-0.885198)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4183"
+       id="linearGradient1384"
+       x1="15.647213"
+       y1="2.7028866"
+       x2="14.013638"
+       y2="10.576721"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient1386"
+       x1="2.0651877"
+       y1="12.625902"
+       x2="6.8378897"
+       y2="13.920053"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0.426158,-2.762136)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient1388"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)"
+       x1="2.0651877"
+       y1="12.625902"
+       x2="6.8378897"
+       y2="13.920053" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4269"
+       id="linearGradient2325"
+       x1="15.630395"
+       y1="22.874208"
+       x2="15.806232"
+       y2="6.6770978"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.62913,0,0,-1.62913,-10.06608,39.71987)" />
+    <linearGradient
+       gradientTransform="matrix(0.875025,0,0,0.875025,0.666703,0.177907)"
+       gradientUnits="userSpaceOnUse"
+       y2="22.512505"
+       x2="27.5625"
+       y1="6.7288713"
+       x1="16.826796"
+       id="linearGradient2224"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       y2="13.920053"
+       x2="6.8378897"
+       y1="12.625902"
+       x1="2.0651877"
+       gradientTransform="matrix(-1,0,0,1,32.04188,-2.86473)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient2322"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(0.426158,-2.762136)"
+       gradientUnits="userSpaceOnUse"
+       y2="11.597325"
+       x2="7.1114841"
+       y1="15.912388"
+       x1="7.8517423"
+       id="linearGradient2320"
+       xlink:href="#linearGradient4269"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="10.576721"
+       x2="14.013638"
+       y1="2.7028866"
+       x1="15.647213"
+       id="linearGradient2318"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(-0.947018,-0.885198)"
+       gradientUnits="userSpaceOnUse"
+       y2="13.35532"
+       x2="23.888865"
+       y1="11.264216"
+       x1="31.692968"
+       id="linearGradient2316"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       gradientTransform="translate(1.262691,-1.100752)"
+       gradientUnits="userSpaceOnUse"
+       y2="12.115559"
+       x2="-0.68574232"
+       y1="12.115559"
+       x1="10.57493"
+       id="linearGradient2314"
+       xlink:href="#linearGradient4183"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient2308">
+      <stop
+         id="stop2310"
+         offset="0"
+         style="stop-color:#80000e;stop-opacity:1;" />
+      <stop
+         id="stop2312"
+         offset="1"
+         style="stop-color:#b00014;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2302">
+      <stop
+         style="stop-color:#1db000;stop-opacity:1;"
+         offset="0"
+         id="stop2304" />
+      <stop
+         style="stop-color:#0f5f00;stop-opacity:1;"
+         offset="1"
+         id="stop2306" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2296">
+      <stop
+         id="stop2298"
+         offset="0"
+         style="stop-color:#1db000;stop-opacity:1;" />
+      <stop
+         id="stop2300"
+         offset="1"
+         style="stop-color:#1db000;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4045">
+      <stop
+         id="stop4047"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:0" />
+      <stop
+         id="stop4049"
+         offset="1"
+         style="stop-color:#fcfbcb;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2500"
+       id="linearGradient2506"
+       x1="4.9409747"
+       y1="16.528652"
+       x2="6.2092013"
+       y2="-3.3282857"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="22.4"
+     inkscape:cx="16.277456"
+     inkscape:cy="16.683708"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="32px"
+     height="32px"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-width="1014"
+     inkscape:window-height="722"
+     inkscape:window-x="5"
+     inkscape:window-y="49"
+     showgrid="false">
+    <sodipodi:guide
+       orientation="horizontal"
+       position="8.0357143"
+       id="guide3144" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="15.982143"
+       id="guide3146" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <path
+       style="opacity:1;fill:url(#linearGradient4275);fill-opacity:1;stroke:none;stroke-width:0.625;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 7.4133112,3.7940921 L 7.4133112,15.267435 L 3.6853797,15.267435 L 11.9375,23.953878 L 20.18962,15.267435 L 16.461688,15.267435 L 16.461688,3.7940921 L 7.4133112,3.7940921 z "
+       id="rect4262" />
+    <g
+       id="g2407"
+       inkscape:label="Calque 1"
+       transform="matrix(-0.5,0.8660254,-0.8660254,-0.5,28.570435,0.9317453)"
+       style="fill:url(#linearGradient2506);fill-opacity:1">
+      <g
+         transform="translate(14.730114,-3.4355522)"
+         inkscape:label="Calque 1"
+         id="g2364"
+         style="fill:url(#linearGradient2506);fill-opacity:1.0">
+        <g
+           id="g2446"
+           inkscape:label="Calque 1"
+           transform="translate(7.9455775,4.2707653)"
+           style="fill:url(#linearGradient2506);fill-opacity:1.0">
+          <g
+             style="fill:url(#linearGradient2506);stroke:#000000;stroke-opacity:0.44968554999999999;fill-opacity:1.0"
+             transform="matrix(-0.4376782,-0.758081,0.7581751,-0.4377326,3.5952686,30.820492)"
+             id="g2181">
+            <path
+               sodipodi:nodetypes="csccczccsccccc"
+               id="path2183"
+               d="M 41.109694,-0.41817229 C 40.505298,0.20454826 39.040867,0.77635346 37.592239,0.77635106 C 36.102089,0.77635106 34.114653,0.15682998 33.532659,-0.49267807 L 33.569913,-2.0031726 L 33.569913,-3.0835065 C 31.027414,-3.5787101 30.997014,-3.8285637 27.525623,-3.8285643 C 24.054233,-3.8285649 23.830777,-3.5759718 21.29017,-3.0462535 L 21.29017,-0.3436665 C 20.685773,0.27905404 19.221343,0.87609843 17.772714,0.87609724 C 16.282564,0.87609724 14.623294,0.43325774 13.915083,-0.41817229 L 14.138601,-5.7646408 C 18.129172,-7.3187814 22.030595,-8.3970767 27.437882,-8.5586077 C 32.38601,-8.450833 36.259126,-7.7053161 40.886177,-5.8763994 L 41.109694,-0.41817229 z "
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:#000000;stroke-width:0.65573961000000003;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.44968554999999999" />
+          </g>
+          <g
+             transform="matrix(-0.4400595,-0.7622054,0.7622054,-0.4400595,-10.917299,27.830684)"
+             id="g2451"
+             style="fill:url(#linearGradient2506);fill-opacity:1.0">
+            <path
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:#561500;stroke-width:0.62500000000000000;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+               d="M 16.100095,4.59375 C 10.946289,4.7477067 7.2256019,5.7999634 3.4220983,7.28125 L 3.2345983,10.227679 C 3.7846813,10.972881 5.0136533,11.508929 6.4220983,11.508929 C 7.7912983,11.508929 8.9758403,11.004648 9.5470983,10.290179 L 9.5470983,9.1875 C 11.968608,8.682612 12.862258,8.4375 16.125,8.4375 C 19.479577,8.4375001 20.38467,8.6842603 22.807982,9.15625 L 22.807982,10.165179 C 23.37924,10.879648 24.563781,11.383929 25.932982,11.383929 C 27.341427,11.383929 28.53915,10.847881 29.089232,10.102679 L 28.901732,7.15625 C 24.491586,5.413068 20.816266,4.6964725 16.100095,4.59375 z "
+               id="path2453"
+               sodipodi:nodetypes="cccsccsccsccc" />
+            <path
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:#561500;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+               d="M 6.4075414,13.019293 C 7.7882612,13.019293 8.983936,12.610489 9.5600003,12.01696 L 9.5600003,10.430989 C 8.8231919,11.109285 7.789205,11.494948 6.4075414,11.494948 C 4.9854414,11.494948 3.9881276,11.13019 3.2127675,10.48174 L 3.2127675,11.966208 C 3.7674786,12.585269 4.9872465,13.019293 6.4075414,13.019293 z "
+               id="path2455"
+               sodipodi:nodetypes="cccsccc" />
+            <path
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:#561500;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+               d="M 25.967532,12.944669 C 27.348252,12.944669 28.543927,12.535865 29.119991,11.942336 L 29.119991,10.356365 C 28.383183,11.034661 27.349196,11.420324 25.967532,11.420324 C 24.545432,11.420324 23.548118,11.055566 22.772758,10.407116 L 22.772758,11.891584 C 23.327469,12.510645 24.547237,12.944669 25.967532,12.944669 z "
+               id="path2457"
+               sodipodi:nodetypes="cccsccc" />
+            <path
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:none;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+               d="M 6.6822725,11.157918 C 8.0629923,11.157918 8.7535908,10.73333 9.3296551,10.139801 L 9.0644746,7.3100024 C 8.3276662,7.9882984 8.1270706,8.5445024 6.745407,8.5445024 C 5.323307,8.5445024 4.4996132,8.1797444 3.7242531,7.5312944 L 3.4874986,10.104833 C 4.0422097,10.723894 5.2619776,11.157918 6.6822725,11.157918 z "
+               id="path2459"
+               sodipodi:nodetypes="cccsccc" />
+            <path
+               style="opacity:1;fill:url(#linearGradient2506);fill-opacity:1.0;stroke:none;stroke-width:0.57204323999999995;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+               d="M 25.633599,11.055324 C 24.252879,11.055324 23.56228,10.630736 22.986216,10.037207 L 22.418005,7.3779497 C 23.154814,8.0562457 24.188801,8.4419087 25.570464,8.4419087 C 26.992564,8.4419087 27.816258,8.0771507 28.591618,7.4287007 L 28.828373,10.002239 C 28.273662,10.6213 27.053894,11.055324 25.633599,11.055324 z "
+               id="path2461"
+               sodipodi:nodetypes="cccsccc" />
+          </g>
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/sflphone-qt/main.cpp b/sflphone-qt/main.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..521ca5597c4362cff35b38f0e5a190dafda4a4cd
--- /dev/null
+++ b/sflphone-qt/main.cpp
@@ -0,0 +1,19 @@
+#include <QApplication>
+#include <QtGui>
+#include "ConfigDialog.h"
+
+int main(int argc, char *argv[])
+{
+    QApplication app(argc, argv);
+
+    QString locale = QLocale::system().name();
+
+    QTranslator translator;
+    translator.load(QString("config_") + locale);
+    app.installTranslator(&translator);
+
+    ConfigurationDialog fenetre;
+    fenetre.show();
+
+    return app.exec();
+} 
diff --git a/sflphone-qt/metatypes.h b/sflphone-qt/metatypes.h
new file mode 100644
index 0000000000000000000000000000000000000000..4f308db1d2b51db1072f70474cb13412bb95fec1
--- /dev/null
+++ b/sflphone-qt/metatypes.h
@@ -0,0 +1,23 @@
+#ifndef METATYPES_H
+#define METATYPES_H
+
+#include <QtCore/QList>
+#include <QtCore/QMetaType>
+#include <QtDBus/QtDBus>
+#include <qmap.h>
+#include <qstring.h>
+
+//class MapStringString:public QMap<QString, QString>{};
+typedef QMap<QString, QString> MapStringString;
+typedef QVector<QString> VectorString;
+
+Q_DECLARE_METATYPE(MapStringString)
+//Q_DECLARE_METATYPE(VectorString)
+
+
+inline void registerCommTypes() {
+	qDBusRegisterMetaType<MapStringString>();
+	//qDBusRegisterMetaType<VectorString>();
+}
+
+#endif
\ No newline at end of file
diff --git a/sflphone-qt/moc_ConfigDialog.cpp b/sflphone-qt/moc_ConfigDialog.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..7679cdba167333d231b1fc87d9b644c6ac5a7ce4
--- /dev/null
+++ b/sflphone-qt/moc_ConfigDialog.cpp
@@ -0,0 +1,80 @@
+/****************************************************************************
+** Meta object code from reading C++ file 'ConfigDialog.h'
+**
+** Created: Wed Feb 18 14:02:53 2009
+**      by: The Qt Meta Object Compiler version 59 (Qt 4.4.3)
+**
+** WARNING! All changes made in this file will be lost!
+*****************************************************************************/
+
+#include "ConfigDialog.h"
+#if !defined(Q_MOC_OUTPUT_REVISION)
+#error "The header file 'ConfigDialog.h' doesn't include <QObject>."
+#elif Q_MOC_OUTPUT_REVISION != 59
+#error "This file was generated using the moc from 4.4.3. It"
+#error "cannot be used with the include files from this version of Qt."
+#error "(The moc has changed too much.)"
+#endif
+
+QT_BEGIN_MOC_NAMESPACE
+static const uint qt_meta_data_ConfigurationDialog[] = {
+
+ // content:
+       1,       // revision
+       0,       // classname
+       0,    0, // classinfo
+       3,   10, // methods
+       0,    0, // properties
+       0,    0, // enums/sets
+
+ // slots: signature, parameters, type, tag, flags
+      21,   20,   20,   20, 0x08,
+      59,   54,   20,   20, 0x08,
+     112,   95,   20,   20, 0x08,
+
+       0        // eod
+};
+
+static const char qt_meta_stringdata_ConfigurationDialog[] = {
+    "ConfigurationDialog\0\0"
+    "on_buttonNouveauCompte_clicked()\0text\0"
+    "on_edit1_Alias_textChanged(QString)\0"
+    "current,previous\0"
+    "on_listWidgetComptes_currentItemChanged(QListWidgetItem*,QListWidgetIt"
+    "em*)\0"
+};
+
+const QMetaObject ConfigurationDialog::staticMetaObject = {
+    { &QDialog::staticMetaObject, qt_meta_stringdata_ConfigurationDialog,
+      qt_meta_data_ConfigurationDialog, 0 }
+};
+
+const QMetaObject *ConfigurationDialog::metaObject() const
+{
+    return &staticMetaObject;
+}
+
+void *ConfigurationDialog::qt_metacast(const char *_clname)
+{
+    if (!_clname) return 0;
+    if (!strcmp(_clname, qt_meta_stringdata_ConfigurationDialog))
+        return static_cast<void*>(const_cast< ConfigurationDialog*>(this));
+    return QDialog::qt_metacast(_clname);
+}
+
+int ConfigurationDialog::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
+{
+    _id = QDialog::qt_metacall(_c, _id, _a);
+    if (_id < 0)
+        return _id;
+    if (_c == QMetaObject::InvokeMetaMethod) {
+        switch (_id) {
+        case 0: on_buttonNouveauCompte_clicked(); break;
+        case 1: on_edit1_Alias_textChanged((*reinterpret_cast< const QString(*)>(_a[1]))); break;
+        case 2: on_listWidgetComptes_currentItemChanged((*reinterpret_cast< QListWidgetItem*(*)>(_a[1])),(*reinterpret_cast< QListWidgetItem*(*)>(_a[2]))); break;
+        }
+        _id -= 3;
+    }
+    return _id;
+}
+QT_END_MOC_NAMESPACE
diff --git a/sflphone-qt/moc_daemon_interface_p.cpp b/sflphone-qt/moc_daemon_interface_p.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..38150b98b9887e05cbddd1f54247de6406818fee
--- /dev/null
+++ b/sflphone-qt/moc_daemon_interface_p.cpp
@@ -0,0 +1,309 @@
+/****************************************************************************
+** Meta object code from reading C++ file 'daemon_interface_p.h'
+**
+** Created: Wed Feb 18 11:29:38 2009
+**      by: The Qt Meta Object Compiler version 59 (Qt 4.4.3)
+**
+** WARNING! All changes made in this file will be lost!
+*****************************************************************************/
+
+#include "daemon_interface_p.h"
+#if !defined(Q_MOC_OUTPUT_REVISION)
+#error "The header file 'daemon_interface_p.h' doesn't include <QObject>."
+#elif Q_MOC_OUTPUT_REVISION != 59
+#error "This file was generated using the moc from 4.4.3. It"
+#error "cannot be used with the include files from this version of Qt."
+#error "(The moc has changed too much.)"
+#endif
+
+QT_BEGIN_MOC_NAMESPACE
+static const uint qt_meta_data_DaemonInterface[] = {
+
+ // content:
+       1,       // revision
+       0,       // classname
+       0,    0, // classinfo
+      60,   10, // methods
+       0,    0, // properties
+       0,    0, // enums/sets
+
+ // signals: signature, parameters, type, tag, flags
+      17,   16,   16,   16, 0x05,
+      40,   35,   16,   16, 0x05,
+      64,   56,   16,   16, 0x05,
+
+ // slots: signature, parameters, type, tag, flags
+     116,   56,   99,   16, 0x0a,
+     144,   16,   99,   16, 0x0a,
+     195,  185,  157,   16, 0x0a,
+     246,   16,  222,   16, 0x0a,
+     263,   16,  222,   16, 0x0a,
+     305,  300,  284,   16, 0x0a,
+     334,   16,  222,   16, 0x0a,
+     360,   16,  284,   16, 0x0a,
+     378,   16,  222,   16, 0x0a,
+     413,  405,  222,   16, 0x0a,
+     434,   16,  222,   16, 0x0a,
+     449,   16,  222,   16, 0x0a,
+     499,   16,  479,   16, 0x0a,
+     529,   16,  284,   16, 0x0a,
+     542,   16,  222,   16, 0x0a,
+     568,   16,  284,   16, 0x0a,
+     584,   16,  284,   16, 0x0a,
+     598,   16,  284,   16, 0x0a,
+     610,   16,  222,   16, 0x0a,
+     637,   16,  222,   16, 0x0a,
+     661,   16,  284,   16, 0x0a,
+     688,   16,  222,   16, 0x0a,
+     710,   16,  479,   16, 0x0a,
+     730,   16,  222,   16, 0x0a,
+     748,   16,  284,   16, 0x0a,
+     763,   16,  284,   16, 0x0a,
+     776,   16,  479,   16, 0x0a,
+     792,   16,  222,   16, 0x0a,
+     812,   16,  479,   16, 0x0a,
+     825,   16,  284,   16, 0x0a,
+     845,   16,  284,   16, 0x0a,
+     861,   16,  284,   16, 0x0a,
+     881,   16,  284,   16, 0x0a,
+     897,   16,  284,   16, 0x0a,
+     913,   16,  284,   16, 0x0a,
+     935,  925,   99,   16, 0x0a,
+     958,   16,   99,   16, 0x0a,
+     993,  976,   99,   16, 0x0a,
+    1037, 1019,   99,   16, 0x0a,
+    1085, 1080,   99,   16, 0x0a,
+    1123, 1117,   99,   16, 0x0a,
+    1152, 1148,   99,   16, 0x0a,
+    1173, 1117,   99,   16, 0x0a,
+    1199,   16,   99,   16, 0x0a,
+    1224, 1212,   99,   16, 0x0a,
+    1253,   16,   99,   16, 0x0a,
+    1275, 1269,   99,   16, 0x0a,
+    1292,   16,   99,   16, 0x0a,
+    1304, 1212,   99,   16, 0x0a,
+    1334,   16,   99,   16, 0x0a,
+    1366, 1361,   99,   16, 0x0a,
+    1393,   16,   99,   16, 0x0a,
+    1413, 1408,   99,   16, 0x0a,
+    1436, 1429,   99,   16, 0x0a,
+    1459,   16,   99,   16, 0x0a,
+    1479,   16,   99,   16, 0x0a,
+    1493,   16,   99,   16, 0x0a,
+
+       0        // eod
+};
+
+static const char qt_meta_stringdata_DaemonInterface[] = {
+    "DaemonInterface\0\0accountsChanged()\0"
+    "code\0errorAlert(int)\0details\0"
+    "parametersChanged(MapStringString)\0"
+    "QDBusReply<void>\0addAccount(MapStringString)\0"
+    "enableStun()\0QDBusReply<MapStringString>\0"
+    "accountID\0getAccountDetails(QString)\0"
+    "QDBusReply<QStringList>\0getAccountList()\0"
+    "getActiveCodecList()\0QDBusReply<int>\0"
+    "name\0getAudioDeviceIndex(QString)\0"
+    "getAudioInputDeviceList()\0getAudioManager()\0"
+    "getAudioOutputDeviceList()\0payload\0"
+    "getCodecDetails(int)\0getCodecList()\0"
+    "getCurrentAudioDevicesIndex()\0"
+    "QDBusReply<QString>\0getCurrentAudioOutputPlugin()\0"
+    "getDialpad()\0getInputAudioPluginList()\0"
+    "getMailNotify()\0getMaxCalls()\0getNotify()\0"
+    "getOutputAudioPluginList()\0"
+    "getPlaybackDeviceList()\0"
+    "getPulseAppVolumeControl()\0"
+    "getRecordDeviceList()\0getRingtoneChoice()\0"
+    "getRingtoneList()\0getSearchbar()\0"
+    "getSipPort()\0getStunServer()\0"
+    "getToneLocaleList()\0getVersion()\0"
+    "getVolumeControls()\0isIax2Enabled()\0"
+    "isRingtoneEnabled()\0isStartHidden()\0"
+    "isStunEnabled()\0popupMode()\0accoundID\0"
+    "removeAccount(QString)\0ringtoneEnabled()\0"
+    "accountID,expire\0sendRegister(QString,int)\0"
+    "accountID,details\0"
+    "setAccountDetails(QString,MapStringString)\0"
+    "list\0setActiveCodecList(QStringList)\0"
+    "index\0setAudioInputDevice(int)\0api\0"
+    "setAudioManager(int)\0setAudioOutputDevice(int)\0"
+    "setDialpad()\0audioPlugin\0"
+    "setInputAudioPlugin(QString)\0"
+    "setMailNotify()\0calls\0setMaxCalls(int)\0"
+    "setNotify()\0setOutputAudioPlugin(QString)\0"
+    "setPulseAppVolumeControl()\0tone\0"
+    "setRingtoneChoice(QString)\0setSearchbar()\0"
+    "port\0setSipPort(int)\0server\0"
+    "setStunServer(QString)\0setVolumeControls()\0"
+    "startHidden()\0switchPopupMode()\0"
+};
+
+const QMetaObject DaemonInterface::staticMetaObject = {
+    { &QDBusAbstractInterface::staticMetaObject, qt_meta_stringdata_DaemonInterface,
+      qt_meta_data_DaemonInterface, 0 }
+};
+
+const QMetaObject *DaemonInterface::metaObject() const
+{
+    return &staticMetaObject;
+}
+
+void *DaemonInterface::qt_metacast(const char *_clname)
+{
+    if (!_clname) return 0;
+    if (!strcmp(_clname, qt_meta_stringdata_DaemonInterface))
+        return static_cast<void*>(const_cast< DaemonInterface*>(this));
+    return QDBusAbstractInterface::qt_metacast(_clname);
+}
+
+int DaemonInterface::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
+{
+    _id = QDBusAbstractInterface::qt_metacall(_c, _id, _a);
+    if (_id < 0)
+        return _id;
+    if (_c == QMetaObject::InvokeMetaMethod) {
+        switch (_id) {
+        case 0: accountsChanged(); break;
+        case 1: errorAlert((*reinterpret_cast< int(*)>(_a[1]))); break;
+        case 2: parametersChanged((*reinterpret_cast< MapStringString(*)>(_a[1]))); break;
+        case 3: { QDBusReply<void> _r = addAccount((*reinterpret_cast< MapStringString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 4: { QDBusReply<void> _r = enableStun();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 5: { QDBusReply<MapStringString> _r = getAccountDetails((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<MapStringString>*>(_a[0]) = _r; }  break;
+        case 6: { QDBusReply<QStringList> _r = getAccountList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 7: { QDBusReply<QStringList> _r = getActiveCodecList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 8: { QDBusReply<int> _r = getAudioDeviceIndex((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 9: { QDBusReply<QStringList> _r = getAudioInputDeviceList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 10: { QDBusReply<int> _r = getAudioManager();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 11: { QDBusReply<QStringList> _r = getAudioOutputDeviceList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 12: { QDBusReply<QStringList> _r = getCodecDetails((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 13: { QDBusReply<QStringList> _r = getCodecList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 14: { QDBusReply<QStringList> _r = getCurrentAudioDevicesIndex();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 15: { QDBusReply<QString> _r = getCurrentAudioOutputPlugin();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QString>*>(_a[0]) = _r; }  break;
+        case 16: { QDBusReply<int> _r = getDialpad();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 17: { QDBusReply<QStringList> _r = getInputAudioPluginList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 18: { QDBusReply<int> _r = getMailNotify();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 19: { QDBusReply<int> _r = getMaxCalls();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 20: { QDBusReply<int> _r = getNotify();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 21: { QDBusReply<QStringList> _r = getOutputAudioPluginList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 22: { QDBusReply<QStringList> _r = getPlaybackDeviceList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 23: { QDBusReply<int> _r = getPulseAppVolumeControl();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 24: { QDBusReply<QStringList> _r = getRecordDeviceList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 25: { QDBusReply<QString> _r = getRingtoneChoice();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QString>*>(_a[0]) = _r; }  break;
+        case 26: { QDBusReply<QStringList> _r = getRingtoneList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 27: { QDBusReply<int> _r = getSearchbar();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 28: { QDBusReply<int> _r = getSipPort();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 29: { QDBusReply<QString> _r = getStunServer();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QString>*>(_a[0]) = _r; }  break;
+        case 30: { QDBusReply<QStringList> _r = getToneLocaleList();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QStringList>*>(_a[0]) = _r; }  break;
+        case 31: { QDBusReply<QString> _r = getVersion();
+            if (_a[0]) *reinterpret_cast< QDBusReply<QString>*>(_a[0]) = _r; }  break;
+        case 32: { QDBusReply<int> _r = getVolumeControls();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 33: { QDBusReply<int> _r = isIax2Enabled();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 34: { QDBusReply<int> _r = isRingtoneEnabled();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 35: { QDBusReply<int> _r = isStartHidden();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 36: { QDBusReply<int> _r = isStunEnabled();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 37: { QDBusReply<int> _r = popupMode();
+            if (_a[0]) *reinterpret_cast< QDBusReply<int>*>(_a[0]) = _r; }  break;
+        case 38: { QDBusReply<void> _r = removeAccount((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 39: { QDBusReply<void> _r = ringtoneEnabled();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 40: { QDBusReply<void> _r = sendRegister((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 41: { QDBusReply<void> _r = setAccountDetails((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< MapStringString(*)>(_a[2])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 42: { QDBusReply<void> _r = setActiveCodecList((*reinterpret_cast< const QStringList(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 43: { QDBusReply<void> _r = setAudioInputDevice((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 44: { QDBusReply<void> _r = setAudioManager((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 45: { QDBusReply<void> _r = setAudioOutputDevice((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 46: { QDBusReply<void> _r = setDialpad();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 47: { QDBusReply<void> _r = setInputAudioPlugin((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 48: { QDBusReply<void> _r = setMailNotify();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 49: { QDBusReply<void> _r = setMaxCalls((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 50: { QDBusReply<void> _r = setNotify();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 51: { QDBusReply<void> _r = setOutputAudioPlugin((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 52: { QDBusReply<void> _r = setPulseAppVolumeControl();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 53: { QDBusReply<void> _r = setRingtoneChoice((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 54: { QDBusReply<void> _r = setSearchbar();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 55: { QDBusReply<void> _r = setSipPort((*reinterpret_cast< int(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 56: { QDBusReply<void> _r = setStunServer((*reinterpret_cast< const QString(*)>(_a[1])));
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 57: { QDBusReply<void> _r = setVolumeControls();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 58: { QDBusReply<void> _r = startHidden();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        case 59: { QDBusReply<void> _r = switchPopupMode();
+            if (_a[0]) *reinterpret_cast< QDBusReply<void>*>(_a[0]) = _r; }  break;
+        }
+        _id -= 60;
+    }
+    return _id;
+}
+
+// SIGNAL 0
+void DaemonInterface::accountsChanged()
+{
+    QMetaObject::activate(this, &staticMetaObject, 0, 0);
+}
+
+// SIGNAL 1
+void DaemonInterface::errorAlert(int _t1)
+{
+    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
+    QMetaObject::activate(this, &staticMetaObject, 1, _a);
+}
+
+// SIGNAL 2
+void DaemonInterface::parametersChanged(MapStringString _t1)
+{
+    void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
+    QMetaObject::activate(this, &staticMetaObject, 2, _a);
+}
+QT_END_MOC_NAMESPACE
diff --git a/sflphone-qt/sans kwidgets.pro b/sflphone-qt/sans kwidgets.pro
new file mode 100644
index 0000000000000000000000000000000000000000..4b5dff7f7451eb51455d933db0357a76ad02fb72
--- /dev/null
+++ b/sflphone-qt/sans kwidgets.pro	
@@ -0,0 +1,27 @@
+######################################################################
+# Automatically generated by qmake (2.01a) mer. f�vr. 18 11:08:41 2009
+######################################################################
+
+TEMPLATE = app
+TARGET = 
+DEPENDPATH += .
+INCLUDEPATH += .
+CONFIG += qdbus uitools debug
+
+# Input
+HEADERS += Account.h \
+           AccountList.h \
+           ConfigDialog.h \
+           daemon_interface_p.h \
+           daemon_interface_singleton.h \
+           metatypes.h \
+           sflphone_const.h
+FORMS += ConfigDialog.ui
+SOURCES += Account.cpp \
+           AccountList.cpp \
+           ConfigDialog.cpp \
+           daemon_interface.cpp \
+           daemon_interface_singleton.cpp \
+           main.cpp \
+           sflphone_const.cpp
+TRANSLATIONS += config_en.ts
diff --git a/sflphone-qt/sflphone_const.cpp b/sflphone-qt/sflphone_const.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..d7787e92a548b24107c0053f2c32c12e4615f84a
--- /dev/null
+++ b/sflphone-qt/sflphone_const.cpp
@@ -0,0 +1,19 @@
+#include "sflphone_const.h"
+
+int getProtocoleIndex(QString protocoleName)
+{
+	if(protocoleName == (QString)"SIP")
+		return 0;
+	if(protocoleName == (QString)"IAX")
+		return 1;
+	return -1;
+}
+
+QString getIndexProtocole(int protocoleIndex)
+{
+	if(protocoleIndex == 0)
+		return "SIP";
+	if(protocoleIndex == 1)
+		return "IAX";
+	return NULL;
+}
\ No newline at end of file
diff --git a/sflphone-qt/sflphone_const.h b/sflphone-qt/sflphone_const.h
new file mode 100644
index 0000000000000000000000000000000000000000..fc118c93fa3fe18f154402a20f13faada7cadb4f
--- /dev/null
+++ b/sflphone-qt/sflphone_const.h
@@ -0,0 +1,102 @@
+/*
+ *  Copyright (C) 2008 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com> 
+ *                                                                              
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *                                                                                
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *                                                                              
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#ifndef __SFLPHONE_CONST_H
+#define __SFLPHONE_CONST_H
+
+#include <libintl.h>
+#include <QtGui>
+
+/* @file sflphone_const.h
+ * @brief Contains the global variables for the client code
+ */
+
+/** Locale */
+#define _(STRING)   gettext( STRING )   
+
+/** Warnings unused variables **/
+#define UNUSED_VAR(var)      (void*)var
+
+#define UNUSED  __attribute__((__unused__))
+
+#define ACCOUNT_TYPE               "Account.type"
+#define ACCOUNT_ALIAS		   "Account.alias"
+#define ACCOUNT_ENABLED		   "Account.enable"
+#define ACCOUNT_MAILBOX		   "Account.mailbox"
+#define ACCOUNT_HOSTNAME      "hostname"
+#define ACCOUNT_USERNAME      "username"
+#define ACCOUNT_PASSWORD       "password"
+#define ACCOUNT_SIP_STUN_SERVER	   "STUN.server"
+#define ACCOUNT_SIP_STUN_ENABLED   "STUN.enable"
+
+/** Error while opening capture device */
+#define ALSA_CAPTURE_DEVICE	      0x0001
+/** Error while opening playback device */
+#define ALSA_PLAYBACK_DEVICE	      0x0010
+/** Error pulseaudio */
+#define PULSEAUDIO_NOT_RUNNING        0x0100
+
+
+
+/** Tone to play when no voice mails */
+#define TONE_WITHOUT_MESSAGE  0 
+/** Tone to play when voice mails */
+#define TONE_WITH_MESSAGE     1
+/** Tells if the main window is reduced to the system tray or not */
+#define MINIMIZED	      TRUE
+/** Behaviour of the main window on incoming calls */
+#define __POPUP_WINDOW  ( dbus_popup_mode() )
+/** Show/Hide the dialpad */
+#define SHOW_DIALPAD	( dbus_get_dialpad() ) 
+/** Show/Hide the volume controls */
+#define SHOW_VOLUME	( dbus_get_volume_controls() ) 
+/** Show/Hide the dialpad */
+#define SHOW_SEARCHBAR	( dbus_get_searchbar() ) 
+/** Show/Hide the alsa configuration panel */
+#define SHOW_ALSA_CONF  ( dbus_get_audio_manager() == ALSA )
+
+/** Audio Managers */
+#define ALSA	      0
+#define PULSEAUDIO    1
+
+/** Notification levels */
+#define __NOTIF_LEVEL_MIN     0
+#define __NOTIF_LEVEL_MED     1
+#define __NOTIF_LEVEL_HIGH    2
+
+/** Messages ID for the status bar - Incoming calls */
+#define __MSG_INCOMING_CALL  0 
+/** Messages ID for the status bar - Calling */
+#define __MSG_CALLING	     1
+/** Messages ID for the status bar - Voice mails  notification */
+#define __MSG_VOICE_MAILS    2
+/** Messages ID for the status bar - Current account */
+#define __MSG_ACCOUNT_DEFAULT  3
+
+/** Desktop notifications - Time before to close the notification*/
+#define __TIMEOUT_MODE      "default"
+/** Desktop notifications - Time before to close the notification*/
+#define __TIMEOUT_TIME      18000       // 30 secondes
+
+//TODO constantes pour protocoles
+int getProtocoleIndex(QString protocoleName);
+
+QString getIndexProtocole(int protocoleIndex);
+
+#endif
diff --git a/sflphone-qt/ui_ConfigDialog.h b/sflphone-qt/ui_ConfigDialog.h
new file mode 100644
index 0000000000000000000000000000000000000000..353f33bda2af0dfaad7f97a3ef418dcfa9088869
--- /dev/null
+++ b/sflphone-qt/ui_ConfigDialog.h
@@ -0,0 +1,912 @@
+/********************************************************************************
+** Form generated from reading ui file 'ConfigDialog.ui'
+**
+** Created: Tue Feb 17 11:57:42 2009
+**      by: Qt User Interface Compiler version 4.4.3
+**
+** WARNING! All changes made in this file will be lost when recompiling ui file!
+********************************************************************************/
+
+#ifndef UI_CONFIGDIALOG_H
+#define UI_CONFIGDIALOG_H
+
+#include <QtCore/QVariant>
+#include <QtGui/QAction>
+#include <QtGui/QApplication>
+#include <QtGui/QButtonGroup>
+#include <QtGui/QCheckBox>
+#include <QtGui/QComboBox>
+#include <QtGui/QDialog>
+#include <QtGui/QDialogButtonBox>
+#include <QtGui/QFormLayout>
+#include <QtGui/QFrame>
+#include <QtGui/QGridLayout>
+#include <QtGui/QGroupBox>
+#include <QtGui/QHBoxLayout>
+#include <QtGui/QLabel>
+#include <QtGui/QLineEdit>
+#include <QtGui/QListWidget>
+#include <QtGui/QPushButton>
+#include <QtGui/QSlider>
+#include <QtGui/QSpinBox>
+#include <QtGui/QStackedWidget>
+#include <QtGui/QTableView>
+#include <QtGui/QToolButton>
+#include <QtGui/QVBoxLayout>
+#include <QtGui/QWidget>
+
+QT_BEGIN_NAMESPACE
+
+class Ui_ConfigurationDialog
+{
+public:
+    QVBoxLayout *verticalLayout;
+    QHBoxLayout *horizontalLayoutDialog;
+    QListWidget *listOptions;
+    QFrame *lineOptions;
+    QStackedWidget *stackedWidgetOptions;
+    QWidget *page_General;
+    QVBoxLayout *verticalLayout_18;
+    QLabel *label_ConfGeneral;
+    QFrame *line_ConfGeneral;
+    QGroupBox *groupBox1_Historique;
+    QVBoxLayout *verticalLayout_19;
+    QWidget *widget_CapaciteHist;
+    QHBoxLayout *horizontalLayout_10;
+    QLabel *label_Capacite;
+    QSlider *horizontalSlider;
+    QSpinBox *spinBox_CapaciteHist;
+    QToolButton *toolButtonEffacerHist;
+    QGroupBox *groupBox2_Connexion;
+    QFormLayout *formLayout_12;
+    QLabel *label_PortSIP;
+    QSpinBox *spinBox_PortSIP;
+    QWidget *widget_RemplissageConfGeneral;
+    QWidget *page_Affichage;
+    QVBoxLayout *verticalLayout_9;
+    QLabel *label_ConfAffichage;
+    QFrame *line_ConfAffichage;
+    QFrame *frameAffichage;
+    QVBoxLayout *verticalLayout_8;
+    QLabel *label1_Notifications;
+    QWidget *widget1_Notifications;
+    QHBoxLayout *horizontalLayout_5;
+    QCheckBox *checkBox1_NotifAppels;
+    QCheckBox *checkBox2_NotifMessages;
+    QLabel *label2_FenetrePrincipale;
+    QWidget *widget_FenetrePrincipale;
+    QHBoxLayout *horizontalLayout_6;
+    QCheckBox *checkBox1_FenDemarrage;
+    QCheckBox *checkBox2_FenAppel;
+    QWidget *widget_5;
+    QWidget *page_Comptes;
+    QVBoxLayout *verticalLayout_2;
+    QLabel *label_ConfComptes;
+    QFrame *line_ConfComptes;
+    QWidget *widget1_ConfComptes;
+    QHBoxLayout *horizontalLayout_3;
+    QFrame *frame1_ListeComptes;
+    QVBoxLayout *verticalLayout_6;
+    QListWidget *listWidgetComptes;
+    QGroupBox *groupBoxGestionComptes;
+    QHBoxLayout *horizontalLayout_2;
+    QToolButton *buttonSupprimerCompte;
+    QToolButton *buttonNouveauCompte;
+    QFrame *frame2_EditComptes;
+    QFormLayout *formLayout_2;
+    QLabel *label1_Alias;
+    QLineEdit *edit1_Alias;
+    QLabel *label2_Protocole;
+    QLabel *label3_Serveur;
+    QLabel *label4_Usager;
+    QLabel *label5_Mdp;
+    QLabel *label6_BoiteVocale;
+    QLineEdit *edit3_Serveur;
+    QLineEdit *edit4_Usager;
+    QLineEdit *edit5_Mdp;
+    QLineEdit *edit6_BoiteVocale;
+    QComboBox *edit2_Protocole;
+    QGroupBox *groupBox_ConfComptesCommuns;
+    QVBoxLayout *verticalLayout_10;
+    QLabel *label_ConfComptesCommus;
+    QFormLayout *formLayoutConfComptesCommus;
+    QCheckBox *checkBoxStun;
+    QLineEdit *lineEdit_Stun;
+    QWidget *page_Audio;
+    QVBoxLayout *verticalLayout_5;
+    QLabel *label_ConfAudio;
+    QFrame *line_ConfAudio;
+    QGroupBox *groupBox1_Audio;
+    QFormLayout *formLayout_3;
+    QLabel *label_Interface;
+    QComboBox *comboBox_Interface;
+    QCheckBox *checkBox_Sonneries;
+    QGroupBox *groupBox2_Codecs;
+    QGridLayout *gridLayout;
+    QTableView *tableViewCodecs;
+    QVBoxLayout *verticalLayout_OrdreCodecs;
+    QToolButton *toolButton_MonterCodec;
+    QToolButton *toolButton_DescendreCodec;
+    QStackedWidget *stackedWidget_ParametresSpecif;
+    QWidget *page1_Alsa;
+    QVBoxLayout *verticalLayout_20;
+    QGroupBox *groupBox_Alsa;
+    QFormLayout *formLayout_4;
+    QComboBox *comboBox2_Entree;
+    QLabel *label2_Entree;
+    QLabel *label3_Sortie;
+    QComboBox *comboBox3_Sortie;
+    QLabel *label1_GreffonAlsa;
+    QComboBox *comboBox1_GreffonAlsa;
+    QWidget *page2_PulseAudio;
+    QVBoxLayout *verticalLayout_7;
+    QGroupBox *groupBox_PulseAudio;
+    QFormLayout *formLayout_11;
+    QCheckBox *checkBox_ModifVolumeApps;
+    QPushButton *pushButton;
+    QFrame *lineDialog;
+    QDialogButtonBox *buttonBoxDialog;
+
+    void setupUi(QDialog *ConfigurationDialog)
+    {
+    if (ConfigurationDialog->objectName().isEmpty())
+        ConfigurationDialog->setObjectName(QString::fromUtf8("ConfigurationDialog"));
+    ConfigurationDialog->resize(504, 392);
+    ConfigurationDialog->setMinimumSize(QSize(0, 0));
+    verticalLayout = new QVBoxLayout(ConfigurationDialog);
+    verticalLayout->setSpacing(4);
+    verticalLayout->setMargin(1);
+    verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
+    horizontalLayoutDialog = new QHBoxLayout();
+    horizontalLayoutDialog->setSpacing(4);
+    horizontalLayoutDialog->setObjectName(QString::fromUtf8("horizontalLayoutDialog"));
+    horizontalLayoutDialog->setSizeConstraint(QLayout::SetDefaultConstraint);
+    listOptions = new QListWidget(ConfigurationDialog);
+    QIcon icon;
+    icon.addPixmap(QPixmap(QString::fromUtf8(":/Images/sflphone.png")), QIcon::Normal, QIcon::Off);
+    QListWidgetItem *__listItem = new QListWidgetItem(listOptions);
+    __listItem->setIcon(icon);
+    QListWidgetItem *__listItem1 = new QListWidgetItem(listOptions);
+    __listItem1->setIcon(icon);
+    QIcon icon1;
+    icon1.addPixmap(QPixmap(QString::fromUtf8(":/Images/stock_person.svg")), QIcon::Normal, QIcon::Off);
+    QListWidgetItem *__listItem2 = new QListWidgetItem(listOptions);
+    __listItem2->setIcon(icon1);
+    QIcon icon2;
+    icon2.addPixmap(QPixmap(QString::fromUtf8(":/Images/icon_volume_off.svg")), QIcon::Normal, QIcon::Off);
+    QListWidgetItem *__listItem3 = new QListWidgetItem(listOptions);
+    __listItem3->setIcon(icon2);
+    listOptions->setObjectName(QString::fromUtf8("listOptions"));
+    QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding);
+    sizePolicy.setHorizontalStretch(0);
+    sizePolicy.setVerticalStretch(0);
+    sizePolicy.setHeightForWidth(listOptions->sizePolicy().hasHeightForWidth());
+    listOptions->setSizePolicy(sizePolicy);
+    listOptions->setMinimumSize(QSize(100, 300));
+    listOptions->setMaximumSize(QSize(100, 16777215));
+    listOptions->setSizeIncrement(QSize(0, 0));
+    listOptions->setMouseTracking(false);
+    listOptions->setContextMenuPolicy(Qt::DefaultContextMenu);
+    listOptions->setAcceptDrops(false);
+    listOptions->setLayoutDirection(Qt::LeftToRight);
+    listOptions->setAutoFillBackground(true);
+    listOptions->setAutoScrollMargin(16);
+    listOptions->setEditTriggers(QAbstractItemView::AllEditTriggers);
+    listOptions->setDragEnabled(true);
+    listOptions->setIconSize(QSize(200, 200));
+    listOptions->setTextElideMode(Qt::ElideMiddle);
+    listOptions->setVerticalScrollMode(QAbstractItemView::ScrollPerItem);
+    listOptions->setHorizontalScrollMode(QAbstractItemView::ScrollPerItem);
+    listOptions->setMovement(QListView::Static);
+    listOptions->setFlow(QListView::TopToBottom);
+    listOptions->setResizeMode(QListView::Adjust);
+    listOptions->setLayoutMode(QListView::SinglePass);
+    listOptions->setViewMode(QListView::IconMode);
+    listOptions->setModelColumn(0);
+    listOptions->setUniformItemSizes(false);
+    listOptions->setWordWrap(false);
+    listOptions->setSortingEnabled(false);
+
+    horizontalLayoutDialog->addWidget(listOptions);
+
+    lineOptions = new QFrame(ConfigurationDialog);
+    lineOptions->setObjectName(QString::fromUtf8("lineOptions"));
+    lineOptions->setFrameShape(QFrame::VLine);
+    lineOptions->setFrameShadow(QFrame::Sunken);
+
+    horizontalLayoutDialog->addWidget(lineOptions);
+
+    stackedWidgetOptions = new QStackedWidget(ConfigurationDialog);
+    stackedWidgetOptions->setObjectName(QString::fromUtf8("stackedWidgetOptions"));
+    page_General = new QWidget();
+    page_General->setObjectName(QString::fromUtf8("page_General"));
+    verticalLayout_18 = new QVBoxLayout(page_General);
+    verticalLayout_18->setSpacing(4);
+    verticalLayout_18->setMargin(4);
+    verticalLayout_18->setObjectName(QString::fromUtf8("verticalLayout_18"));
+    verticalLayout_18->setContentsMargins(4, -1, -1, -1);
+    label_ConfGeneral = new QLabel(page_General);
+    label_ConfGeneral->setObjectName(QString::fromUtf8("label_ConfGeneral"));
+
+    verticalLayout_18->addWidget(label_ConfGeneral);
+
+    line_ConfGeneral = new QFrame(page_General);
+    line_ConfGeneral->setObjectName(QString::fromUtf8("line_ConfGeneral"));
+    line_ConfGeneral->setFrameShape(QFrame::HLine);
+    line_ConfGeneral->setFrameShadow(QFrame::Sunken);
+
+    verticalLayout_18->addWidget(line_ConfGeneral);
+
+    groupBox1_Historique = new QGroupBox(page_General);
+    groupBox1_Historique->setObjectName(QString::fromUtf8("groupBox1_Historique"));
+    QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Fixed);
+    sizePolicy1.setHorizontalStretch(0);
+    sizePolicy1.setVerticalStretch(0);
+    sizePolicy1.setHeightForWidth(groupBox1_Historique->sizePolicy().hasHeightForWidth());
+    groupBox1_Historique->setSizePolicy(sizePolicy1);
+    verticalLayout_19 = new QVBoxLayout(groupBox1_Historique);
+    verticalLayout_19->setSpacing(4);
+    verticalLayout_19->setMargin(4);
+    verticalLayout_19->setObjectName(QString::fromUtf8("verticalLayout_19"));
+    widget_CapaciteHist = new QWidget(groupBox1_Historique);
+    widget_CapaciteHist->setObjectName(QString::fromUtf8("widget_CapaciteHist"));
+    horizontalLayout_10 = new QHBoxLayout(widget_CapaciteHist);
+    horizontalLayout_10->setSpacing(4);
+    horizontalLayout_10->setMargin(4);
+    horizontalLayout_10->setObjectName(QString::fromUtf8("horizontalLayout_10"));
+    label_Capacite = new QLabel(widget_CapaciteHist);
+    label_Capacite->setObjectName(QString::fromUtf8("label_Capacite"));
+
+    horizontalLayout_10->addWidget(label_Capacite);
+
+    horizontalSlider = new QSlider(widget_CapaciteHist);
+    horizontalSlider->setObjectName(QString::fromUtf8("horizontalSlider"));
+    horizontalSlider->setMaximum(100);
+    horizontalSlider->setOrientation(Qt::Horizontal);
+
+    horizontalLayout_10->addWidget(horizontalSlider);
+
+    spinBox_CapaciteHist = new QSpinBox(widget_CapaciteHist);
+    spinBox_CapaciteHist->setObjectName(QString::fromUtf8("spinBox_CapaciteHist"));
+
+    horizontalLayout_10->addWidget(spinBox_CapaciteHist);
+
+
+    verticalLayout_19->addWidget(widget_CapaciteHist);
+
+    toolButtonEffacerHist = new QToolButton(groupBox1_Historique);
+    toolButtonEffacerHist->setObjectName(QString::fromUtf8("toolButtonEffacerHist"));
+
+    verticalLayout_19->addWidget(toolButtonEffacerHist);
+
+
+    verticalLayout_18->addWidget(groupBox1_Historique);
+
+    groupBox2_Connexion = new QGroupBox(page_General);
+    groupBox2_Connexion->setObjectName(QString::fromUtf8("groupBox2_Connexion"));
+    sizePolicy1.setHeightForWidth(groupBox2_Connexion->sizePolicy().hasHeightForWidth());
+    groupBox2_Connexion->setSizePolicy(sizePolicy1);
+    formLayout_12 = new QFormLayout(groupBox2_Connexion);
+    formLayout_12->setSpacing(4);
+    formLayout_12->setMargin(4);
+    formLayout_12->setObjectName(QString::fromUtf8("formLayout_12"));
+    label_PortSIP = new QLabel(groupBox2_Connexion);
+    label_PortSIP->setObjectName(QString::fromUtf8("label_PortSIP"));
+
+    formLayout_12->setWidget(0, QFormLayout::LabelRole, label_PortSIP);
+
+    spinBox_PortSIP = new QSpinBox(groupBox2_Connexion);
+    spinBox_PortSIP->setObjectName(QString::fromUtf8("spinBox_PortSIP"));
+
+    formLayout_12->setWidget(0, QFormLayout::FieldRole, spinBox_PortSIP);
+
+
+    verticalLayout_18->addWidget(groupBox2_Connexion);
+
+    widget_RemplissageConfGeneral = new QWidget(page_General);
+    widget_RemplissageConfGeneral->setObjectName(QString::fromUtf8("widget_RemplissageConfGeneral"));
+    sizePolicy.setHeightForWidth(widget_RemplissageConfGeneral->sizePolicy().hasHeightForWidth());
+    widget_RemplissageConfGeneral->setSizePolicy(sizePolicy);
+
+    verticalLayout_18->addWidget(widget_RemplissageConfGeneral);
+
+    stackedWidgetOptions->addWidget(page_General);
+    page_Affichage = new QWidget();
+    page_Affichage->setObjectName(QString::fromUtf8("page_Affichage"));
+    verticalLayout_9 = new QVBoxLayout(page_Affichage);
+    verticalLayout_9->setSpacing(4);
+    verticalLayout_9->setMargin(4);
+    verticalLayout_9->setObjectName(QString::fromUtf8("verticalLayout_9"));
+    label_ConfAffichage = new QLabel(page_Affichage);
+    label_ConfAffichage->setObjectName(QString::fromUtf8("label_ConfAffichage"));
+    sizePolicy1.setHeightForWidth(label_ConfAffichage->sizePolicy().hasHeightForWidth());
+    label_ConfAffichage->setSizePolicy(sizePolicy1);
+
+    verticalLayout_9->addWidget(label_ConfAffichage);
+
+    line_ConfAffichage = new QFrame(page_Affichage);
+    line_ConfAffichage->setObjectName(QString::fromUtf8("line_ConfAffichage"));
+    line_ConfAffichage->setFrameShape(QFrame::HLine);
+    line_ConfAffichage->setFrameShadow(QFrame::Sunken);
+
+    verticalLayout_9->addWidget(line_ConfAffichage);
+
+    frameAffichage = new QFrame(page_Affichage);
+    frameAffichage->setObjectName(QString::fromUtf8("frameAffichage"));
+    QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Preferred);
+    sizePolicy2.setHorizontalStretch(0);
+    sizePolicy2.setVerticalStretch(0);
+    sizePolicy2.setHeightForWidth(frameAffichage->sizePolicy().hasHeightForWidth());
+    frameAffichage->setSizePolicy(sizePolicy2);
+    frameAffichage->setFrameShape(QFrame::StyledPanel);
+    frameAffichage->setFrameShadow(QFrame::Raised);
+    verticalLayout_8 = new QVBoxLayout(frameAffichage);
+    verticalLayout_8->setSpacing(4);
+    verticalLayout_8->setMargin(4);
+    verticalLayout_8->setObjectName(QString::fromUtf8("verticalLayout_8"));
+    label1_Notifications = new QLabel(frameAffichage);
+    label1_Notifications->setObjectName(QString::fromUtf8("label1_Notifications"));
+    sizePolicy1.setHeightForWidth(label1_Notifications->sizePolicy().hasHeightForWidth());
+    label1_Notifications->setSizePolicy(sizePolicy1);
+
+    verticalLayout_8->addWidget(label1_Notifications);
+
+    widget1_Notifications = new QWidget(frameAffichage);
+    widget1_Notifications->setObjectName(QString::fromUtf8("widget1_Notifications"));
+    sizePolicy1.setHeightForWidth(widget1_Notifications->sizePolicy().hasHeightForWidth());
+    widget1_Notifications->setSizePolicy(sizePolicy1);
+    horizontalLayout_5 = new QHBoxLayout(widget1_Notifications);
+    horizontalLayout_5->setSpacing(4);
+    horizontalLayout_5->setMargin(4);
+    horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5"));
+    checkBox1_NotifAppels = new QCheckBox(widget1_Notifications);
+    checkBox1_NotifAppels->setObjectName(QString::fromUtf8("checkBox1_NotifAppels"));
+
+    horizontalLayout_5->addWidget(checkBox1_NotifAppels);
+
+    checkBox2_NotifMessages = new QCheckBox(widget1_Notifications);
+    checkBox2_NotifMessages->setObjectName(QString::fromUtf8("checkBox2_NotifMessages"));
+
+    horizontalLayout_5->addWidget(checkBox2_NotifMessages);
+
+
+    verticalLayout_8->addWidget(widget1_Notifications);
+
+    label2_FenetrePrincipale = new QLabel(frameAffichage);
+    label2_FenetrePrincipale->setObjectName(QString::fromUtf8("label2_FenetrePrincipale"));
+    sizePolicy1.setHeightForWidth(label2_FenetrePrincipale->sizePolicy().hasHeightForWidth());
+    label2_FenetrePrincipale->setSizePolicy(sizePolicy1);
+
+    verticalLayout_8->addWidget(label2_FenetrePrincipale);
+
+    widget_FenetrePrincipale = new QWidget(frameAffichage);
+    widget_FenetrePrincipale->setObjectName(QString::fromUtf8("widget_FenetrePrincipale"));
+    sizePolicy1.setHeightForWidth(widget_FenetrePrincipale->sizePolicy().hasHeightForWidth());
+    widget_FenetrePrincipale->setSizePolicy(sizePolicy1);
+    horizontalLayout_6 = new QHBoxLayout(widget_FenetrePrincipale);
+    horizontalLayout_6->setSpacing(4);
+    horizontalLayout_6->setMargin(4);
+    horizontalLayout_6->setObjectName(QString::fromUtf8("horizontalLayout_6"));
+    checkBox1_FenDemarrage = new QCheckBox(widget_FenetrePrincipale);
+    checkBox1_FenDemarrage->setObjectName(QString::fromUtf8("checkBox1_FenDemarrage"));
+
+    horizontalLayout_6->addWidget(checkBox1_FenDemarrage);
+
+    checkBox2_FenAppel = new QCheckBox(widget_FenetrePrincipale);
+    checkBox2_FenAppel->setObjectName(QString::fromUtf8("checkBox2_FenAppel"));
+
+    horizontalLayout_6->addWidget(checkBox2_FenAppel);
+
+
+    verticalLayout_8->addWidget(widget_FenetrePrincipale);
+
+    widget_5 = new QWidget(frameAffichage);
+    widget_5->setObjectName(QString::fromUtf8("widget_5"));
+
+    verticalLayout_8->addWidget(widget_5);
+
+
+    verticalLayout_9->addWidget(frameAffichage);
+
+    stackedWidgetOptions->addWidget(page_Affichage);
+    page_Comptes = new QWidget();
+    page_Comptes->setObjectName(QString::fromUtf8("page_Comptes"));
+    verticalLayout_2 = new QVBoxLayout(page_Comptes);
+    verticalLayout_2->setSpacing(4);
+    verticalLayout_2->setMargin(4);
+    verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2"));
+    label_ConfComptes = new QLabel(page_Comptes);
+    label_ConfComptes->setObjectName(QString::fromUtf8("label_ConfComptes"));
+    sizePolicy2.setHeightForWidth(label_ConfComptes->sizePolicy().hasHeightForWidth());
+    label_ConfComptes->setSizePolicy(sizePolicy2);
+
+    verticalLayout_2->addWidget(label_ConfComptes);
+
+    line_ConfComptes = new QFrame(page_Comptes);
+    line_ConfComptes->setObjectName(QString::fromUtf8("line_ConfComptes"));
+    line_ConfComptes->setFrameShape(QFrame::HLine);
+    line_ConfComptes->setFrameShadow(QFrame::Sunken);
+
+    verticalLayout_2->addWidget(line_ConfComptes);
+
+    widget1_ConfComptes = new QWidget(page_Comptes);
+    widget1_ConfComptes->setObjectName(QString::fromUtf8("widget1_ConfComptes"));
+    horizontalLayout_3 = new QHBoxLayout(widget1_ConfComptes);
+    horizontalLayout_3->setSpacing(4);
+    horizontalLayout_3->setMargin(4);
+    horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3"));
+    frame1_ListeComptes = new QFrame(widget1_ConfComptes);
+    frame1_ListeComptes->setObjectName(QString::fromUtf8("frame1_ListeComptes"));
+    frame1_ListeComptes->setMinimumSize(QSize(0, 0));
+    frame1_ListeComptes->setMaximumSize(QSize(16777215, 16777215));
+    frame1_ListeComptes->setFrameShape(QFrame::StyledPanel);
+    frame1_ListeComptes->setFrameShadow(QFrame::Raised);
+    verticalLayout_6 = new QVBoxLayout(frame1_ListeComptes);
+    verticalLayout_6->setSpacing(4);
+    verticalLayout_6->setMargin(4);
+    verticalLayout_6->setObjectName(QString::fromUtf8("verticalLayout_6"));
+    listWidgetComptes = new QListWidget(frame1_ListeComptes);
+    listWidgetComptes->setObjectName(QString::fromUtf8("listWidgetComptes"));
+    QSizePolicy sizePolicy3(QSizePolicy::Fixed, QSizePolicy::Expanding);
+    sizePolicy3.setHorizontalStretch(0);
+    sizePolicy3.setVerticalStretch(0);
+    sizePolicy3.setHeightForWidth(listWidgetComptes->sizePolicy().hasHeightForWidth());
+    listWidgetComptes->setSizePolicy(sizePolicy3);
+    listWidgetComptes->setMinimumSize(QSize(150, 0));
+    listWidgetComptes->setMaximumSize(QSize(150, 16777215));
+    listWidgetComptes->setDragEnabled(true);
+
+    verticalLayout_6->addWidget(listWidgetComptes);
+
+    groupBoxGestionComptes = new QGroupBox(frame1_ListeComptes);
+    groupBoxGestionComptes->setObjectName(QString::fromUtf8("groupBoxGestionComptes"));
+    sizePolicy2.setHeightForWidth(groupBoxGestionComptes->sizePolicy().hasHeightForWidth());
+    groupBoxGestionComptes->setSizePolicy(sizePolicy2);
+    groupBoxGestionComptes->setMaximumSize(QSize(16777215, 16777215));
+    groupBoxGestionComptes->setLayoutDirection(Qt::RightToLeft);
+    groupBoxGestionComptes->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
+    horizontalLayout_2 = new QHBoxLayout(groupBoxGestionComptes);
+    horizontalLayout_2->setSpacing(0);
+    horizontalLayout_2->setMargin(0);
+    horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2"));
+    buttonSupprimerCompte = new QToolButton(groupBoxGestionComptes);
+    buttonSupprimerCompte->setObjectName(QString::fromUtf8("buttonSupprimerCompte"));
+    sizePolicy1.setHeightForWidth(buttonSupprimerCompte->sizePolicy().hasHeightForWidth());
+    buttonSupprimerCompte->setSizePolicy(sizePolicy1);
+    QIcon icon3;
+    icon3.addPixmap(QPixmap(QString::fromUtf8(":/Images/hang_up.svg")), QIcon::Normal, QIcon::Off);
+    buttonSupprimerCompte->setIcon(icon3);
+
+    horizontalLayout_2->addWidget(buttonSupprimerCompte);
+
+    buttonNouveauCompte = new QToolButton(groupBoxGestionComptes);
+    buttonNouveauCompte->setObjectName(QString::fromUtf8("buttonNouveauCompte"));
+    sizePolicy1.setHeightForWidth(buttonNouveauCompte->sizePolicy().hasHeightForWidth());
+    buttonNouveauCompte->setSizePolicy(sizePolicy1);
+    buttonNouveauCompte->setSizeIncrement(QSize(0, 0));
+    QIcon icon4;
+    icon4.addPixmap(QPixmap(QString::fromUtf8(":/Images/accept.svg")), QIcon::Normal, QIcon::Off);
+    buttonNouveauCompte->setIcon(icon4);
+
+    horizontalLayout_2->addWidget(buttonNouveauCompte);
+
+    buttonSupprimerCompte->raise();
+    buttonNouveauCompte->raise();
+
+    verticalLayout_6->addWidget(groupBoxGestionComptes);
+
+
+    horizontalLayout_3->addWidget(frame1_ListeComptes);
+
+    frame2_EditComptes = new QFrame(widget1_ConfComptes);
+    frame2_EditComptes->setObjectName(QString::fromUtf8("frame2_EditComptes"));
+    QSizePolicy sizePolicy4(QSizePolicy::Expanding, QSizePolicy::Expanding);
+    sizePolicy4.setHorizontalStretch(0);
+    sizePolicy4.setVerticalStretch(0);
+    sizePolicy4.setHeightForWidth(frame2_EditComptes->sizePolicy().hasHeightForWidth());
+    frame2_EditComptes->setSizePolicy(sizePolicy4);
+    frame2_EditComptes->setFrameShape(QFrame::StyledPanel);
+    frame2_EditComptes->setFrameShadow(QFrame::Raised);
+    formLayout_2 = new QFormLayout(frame2_EditComptes);
+    formLayout_2->setSpacing(4);
+    formLayout_2->setMargin(4);
+    formLayout_2->setObjectName(QString::fromUtf8("formLayout_2"));
+    formLayout_2->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow);
+    label1_Alias = new QLabel(frame2_EditComptes);
+    label1_Alias->setObjectName(QString::fromUtf8("label1_Alias"));
+
+    formLayout_2->setWidget(0, QFormLayout::LabelRole, label1_Alias);
+
+    edit1_Alias = new QLineEdit(frame2_EditComptes);
+    edit1_Alias->setObjectName(QString::fromUtf8("edit1_Alias"));
+    edit1_Alias->setMinimumSize(QSize(0, 0));
+
+    formLayout_2->setWidget(0, QFormLayout::FieldRole, edit1_Alias);
+
+    label2_Protocole = new QLabel(frame2_EditComptes);
+    label2_Protocole->setObjectName(QString::fromUtf8("label2_Protocole"));
+
+    formLayout_2->setWidget(1, QFormLayout::LabelRole, label2_Protocole);
+
+    label3_Serveur = new QLabel(frame2_EditComptes);
+    label3_Serveur->setObjectName(QString::fromUtf8("label3_Serveur"));
+
+    formLayout_2->setWidget(2, QFormLayout::LabelRole, label3_Serveur);
+
+    label4_Usager = new QLabel(frame2_EditComptes);
+    label4_Usager->setObjectName(QString::fromUtf8("label4_Usager"));
+
+    formLayout_2->setWidget(3, QFormLayout::LabelRole, label4_Usager);
+
+    label5_Mdp = new QLabel(frame2_EditComptes);
+    label5_Mdp->setObjectName(QString::fromUtf8("label5_Mdp"));
+
+    formLayout_2->setWidget(4, QFormLayout::LabelRole, label5_Mdp);
+
+    label6_BoiteVocale = new QLabel(frame2_EditComptes);
+    label6_BoiteVocale->setObjectName(QString::fromUtf8("label6_BoiteVocale"));
+
+    formLayout_2->setWidget(5, QFormLayout::LabelRole, label6_BoiteVocale);
+
+    edit3_Serveur = new QLineEdit(frame2_EditComptes);
+    edit3_Serveur->setObjectName(QString::fromUtf8("edit3_Serveur"));
+    edit3_Serveur->setMinimumSize(QSize(0, 0));
+
+    formLayout_2->setWidget(2, QFormLayout::FieldRole, edit3_Serveur);
+
+    edit4_Usager = new QLineEdit(frame2_EditComptes);
+    edit4_Usager->setObjectName(QString::fromUtf8("edit4_Usager"));
+
+    formLayout_2->setWidget(3, QFormLayout::FieldRole, edit4_Usager);
+
+    edit5_Mdp = new QLineEdit(frame2_EditComptes);
+    edit5_Mdp->setObjectName(QString::fromUtf8("edit5_Mdp"));
+    edit5_Mdp->setEchoMode(QLineEdit::Password);
+
+    formLayout_2->setWidget(4, QFormLayout::FieldRole, edit5_Mdp);
+
+    edit6_BoiteVocale = new QLineEdit(frame2_EditComptes);
+    edit6_BoiteVocale->setObjectName(QString::fromUtf8("edit6_BoiteVocale"));
+
+    formLayout_2->setWidget(5, QFormLayout::FieldRole, edit6_BoiteVocale);
+
+    edit2_Protocole = new QComboBox(frame2_EditComptes);
+    edit2_Protocole->setObjectName(QString::fromUtf8("edit2_Protocole"));
+
+    formLayout_2->setWidget(1, QFormLayout::FieldRole, edit2_Protocole);
+
+
+    horizontalLayout_3->addWidget(frame2_EditComptes);
+
+
+    verticalLayout_2->addWidget(widget1_ConfComptes);
+
+    groupBox_ConfComptesCommuns = new QGroupBox(page_Comptes);
+    groupBox_ConfComptesCommuns->setObjectName(QString::fromUtf8("groupBox_ConfComptesCommuns"));
+    verticalLayout_10 = new QVBoxLayout(groupBox_ConfComptesCommuns);
+    verticalLayout_10->setSpacing(4);
+    verticalLayout_10->setMargin(4);
+    verticalLayout_10->setObjectName(QString::fromUtf8("verticalLayout_10"));
+    label_ConfComptesCommus = new QLabel(groupBox_ConfComptesCommuns);
+    label_ConfComptesCommus->setObjectName(QString::fromUtf8("label_ConfComptesCommus"));
+
+    verticalLayout_10->addWidget(label_ConfComptesCommus);
+
+    formLayoutConfComptesCommus = new QFormLayout();
+    formLayoutConfComptesCommus->setSpacing(4);
+    formLayoutConfComptesCommus->setObjectName(QString::fromUtf8("formLayoutConfComptesCommus"));
+    formLayoutConfComptesCommus->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow);
+    checkBoxStun = new QCheckBox(groupBox_ConfComptesCommuns);
+    checkBoxStun->setObjectName(QString::fromUtf8("checkBoxStun"));
+
+    formLayoutConfComptesCommus->setWidget(0, QFormLayout::LabelRole, checkBoxStun);
+
+    lineEdit_Stun = new QLineEdit(groupBox_ConfComptesCommuns);
+    lineEdit_Stun->setObjectName(QString::fromUtf8("lineEdit_Stun"));
+    lineEdit_Stun->setEnabled(false);
+
+    formLayoutConfComptesCommus->setWidget(0, QFormLayout::FieldRole, lineEdit_Stun);
+
+
+    verticalLayout_10->addLayout(formLayoutConfComptesCommus);
+
+
+    verticalLayout_2->addWidget(groupBox_ConfComptesCommuns);
+
+    stackedWidgetOptions->addWidget(page_Comptes);
+    page_Audio = new QWidget();
+    page_Audio->setObjectName(QString::fromUtf8("page_Audio"));
+    verticalLayout_5 = new QVBoxLayout(page_Audio);
+    verticalLayout_5->setSpacing(4);
+    verticalLayout_5->setMargin(4);
+    verticalLayout_5->setObjectName(QString::fromUtf8("verticalLayout_5"));
+    label_ConfAudio = new QLabel(page_Audio);
+    label_ConfAudio->setObjectName(QString::fromUtf8("label_ConfAudio"));
+    sizePolicy1.setHeightForWidth(label_ConfAudio->sizePolicy().hasHeightForWidth());
+    label_ConfAudio->setSizePolicy(sizePolicy1);
+
+    verticalLayout_5->addWidget(label_ConfAudio);
+
+    line_ConfAudio = new QFrame(page_Audio);
+    line_ConfAudio->setObjectName(QString::fromUtf8("line_ConfAudio"));
+    line_ConfAudio->setFrameShape(QFrame::HLine);
+    line_ConfAudio->setFrameShadow(QFrame::Sunken);
+
+    verticalLayout_5->addWidget(line_ConfAudio);
+
+    groupBox1_Audio = new QGroupBox(page_Audio);
+    groupBox1_Audio->setObjectName(QString::fromUtf8("groupBox1_Audio"));
+    formLayout_3 = new QFormLayout(groupBox1_Audio);
+    formLayout_3->setSpacing(4);
+    formLayout_3->setMargin(4);
+    formLayout_3->setObjectName(QString::fromUtf8("formLayout_3"));
+    label_Interface = new QLabel(groupBox1_Audio);
+    label_Interface->setObjectName(QString::fromUtf8("label_Interface"));
+
+    formLayout_3->setWidget(0, QFormLayout::LabelRole, label_Interface);
+
+    comboBox_Interface = new QComboBox(groupBox1_Audio);
+    comboBox_Interface->setObjectName(QString::fromUtf8("comboBox_Interface"));
+    comboBox_Interface->setMinimumSize(QSize(100, 0));
+
+    formLayout_3->setWidget(0, QFormLayout::FieldRole, comboBox_Interface);
+
+    checkBox_Sonneries = new QCheckBox(groupBox1_Audio);
+    checkBox_Sonneries->setObjectName(QString::fromUtf8("checkBox_Sonneries"));
+
+    formLayout_3->setWidget(1, QFormLayout::LabelRole, checkBox_Sonneries);
+
+
+    verticalLayout_5->addWidget(groupBox1_Audio);
+
+    groupBox2_Codecs = new QGroupBox(page_Audio);
+    groupBox2_Codecs->setObjectName(QString::fromUtf8("groupBox2_Codecs"));
+    gridLayout = new QGridLayout(groupBox2_Codecs);
+    gridLayout->setSpacing(4);
+    gridLayout->setMargin(4);
+    gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
+    tableViewCodecs = new QTableView(groupBox2_Codecs);
+    tableViewCodecs->setObjectName(QString::fromUtf8("tableViewCodecs"));
+    tableViewCodecs->setDragEnabled(true);
+    tableViewCodecs->setSortingEnabled(true);
+
+    gridLayout->addWidget(tableViewCodecs, 0, 0, 1, 1);
+
+    verticalLayout_OrdreCodecs = new QVBoxLayout();
+    verticalLayout_OrdreCodecs->setSpacing(4);
+    verticalLayout_OrdreCodecs->setObjectName(QString::fromUtf8("verticalLayout_OrdreCodecs"));
+    verticalLayout_OrdreCodecs->setContentsMargins(0, -1, 0, -1);
+    toolButton_MonterCodec = new QToolButton(groupBox2_Codecs);
+    toolButton_MonterCodec->setObjectName(QString::fromUtf8("toolButton_MonterCodec"));
+
+    verticalLayout_OrdreCodecs->addWidget(toolButton_MonterCodec);
+
+    toolButton_DescendreCodec = new QToolButton(groupBox2_Codecs);
+    toolButton_DescendreCodec->setObjectName(QString::fromUtf8("toolButton_DescendreCodec"));
+
+    verticalLayout_OrdreCodecs->addWidget(toolButton_DescendreCodec);
+
+
+    gridLayout->addLayout(verticalLayout_OrdreCodecs, 0, 2, 1, 1);
+
+
+    verticalLayout_5->addWidget(groupBox2_Codecs);
+
+    stackedWidget_ParametresSpecif = new QStackedWidget(page_Audio);
+    stackedWidget_ParametresSpecif->setObjectName(QString::fromUtf8("stackedWidget_ParametresSpecif"));
+    sizePolicy1.setHeightForWidth(stackedWidget_ParametresSpecif->sizePolicy().hasHeightForWidth());
+    stackedWidget_ParametresSpecif->setSizePolicy(sizePolicy1);
+    page1_Alsa = new QWidget();
+    page1_Alsa->setObjectName(QString::fromUtf8("page1_Alsa"));
+    verticalLayout_20 = new QVBoxLayout(page1_Alsa);
+    verticalLayout_20->setSpacing(4);
+    verticalLayout_20->setMargin(0);
+    verticalLayout_20->setObjectName(QString::fromUtf8("verticalLayout_20"));
+    groupBox_Alsa = new QGroupBox(page1_Alsa);
+    groupBox_Alsa->setObjectName(QString::fromUtf8("groupBox_Alsa"));
+    formLayout_4 = new QFormLayout(groupBox_Alsa);
+    formLayout_4->setSpacing(4);
+    formLayout_4->setMargin(4);
+    formLayout_4->setObjectName(QString::fromUtf8("formLayout_4"));
+    comboBox2_Entree = new QComboBox(groupBox_Alsa);
+    comboBox2_Entree->setObjectName(QString::fromUtf8("comboBox2_Entree"));
+    comboBox2_Entree->setMinimumSize(QSize(100, 0));
+
+    formLayout_4->setWidget(2, QFormLayout::FieldRole, comboBox2_Entree);
+
+    label2_Entree = new QLabel(groupBox_Alsa);
+    label2_Entree->setObjectName(QString::fromUtf8("label2_Entree"));
+
+    formLayout_4->setWidget(2, QFormLayout::LabelRole, label2_Entree);
+
+    label3_Sortie = new QLabel(groupBox_Alsa);
+    label3_Sortie->setObjectName(QString::fromUtf8("label3_Sortie"));
+
+    formLayout_4->setWidget(3, QFormLayout::LabelRole, label3_Sortie);
+
+    comboBox3_Sortie = new QComboBox(groupBox_Alsa);
+    comboBox3_Sortie->setObjectName(QString::fromUtf8("comboBox3_Sortie"));
+    comboBox3_Sortie->setMinimumSize(QSize(100, 0));
+
+    formLayout_4->setWidget(3, QFormLayout::FieldRole, comboBox3_Sortie);
+
+    label1_GreffonAlsa = new QLabel(groupBox_Alsa);
+    label1_GreffonAlsa->setObjectName(QString::fromUtf8("label1_GreffonAlsa"));
+
+    formLayout_4->setWidget(0, QFormLayout::LabelRole, label1_GreffonAlsa);
+
+    comboBox1_GreffonAlsa = new QComboBox(groupBox_Alsa);
+    comboBox1_GreffonAlsa->setObjectName(QString::fromUtf8("comboBox1_GreffonAlsa"));
+    comboBox1_GreffonAlsa->setMinimumSize(QSize(100, 0));
+
+    formLayout_4->setWidget(0, QFormLayout::FieldRole, comboBox1_GreffonAlsa);
+
+
+    verticalLayout_20->addWidget(groupBox_Alsa);
+
+    stackedWidget_ParametresSpecif->addWidget(page1_Alsa);
+    page2_PulseAudio = new QWidget();
+    page2_PulseAudio->setObjectName(QString::fromUtf8("page2_PulseAudio"));
+    verticalLayout_7 = new QVBoxLayout(page2_PulseAudio);
+    verticalLayout_7->setSpacing(4);
+    verticalLayout_7->setMargin(4);
+    verticalLayout_7->setObjectName(QString::fromUtf8("verticalLayout_7"));
+    groupBox_PulseAudio = new QGroupBox(page2_PulseAudio);
+    groupBox_PulseAudio->setObjectName(QString::fromUtf8("groupBox_PulseAudio"));
+    QSizePolicy sizePolicy5(QSizePolicy::Expanding, QSizePolicy::Preferred);
+    sizePolicy5.setHorizontalStretch(0);
+    sizePolicy5.setVerticalStretch(0);
+    sizePolicy5.setHeightForWidth(groupBox_PulseAudio->sizePolicy().hasHeightForWidth());
+    groupBox_PulseAudio->setSizePolicy(sizePolicy5);
+    formLayout_11 = new QFormLayout(groupBox_PulseAudio);
+    formLayout_11->setSpacing(4);
+    formLayout_11->setMargin(4);
+    formLayout_11->setObjectName(QString::fromUtf8("formLayout_11"));
+    checkBox_ModifVolumeApps = new QCheckBox(groupBox_PulseAudio);
+    checkBox_ModifVolumeApps->setObjectName(QString::fromUtf8("checkBox_ModifVolumeApps"));
+
+    formLayout_11->setWidget(0, QFormLayout::LabelRole, checkBox_ModifVolumeApps);
+
+    pushButton = new QPushButton(groupBox_PulseAudio);
+    pushButton->setObjectName(QString::fromUtf8("pushButton"));
+    pushButton->setDefault(false);
+
+    formLayout_11->setWidget(1, QFormLayout::LabelRole, pushButton);
+
+
+    verticalLayout_7->addWidget(groupBox_PulseAudio);
+
+    stackedWidget_ParametresSpecif->addWidget(page2_PulseAudio);
+
+    verticalLayout_5->addWidget(stackedWidget_ParametresSpecif);
+
+    stackedWidgetOptions->addWidget(page_Audio);
+
+    horizontalLayoutDialog->addWidget(stackedWidgetOptions);
+
+
+    verticalLayout->addLayout(horizontalLayoutDialog);
+
+    lineDialog = new QFrame(ConfigurationDialog);
+    lineDialog->setObjectName(QString::fromUtf8("lineDialog"));
+    lineDialog->setFrameShape(QFrame::HLine);
+    lineDialog->setFrameShadow(QFrame::Sunken);
+
+    verticalLayout->addWidget(lineDialog);
+
+    buttonBoxDialog = new QDialogButtonBox(ConfigurationDialog);
+    buttonBoxDialog->setObjectName(QString::fromUtf8("buttonBoxDialog"));
+    buttonBoxDialog->setLayoutDirection(Qt::LeftToRight);
+    buttonBoxDialog->setOrientation(Qt::Horizontal);
+    buttonBoxDialog->setStandardButtons(QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::RestoreDefaults);
+    buttonBoxDialog->setCenterButtons(false);
+
+    verticalLayout->addWidget(buttonBoxDialog);
+
+
+#ifndef QT_NO_SHORTCUT
+    label_Capacite->setBuddy(horizontalSlider);
+    label1_Alias->setBuddy(edit1_Alias);
+    label2_Protocole->setBuddy(edit2_Protocole);
+    label3_Serveur->setBuddy(edit3_Serveur);
+    label4_Usager->setBuddy(edit4_Usager);
+    label5_Mdp->setBuddy(edit5_Mdp);
+    label6_BoiteVocale->setBuddy(edit6_BoiteVocale);
+    label_Interface->setBuddy(comboBox_Interface);
+    label2_Entree->setBuddy(comboBox2_Entree);
+    label3_Sortie->setBuddy(comboBox3_Sortie);
+    label1_GreffonAlsa->setBuddy(comboBox1_GreffonAlsa);
+#endif // QT_NO_SHORTCUT
+
+
+    retranslateUi(ConfigurationDialog);
+    QObject::connect(buttonBoxDialog, SIGNAL(accepted()), ConfigurationDialog, SLOT(accept()));
+    QObject::connect(buttonBoxDialog, SIGNAL(rejected()), ConfigurationDialog, SLOT(reject()));
+    QObject::connect(listOptions, SIGNAL(currentRowChanged(int)), stackedWidgetOptions, SLOT(setCurrentIndex(int)));
+    QObject::connect(checkBoxStun, SIGNAL(toggled(bool)), lineEdit_Stun, SLOT(setEnabled(bool)));
+    QObject::connect(comboBox_Interface, SIGNAL(currentIndexChanged(int)), stackedWidget_ParametresSpecif, SLOT(setCurrentIndex(int)));
+    QObject::connect(horizontalSlider, SIGNAL(valueChanged(int)), spinBox_CapaciteHist, SLOT(setValue(int)));
+    QObject::connect(spinBox_CapaciteHist, SIGNAL(valueChanged(int)), horizontalSlider, SLOT(setValue(int)));
+
+    stackedWidgetOptions->setCurrentIndex(2);
+    stackedWidget_ParametresSpecif->setCurrentIndex(1);
+
+
+    QMetaObject::connectSlotsByName(ConfigurationDialog);
+    } // setupUi
+
+    void retranslateUi(QDialog *ConfigurationDialog)
+    {
+    ConfigurationDialog->setWindowTitle(QApplication::translate("ConfigurationDialog", "Dialog", 0, QApplication::UnicodeUTF8));
+
+    const bool __sortingEnabled = listOptions->isSortingEnabled();
+    listOptions->setSortingEnabled(false);
+    listOptions->item(0)->setText(QApplication::translate("ConfigurationDialog", "G\303\251n\303\251ral", 0, QApplication::UnicodeUTF8));
+    listOptions->item(1)->setText(QApplication::translate("ConfigurationDialog", "Affichage", 0, QApplication::UnicodeUTF8));
+    listOptions->item(2)->setText(QApplication::translate("ConfigurationDialog", "Comptes", 0, QApplication::UnicodeUTF8));
+    listOptions->item(3)->setText(QApplication::translate("ConfigurationDialog", "Audio", 0, QApplication::UnicodeUTF8));
+
+    listOptions->setSortingEnabled(__sortingEnabled);
+    label_ConfGeneral->setText(QApplication::translate("ConfigurationDialog", "Configuration des param\303\250tres g\303\251n\303\251raux", 0, QApplication::UnicodeUTF8));
+    groupBox1_Historique->setTitle(QApplication::translate("ConfigurationDialog", "Historique des appels", 0, QApplication::UnicodeUTF8));
+    label_Capacite->setText(QApplication::translate("ConfigurationDialog", "&Capacit\303\251", 0, QApplication::UnicodeUTF8));
+    toolButtonEffacerHist->setText(QApplication::translate("ConfigurationDialog", "&Effacer l'Historique", 0, QApplication::UnicodeUTF8));
+    groupBox2_Connexion->setTitle(QApplication::translate("ConfigurationDialog", "Connexion", 0, QApplication::UnicodeUTF8));
+    label_PortSIP->setText(QApplication::translate("ConfigurationDialog", "Port SIP", 0, QApplication::UnicodeUTF8));
+    label_ConfAffichage->setText(QApplication::translate("ConfigurationDialog", "Configuration de l'affichage", 0, QApplication::UnicodeUTF8));
+    label1_Notifications->setText(QApplication::translate("ConfigurationDialog", "Activer les notifications du bureau", 0, QApplication::UnicodeUTF8));
+    checkBox1_NotifAppels->setText(QApplication::translate("ConfigurationDialog", "&Appels entrants", 0, QApplication::UnicodeUTF8));
+    checkBox2_NotifMessages->setText(QApplication::translate("ConfigurationDialog", "&Messages vocaux", 0, QApplication::UnicodeUTF8));
+    label2_FenetrePrincipale->setText(QApplication::translate("ConfigurationDialog", "Faire appara\303\256tre la fen\303\252tre principale", 0, QApplication::UnicodeUTF8));
+    checkBox1_FenDemarrage->setText(QApplication::translate("ConfigurationDialog", "Au &d\303\251marrage", 0, QApplication::UnicodeUTF8));
+    checkBox2_FenAppel->setText(QApplication::translate("ConfigurationDialog", "Lors d'un appel &entrant", 0, QApplication::UnicodeUTF8));
+    label_ConfComptes->setText(QApplication::translate("ConfigurationDialog", "Configuration des comptes utilisateur", 0, QApplication::UnicodeUTF8));
+    groupBoxGestionComptes->setTitle(QString());
+    buttonSupprimerCompte->setText(QString());
+    buttonSupprimerCompte->setShortcut(QApplication::translate("ConfigurationDialog", "+", 0, QApplication::UnicodeUTF8));
+    buttonNouveauCompte->setText(QApplication::translate("ConfigurationDialog", "...", 0, QApplication::UnicodeUTF8));
+    label1_Alias->setText(QApplication::translate("ConfigurationDialog", "&Alias", 0, QApplication::UnicodeUTF8));
+    label2_Protocole->setText(QApplication::translate("ConfigurationDialog", "&Protocole", 0, QApplication::UnicodeUTF8));
+    label3_Serveur->setText(QApplication::translate("ConfigurationDialog", "&Serveur", 0, QApplication::UnicodeUTF8));
+    label4_Usager->setText(QApplication::translate("ConfigurationDialog", "&Usager", 0, QApplication::UnicodeUTF8));
+    label5_Mdp->setText(QApplication::translate("ConfigurationDialog", "&Mot de Passe", 0, QApplication::UnicodeUTF8));
+    label6_BoiteVocale->setText(QApplication::translate("ConfigurationDialog", "&Bo\303\256te Vocale", 0, QApplication::UnicodeUTF8));
+    edit2_Protocole->clear();
+    edit2_Protocole->insertItems(0, QStringList()
+     << QApplication::translate("ConfigurationDialog", "SIP", 0, QApplication::UnicodeUTF8)
+     << QApplication::translate("ConfigurationDialog", "IAX", 0, QApplication::UnicodeUTF8)
+    );
+    groupBox_ConfComptesCommuns->setTitle(QString());
+    label_ConfComptesCommus->setText(QApplication::translate("ConfigurationDialog", "Les param\303\250tres STUN seront appliqu\303\251s \303\240 tous les comptes", 0, QApplication::UnicodeUTF8));
+    checkBoxStun->setText(QApplication::translate("ConfigurationDialog", "Activer Stun", 0, QApplication::UnicodeUTF8));
+    label_ConfAudio->setText(QApplication::translate("ConfigurationDialog", "Configuration des param\303\250tres audio", 0, QApplication::UnicodeUTF8));
+    groupBox1_Audio->setTitle(QString());
+    label_Interface->setText(QApplication::translate("ConfigurationDialog", "&Interface audio", 0, QApplication::UnicodeUTF8));
+    comboBox_Interface->clear();
+    comboBox_Interface->insertItems(0, QStringList()
+     << QApplication::translate("ConfigurationDialog", "ALSA", 0, QApplication::UnicodeUTF8)
+     << QApplication::translate("ConfigurationDialog", "PulseAudio", 0, QApplication::UnicodeUTF8)
+    );
+    checkBox_Sonneries->setText(QApplication::translate("ConfigurationDialog", "&Activer les sonneries", 0, QApplication::UnicodeUTF8));
+    groupBox2_Codecs->setTitle(QApplication::translate("ConfigurationDialog", "&Codecs", 0, QApplication::UnicodeUTF8));
+    toolButton_MonterCodec->setText(QApplication::translate("ConfigurationDialog", "...", 0, QApplication::UnicodeUTF8));
+    toolButton_DescendreCodec->setText(QApplication::translate("ConfigurationDialog", "...", 0, QApplication::UnicodeUTF8));
+    groupBox_Alsa->setTitle(QApplication::translate("ConfigurationDialog", "Param\303\250tres ALSA", 0, QApplication::UnicodeUTF8));
+    label2_Entree->setText(QApplication::translate("ConfigurationDialog", "&Entr\303\251e", 0, QApplication::UnicodeUTF8));
+    label3_Sortie->setText(QApplication::translate("ConfigurationDialog", "&Sortie", 0, QApplication::UnicodeUTF8));
+    label1_GreffonAlsa->setText(QApplication::translate("ConfigurationDialog", "&Greffon ALSA", 0, QApplication::UnicodeUTF8));
+    groupBox_PulseAudio->setTitle(QApplication::translate("ConfigurationDialog", "Param\303\250tres PulseAudio", 0, QApplication::UnicodeUTF8));
+    checkBox_ModifVolumeApps->setText(QApplication::translate("ConfigurationDialog", "Autoriser \303\240 &modifier le volume des autres applications", 0, QApplication::UnicodeUTF8));
+    pushButton->setText(QApplication::translate("ConfigurationDialog", "PushButton", 0, QApplication::UnicodeUTF8));
+    Q_UNUSED(ConfigurationDialog);
+    } // retranslateUi
+
+};
+
+namespace Ui {
+    class ConfigurationDialog: public Ui_ConfigurationDialog {};
+} // namespace Ui
+
+QT_END_NAMESPACE
+
+#endif // UI_CONFIGDIALOG_H
diff --git a/src/dbus/configurationmanager-glue.h b/src/dbus/configurationmanager-glue.h
index 8a69473ca12dadccbdd9f9a2db4dd03d9c7d8a7e..fb89d02c29687284596e257eac04451f8f12a850 100644
--- a/src/dbus/configurationmanager-glue.h
+++ b/src/dbus/configurationmanager-glue.h
@@ -36,9 +36,7 @@ public:
         register_method(ConfigurationManager_adaptor, getRingtoneChoice, _getRingtoneChoice_stub);
         register_method(ConfigurationManager_adaptor, setRingtoneChoice, _setRingtoneChoice_stub);
         register_method(ConfigurationManager_adaptor, getAudioManager, _getAudioManager_stub);
-        register_method(ConfigurationManager_adaptor, getRecordPath, _getRecordPath_stub);
         register_method(ConfigurationManager_adaptor, setAudioManager, _setAudioManager_stub);
-        register_method(ConfigurationManager_adaptor, setRecordPath, _setRecordPath_stub);
         register_method(ConfigurationManager_adaptor, getCodecList, _getCodecList_stub);
         register_method(ConfigurationManager_adaptor, getCodecDetails, _getCodecDetails_stub);
         register_method(ConfigurationManager_adaptor, getActiveCodecList, _getActiveCodecList_stub);
@@ -165,21 +163,11 @@ public:
             { "api", "i", false },
             { 0, 0, 0 }
         };
-        static ::DBus::IntrospectedArgument getRecordPath_args[] = 
-        {
-            { "rec", "s", false },
-            { 0, 0, 0 }
-        };
         static ::DBus::IntrospectedArgument setAudioManager_args[] = 
         {
             { "api", "i", true },
             { 0, 0, 0 }
         };
-        static ::DBus::IntrospectedArgument setRecordPath_args[] = 
-        {
-            { "rec", "s", true },
-            { 0, 0, 0 }
-        };
         static ::DBus::IntrospectedArgument getCodecList_args[] = 
         {
             { "list", "as", false },
@@ -375,7 +363,7 @@ public:
         };
         static ::DBus::IntrospectedArgument parametersChanged_args[] = 
         {
-            { "list", "a{ss}", false },
+            { "details", "a{ss}", false },
             { 0, 0, 0 }
         };
         static ::DBus::IntrospectedArgument accountsChanged_args[] = 
@@ -405,9 +393,7 @@ public:
             { "getRingtoneChoice", getRingtoneChoice_args },
             { "setRingtoneChoice", setRingtoneChoice_args },
             { "getAudioManager", getAudioManager_args },
-            { "getRecordPath", getRecordPath_args },
             { "setAudioManager", setAudioManager_args },
-            { "setRecordPath", setRecordPath_args },
             { "getCodecList", getCodecList_args },
             { "getCodecDetails", getCodecDetails_args },
             { "getActiveCodecList", getActiveCodecList_args },
@@ -498,9 +484,7 @@ public:
     virtual std::string getRingtoneChoice() = 0;
     virtual void setRingtoneChoice(const std::string& tone) = 0;
     virtual int32_t getAudioManager() = 0;
-    virtual std::string getRecordPath() = 0;
     virtual void setAudioManager(const int32_t& api) = 0;
-    virtual void setRecordPath(const std::string& rec) = 0;
     virtual std::vector< std::string > getCodecList() = 0;
     virtual std::vector< std::string > getCodecDetails(const int32_t& payload) = 0;
     virtual std::vector< std::string > getActiveCodecList() = 0;
@@ -726,16 +710,6 @@ private:
         wi << argout1;
         return reply;
     }
-    ::DBus::Message _getRecordPath_stub(const ::DBus::CallMessage &call)
-    {
-        ::DBus::MessageIter ri = call.reader();
-
-        std::string argout1 = getRecordPath();
-        ::DBus::ReturnMessage reply(call);
-        ::DBus::MessageIter wi = reply.writer();
-        wi << argout1;
-        return reply;
-    }
     ::DBus::Message _setAudioManager_stub(const ::DBus::CallMessage &call)
     {
         ::DBus::MessageIter ri = call.reader();
@@ -745,15 +719,6 @@ private:
         ::DBus::ReturnMessage reply(call);
         return reply;
     }
-    ::DBus::Message _setRecordPath_stub(const ::DBus::CallMessage &call)
-    {
-        ::DBus::MessageIter ri = call.reader();
-
-        std::string argin1; ri >> argin1;
-        setRecordPath(argin1);
-        ::DBus::ReturnMessage reply(call);
-        return reply;
-    }
     ::DBus::Message _getCodecList_stub(const ::DBus::CallMessage &call)
     {
         ::DBus::MessageIter ri = call.reader();
diff --git a/src/dbus/configurationmanager-introspec.xml b/src/dbus/configurationmanager-introspec.xml
index 01c91654cd3c1c10ad888b23af38a15b0376fb55..f869dba8b64107f47dab54d7efc561f23d3134b9 100644
--- a/src/dbus/configurationmanager-introspec.xml
+++ b/src/dbus/configurationmanager-introspec.xml
@@ -5,15 +5,18 @@
   <!-- Accounts-related methods -->  
     <method name="getAccountDetails">
       <arg type="s" name="accountID" direction="in"/>
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
       <arg type="a{ss}" name="details" direction="out"/>
     </method>
     
     <method name="setAccountDetails">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.In1" value="MapStringString"/>
       <arg type="s" name="accountID" direction="in"/>
       <arg type="a{ss}" name="details" direction="in"/>
     </method>
     
     <method name="addAccount">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
       <arg type="a{ss}" name="details" direction="in"/>
     </method>
     
@@ -22,6 +25,7 @@
     </method>
     
     <method name="getAccountList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
    
@@ -35,6 +39,7 @@
   <!-- Various audio-related methods   -->
  
     <method name="getToneLocaleList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
   
@@ -43,14 +48,17 @@
     </method>
     
     <method name="getRingtoneList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
    
-   <method name="getPlaybackDeviceList">
+    <method name="getPlaybackDeviceList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
     
     <method name="getRecordDeviceList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
     
@@ -73,37 +81,32 @@
       <arg type="i" name="api" direction="out"/>
     </method>
 
-     <method name="getRecordPath">
-      <arg type="s" name="rec" direction="out"/>
-    </method>
-
     <method name="setAudioManager">
       <arg type="i" name="api" direction="in"/>
     </method>
 
-    <method name="setRecordPath">
-      <arg type="s" name="rec" direction="in"/>
-    </method>
- 
-
    <!--      ///////////////////////               -->
    
    <!-- Codecs-related methods -->
  
     <method name="getCodecList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
    
    <method name="getCodecDetails">
      <arg type="i" name="payload" direction="in"/>
+     <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
      <arg type="as" name="details" direction="out"/>
    </method>
  
     <method name="getActiveCodecList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
 
     <method name="setActiveCodecList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
       <arg type="as" name="list" direction="in"/>
     </method>
 
@@ -111,32 +114,43 @@
 	<!-- Audio devices methods -->
 	
     <method name="getInputAudioPluginList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
+		
     <method name="getOutputAudioPluginList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
+    
     <method name="setInputAudioPlugin">
       <arg type="s" name="audioPlugin" direction="in"/>
     </method>
+    
     <method name="setOutputAudioPlugin">
       <arg type="s" name="audioPlugin" direction="in"/>
     </method>
     
     <method name="getAudioOutputDeviceList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
+    
     <method name="setAudioOutputDevice">
       <arg type="i" name="index" direction="in"/>
     </method>
+    
     <method name="getAudioInputDeviceList">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
+    
     <method name="setAudioInputDevice">
       <arg type="i" name="index" direction="in"/>
     </method>
     
     <method name="getCurrentAudioDevicesIndex">
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
       <arg type="as" name="list" direction="out"/>
     </method>
 
@@ -244,7 +258,9 @@
 
   <!--        /////////////////////////////       -->
     <signal name="parametersChanged">
-      <arg type="a{ss}" name="list" direction="out"/>
+      <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringString"/>
+      <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+      <arg type="a{ss}" name="details" direction="out"/>
     </signal>
     
     <signal name="accountsChanged">