mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-05-03 20:46:28 +00:00
Moved some functions from ChatMessage to it's private part
This commit is contained in:
parent
41233811c4
commit
0e387676be
4 changed files with 40 additions and 42 deletions
|
|
@ -126,11 +126,11 @@ LinphoneChatMessageDir linphone_chat_message_get_direction(const LinphoneChatMes
|
|||
}
|
||||
|
||||
void linphone_chat_message_set_incoming(LinphoneChatMessage *msg) {
|
||||
L_GET_CPP_PTR_FROM_C_OBJECT(msg)->setDirection(LinphonePrivate::ChatMessage::Direction::Incoming);
|
||||
L_GET_PRIVATE_FROM_C_OBJECT(msg)->setDirection(LinphonePrivate::ChatMessage::Direction::Incoming);
|
||||
}
|
||||
|
||||
void linphone_chat_message_set_outgoing(LinphoneChatMessage *msg) {
|
||||
L_GET_CPP_PTR_FROM_C_OBJECT(msg)->setDirection(LinphonePrivate::ChatMessage::Direction::Outgoing);
|
||||
L_GET_PRIVATE_FROM_C_OBJECT(msg)->setDirection(LinphonePrivate::ChatMessage::Direction::Outgoing);
|
||||
}
|
||||
|
||||
unsigned int linphone_chat_message_get_storage_id(LinphoneChatMessage *msg) {
|
||||
|
|
@ -142,7 +142,7 @@ LinphoneChatMessageState linphone_chat_message_get_state(const LinphoneChatMessa
|
|||
}
|
||||
|
||||
void linphone_chat_message_set_state(LinphoneChatMessage *msg, LinphoneChatMessageState state) {
|
||||
L_GET_CPP_PTR_FROM_C_OBJECT(msg)->setState((LinphonePrivate::ChatMessage::State)state);
|
||||
L_GET_PRIVATE_FROM_C_OBJECT(msg)->setState((LinphonePrivate::ChatMessage::State)state);
|
||||
}
|
||||
|
||||
const char* linphone_chat_message_get_message_id(const LinphoneChatMessage *msg) {
|
||||
|
|
|
|||
|
|
@ -38,6 +38,10 @@ public:
|
|||
void setChatRoom (std::shared_ptr<ChatRoom> chatRoom);
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
void setDirection (ChatMessage::Direction dir);
|
||||
|
||||
void setState(ChatMessage::State state);
|
||||
|
||||
void setTime(time_t time);
|
||||
|
||||
|
|
|
|||
|
|
@ -52,10 +52,38 @@ void ChatMessagePrivate::setChatRoom (shared_ptr<ChatRoom> cr) {
|
|||
chatRoom = cr;
|
||||
}
|
||||
|
||||
void ChatMessagePrivate::setDirection (ChatMessage::Direction dir) {
|
||||
direction = dir;
|
||||
}
|
||||
|
||||
void ChatMessagePrivate::setTime(time_t t) {
|
||||
time = t;
|
||||
}
|
||||
|
||||
void ChatMessagePrivate::setState(ChatMessage::State s) {
|
||||
L_Q();
|
||||
|
||||
if (s != state && chatRoom) {
|
||||
if (((state == ChatMessage::State::Displayed) || (state == ChatMessage::State::DeliveredToUser))
|
||||
&& ((s == ChatMessage::State::DeliveredToUser) || (s == ChatMessage::State::Delivered) || (s == ChatMessage::State::NotDelivered))) {
|
||||
return;
|
||||
}
|
||||
/* TODO
|
||||
ms_message("Chat message %p: moving from state %s to %s", msg, linphone_chat_message_state_to_string(msg->state), linphone_chat_message_state_to_string(state));
|
||||
*/
|
||||
state = s;
|
||||
|
||||
LinphoneChatMessage *msg = L_GET_C_BACK_PTR(q);
|
||||
if (linphone_chat_message_get_message_state_changed_cb(msg)) {
|
||||
linphone_chat_message_get_message_state_changed_cb(msg)(msg, (LinphoneChatMessageState)state, linphone_chat_message_get_message_state_changed_cb_user_data(msg));
|
||||
}
|
||||
LinphoneChatMessageCbs *cbs = linphone_chat_message_get_callbacks(msg);
|
||||
if (linphone_chat_message_cbs_get_msg_state_changed(cbs)) {
|
||||
linphone_chat_message_cbs_get_msg_state_changed(cbs)(msg, linphone_chat_message_get_state(msg));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
unsigned int ChatMessagePrivate::getStorageId() const {
|
||||
return storageId;
|
||||
}
|
||||
|
|
@ -287,11 +315,6 @@ ChatMessage::Direction ChatMessage::getDirection () const {
|
|||
return d->direction;
|
||||
}
|
||||
|
||||
void ChatMessage::setDirection (ChatMessage::Direction dir) {
|
||||
L_D();
|
||||
d->direction = dir;
|
||||
}
|
||||
|
||||
bool ChatMessage::isOutgoing () const {
|
||||
L_D();
|
||||
return d->direction == Outgoing;
|
||||
|
|
@ -307,29 +330,6 @@ ChatMessage::State ChatMessage::getState() const {
|
|||
return d->state;
|
||||
}
|
||||
|
||||
void ChatMessage::setState(State state) {
|
||||
L_D();
|
||||
if (state != d->state && d->chatRoom) {
|
||||
if (((d->state == Displayed) || (d->state == DeliveredToUser))
|
||||
&& ((state == DeliveredToUser) || (state == Delivered) || (state == NotDelivered))) {
|
||||
return;
|
||||
}
|
||||
/* TODO
|
||||
ms_message("Chat message %p: moving from state %s to %s", msg, linphone_chat_message_state_to_string(msg->state), linphone_chat_message_state_to_string(state));
|
||||
*/
|
||||
d->state = state;
|
||||
|
||||
LinphoneChatMessage *msg = L_GET_C_BACK_PTR(this);
|
||||
if (linphone_chat_message_get_message_state_changed_cb(msg)) {
|
||||
linphone_chat_message_get_message_state_changed_cb(msg)(msg, (LinphoneChatMessageState)state, linphone_chat_message_get_message_state_changed_cb_user_data(msg));
|
||||
}
|
||||
LinphoneChatMessageCbs *cbs = linphone_chat_message_get_callbacks(msg);
|
||||
if (linphone_chat_message_cbs_get_msg_state_changed(cbs)) {
|
||||
linphone_chat_message_cbs_get_msg_state_changed(cbs)(msg, linphone_chat_message_get_state(msg));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
string ChatMessage::getId () const {
|
||||
L_D();
|
||||
return d->id;
|
||||
|
|
@ -556,19 +556,15 @@ void ChatMessage::sendDeliveryNotification(LinphoneReason reason) {
|
|||
if (linphone_im_notif_policy_get_send_imdn_delivered(policy)) {
|
||||
d->sendImdn(ImdnTypeDelivery, reason);
|
||||
}
|
||||
/*LinphoneChatRoom *cr = linphone_chat_message_get_chat_room(cm);
|
||||
LinphoneCore *lc = linphone_chat_room_get_core(cr);
|
||||
*/
|
||||
}
|
||||
|
||||
void ChatMessage::sendDisplayNotification() {
|
||||
//TODO
|
||||
/*LinphoneChatRoom *cr = linphone_chat_message_get_chat_room(cm);
|
||||
LinphoneCore *lc = linphone_chat_room_get_core(cr);
|
||||
L_D();
|
||||
LinphoneCore *lc = d->chatRoom->getCore();
|
||||
LinphoneImNotifPolicy *policy = linphone_core_get_im_notif_policy(lc);
|
||||
if (linphone_im_notif_policy_get_send_imdn_displayed(policy) == TRUE) {
|
||||
linphone_chat_message_send_imdn(cm, ImdnTypeDisplay, LinphoneReasonNone);
|
||||
}*/
|
||||
if (linphone_im_notif_policy_get_send_imdn_displayed(policy)) {
|
||||
d->sendImdn(ImdnTypeDisplay, LinphoneReasonNone);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -84,7 +84,6 @@ public:
|
|||
// -----------------------------------------------------------------------------
|
||||
|
||||
Direction getDirection () const;
|
||||
void setDirection (Direction dir);
|
||||
bool isOutgoing () const;
|
||||
bool isIncoming () const;
|
||||
|
||||
|
|
@ -97,7 +96,6 @@ public:
|
|||
void setIsSecured(bool isSecured);
|
||||
|
||||
State getState() const;
|
||||
void setState(State state);
|
||||
|
||||
std::string getId () const;
|
||||
void setId (std::string);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue