199 lines
4.6 KiB
C++
199 lines
4.6 KiB
C++
#include "SMSClient.h"
|
|
#include <QApplication>
|
|
|
|
|
|
|
|
CSMSClient::CSMSClient(CSMSGui *GuiHandle, CVoipMSSMSSettings *ProgramSettings)
|
|
{
|
|
qDebug("Creation...");
|
|
mSMSDatabase.mProgramHandle = this;
|
|
mGuiHandle = GuiHandle;
|
|
mGuiHandle->mProgramHandle = this;
|
|
mGuiHandle->mSMSDatabase = &mSMSDatabase;
|
|
mSettings = ProgramSettings;
|
|
|
|
// mSystemTrayManager = new CSystemTrayManager;
|
|
// mSystemTrayManager->mProgramHandle = this;
|
|
// mSettingsWindow = new CSettingsWindow();
|
|
// mSettingsWindow->mProgramHandle = this;
|
|
//mMainPanel = new Panel;
|
|
// mMasterCtrlIF = new CMasterCtrlInterface();
|
|
|
|
|
|
}
|
|
|
|
CSMSClient::~CSMSClient()
|
|
{
|
|
// delete mSystemTrayManager;
|
|
// delete mSettingsWindow;
|
|
// delete mMainPanel;
|
|
// delete mMasterCtrlIF;
|
|
|
|
}
|
|
|
|
void CSMSClient::Start()
|
|
{
|
|
qDebug("Started!");
|
|
mMasterCtrlIF = new CSMSMasterCtrlInterface(this);
|
|
mSMSDatabase.mContactRepository = &mContactRepository;
|
|
|
|
mMasterCtrlIF->ConnectToMasterCtrl();
|
|
}
|
|
|
|
int CSMSClient::SetAllMsgsDatabase(QString DID, QList<CSMSMessage> *MessagesList)
|
|
{
|
|
if(mSMSDatabase.SetAllMessages(DID,MessagesList) == RET_OK)
|
|
{
|
|
mGuiHandle->FullConversationsUpdate();
|
|
// mMainPanel->mConversationsWindow->FullConversationsUpdate();
|
|
// mMainPanel->mConversationWindow->hide();
|
|
}
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::SetDIDDatabase(QString DID)
|
|
{
|
|
mSMSDatabase.SetDID(DID);
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::NewMessagesEvent(QList<CSMSMessage> *MessagesList)
|
|
{
|
|
mSMSDatabase.SetNewMessages("",MessagesList);
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::SetContacts(QList<CContact> *ContactsList)
|
|
{
|
|
mContactRepository.SetContacts(ContactsList);
|
|
mSMSDatabase.ContactsRepositoryChanged();
|
|
return RET_OK;
|
|
}
|
|
|
|
//unsigned int CSMSClient::QuitApplicationRequest()
|
|
//{
|
|
|
|
// QApplication::exit(69);
|
|
// return RET_OK;
|
|
//}
|
|
|
|
//unsigned int CSMSClient::ShowSettingsWindowRequest()
|
|
//{
|
|
// mSettingsWindow->show();
|
|
// return RET_OK;
|
|
//}
|
|
|
|
//unsigned int CSMSClient::SaveSettings(CSettings *Settings)
|
|
//{
|
|
// CSettings toto;
|
|
// toto = *Settings;
|
|
// mSMSClientSettings = toto;
|
|
// mSettingsManager.SaveSettings(&mSMSClientSettings);
|
|
|
|
// return RET_OK;
|
|
//}
|
|
|
|
//unsigned int CSMSClient::SettingsWindowClosed()
|
|
//{
|
|
|
|
// return RET_OK;
|
|
//}
|
|
|
|
//int CSMSClient::AppToggle()
|
|
//{
|
|
//// if(mMainPanel->mConversationWindow->isVisible())
|
|
//// {
|
|
//// mMainPanel->mConversationWindow->hide();
|
|
|
|
//// }
|
|
//// else if(mMainPanel->mConversationsWindow->isVisible())
|
|
//// {
|
|
//// mMainPanel->mConversationsWindow->hide();
|
|
//// }
|
|
//// else
|
|
//// {
|
|
//// mMainPanel->mConversationsWindow->show();
|
|
//// }
|
|
|
|
// return RET_OK;
|
|
//}
|
|
//int CSMSClient::AppPosChanged(int NewPosX, int NewPosY)
|
|
//{
|
|
//// mMainPanel->mConversationsWindow->setPos(50,50);
|
|
//// mMainPanel->mConversationWindow->setPos(50,50);
|
|
// return RET_OK;
|
|
//}
|
|
|
|
int CSMSClient::ShowConversation(QString Contact)
|
|
{
|
|
CSMSConversation* Conversation;
|
|
Conversation = mSMSDatabase.GetConversation(Contact);
|
|
|
|
if(Conversation == 0)
|
|
{
|
|
return RET_ERROR;
|
|
}
|
|
|
|
// mMainPanel->mConversationWindow->SetConversation(Conversation);
|
|
|
|
// mMainPanel->mConversationsWindow->hide();
|
|
// mMainPanel->mConversationWindow->show();
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
//int CSMSClient::CloseConversationsWindow()
|
|
//{
|
|
//// mMainPanel->mConversationsWindow->hide();
|
|
// return RET_OK;
|
|
//}
|
|
|
|
//int CSMSClient::CloseConversationWindow(CConversationWindow *Window)
|
|
//{
|
|
// Q_UNUSED(Window)
|
|
|
|
//// mMainPanel->mConversationsWindow->FullConversationsUpdate();
|
|
//// mMainPanel->mConversationWindow->hide();
|
|
//// mMainPanel->mConversationsWindow->show();
|
|
|
|
// return RET_OK;
|
|
//}
|
|
|
|
int CSMSClient::SendSMSMessage(CSMSMessage Message)
|
|
{
|
|
mMasterCtrlIF->SendSMS(Message);
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::NewMessageNotification(CSMSConversation *Conversation, int MessageIndex)
|
|
{
|
|
// if(mMainPanel->mConversationWindow->NewMessageNotification(Conversation,MessageIndex) == true)
|
|
// {
|
|
// mSMSDatabase.SetConversationAsRead(Conversation);
|
|
// }
|
|
// mMainPanel->mConversationsWindow->UpdateConversation(Conversation);
|
|
mGuiHandle->NewMessageNotification(Conversation,MessageIndex);
|
|
|
|
MessageCountChangeNotification(mSMSDatabase.GetNbUnreadMsgs());
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::SyncConversations()
|
|
{
|
|
// mMainPanel->mConversationsWindow->FullConversationsUpdate();
|
|
return RET_OK;
|
|
}
|
|
|
|
int CSMSClient::MessageCountChangeNotification(int MsgCount)
|
|
{
|
|
// mMainPanel->mAppIconWidget->SetNewMsgCount(MsgCount);
|
|
mTrayIconMgr->NewSMSMessagesPendingCount(MsgCount);
|
|
return RET_OK;
|
|
}
|
|
|
|
//int CSMSClient::NewConversationAddedToDatabase(CSMSConversation *Conversation)
|
|
//{
|
|
|
|
//}
|