Merge branch 'qt-client'

This commit is contained in:
Emmanuel Milou
2009-07-21 18:09:13 -04:00
27 changed files with 234 additions and 476 deletions

View File

@ -100,7 +100,6 @@ Account * Account::buildExistingAccountFromId(QString _accountId)
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
Account * a = new Account();
a->accountId = new QString(_accountId);
qDebug() << "getAccountDetails 1 sent";
a->accountDetails = new MapStringString( configurationManager.getAccountDetails(_accountId).value() );
a->initItem();
return a;

View File

@ -47,9 +47,6 @@ AccountItemWidget::AccountItemWidget(QWidget *parent)
enabled = false;
updateDisplay();
// connect(checkBox, SIGNAL(stateChanged(int)),
// this, SLOT(on_checkBox_stateChanged()));
QMetaObject::connectSlotsByName(this);
}
@ -115,6 +112,5 @@ bool AccountItemWidget::getEnabled()
void AccountItemWidget::on_checkBox_stateChanged(int state)
{
qDebug() << "on_checkBox_stateChanged";
emit checkStateChanged(state == Qt::Checked);
}

View File

@ -38,7 +38,6 @@ AccountList::AccountList(QStringList & _accountIds)
AccountList::AccountList(bool fill)
{
qDebug() << "AccountList()";
accounts = new QVector<Account *>();
if(fill)
{

View File

@ -127,7 +127,7 @@ bool AccountListModel::addAccount( QString alias )
return true;
}
int AccountListModel::rowCount(const QModelIndex & parent) const
int AccountListModel::rowCount(const QModelIndex & /*parent*/) const
{
return accounts->size();
}

View File

@ -56,13 +56,13 @@
***************************************************************************/
typedef struct {
char success;
char reason[200];
char user[200];
char passwd[200];
bool success;
QString reason;
QString user;
QString passwd;
} rest_account;
int req(char *host, int port, char *req, char *ret) {
int sendRequest(QString host, int port, QString req, QString & ret) {
int s;
struct sockaddr_in servSockAddr;
@ -74,9 +74,9 @@ int req(char *host, int port, char *req, char *ret) {
char buf[1024];
bzero(&servSockAddr, sizeof(servSockAddr));
servHostEnt = gethostbyname(host);
servHostEnt = gethostbyname(host.toLatin1());
if (servHostEnt == NULL) {
strcpy(ret, "gethostbyname");
ret = "gethostbyname";
return -1;
}
bcopy((char *)servHostEnt->h_addr, (char *)&servSockAddr.sin_addr, servHostEnt->h_length);
@ -84,20 +84,22 @@ int req(char *host, int port, char *req, char *ret) {
servSockAddr.sin_family = AF_INET;
if ((s = socket(AF_INET,SOCK_STREAM,0)) < 0) {
strcpy(ret, "socket");
ret = "socket";
return -1;
}
if(connect(s, (const struct sockaddr *) &servSockAddr, (socklen_t) sizeof(servSockAddr)) < 0 ) {
perror("foo");
strcpy(ret, "connect");
perror(NULL);
ret = "connect";
return -1;
}
f = fdopen(s, "r+");
fprintf(f, "%s HTTP/1.1\r\n", req);
fprintf(f, "Host: %s\r\n", host);
const char * req2 = req.toLatin1();
const char * host2 = host.toLatin1();
fprintf(f, "%s HTTP/1.1\r\n", req2);
fprintf(f, "Host: %s\r\n", host2);
fputs("User-Agent: SFLphone\r\n", f);
fputs("\r\n", f);
@ -113,7 +115,8 @@ int req(char *host, int port, char *req, char *ret) {
ret[i] = fgetc(f);
if (status != 200) {
sprintf(ret, "http error: %ld", status);
ret = "http error: " + status;
// sprintf(ret, "http error: %ld", status);
return -1;
}
@ -123,22 +126,22 @@ int req(char *host, int port, char *req, char *ret) {
return 0;
}
rest_account get_rest_account(char *host,char *email) {
char ret[4096];
rest_account get_rest_account(QString host, QString email) {
QString req = "GET /rest/accountcreator?email=" + email;
QString ret;
rest_account ra;
bzero(ret, sizeof(ret));
printf("HOST: %s\n", host);
strcpy(ret,"GET /rest/accountcreator?email=");
strcat(ret, email);
if (req(host, 80, ret, ret) != -1) {
strcpy(ra.user, strtok(ret, "\n"));
strcpy(ra.passwd, strtok(NULL, "\n"));\
ra.success = 1;
qDebug() << "HOST: " << host;
int res = sendRequest(host, 80, req, ret);
if (res != -1) {
QStringList list = ret.split("\n");
ra.user = list[0];
ra.passwd = list[1];\
ra.success = true;
} else {
ra.success = 0;
strcpy(ra.reason, ret);
ra.success = false;
ra.reason = ret;
}
puts(ret);
qDebug() << ret;
return ra;
}

View File

@ -1,5 +1,4 @@
ADD_DEFINITIONS(
${KDE4_DEFINITIONS}
${QT_DEFINITIONS}
@ -8,16 +7,6 @@ ADD_DEFINITIONS(
-DSHARE_INSTALL_PREFIX="\\\"${SHARE_INSTALL_PREFIX}\\\""
)
# add_definitions ( -DKDE_DEFAULT_DEBUG_AREA=9000 )
# kde4_set_debug_area( 1234 )
# IF(DEFINED DEBUG_DISABLED)
# MESSAGE("NO DEBUG OUTPUT")
# ADD_DEFINITIONS( -DQT_NO_DEBUG_OUTPUT )
# ENDIF(DEFINED DEBUG_DISABLED)
MESSAGE("CMAKE_BUILD_TYPE = ${CMAKE_BUILD_TYPE}")
IF(${CMAKE_BUILD_TYPE} MATCHES Release)
@ -28,7 +17,7 @@ ENDIF(${CMAKE_BUILD_TYPE} MATCHES Release)
SET ( KDE4_KABC_LIBS -lkabc )
SET( sflphone_client_kde_SRCS
sflphone_kdeview.cpp
SFLPhoneView.cpp
SFLPhone.cpp
main.cpp
sflphone_const.h
@ -124,12 +113,11 @@ SET( config_ui_files
conf/dlghooksbase.ui
)
KDE4_ADD_UI_FILES(sflphone_client_kde_SRCS ui/sflphone_kdeview_base.ui ${config_ui_files} )
KDE4_ADD_UI_FILES(sflphone_client_kde_SRCS ui/SFLPhoneView_base.ui ${config_ui_files} )
KDE4_ADD_KCFG_FILES(sflphone_client_kde_SRCS conf/kcfg_settings.kcfgc)
INSTALL(FILES conf/sflphone-client-kde.kcfg DESTINATION ${KCFG_INSTALL_DIR})
KDE4_ADD_EXECUTABLE(sflphone-client-kde ${sflphone_client_kde_SRCS} ${QtApp_RCC_SRCS})
TARGET_LINK_LIBRARIES(sflphone-client-kde ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KABC_LIBS})

View File

@ -111,7 +111,6 @@ void Call::initCallItem()
itemWidget = new QWidget();
labelIcon = new QLabel();
qDebug() << "labelIcon : " << labelIcon;
labelCallNumber = new QLabel(peerPhoneNumber);
labelTransferPrefix = new QLabel(i18n("Transfer to : "));
labelTransferNumber = new QLabel();
@ -127,7 +126,6 @@ void Call::initCallItem()
transfer->setMargin(0);
transfer->setSpacing(0);
mainLayout->addWidget(labelIcon);
qDebug() << "descr->addWidget(labelPeerName);";
if(! peerName.isEmpty())
{
labelPeerName = new QLabel(peerName);
@ -389,15 +387,12 @@ QListWidgetItem * Call::getHistoryItem()
{
historyItem = new QListWidgetItem();
historyItem->setSizeHint(QSize(140,45));
qDebug() << "historystate = " << historyState;
}
return historyItem;
}
QWidget * Call::getHistoryItemWidget()
{
// if(historyItemWidget == NULL && historyState != NONE)
// {
historyItemWidget = new QWidget();
labelHistoryIcon = new QLabel();
labelHistoryIcon->setPixmap(QPixmap(historyIcons[historyState]));
@ -584,8 +579,8 @@ void Call::call()
qDebug() << "account = " << account;
if(account.isEmpty())
{
qDebug() << "account is empty, taking the first registered.";
this->account = sflphone_kdeView::firstRegisteredAccountId();
qDebug() << "account is not set, taking the first registered.";
this->account = SFLPhoneView::accountInUseId();
}
if(!account.isEmpty())
{
@ -670,14 +665,8 @@ void Call::appendItemText(QString text)
editNumber = labelCallNumber;
break;
case CALL_STATE_CURRENT:
//TODO replace account string by an Account instance and handle damn pointers to avoid detruction of Accounts
// if(peerPhoneNumber == configurationManager.getAccountDetails(account).value()[ACCOUNT_MAILBOX])
// {
// text = QString(QChar(0x9A));
// }
text = QString();
editNumber = labelCallNumber;
break;
default:
qDebug() << "Type key on call not editable. Doing nothing.";

View File

@ -25,7 +25,8 @@
#include "callmanager_interface_singleton.h"
#include "configurationmanager_interface_singleton.h"
CallList::CallList()
CallList::CallList(QObject * parent)
: QObject(parent)
{
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();

View File

@ -39,7 +39,7 @@ private:
public:
//Constructors & Destructors
CallList();
CallList(QObject * parent = 0);
~CallList();
//Getters

View File

@ -71,12 +71,12 @@ QVariant CodecListModel::data ( const QModelIndex & index, int role) const
}
int CodecListModel::rowCount(const QModelIndex & parent) const
int CodecListModel::rowCount(const QModelIndex & /*parent*/) const
{
return codecs.count();
}
int CodecListModel::columnCount(const QModelIndex & parent) const
int CodecListModel::columnCount(const QModelIndex & /*parent*/) const
{
return 4;
}
@ -186,7 +186,6 @@ void CodecListModel::setActiveCodecList(const QStringList & activeCodecListToSet
for(int i=0 ; i<codecListToDisplay.size() ; i++)
{
bool ok;
qDebug() << codecListToDisplay[i];
QString payloadStr = QString(codecListToDisplay[i]);
int payload = payloadStr.toInt(&ok);
if(!ok)

View File

@ -42,7 +42,7 @@ Dialpad::Dialpad(QWidget *parent)
pushButton_diese = new QPushButton(this);
pushButton_etoile = new QPushButton(this);
pushButton_0->setObjectName(QString::fromUtf8("pushButton_0"));
pushButton_0 ->setObjectName(QString::fromUtf8("pushButton_0"));
pushButton_1->setObjectName(QString::fromUtf8("pushButton_1"));
pushButton_2->setObjectName(QString::fromUtf8("pushButton_2"));
pushButton_3->setObjectName(QString::fromUtf8("pushButton_3"));
@ -64,9 +64,9 @@ Dialpad::Dialpad(QWidget *parent)
gridLayout->addWidget(pushButton_7, 2, 0);
gridLayout->addWidget(pushButton_8, 2, 1);
gridLayout->addWidget(pushButton_9, 2, 2);
gridLayout->addWidget(pushButton_diese, 3, 0);
gridLayout->addWidget(pushButton_etoile, 3, 0);
gridLayout->addWidget(pushButton_0, 3, 1);
gridLayout->addWidget(pushButton_etoile, 3, 2);
gridLayout->addWidget(pushButton_diese, 3, 2);
fillButtons();

View File

@ -43,7 +43,12 @@ protected:
public:
Item(QListWidget *list=0)
/**
* Would be great to take the QListWidget as attribute
* to be able to add the itemWidget to the item in the list.
* For the moment, we have to do it from outside.
*/
Item(/*QListWidget *list=0*/)
{
item = NULL;
itemWidget = NULL;
@ -63,6 +68,7 @@ public:
{
return item;
}
WIDGET_TYPE * getItemWidget()
{
return itemWidget;

View File

@ -37,13 +37,9 @@
#include "configurationmanager_interface_singleton.h"
/**
*
* @param parent
*/
SFLPhone::SFLPhone(QWidget *parent)
: KXmlGuiWindow(parent),
view(new sflphone_kdeView(this))
view(new SFLPhoneView(this))
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
@ -181,7 +177,7 @@ void SFLPhone::setupActions()
}
sflphone_kdeView * SFLPhone::getView()
SFLPhoneView * SFLPhone::getView()
{
return view;
}

View File

@ -33,15 +33,28 @@
#include <KAction>
#include <QActionGroup>
#include "ui_sflphone_kdeview_base.h"
// #include "ui_SFLPhoneView_base.h"
#include "CallList.h"
#include "AccountWizard.h"
#include "Contact.h"
#include "sflphone_kdeview.h"
#include "SFLPhoneView.h"
class SFLPhoneView;
class sflphone_kdeView;
/**
* This class represents the SFLphone main window
* It implements the methods relative to windowing
* (status, menus, toolbars, notifications...).
* It uses a view which implements the real functionning
* and features of the phone.
* The display of the window is according to the state of the view,
* so the view sends some signals to ask for changes on the window
* that the window has to take into account.
*
* @short Main window
* @author Jérémy Quentin <jeremy.quentin@savoirfairelinux.com>
* @version 0.9.6
**/
class SFLPhone : public KXmlGuiWindow
{
Q_OBJECT
@ -74,7 +87,7 @@ private:
KAction * action_configureSflPhone;
KAction * action_accountCreationWizard;
sflphone_kdeView * view;
SFLPhoneView * view;
QMenu *trayIconMenu;
bool iconChanged;
QSystemTrayIcon *trayIcon;
@ -95,7 +108,7 @@ public:
void sendNotif(QString caller);
void putForeground();
void trayIconSignal();
sflphone_kdeView * getView();
SFLPhoneView * getView();
QList<QAction *> getCallActions();

View File

@ -19,9 +19,8 @@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include "sflphone_kdeview.h"
#include "SFLPhoneView.h"
#include <klocale.h>
#include <QtGui/QLabel>
#include <QtGui/QContextMenuEvent>
#include <QtGui/QMenu>
@ -29,6 +28,7 @@
#include <QtGui/QPalette>
#include <QtGui/QInputDialog>
#include <klocale.h>
#include <kstandardaction.h>
#include <kactioncollection.h>
#include <kaction.h>
@ -50,11 +50,11 @@
using namespace KABC;
ConfigurationDialogKDE * sflphone_kdeView::configDialog;
AccountList * sflphone_kdeView::accountList;
QString sflphone_kdeView::priorAccountId;
ConfigurationDialog * SFLPhoneView::configDialog;
AccountList * SFLPhoneView::accountList;
QString SFLPhoneView::priorAccountId;
sflphone_kdeView::sflphone_kdeView(QWidget *parent)
SFLPhoneView::SFLPhoneView(QWidget *parent)
: QWidget(parent)
{
setupUi(this);
@ -64,7 +64,7 @@ sflphone_kdeView::sflphone_kdeView(QWidget *parent)
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
errorWindow = new QErrorMessage(this);
callList = new CallList();
callList = new CallList(this);
for(int i = 0 ; i < callList->size() ; i++)
{
Call * call = (*callList)[i];
@ -80,7 +80,7 @@ sflphone_kdeView::sflphone_kdeView(QWidget *parent)
accountList = new AccountList(false);
configDialog = new ConfigurationDialogKDE(this);
configDialog = new ConfigurationDialog(this);
configDialog->setObjectName("configDialog");
configDialog->setModal(true);
@ -120,20 +120,15 @@ sflphone_kdeView::sflphone_kdeView(QWidget *parent)
stackedWidget_screen->setCurrentWidget(page_callList);
// loadWindow();
}
sflphone_kdeView::~sflphone_kdeView()
SFLPhoneView::~SFLPhoneView()
{
delete configDialog;
delete wizard;
delete callList;
}
void sflphone_kdeView::loadWindow()
void SFLPhoneView::loadWindow()
{
qDebug() << "loadWindow";
updateWindowCallState();
@ -149,9 +144,7 @@ void sflphone_kdeView::loadWindow()
updateStatusMessage();
}
Account * sflphone_kdeView::firstRegisteredAccount()
Account * SFLPhoneView::accountInUse()
{
Account * priorAccount = accountList->getAccountById(priorAccountId);
if(priorAccount && priorAccount->getAccountDetail(ACCOUNT_STATUS) == ACCOUNT_STATE_REGISTERED )
@ -164,9 +157,9 @@ Account * sflphone_kdeView::firstRegisteredAccount()
}
}
QString sflphone_kdeView::firstRegisteredAccountId()
QString SFLPhoneView::accountInUseId()
{
Account * firstRegistered = firstRegisteredAccount();
Account * firstRegistered = accountInUse();
if(firstRegistered == NULL)
{
return QString();
@ -177,17 +170,17 @@ QString sflphone_kdeView::firstRegisteredAccountId()
}
}
AccountList * sflphone_kdeView::getAccountList()
AccountList * SFLPhoneView::getAccountList()
{
return accountList;
}
QErrorMessage * sflphone_kdeView::getErrorWindow()
QErrorMessage * SFLPhoneView::getErrorWindow()
{
return errorWindow;
}
void sflphone_kdeView::addCallToCallList(Call * call)
void SFLPhoneView::addCallToCallList(Call * call)
{
QListWidgetItem * item = call->getItem();
QWidget * widget = call->getItemWidget();
@ -198,7 +191,7 @@ void sflphone_kdeView::addCallToCallList(Call * call)
}
}
void sflphone_kdeView::addCallToCallHistory(Call * call)
void SFLPhoneView::addCallToCallHistory(Call * call)
{
QListWidgetItem * item = call->getHistoryItem();
QWidget * widget = call->getHistoryItemWidget();
@ -209,7 +202,7 @@ void sflphone_kdeView::addCallToCallHistory(Call * call)
}
}
void sflphone_kdeView::addContactToContactList(Contact * contact)
void SFLPhoneView::addContactToContactList(Contact * contact)
{
QListWidgetItem * item = contact->getItem();
QWidget * widget = contact->getItemWidget();
@ -220,7 +213,7 @@ void sflphone_kdeView::addContactToContactList(Contact * contact)
}
}
void sflphone_kdeView::typeString(QString str)
void SFLPhoneView::typeString(QString str)
{
qDebug() << "typeString";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -252,7 +245,7 @@ void sflphone_kdeView::typeString(QString str)
}
}
void sflphone_kdeView::backspace()
void SFLPhoneView::backspace()
{
qDebug() << "backspace";
if(stackedWidget_screen->currentWidget() == page_callList)
@ -279,7 +272,7 @@ void sflphone_kdeView::backspace()
}
}
void sflphone_kdeView::escape()
void SFLPhoneView::escape()
{
qDebug() << "escape";
if(stackedWidget_screen->currentWidget() == page_callList )
@ -323,7 +316,7 @@ void sflphone_kdeView::escape()
}
}
void sflphone_kdeView::enter()
void SFLPhoneView::enter()
{
qDebug() << "enter";
if(stackedWidget_screen->currentWidget() == page_callList )
@ -365,8 +358,6 @@ void sflphone_kdeView::enter()
}
else
{
// action_history->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
Call * pastCall = callList->findCallByHistoryItem(item);
@ -391,8 +382,6 @@ void sflphone_kdeView::enter()
}
else
{
// action_addressBook->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
ContactItemWidget * w = (ContactItemWidget *) (listWidget_addressBook->itemWidget(item));
Call * call = callList->addDialingCall(w->getContactName());
@ -404,7 +393,7 @@ void sflphone_kdeView::enter()
}
}
void sflphone_kdeView::action(Call * call, call_action action)
void SFLPhoneView::action(Call * call, call_action action)
{
if(! call)
{
@ -430,7 +419,7 @@ void sflphone_kdeView::action(Call * call, call_action action)
******** Update Display Functions **********
*******************************************/
void sflphone_kdeView::updateCallItem(Call * call)
void SFLPhoneView::updateCallItem(Call * call)
{
call_state state = call->getState();
if(state == CALL_STATE_OVER)
@ -442,7 +431,7 @@ void sflphone_kdeView::updateCallItem(Call * call)
}
void sflphone_kdeView::updateWindowCallState()
void SFLPhoneView::updateWindowCallState()
{
qDebug() << "updateWindowCallState";
@ -455,7 +444,7 @@ void sflphone_kdeView::updateWindowCallState()
bool transfer = false;
//tells whether the call is in recording position
bool recordActivated = false;
enabledActions[SFLPhone::Mailbox] = firstRegisteredAccount() && ! firstRegisteredAccount()->getAccountDetail(ACCOUNT_MAILBOX).isEmpty();
enabledActions[SFLPhone::Mailbox] = accountInUse() && ! accountInUse()->getAccountDetail(ACCOUNT_MAILBOX).isEmpty();
if(stackedWidget_screen->currentWidget() == page_callList)
{
item = listWidget_callList->currentItem();
@ -600,20 +589,19 @@ void sflphone_kdeView::updateWindowCallState()
qDebug() << "Window updated.";
}
void sflphone_kdeView::updateSearchHistory()
void SFLPhoneView::updateSearchHistory()
{
qDebug() << "updateSearchHistory";
lineEdit_searchHistory->setVisible(!lineEdit_searchHistory->text().isEmpty());
}
void sflphone_kdeView::updateCallHistory()
void SFLPhoneView::updateCallHistory()
{
qDebug() << "updateCallHistory";
while(listWidget_callHistory->count() > 0)
{
QListWidgetItem * item = listWidget_callHistory->takeItem(0);
qDebug() << "take item " << item->text() << " ; widget = " << callList->findCallByHistoryItem(item);
}
QString textSearched = lineEdit_searchHistory->text();
for(int i = callList->size() - 1 ; i >= 0 ; i--)
@ -633,13 +621,12 @@ void sflphone_kdeView::updateCallHistory()
alternateColors(listWidget_callHistory);
}
void sflphone_kdeView::updateAddressBook()
void SFLPhoneView::updateAddressBook()
{
qDebug() << "updateAddressBook";
while(listWidget_addressBook->count() > 0)
{
QListWidgetItem * item = listWidget_addressBook->takeItem(0);
qDebug() << "take item " << item->text();
delete item;
}
if(isAddressBookEnabled())
@ -673,7 +660,7 @@ void sflphone_kdeView::updateAddressBook()
}
void sflphone_kdeView::alternateColors(QListWidget * listWidget)
void SFLPhoneView::alternateColors(QListWidget * listWidget)
{
qDebug() << "alternateColors";
for(int i = 0 ; i < listWidget->count(); i++)
@ -686,7 +673,7 @@ void sflphone_kdeView::alternateColors(QListWidget * listWidget)
}
QVector<Contact *> sflphone_kdeView::findContactsInKAddressBook(QString textSearched, bool & full)
QVector<Contact *> SFLPhoneView::findContactsInKAddressBook(QString textSearched, bool & full)
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
MapStringInt addressBookSettings = configurationManager.getAddressbookSettings().value();
@ -720,7 +707,7 @@ QVector<Contact *> sflphone_kdeView::findContactsInKAddressBook(QString textSear
}
int sflphone_kdeView::phoneNumberTypesDisplayed()
int SFLPhoneView::phoneNumberTypesDisplayed()
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
MapStringInt addressBookSettings = configurationManager.getAddressbookSettings().value();
@ -740,7 +727,7 @@ int sflphone_kdeView::phoneNumberTypesDisplayed()
return typesDisplayed;
}
void sflphone_kdeView::updateRecordButton()
void SFLPhoneView::updateRecordButton()
{
qDebug() << "updateRecordButton";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -771,7 +758,7 @@ void sflphone_kdeView::updateRecordButton()
toolButton_recVolAlone->setChecked(false);
}
}
void sflphone_kdeView::updateVolumeButton()
void SFLPhoneView::updateVolumeButton()
{
qDebug() << "updateVolumeButton";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -804,7 +791,7 @@ void sflphone_kdeView::updateVolumeButton()
}
void sflphone_kdeView::updateRecordBar()
void SFLPhoneView::updateRecordBar()
{
qDebug() << "updateRecordBar";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -813,7 +800,7 @@ void sflphone_kdeView::updateRecordBar()
slider_recVol->setValue(value);
slider_recVolAlone->setValue(value);
}
void sflphone_kdeView::updateVolumeBar()
void SFLPhoneView::updateVolumeBar()
{
qDebug() << "updateVolumeBar";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -823,7 +810,7 @@ void sflphone_kdeView::updateVolumeBar()
slider_sndVolAlone->setValue(value);
}
void sflphone_kdeView::updateVolumeControls()
void SFLPhoneView::updateVolumeControls()
{
qDebug() << "updateVolumeControls";
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
@ -835,7 +822,7 @@ void sflphone_kdeView::updateVolumeControls()
widget_sndVolAlone->setVisible(display && ! displayDialpad);
}
void sflphone_kdeView::updateDialpad()
void SFLPhoneView::updateDialpad()
{
qDebug() << "updateDialpad";
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
@ -844,10 +831,10 @@ void sflphone_kdeView::updateDialpad()
}
void sflphone_kdeView::updateStatusMessage()
void SFLPhoneView::updateStatusMessage()
{
qDebug() << "updateStatusMessage";
Account * account = firstRegisteredAccount();
Account * account = accountInUse();
if(account == NULL)
{
emit statusMessageChangeAsked(i18n("No registered accounts"));
@ -864,14 +851,14 @@ void sflphone_kdeView::updateStatusMessage()
************ Autoconnect *************
************************************************************/
void sflphone_kdeView::displayVolumeControls()
void SFLPhoneView::displayVolumeControls()
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
configurationManager.setVolumeControls();
updateVolumeControls();
}
void sflphone_kdeView::displayDialpad()
void SFLPhoneView::displayDialpad()
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
configurationManager.setDialpad();
@ -880,25 +867,25 @@ void sflphone_kdeView::displayDialpad()
}
void sflphone_kdeView::on_widget_dialpad_typed(QString text) { typeString(text); }
void SFLPhoneView::on_widget_dialpad_typed(QString text) { typeString(text); }
void sflphone_kdeView::on_lineEdit_searchHistory_textChanged()
void SFLPhoneView::on_lineEdit_searchHistory_textChanged()
{
qDebug() << "on_lineEdit_searchHistory_textEdited";
qDebug() << "on_lineEdit_searchHistory_textChanged";
updateSearchHistory();
updateCallHistory();
updateWindowCallState();
}
void sflphone_kdeView::on_lineEdit_addressBook_textChanged()
void SFLPhoneView::on_lineEdit_addressBook_textChanged()
{
qDebug() << "on_lineEdit_addressBook_textEdited";
qDebug() << "on_lineEdit_addressBook_textChanged";
updateAddressBook();
updateWindowCallState();
}
void sflphone_kdeView::on_slider_recVol_valueChanged(int value)
void SFLPhoneView::on_slider_recVol_valueChanged(int value)
{
qDebug() << "on_slider_recVol_valueChanged(" << value << ")";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -906,7 +893,7 @@ void sflphone_kdeView::on_slider_recVol_valueChanged(int value)
updateRecordButton();
}
void sflphone_kdeView::on_slider_sndVol_valueChanged(int value)
void SFLPhoneView::on_slider_sndVol_valueChanged(int value)
{
qDebug() << "on_slider_sndVol_valueChanged(" << value << ")";
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
@ -915,7 +902,7 @@ void sflphone_kdeView::on_slider_sndVol_valueChanged(int value)
}
void sflphone_kdeView::on_toolButton_recVol_clicked(bool checked)
void SFLPhoneView::on_toolButton_recVol_clicked(bool checked)
{
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
qDebug() << "on_toolButton_recVol_clicked().";
@ -942,7 +929,7 @@ void sflphone_kdeView::on_toolButton_recVol_clicked(bool checked)
}
void sflphone_kdeView::on_toolButton_sndVol_clicked(bool checked)
void SFLPhoneView::on_toolButton_sndVol_clicked(bool checked)
{
CallManagerInterface & callManager = CallManagerInterfaceSingleton::getInstance();
qDebug() << "on_toolButton_sndVol_clicked().";
@ -968,19 +955,19 @@ void sflphone_kdeView::on_toolButton_sndVol_clicked(bool checked)
}
void sflphone_kdeView::on_listWidget_callList_currentItemChanged()
void SFLPhoneView::on_listWidget_callList_currentItemChanged()
{
qDebug() << "on_listWidget_callList_currentItemChanged";
updateWindowCallState();
}
void sflphone_kdeView::on_listWidget_callList_itemChanged()
void SFLPhoneView::on_listWidget_callList_itemChanged()
{
qDebug() << "on_listWidget_callList_itemChanged";
stackedWidget_screen->setCurrentWidget(page_callList);
}
void sflphone_kdeView::on_listWidget_callList_itemDoubleClicked(QListWidgetItem * item)
void SFLPhoneView::on_listWidget_callList_itemDoubleClicked(QListWidgetItem * item)
{
qDebug() << "on_listWidget_callList_itemDoubleClicked";
Call * call = callList->findCallByItem(item);
@ -998,11 +985,9 @@ void sflphone_kdeView::on_listWidget_callList_itemDoubleClicked(QListWidgetItem
}
}
void sflphone_kdeView::on_listWidget_callHistory_itemDoubleClicked(QListWidgetItem * item)
void SFLPhoneView::on_listWidget_callHistory_itemDoubleClicked(QListWidgetItem * item)
{
qDebug() << "on_listWidget_callHistory_itemDoubleClicked";
// action_history->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
Call * pastCall = callList->findCallByHistoryItem(item);
Call * call = callList->addDialingCall(pastCall->getPeerName(), pastCall->getAccountId());
@ -1013,11 +998,9 @@ void sflphone_kdeView::on_listWidget_callHistory_itemDoubleClicked(QListWidgetIt
}
void sflphone_kdeView::on_listWidget_addressBook_itemDoubleClicked(QListWidgetItem * item)
void SFLPhoneView::on_listWidget_addressBook_itemDoubleClicked(QListWidgetItem * item)
{
qDebug() << "on_listWidget_addressBook_itemDoubleClicked";
// action_addressBook->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
ContactItemWidget * w = (ContactItemWidget *) (listWidget_addressBook->itemWidget(item));
Call * call = callList->addDialingCall(w->getContactName());
@ -1027,7 +1010,7 @@ void sflphone_kdeView::on_listWidget_addressBook_itemDoubleClicked(QListWidgetIt
action(call, CALL_ACTION_ACCEPT);
}
void sflphone_kdeView::on_stackedWidget_screen_currentChanged(int index)
void SFLPhoneView::on_stackedWidget_screen_currentChanged(int index)
{
qDebug() << "on_stackedWidget_screen_currentChanged";
switch(index)
@ -1052,10 +1035,11 @@ void sflphone_kdeView::on_stackedWidget_screen_currentChanged(int index)
}
}
void sflphone_kdeView::contextMenuEvent(QContextMenuEvent *event)
void SFLPhoneView::contextMenuEvent(QContextMenuEvent *event)
{
QMenu menu(this);
if(stackedWidget_screen->currentWidget() == page_callHistory || stackedWidget_screen->currentWidget() == page_addressBook)
if( ( stackedWidget_screen->currentWidget() == page_callHistory && listWidget_callHistory->currentItem() ) ||
( stackedWidget_screen->currentWidget() == page_addressBook && listWidget_addressBook->currentItem() ) )
{
QAction * action_edit = new QAction(&menu);
action_edit->setText(i18n("Edit before call"));
@ -1081,7 +1065,6 @@ void sflphone_kdeView::contextMenuEvent(QContextMenuEvent *event)
QVector<Account *> accounts = accountList->registeredAccounts();
for (int i = 0 ; i < accounts.size() ; i++)
{
qDebug() << i;
Account * account = accounts.at(i);
QAction * action = new ActionSetAccountFirst(account, &menu);
action->setChecked(account->getAccountId() == priorAccountId);
@ -1092,7 +1075,7 @@ void sflphone_kdeView::contextMenuEvent(QContextMenuEvent *event)
menu.exec(event->globalPos());
}
void sflphone_kdeView::editBeforeCall()
void SFLPhoneView::editBeforeCall()
{
qDebug() << "editBeforeCall";
QString name;
@ -1126,9 +1109,6 @@ void sflphone_kdeView::editBeforeCall()
QString newNumber = QInputDialog::getText(this, i18n("Edit before call"), QString(), QLineEdit::Normal, number, &ok);
if(ok)
{
// action_history->setChecked(false);
// action_addressBook->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
Call * call = callList->addDialingCall(name);
call->appendItemText(newNumber);
@ -1138,7 +1118,7 @@ void sflphone_kdeView::editBeforeCall()
}
}
void sflphone_kdeView::setAccountFirst(Account * account)
void SFLPhoneView::setAccountFirst(Account * account)
{
qDebug() << "setAccountFirst : " << (account ? account->getAlias() : QString());
if(account)
@ -1152,32 +1132,32 @@ void sflphone_kdeView::setAccountFirst(Account * account)
updateStatusMessage();
}
void sflphone_kdeView::on_listWidget_callHistory_currentItemChanged()
void SFLPhoneView::on_listWidget_callHistory_currentItemChanged()
{
qDebug() << "on_listWidget_callHistory_currentItemChanged";
updateWindowCallState();
}
void sflphone_kdeView::on_listWidget_addressBook_currentItemChanged()
void SFLPhoneView::on_listWidget_addressBook_currentItemChanged()
{
qDebug() << "on_listWidget_addressBook_currentItemChanged";
updateWindowCallState();
}
void sflphone_kdeView::configureSflPhone()
void SFLPhoneView::configureSflPhone()
{
configDialog->reload();
configDialog->show();
}
void sflphone_kdeView::accountCreationWizard()
void SFLPhoneView::accountCreationWizard()
{
wizard->show();
}
void sflphone_kdeView::accept()
void SFLPhoneView::accept()
{
if(stackedWidget_screen->currentWidget() == page_callList)
{
@ -1215,8 +1195,6 @@ void sflphone_kdeView::accept()
}
if(stackedWidget_screen->currentWidget() == page_callHistory)
{
// action_history->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
Call * pastCall = callList->findCallByHistoryItem(listWidget_callHistory->currentItem());
Call * call = callList->addDialingCall(pastCall->getPeerName());
@ -1227,8 +1205,6 @@ void sflphone_kdeView::accept()
}
if(stackedWidget_screen->currentWidget() == page_addressBook)
{
// action_addressBook->setChecked(false);
// stackedWidget_screen->setCurrentWidget(page_callList);
changeScreen(SCREEN_MAIN);
ContactItemWidget * w = (ContactItemWidget *) (listWidget_addressBook->itemWidget(listWidget_addressBook->currentItem()));
Call * call = callList->addDialingCall(w->getContactName());
@ -1239,7 +1215,7 @@ void sflphone_kdeView::accept()
}
}
void sflphone_kdeView::refuse()
void SFLPhoneView::refuse()
{
if(stackedWidget_screen->currentWidget() == page_callList)
{
@ -1263,7 +1239,7 @@ void sflphone_kdeView::refuse()
}
}
void sflphone_kdeView::hold()
void SFLPhoneView::hold()
{
QListWidgetItem * item = listWidget_callList->currentItem();
if(!item)
@ -1276,7 +1252,7 @@ void sflphone_kdeView::hold()
}
}
void sflphone_kdeView::transfer()
void SFLPhoneView::transfer()
{
QListWidgetItem * item = listWidget_callList->currentItem();
if(!item)
@ -1289,7 +1265,7 @@ void sflphone_kdeView::transfer()
}
}
void sflphone_kdeView::record()
void SFLPhoneView::record()
{
QListWidgetItem * item = listWidget_callList->currentItem();
if(!item)
@ -1302,9 +1278,9 @@ void sflphone_kdeView::record()
}
}
void sflphone_kdeView::mailBox()
void SFLPhoneView::mailBox()
{
Account * account = firstRegisteredAccount();
Account * account = accountInUse();
QString mailBoxNumber = account->getAccountDetail(ACCOUNT_MAILBOX);
Call * call = callList->addDialingCall();
call->appendItemText(mailBoxNumber);
@ -1313,7 +1289,7 @@ void sflphone_kdeView::mailBox()
action(call, CALL_ACTION_ACCEPT);
}
void sflphone_kdeView::on1_callStateChanged(const QString &callID, const QString &state)
void SFLPhoneView::on1_callStateChanged(const QString &callID, const QString &state)
{
qDebug() << "Signal : Call State Changed for call " << callID << " . New state : " << state;
Call * call = callList->findCallByCallId(callID);
@ -1338,32 +1314,31 @@ void sflphone_kdeView::on1_callStateChanged(const QString &callID, const QString
updateWindowCallState();
}
void sflphone_kdeView::on1_error(MapStringString details)
void SFLPhoneView::on1_error(MapStringString details)
{
qDebug() << "Signal : Daemon error : " << details;
}
void sflphone_kdeView::on1_incomingCall(const QString &accountID, const QString & callID)
void SFLPhoneView::on1_incomingCall(const QString & /*accountID*/, const QString & callID)
{
qDebug() << "Signal : Incoming Call ! ID = " << callID;
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
Call * call = callList->addIncomingCall(callID);
addCallToCallList(call);
listWidget_callList->setCurrentRow(listWidget_callList->count() - 1);
emit incomingCall(call);
}
void sflphone_kdeView::on1_incomingMessage(const QString &accountID, const QString &message)
void SFLPhoneView::on1_incomingMessage(const QString &accountID, const QString &message)
{
qDebug() << "Signal : Incoming Message ! \nMessage : " << message;
qDebug() << "Signal : Incoming Message for account " << accountID << " ! \nMessage : " << message;
}
void sflphone_kdeView::on1_voiceMailNotify(const QString &accountID, int count)
void SFLPhoneView::on1_voiceMailNotify(const QString &accountID, int count)
{
qDebug() << "Signal : VoiceMail Notify ! " << count << " new voice mails for account " << accountID;
}
void sflphone_kdeView::on1_volumeChanged(const QString &device, double value)
void SFLPhoneView::on1_volumeChanged(const QString & /*device*/, double value)
{
qDebug() << "Signal : Volume Changed !";
if(! (toolButton_recVol->isChecked() && value == 0.0))
@ -1372,7 +1347,7 @@ void sflphone_kdeView::on1_volumeChanged(const QString &device, double value)
updateVolumeBar();
}
void sflphone_kdeView::enableAddressBook()
void SFLPhoneView::enableAddressBook()
{
qDebug() << "\nenableAddressBook\n";
lineEdit_addressBook->clear();
@ -1382,7 +1357,7 @@ void sflphone_kdeView::enableAddressBook()
this, SLOT(enableAddressBook()));
}
bool sflphone_kdeView::loadAddressBook()
bool SFLPhoneView::loadAddressBook()
{
qDebug() << "loadAddressBook";
AddressBook * ab = StdAddressBook::self(true);
@ -1399,7 +1374,7 @@ bool sflphone_kdeView::loadAddressBook()
}
void sflphone_kdeView::updateAddressBookEnabled()
void SFLPhoneView::updateAddressBookEnabled()
{
emit addressBookEnableAsked(isAddressBookEnabled());
if(! isAddressBookEnabled() && stackedWidget_screen->currentWidget() == page_addressBook)
@ -1409,14 +1384,14 @@ void sflphone_kdeView::updateAddressBookEnabled()
}
bool sflphone_kdeView::isAddressBookEnabled()
bool SFLPhoneView::isAddressBookEnabled()
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
MapStringInt addressBookSettings = configurationManager.getAddressbookSettings().value();
return addressBookSettings[ADDRESSBOOK_ENABLE];
}
void sflphone_kdeView::changeScreen(int screen)
void SFLPhoneView::changeScreen(int screen)
{
switch(screen)
{
@ -1436,4 +1411,4 @@ void sflphone_kdeView::changeScreen(int screen)
emit screenChanged(screen);
}
#include "sflphone_kdeview.moc"
#include "SFLPhoneView.moc"

View File

@ -19,8 +19,8 @@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef sflphone_kdeVIEW_H
#define sflphone_kdeVIEW_H
#ifndef SFLPHONEVIEW_H
#define SFLPHONEVIEW_H
#include <QtGui/QWidget>
#include <QtCore/QString>
@ -31,35 +31,35 @@
#include <QErrorMessage>
#include <KXmlGuiWindow>
#include "ui_sflphone_kdeview_base.h"
#include "ui_SFLPhoneView_base.h"
#include "conf/ConfigurationDialog.h"
#include "CallList.h"
#include "AccountWizard.h"
#include "Contact.h"
#include "sflphone_kdeview.h"
#include "AccountList.h"
#include "ui_sflphone_kdeview_base.h"
class ConfigurationDialogKDE;
class ConfigurationDialog;
/**
* This is the main view class for sflphone-client-kde. Most of the non-menu,
* non-toolbar, and non-statusbar (e.g., non frame) GUI code should go
* here.
* As the state of the view has effects on the window,
* it emits some signals to ask for changes that the window has
* to treat.
*
* @short Main view
* @author Jérémy Quentin <jeremy.quentin@savoirfairelinux.com>
* @version 0.1
* @version 0.9.6
*/
class sflphone_kdeView : public QWidget, public Ui::SFLPhone_view
class SFLPhoneView : public QWidget, public Ui::SFLPhone_view
{
Q_OBJECT
private:
static ConfigurationDialogKDE * configDialog;
static ConfigurationDialog * configDialog;
static AccountList * accountList;
AccountWizard * wizard;
//List of calls in the window, and past ones.
@ -88,8 +88,8 @@ public:
* expected signals.
* @param parent
*/
sflphone_kdeView(QWidget *parent);
virtual ~sflphone_kdeView();
SFLPhoneView(QWidget *parent);
virtual ~SFLPhoneView();
//Getters
/**
@ -100,7 +100,7 @@ public:
* If there is no account registered, returns NULL.
* @return the account to use if an outgoing call is placed.
*/
static Account * firstRegisteredAccount();
static Account * accountInUse();
/**
* Seeks the ID of the account to use.
* If priorAccountId is defined and the corresponding
@ -109,7 +109,7 @@ public:
* If there is no account registered, returns an empty string.
* @return the ID of the account to use if an outgoing call is placed.
*/
static QString firstRegisteredAccountId();
static QString accountInUseId();
static AccountList * getAccountList();
QErrorMessage * getErrorWindow();
@ -128,7 +128,6 @@ public:
*/
bool isAddressBookEnabled();
//Updates
QVector<Contact *> findContactsInKAddressBook(QString textSearched, bool & full);
private slots:
@ -255,7 +254,7 @@ public slots:
/**
* Loads the address book asynchronously.
* Calls enableAddressBook() once the address book
* loading has finished if it is not allready loaded.
* loading has finished if it is not already loaded.
* @return true if address book has finished loading
*/
bool loadAddressBook();
@ -344,4 +343,4 @@ signals:
};
#endif // sflphone_kdeVIEW_H
#endif // SFLPHONEVIEW_H

View File

@ -29,10 +29,6 @@ SortableCodecListWidget::SortableCodecListWidget(QWidget *parent)
{
codecTable = new QTableView(this);
codecTable->setObjectName("codecTable");
// CodecListModel * model = new CodecListModel();
// codecTable->setModel(model);
// codecTable->resizeColumnsToContents();
// codecTable->resizeRowsToContents();
codecTable->setSelectionBehavior(QAbstractItemView::SelectRows);
codecUpButton = new KPushButton(this);

View File

@ -32,7 +32,7 @@
#include "sflphone_const.h"
ConfigurationDialogKDE::ConfigurationDialogKDE(sflphone_kdeView *parent)
ConfigurationDialog::ConfigurationDialog(SFLPhoneView *parent)
:KConfigDialog(parent, SETTINGS_NAME, ConfigurationSkeleton::self())
{
this->setWindowIcon(QIcon(ICON_SFLPHONE));
@ -51,72 +51,63 @@ ConfigurationDialogKDE::ConfigurationDialogKDE(sflphone_kdeView *parent)
addPage( dlgAudio , i18nc("Config section", "Audio") , "voicecall" );
addPage( dlgAddressBook , i18nc("Config section", "Address Book") , "x-office-address-book" );
addPage( dlgRecord , i18nc("Config section", "Recordings") , "media-record" );
addPage( dlgHooks , i18nc("Config section", "Hooks") , "insert-link" );
connect(this, SIGNAL(applyClicked()), dlgAudio, SLOT(updateAlsaSettings()));
connect(this, SIGNAL(okClicked()), dlgAudio, SLOT(updateAlsaSettings()));
addPage( dlgHooks , i18nc("Config section", "Hooks") , "insert-link" );
connect(this, SIGNAL(applyClicked()), this, SLOT(applyCustomSettings()));
connect(this, SIGNAL(okClicked()), this, SLOT(applyCustomSettings()));
connect(dlgGeneral, SIGNAL(clearCallHistoryAsked()), this, SIGNAL(clearCallHistoryAsked()));
// connect(this, SIGNAL(settingsChanged(const QString&)), this, SLOT(slot()));
// connect(this, SIGNAL(widgetModified()), this, SLOT(slot()));
}
ConfigurationDialogKDE::~ConfigurationDialogKDE()
ConfigurationDialog::~ConfigurationDialog()
{
}
void ConfigurationDialogKDE::slot()
{
qDebug() << "slot";
}
void ConfigurationDialogKDE::updateWidgets()
void ConfigurationDialog::updateWidgets()
{
qDebug() << "updateWidgets";
dlgAudio->updateWidgets();
dlgAccounts->updateWidgets();
}
void ConfigurationDialogKDE::updateSettings()
void ConfigurationDialog::updateSettings()
{
qDebug() << "updateSettings";
dlgAudio->updateSettings();
dlgAccounts->updateSettings();
qDebug() << "yo " << ConfigurationSkeleton::self()->alsaPlugin();
qDebug() << "alsaPlugin = " << ConfigurationSkeleton::self()->alsaPlugin();
}
bool ConfigurationDialogKDE::hasChanged()
bool ConfigurationDialog::hasChanged()
{
qDebug() << "hasChanged" << dlgAudio->hasChanged() << dlgAccounts->hasChanged();
return dlgAudio->hasChanged() || dlgAccounts->hasChanged();
}
void ConfigurationDialogKDE::updateButtons()
void ConfigurationDialog::updateButtons()
{
qDebug() << "updateButtons";
enableButtonApply( hasChanged() );
}
void ConfigurationDialogKDE::applyCustomSettings()
void ConfigurationDialog::applyCustomSettings()
{
qDebug() << "applyCustomSettings";
// if(hasChanged())
// {
ConfigurationSkeleton::self()->writeConfig();
// }
dlgAccounts->applyCustomSettings();
dlgAudio->applyCustomSettings();
updateSettings();
updateWidgets();
updateButtons();
emit changesApplied();
}
void ConfigurationDialogKDE::reload()
void ConfigurationDialog::reload()
{
qDebug() << "reload";
ConfigurationSkeleton::self()->readConfig();
updateWidgets();
applyCustomSettings();
updateButtons();
}

View File

@ -25,7 +25,7 @@
#include "kcfg_settings.h"
#include "sflphone_kdeview.h"
#include "SFLPhoneView.h"
#define SETTINGS_NAME "settings"
@ -38,7 +38,7 @@ class DlgAddressBook;
class DlgRecord;
class DlgHooks;
class sflphone_kdeView;
class SFLPhoneView;
/**
@author Jérémy Quentin <jeremy.quentin@gmail.com>
@ -51,7 +51,7 @@ class sflphone_kdeView;
A few things might be done a cleaner way by passing the handling
to the skeleton like it has been done with codecs.
*/
class ConfigurationDialogKDE : public KConfigDialog
class ConfigurationDialog : public KConfigDialog
{
Q_OBJECT
private:
@ -66,13 +66,12 @@ private:
DlgHooks * dlgHooks;
public:
ConfigurationDialogKDE(sflphone_kdeView *parent = 0);
ConfigurationDialog(SFLPhoneView *parent = 0);
~ConfigurationDialogKDE();
~ConfigurationDialog();
public slots:
void slot();
/**
* Reimplements KConfigDialog
*/

View File

@ -176,6 +176,8 @@ void ConfigurationSkeleton::readConfig()
setEnableHooksIAX(hooksSettings[HOOKS_IAX2_ENABLED]=="1");
setHooksSIPHeader(hooksSettings[HOOKS_SIP_FIELD]);
setHooksCommand(hooksSettings[HOOKS_COMMAND]);
qDebug() << "Finished to read config\n";
}
void ConfigurationSkeleton::writeConfig()
@ -271,7 +273,6 @@ void ConfigurationSkeleton::writeConfig()
qDebug() << "Writing Record settings";
QString destination = destinationFolder();
qDebug() << destination ;
configurationManager.setRecordPath(destination);
@ -305,6 +306,8 @@ void ConfigurationSkeleton::writeConfig()
hooksSettings[HOOKS_COMMAND] = hooksCommand();
configurationManager.setHookSettings(hooksSettings);
qDebug() << "Finished to write config\n";
readConfig();
}

View File

@ -23,7 +23,7 @@
#include <QtGui/QInputDialog>
#include "configurationmanager_interface_singleton.h"
#include "sflphone_kdeview.h"
#include "SFLPhoneView.h"
#include "sflphone_const.h"
#include "conf/ConfigurationDialog.h"
@ -70,11 +70,6 @@ DlgAccounts::DlgAccounts(KConfigDialog *parent)
connect(this, SIGNAL(updateButtons()), parent, SLOT(updateButtons()));
}
DlgAccounts::~DlgAccounts()
{
}
void DlgAccounts::saveAccountList()
{
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
@ -200,14 +195,11 @@ void DlgAccounts::loadAccountList()
void DlgAccounts::addAccountToAccountList(Account * account)
{
qDebug() << "addAccountToAccountList";
QListWidgetItem * item = account->getItem();
QWidget * widget = account->getItemWidget();
connect(widget, SIGNAL(checkStateChanged(bool)),
this, SLOT(changedAccountList()));
qDebug() << "item->isHidden()" << item->isHidden();
listWidget_accountList->addItem(item);
qDebug() << "addAccountToAccountList2";
listWidget_accountList->setItemWidget(item, widget);
}
@ -243,7 +235,6 @@ void DlgAccounts::on_button_accountUp_clicked()
listWidget_accountList->insertItem(currentRow - 1 , item);
listWidget_accountList->setItemWidget(item, widget);
listWidget_accountList->setCurrentItem(item);
// changedAccountList();
}
void DlgAccounts::on_button_accountDown_clicked()
@ -260,7 +251,6 @@ void DlgAccounts::on_button_accountDown_clicked()
listWidget_accountList->insertItem(currentRow + 1 , item);
listWidget_accountList->setItemWidget(item, widget);
listWidget_accountList->setCurrentItem(item);
// changedAccountList();
}
void DlgAccounts::on_button_accountAdd_clicked()
@ -275,7 +265,6 @@ void DlgAccounts::on_button_accountAdd_clicked()
listWidget_accountList->setCurrentRow(r);
frame2_editAccounts->setEnabled(true);
}
// changedAccountList();
}
void DlgAccounts::on_button_accountRemove_clicked()
@ -285,25 +274,13 @@ void DlgAccounts::on_button_accountRemove_clicked()
QListWidgetItem * item = listWidget_accountList->takeItem(r);
accountList->removeAccount(item);
listWidget_accountList->setCurrentRow( (r >= listWidget_accountList->count()) ? r-1 : r );
// changedAccountList();
}
void DlgAccounts::on_toolButton_accountsApply_clicked()
{
qDebug() << "on_toolButton_accountsApply_clicked";
applyCustomSettings();
}
void DlgAccounts::applyCustomSettings()
{
qDebug() << "DlgAccounts::applyCustomSettings";
if(hasChanged())
{
toolButton_accountsApply->setEnabled(false);
saveAccountList();
loadAccountList();
accountListHasChanged = false;
}
updateSettings();
updateWidgets();
}
void DlgAccounts::on_edit1_alias_textChanged(const QString & text)
@ -359,11 +336,15 @@ bool DlgAccounts::hasChanged()
void DlgAccounts::updateSettings()
{
}
void DlgAccounts::updateWidgets()
{
loadAccountList();
saveAccountList();
toolButton_accountsApply->setEnabled(false);
accountListHasChanged = false;
}
void DlgAccounts::updateWidgets()
{
loadAccountList();
toolButton_accountsApply->setEnabled(false);
accountListHasChanged = false;
}

View File

@ -37,7 +37,6 @@ Q_OBJECT
public:
DlgAccounts(KConfigDialog *parent = 0);
~DlgAccounts();
void saveAccount(QListWidgetItem * item);
void loadAccount(QListWidgetItem * item);
@ -48,7 +47,6 @@ private:
public slots:
void saveAccountList();
void loadAccountList();
void applyCustomSettings();
bool hasChanged();
void updateSettings();

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>603</width>
<height>314</height>
<height>455</height>
</rect>
</property>
<property name="windowTitle">
@ -231,7 +231,7 @@
<item>
<widget class="QFrame" name="frame2_editAccounts">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@ -243,9 +243,6 @@
<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">
@ -368,6 +365,12 @@
</item>
<item row="6" column="1">
<widget class="QLabel" name="edit7_state">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string/>
</property>
@ -452,11 +455,11 @@
<hints>
<hint type="sourcelabel">
<x>71</x>
<y>273</y>
<y>414</y>
</hint>
<hint type="destinationlabel">
<x>167</x>
<y>278</y>
<y>419</y>
</hint>
</hints>
</connection>

View File

@ -38,33 +38,21 @@ DlgAudio::DlgAudio(KConfigDialog *parent)
KUrlRequester_ringtone->lineEdit()->setReadOnly(true);
codecTableHasChanged = false;
// toolButton_codecUp->setIcon(KIcon("go-up"));
// toolButton_codecDown->setIcon(KIcon("go-down"));
// tableWidget_codecs->verticalHeader()->hide();
// tableWidget_codecs->setSelectionBehavior(QAbstractItemView::SelectRows);
ConfigurationSkeleton * skeleton = ConfigurationSkeleton::self();
CodecListModel * model = skeleton->getCodecListModel();
sortableCodecList->setModel(model);
updateAlsaSettings();
// loadAlsaSettings();
connect(box_alsaPlugin, SIGNAL(currentIndexChanged(int)),
parent, SLOT(updateButtons()));
// connect(tableWidget_codecs, SIGNAL(itemChanged(QTableWidgetItem *)),
// this, SLOT(codecTableChanged()));
// connect(tableWidget_codecs, SIGNAL(currentCellChanged(int, int, int, int)),
// this, SLOT(updateCodecListCommands()));
// connect(toolButton_codecUp, SIGNAL(clicked()),
// this, SLOT(codecTableChanged()));
// connect(toolButton_codecDown, SIGNAL(clicked()),
// this, SLOT(codecTableChanged()));
connect(this, SIGNAL(updateButtons()),
parent, SLOT(updateButtons()));
connect(sortableCodecList, SIGNAL(dataChanged()),
this, SLOT(codecTableChanged()));
}
@ -74,92 +62,10 @@ DlgAudio::~DlgAudio()
void DlgAudio::updateWidgets()
{
// qDebug() << "DlgAudio::updateWidgets";
//alsa Plugin
ConfigurationSkeleton * skeleton = ConfigurationSkeleton::self();
box_alsaPlugin->setCurrentIndex(box_alsaPlugin->findText(skeleton->alsaPlugin()));
loadAlsaSettings();
//codecList
// qDebug() << "loadCodecs";
// ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
// QStringList codecList = configurationManager.getCodecList();
// QStringList activeCodecList = skeleton->activeCodecList();
//
// qDebug() << "loadCodecs1";
// #if QT_VERSION >= 0x040500
// qDebug() << "loadCodecs1b";
// activeCodecList.removeDuplicates();
//
// qDebug() << "loadCodecs1c";
// #else
//
// qDebug() << "loadCodecs1d";
// for (int i = 0 ; i < activeCodecList.size() ; i++)
// {
// if(activeCodecList.lastIndexOf(activeCodecList[i]) != i || ! codecList.contains(activeCodecList[i]))
// {
// activeCodecList.removeAt(i);
// i--;
// }
// }
//
// qDebug() << "loadCodecs1e";
// #endif
//
// qDebug() << "loadCodecs2";
// QStringList codecListToDisplay = activeCodecList;
// qDebug() << "loadCodecs2b";
// codecList.size();
//
// qDebug() << "loadCodecs2c";
// for (int i=0 ; i<codecList.size() ; i++)
// {
//
// qDebug() << "loadCodecs3";
// if(! activeCodecList.contains(codecList[i]))
// {
//
// qDebug() << "loadCodecs4";
// codecListToDisplay << codecList[i];
// }
// }
//
// qDebug() << "loadCodecs5";
// qDebug() << "codecList = " << codecList;
// qDebug() << "activeCodecList" << activeCodecList;
// qDebug() << "codecListToDisplay" << codecListToDisplay;
// tableWidget_codecs->setRowCount(0);
// for(int i=0 ; i<codecListToDisplay.size() ; i++)
// {
// bool ok;
// qDebug() << codecListToDisplay[i];
// QString payloadStr = QString(codecListToDisplay[i]);
// int payload = payloadStr.toInt(&ok);
// if(!ok)
// qDebug() << "The codec's payload sent by the configurationManager is not a number : " << codecListToDisplay[i];
// else
// {
// QStringList details = configurationManager.getCodecDetails(payload);
// tableWidget_codecs->insertRow(i);
// tableWidget_codecs->setVerticalHeaderItem (i, new QTableWidgetItem());
// tableWidget_codecs->verticalHeaderItem (i)->setText(payloadStr);
// tableWidget_codecs->setItem(i,0,new QTableWidgetItem(""));
// tableWidget_codecs->setItem(i,1,new QTableWidgetItem(details[CODEC_NAME]));
// tableWidget_codecs->setItem(i,2,new QTableWidgetItem(details[CODEC_SAMPLE_RATE]));
// tableWidget_codecs->setItem(i,3,new QTableWidgetItem(details[CODEC_BIT_RATE]));
// tableWidget_codecs->setItem(i,4,new QTableWidgetItem(details[CODEC_BANDWIDTH]));
// tableWidget_codecs->item(i,0)->setFlags(Qt::ItemIsSelectable|Qt::ItemIsUserCheckable|Qt::ItemIsEnabled);
// tableWidget_codecs->item(i,0)->setCheckState(activeCodecList.contains(codecListToDisplay[i]) ? Qt::Checked : Qt::Unchecked);
// tableWidget_codecs->item(i,1)->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled);
// tableWidget_codecs->item(i,2)->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled);
// tableWidget_codecs->item(i,3)->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled);
// tableWidget_codecs->item(i,4)->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled);
//
// qDebug() << "Added to codecs : " << payloadStr << " , " << details[CODEC_NAME];
// }
// }
// tableWidget_codecs->resizeColumnsToContents();
// tableWidget_codecs->resizeRowsToContents();
codecTableHasChanged = false;
}
@ -171,23 +77,12 @@ void DlgAudio::updateSettings()
ConfigurationSkeleton * skeleton = ConfigurationSkeleton::self();
skeleton->setAlsaPlugin(box_alsaPlugin->currentText());
//codecList
// QStringList activeCodecs;
// for(int i = 0 ; i < tableWidget_codecs->rowCount() ; i++)
// {
// if(tableWidget_codecs->item(i,0)->checkState() == Qt::Checked)
// {
// activeCodecs << tableWidget_codecs->verticalHeaderItem(i)->text();
// }
// }
// qDebug() << "Calling setActiveCodecList with list : " << activeCodecs ;
// skeleton->setActiveCodecList(activeCodecs);
codecTableHasChanged = false;
}
bool DlgAudio::hasChanged()
{
// qDebug() << "DlgAudio::hasChanged";
qDebug() << "DlgAudio::hasChanged";
ConfigurationSkeleton * skeleton = ConfigurationSkeleton::self();
qDebug() << "skeleton->alsaPlugin() = " << skeleton->alsaPlugin();
qDebug() << "box_alsaPlugin->currentText() = " << box_alsaPlugin->currentText();
@ -198,9 +93,9 @@ bool DlgAudio::hasChanged()
return alsaPluginHasChanged || codecTableHasChanged;
}
void DlgAudio::updateAlsaSettings()
void DlgAudio::loadAlsaSettings()
{
qDebug() << "DlgAudio::updateAlsaSettings";
qDebug() << "DlgAudio::loadAlsaSettings";
ConfigurationManagerInterface & configurationManager = ConfigurationManagerInterfaceSingleton::getInstance();
if(configurationManager.getAudioManager() == ConfigurationSkeleton::EnumInterface::ALSA)
{
@ -226,87 +121,12 @@ void DlgAudio::updateAlsaSettings()
}
else
{
// box_alsaPlugin->clear();
// kcfg_alsaInputDevice->clear();
// kcfg_alsaOutputDevice->clear();
groupBox_alsa->setEnabled(false);
}
}
// void DlgAudio::updateCodecListCommands()
// {
// qDebug() << "updateCodecListCommands";
// bool buttonsEnabled[2] = {true,true};
// if(! tableWidget_codecs->currentItem())
// {
// buttonsEnabled[0] = false;
// buttonsEnabled[1] = false;
// }
// else
// {
// if(tableWidget_codecs->currentRow() == 0)
// {
// buttonsEnabled[0] = false;
// }
// if(tableWidget_codecs->currentRow() == tableWidget_codecs->rowCount() - 1)
// {
// buttonsEnabled[1] = false;
// }
// }
// toolButton_codecUp->setEnabled(buttonsEnabled[0]);
// toolButton_codecDown->setEnabled(buttonsEnabled[1]);
// }
// void DlgAudio::on_toolButton_codecUp_clicked()
// {
// qDebug() << "on_toolButton_codecUp_clicked";
// int currentCol = tableWidget_codecs->currentColumn();
// int currentRow = tableWidget_codecs->currentRow();
// int nbCol = tableWidget_codecs->columnCount();
// for(int i = 0 ; i < nbCol ; i++)
// {
// QTableWidgetItem * item1 = tableWidget_codecs->takeItem(currentRow, i);
// QTableWidgetItem * item2 = tableWidget_codecs->takeItem(currentRow - 1, i);
// tableWidget_codecs->setItem(currentRow - 1, i , item1);
// tableWidget_codecs->setItem(currentRow, i , item2);
// }
// QTableWidgetItem * item1 = tableWidget_codecs->takeVerticalHeaderItem(currentRow);
// QTableWidgetItem * item2 = tableWidget_codecs->takeVerticalHeaderItem(currentRow - 1);
// tableWidget_codecs->setVerticalHeaderItem(currentRow - 1, item1);
// tableWidget_codecs->setVerticalHeaderItem(currentRow, item2);
// tableWidget_codecs->setCurrentCell(currentRow - 1, currentCol);
// }
//
// void DlgAudio::on_toolButton_codecDown_clicked()
// {
// qDebug() << "on_toolButton_codecDown_clicked";
// int currentCol = tableWidget_codecs->currentColumn();
// int currentRow = tableWidget_codecs->currentRow();
// int nbCol = tableWidget_codecs->columnCount();
// for(int i = 0 ; i < nbCol ; i++)
// {
// QTableWidgetItem * item1 = tableWidget_codecs->takeItem(currentRow, i);
// QTableWidgetItem * item2 = tableWidget_codecs->takeItem(currentRow + 1, i);
// tableWidget_codecs->setItem(currentRow + 1, i , item1);
// tableWidget_codecs->setItem(currentRow, i , item2);
// }
// QTableWidgetItem * item1 = tableWidget_codecs->takeVerticalHeaderItem(currentRow);
// QTableWidgetItem * item2 = tableWidget_codecs->takeVerticalHeaderItem(currentRow + 1);
// tableWidget_codecs->setVerticalHeaderItem(currentRow + 1, item1);
// tableWidget_codecs->setVerticalHeaderItem(currentRow, item2);
// tableWidget_codecs->setCurrentCell(currentRow + 1, currentCol);
// }
void DlgAudio::applyCustomSettings()
{
codecTableHasChanged = false;
}
void DlgAudio::codecTableChanged()
{
codecTableHasChanged = true;
emit updateButtons();
}
}

View File

@ -45,13 +45,17 @@ public slots:
void updateWidgets();
void updateSettings();
bool hasChanged();
void updateAlsaSettings();
void applyCustomSettings();
/**
* Loads the ALSA settings to fill the combo boxes
* of the ALSA settings.
* ALSA choices for input, output... can be load only
* when the daemon has set ALSA as sound manager.
* So we have to load these settings once the user choses
* ALSA.
*/
void loadAlsaSettings();
private slots:
// void updateCodecListCommands();
// void on_toolButton_codecUp_clicked();
// void on_toolButton_codecDown_clicked();
void codecTableChanged();
signals:

View File

@ -54,7 +54,7 @@ int main(int argc, char **argv)
//configuration dbus
registerCommTypes();
SFLPhone * fenetre = new SFLPhone();
new SFLPhone();
InstanceInterface & instance = InstanceInterfaceSingleton::getInstance();
instance.Register(getpid(), APP_NAME);