summaryrefslogtreecommitdiff
path: root/protocols/Tox/src/tox_core.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Tox/src/tox_core.cpp')
-rw-r--r--protocols/Tox/src/tox_core.cpp122
1 files changed, 46 insertions, 76 deletions
diff --git a/protocols/Tox/src/tox_core.cpp b/protocols/Tox/src/tox_core.cpp
index 4f338db5cc..838edd6a1a 100644
--- a/protocols/Tox/src/tox_core.cpp
+++ b/protocols/Tox/src/tox_core.cpp
@@ -55,72 +55,51 @@ bool CToxProto::InitToxCore(CToxThread *toxThread)
if (toxThread == NULL)
return false;
- /*Tox_Options *options = GetToxOptions();
- if (options == NULL)
- return false;
-
- if (LoadToxProfile(options))
- {
- TOX_ERR_NEW initError;
- toxThread->Tox() = tox_new(options, &initError);
- if (initError != TOX_ERR_NEW_OK)
- {
- debugLogA(__FUNCTION__": failed to initialize tox core (%d)", initError);
- ShowNotification(ToxErrorToString(initError), TranslateT("Unable to initialize Tox core"), MB_ICONERROR);
- tox_options_free(options);
- return false;
- }*/
-
- tox_callback_friend_request(toxThread->Tox(), OnFriendRequest, this);
- tox_callback_friend_message(toxThread->Tox(), OnFriendMessage, this);
- tox_callback_friend_read_receipt(toxThread->Tox(), OnReadReceipt, this);
- tox_callback_friend_typing(toxThread->Tox(), OnTypingChanged, this);
- //
- tox_callback_friend_name(toxThread->Tox(), OnFriendNameChange, this);
- tox_callback_friend_status_message(toxThread->Tox(), OnStatusMessageChanged, this);
- tox_callback_friend_status(toxThread->Tox(), OnUserStatusChanged, this);
- tox_callback_friend_connection_status(toxThread->Tox(), OnConnectionStatusChanged, this);
- // transfers
- tox_callback_file_recv_control(toxThread->Tox(), OnFileRequest, this);
- tox_callback_file_recv(toxThread->Tox(), OnFriendFile, this);
- tox_callback_file_recv_chunk(toxThread->Tox(), OnDataReceiving, this);
- tox_callback_file_chunk_request(toxThread->Tox(), OnFileSendData, this);
- // group chats
- //tox_callback_group_invite(tox, OnGroupChatInvite, this);
- // a/v
- //if (IsWinVerVistaPlus())
- //{
- // TOXAV_ERR_NEW avInitError;
- // toxThread->Tox()AV = toxav_new(toxThread->Tox(), &avInitError);
- // if (initError != TOX_ERR_NEW_OK)
- // {
- // toxav_callback_call(toxThread->Tox()AV, OnFriendCall, this);
- // toxav_callback_call_state(toxThread->Tox()AV, OnFriendCallState, this);
- // toxav_callback_bit_rate_status(toxThread->Tox()AV, OnBitrateChanged, this);
- // toxav_callback_audio_receive_frame(toxThread->Tox()AV, OnFriendAudioFrame, this);
- // //toxav_callback_video_receive_frame(toxThread->Tox()AV, , this);
- // }
- //}
-
- uint8_t data[TOX_ADDRESS_SIZE];
- tox_self_get_address(toxThread->Tox(), data);
- ToxHexAddress address(data);
- setString(TOX_SETTINGS_ID, address);
-
- uint8_t nick[TOX_MAX_NAME_LENGTH] = { 0 };
- tox_self_get_name(toxThread->Tox(), nick);
- setTString("Nick", ptrT(Utf8DecodeT((char*)nick)));
-
- uint8_t statusMessage[TOX_MAX_STATUS_MESSAGE_LENGTH] = { 0 };
- tox_self_get_status_message(toxThread->Tox(), statusMessage);
- setTString("StatusMsg", ptrT(Utf8DecodeT((char*)statusMessage)));
-
- return true;
- /*}
-
- tox_options_free(options);
-
- return false;*/
+ tox_callback_friend_request(toxThread->Tox(), OnFriendRequest, this);
+ tox_callback_friend_message(toxThread->Tox(), OnFriendMessage, this);
+ tox_callback_friend_read_receipt(toxThread->Tox(), OnReadReceipt, this);
+ tox_callback_friend_typing(toxThread->Tox(), OnTypingChanged, this);
+ //
+ tox_callback_friend_name(toxThread->Tox(), OnFriendNameChange, this);
+ tox_callback_friend_status_message(toxThread->Tox(), OnStatusMessageChanged, this);
+ tox_callback_friend_status(toxThread->Tox(), OnUserStatusChanged, this);
+ tox_callback_friend_connection_status(toxThread->Tox(), OnConnectionStatusChanged, this);
+ // transfers
+ tox_callback_file_recv_control(toxThread->Tox(), OnFileRequest, this);
+ tox_callback_file_recv(toxThread->Tox(), OnFriendFile, this);
+ tox_callback_file_recv_chunk(toxThread->Tox(), OnDataReceiving, this);
+ tox_callback_file_chunk_request(toxThread->Tox(), OnFileSendData, this);
+ // group chats
+ //tox_callback_group_invite(tox, OnGroupChatInvite, this);
+ // a/v
+ //if (IsWinVerVistaPlus())
+ //{
+ // TOXAV_ERR_NEW avInitError;
+ // toxThread->Tox()AV = toxav_new(toxThread->Tox(), &avInitError);
+ // if (initError != TOX_ERR_NEW_OK)
+ // {
+ // toxav_callback_call(toxThread->Tox()AV, OnFriendCall, this);
+ // toxav_callback_call_state(toxThread->Tox()AV, OnFriendCallState, this);
+ // toxav_callback_bit_rate_status(toxThread->Tox()AV, OnBitrateChanged, this);
+ // toxav_callback_audio_receive_frame(toxThread->Tox()AV, OnFriendAudioFrame, this);
+ // //toxav_callback_video_receive_frame(toxThread->Tox()AV, , this);
+ // }
+ //}
+
+ uint8_t data[TOX_ADDRESS_SIZE];
+ tox_self_get_address(toxThread->Tox(), data);
+ ToxHexAddress address(data);
+ setString(TOX_SETTINGS_ID, address);
+
+ uint8_t nick[TOX_MAX_NAME_LENGTH] = { 0 };
+ tox_self_get_name(toxThread->Tox(), nick);
+ setTString("Nick", ptrT(Utf8DecodeT((char*)nick)));
+
+ uint8_t statusMessage[TOX_MAX_STATUS_MESSAGE_LENGTH] = { 0 };
+ tox_self_get_status_message(toxThread->Tox(), statusMessage);
+ setTString("StatusMsg", ptrT(Utf8DecodeT((char*)statusMessage)));
+
+ return true;
}
void CToxProto::UninitToxCore(CToxThread *toxThread)
@@ -128,15 +107,6 @@ void CToxProto::UninitToxCore(CToxThread *toxThread)
if (toxThread == NULL)
return;
- /*if (toxThread->ToxAV())
- toxav_kill(toxThread->ToxAV());
-
- if (toxThread->Tox() == NULL)
- return;*/
-
- CancelAllTransfers();
+ CancelAllTransfers(toxThread);
SaveToxProfile(toxThread);
-
- //tox_kill(toxThread->Tox());
- //toxThread->Tox() = NULL;
} \ No newline at end of file