{
public:
Body(Evas_Object *parent, MsgEngine &msgEngine);
- Body(Evas_Object *parent, MsgEngine &msgEngine, const AppControlComposeRef &cmd);
virtual ~Body();
void setListener(IBodyListener *listener);
long long getMmsSize() const;
void read(Message &msg);
void write(const Message &msg);
+ void execCmd(const AppControlComposeRef &cmd);
private:
void read(MessageSMS &msg);
void write(const MessageMms &msg);
bool isMms(const PageView &page) const;
void writeTextToFile(TextPageViewItem &item);
- void execCmd(const AppControlComposeRef &cmd);
// BodyView:
virtual void onContentChanged();
{
}
-Body::Body(Evas_Object *parent, MsgEngine &msgEngine, const AppControlComposeRef &cmd)
- : Body(parent, msgEngine)
-{
- if(cmd)
- execCmd(cmd);
-}
-
Body::~Body()
{
if(m_pOnChangedIdler)
private:
// Empty initializer constructor:
- Conversation(NaviFrameController &parent, const AppControlComposeRef &cmd, bool dummy);
+ Conversation(NaviFrameController &parent, bool dummy);
+ void execCmd(const AppControlComposeRef &cmd);
void create();
void setMode(Mode mode);
void setNewMessageMode();
ThreadId m_ThreadId;
bool m_IsMms; // Compose message type
ConvList *m_pConvList;
- const AppControlComposeRef m_ComposeCmd;
};
}
using namespace Msg;
-Conversation::Conversation(NaviFrameController &parent, const AppControlComposeRef &cmd, bool dummy)
+Conversation::Conversation(NaviFrameController &parent, bool dummy)
: FrameController(parent)
, m_Mode(InitMode)
, m_pLayout(nullptr)
, m_ThreadId()
, m_IsMms(false)
, m_pConvList(nullptr)
- , m_ComposeCmd(cmd)
{
}
Conversation::Conversation(NaviFrameController &parent, const AppControlComposeRef &cmd)
- : Conversation(parent, cmd, false)
+ : Conversation(parent, false)
{
if(cmd)
- m_ThreadId = getMsgEngine().getStorage().getThreadId(m_ComposeCmd->getRecipientList());
+ m_ThreadId = getMsgEngine().getStorage().getThreadId(cmd->getRecipientList());
create();
+ execCmd(cmd);
}
Conversation::Conversation(NaviFrameController &parent,ThreadId threadId)
- : Conversation(parent, nullptr, false)
+ : Conversation(parent, false)
{
m_ThreadId = threadId;
create();
m_pContactsList->setListener(nullptr);
}
+void Conversation::execCmd(const AppControlComposeRef &cmd)
+{
+ if(cmd)
+ {
+ if(m_pRecipPanel)
+ m_pRecipPanel->execCmd(cmd);
+ if(m_pBody)
+ m_pBody->execCmd(cmd);
+ }
+}
+
void Conversation::create()
{
createMainLayout(getParent());
{
if(!m_pRecipPanel)
{
- m_pRecipPanel = new RecipientsPanel(parent, getApp(), m_ComposeCmd);
+ m_pRecipPanel = new RecipientsPanel(parent, getApp());
m_pRecipPanel->setListener(this);
m_pRecipPanel->show();
m_pRecipPanel->setRecipientRect(m_pLayout->getRecipientRect());
{
if(!m_pBody)
{
- m_pBody = new Body(*m_pMsgInputPanel, getMsgEngine(), m_ComposeCmd);
+ m_pBody = new Body(*m_pMsgInputPanel, getMsgEngine());
m_pBody->setListener(this);
m_pBody->show();
}
{
public:
RecipientsPanel(Evas_Object *parent, App &app);
- RecipientsPanel(Evas_Object *parent, App &app, const AppControlComposeRef &cmd);
virtual ~RecipientsPanel();
void read(Message &msg);
void update(const ThreadId &threadId);
bool appendItem(const std::string &address, const std::string &dispName,
MsgAddress::AddressType addressType = MsgAddress::UnknownAddressType);
+ void execCmd(const AppControlComposeRef &cmd);
private:
// RecipientsPanelView:
void onPopupDel(Evas_Object *popup, void *eventInfo);
void addRecipients();
- void execCmd(const AppControlComposeRef &cmd);
void showDuplicatedRecipientPopup();
void showTooManyRecipientsPopup();
bool recipientExists(const std::string& address) const;
, m_App(app)
, m_pListener(nullptr)
{
-}
-
-RecipientsPanel::RecipientsPanel(Evas_Object *parent, App &app, const AppControlComposeRef &cmd)
- : RecipientsPanel(parent, app)
-{
m_Picker.setListener(this);
- if(cmd)
- execCmd(cmd);
}
RecipientsPanel::~RecipientsPanel()
void RecipientsPanel::execCmd(const AppControlComposeRef &cmd)
{
+ clearMbe();
for(auto item: cmd->getRecipientList())
{
appendItem(item, item, MsgAddress::UnknownAddressType);
}
+ showMbe(!isMbeEmpty());
}
void RecipientsPanel::onKeyDown(Evas_Event_Key_Down *ev)