From 4fb9db65bedad4f25923fb2c0bf25dbabc5227bb Mon Sep 17 00:00:00 2001 From: Tobias Weimer Date: Mon, 18 Mar 2013 21:13:09 +0000 Subject: quick fix for the twitter profile URLs git-svn-id: http://svn.miranda-ng.org/main/trunk@4099 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/Twitter/src/chat.cpp | 18 ++--- protocols/Twitter/src/connection.cpp | 145 +++++++++++++++-------------------- protocols/Twitter/src/contacts.cpp | 56 ++++++-------- protocols/Twitter/src/http.cpp | 3 +- protocols/Twitter/src/main.cpp | 3 +- protocols/Twitter/src/proto.cpp | 87 ++++++++------------- protocols/Twitter/src/theme.cpp | 9 +-- protocols/Twitter/src/ui.cpp | 102 +++++++++++------------- 8 files changed, 178 insertions(+), 245 deletions(-) (limited to 'protocols/Twitter/src') diff --git a/protocols/Twitter/src/chat.cpp b/protocols/Twitter/src/chat.cpp index cafb46025c..577dfd3be6 100644 --- a/protocols/Twitter/src/chat.cpp +++ b/protocols/Twitter/src/chat.cpp @@ -44,10 +44,10 @@ void TwitterProto::UpdateChat(const twitter_user &update) DBVARIANT nick; HANDLE hContact = UsernameToHContact(update.username.c_str()); - if(hContact && !DBGetContactSettingString(hContact,"CList","MyHandle",&nick)) + if(hContact && !db_get_s(hContact,"CList","MyHandle",&nick)) { gce.ptszNick = mir_a2t(nick.pszVal); - DBFreeVariant(&nick); + db_free(&nick); } else gce.ptszNick = mir_a2t(update.username.c_str()); @@ -197,24 +197,24 @@ void TwitterProto::SetChatStatus(int status) if(status == ID_STATUS_ONLINE) { // Add all friends to contact list - for(HANDLE hContact = db_find_first(); - hContact; - hContact = db_find_next(hContact)) + for(HANDLE hContact = db_find_first();hContact;hContact = db_find_next(hContact)) { if(!IsMyContact(hContact)) continue; DBVARIANT uid,nick; - if( DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&uid)) + if(db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&uid)) continue; - if( !DBGetContactSettingString(hContact,"CList","MyHandle",&nick)) + if(!db_get_s(hContact,"CList","MyHandle",&nick)) + { AddChatContact(uid.pszVal,nick.pszVal); + db_free(&nick); + } else AddChatContact(uid.pszVal); - DBFreeVariant(&nick); - DBFreeVariant(&uid); + db_free(&uid); } // For some reason, I have to send an INITDONE message, even if I'm not actually diff --git a/protocols/Twitter/src/connection.cpp b/protocols/Twitter/src/connection.cpp index fe18ae5c76..178357c36b 100644 --- a/protocols/Twitter/src/connection.cpp +++ b/protocols/Twitter/src/connection.cpp @@ -25,8 +25,7 @@ void CALLBACK TwitterProto::APC_callback(ULONG_PTR p) } template -inline static T db_pod_get(HANDLE hContact,const char *module,const char *setting, - T errorValue) +inline static T db_pod_get(HANDLE hContact,const char *module,const char *setting,T errorValue) { DBVARIANT dbv; DBCONTACTGETSETTING cgs; @@ -47,8 +46,7 @@ inline static T db_pod_get(HANDLE hContact,const char *module,const char *settin } template -inline static INT_PTR db_pod_set(HANDLE hContact,const char *module,const char *setting, - T val) +inline static INT_PTR db_pod_set(HANDLE hContact,const char *module,const char *setting,T val) { DBCONTACTWRITESETTING cws; @@ -104,42 +102,42 @@ bool TwitterProto::NegotiateConnection() wstring oauthAccessTokenSecret; string screenName; - INT_PTR dbTOK = DBGetContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK,&dbv); + INT_PTR dbTOK = db_get_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK,&dbv); if (!dbTOK) { oauthToken = dbv.pwszVal; - DBFreeVariant(&dbv); + db_free(&dbv); //WLOG("**NegotiateConnection - we have an oauthToken already in the db - %s", oauthToken); } - INT_PTR dbTOKSec = DBGetContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET,&dbv); + INT_PTR dbTOKSec = db_get_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET,&dbv); if (!dbTOKSec) { oauthTokenSecret = dbv.pwszVal; - DBFreeVariant(&dbv); + db_free(&dbv); //WLOG("**NegotiateConnection - we have an oauthTokenSecret already in the db - %s", oauthTokenSecret); } - INT_PTR dbName = DBGetContactSettingString(0,m_szModuleName,TWITTER_KEY_NICK,&dbv); + INT_PTR dbName = db_get_s(0,m_szModuleName,TWITTER_KEY_NICK,&dbv); if (!dbName) { screenName = dbv.pszVal; - DBFreeVariant(&dbv); + db_free(&dbv); //WLOG("**NegotiateConnection - we have a username already in the db - %s", screenName); } else { - dbName = DBGetContactSettingString(0,m_szModuleName,TWITTER_KEY_UN,&dbv); + dbName = db_get_s(0,m_szModuleName,TWITTER_KEY_UN,&dbv); if (!dbName) { screenName = dbv.pszVal; - DBWriteContactSettingString(0,m_szModuleName,TWITTER_KEY_NICK,dbv.pszVal); + db_set_s(0,m_szModuleName,TWITTER_KEY_NICK,dbv.pszVal); //WLOG("**NegotiateConnection - we have a username already in the db - %s", screenName); } - DBFreeVariant(&dbv); + db_free(&dbv); } // twitter changed the base URL in v1.1 of the API, I don't think users will need to modify it, so // i'll be forcing it to the new API URL here. After a while I can get rid of this as users will // have either had this run at least once, or have reset their miranda profile. 14/10/2012 - if(DBGetContactSettingByte(0,m_szModuleName,"UpgradeBaseURL",1)) { - DBWriteContactSettingString(0,m_szModuleName,TWITTER_KEY_BASEURL,"https://api.twitter.com/"); - DBWriteContactSettingByte(0,m_szModuleName,"UpgradeBaseURL",0); + if(db_get_b(0,m_szModuleName,"UpgradeBaseURL",1)) { + db_set_s(0,m_szModuleName,TWITTER_KEY_BASEURL,"https://api.twitter.com/"); + db_set_b(0,m_szModuleName,"UpgradeBaseURL",0); } if((oauthToken.size() <= 1) || (oauthTokenSecret.size() <= 1)) { @@ -178,8 +176,8 @@ bool TwitterProto::NegotiateConnection() } //write those bitches to the db foe latta - DBWriteContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK,oauthToken.c_str()); - DBWriteContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET,oauthTokenSecret.c_str()); + db_set_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK,oauthToken.c_str()); + db_set_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET,oauthTokenSecret.c_str()); // this looks like bad code.. can someone clean this up please? or confirm that it's ok wchar_t buf[1024] = {}; @@ -191,19 +189,19 @@ bool TwitterProto::NegotiateConnection() ShowPinDialog(); } - if (!DBGetContactSettingTString(NULL,m_szModuleName,TWITTER_KEY_GROUP,&dbv)) { + if (!db_get_ts(NULL,m_szModuleName,TWITTER_KEY_GROUP,&dbv)) { CallService( MS_CLIST_GROUPCREATE, 0, (LPARAM)dbv.ptszVal ); - DBFreeVariant(&dbv); + db_free(&dbv); } bool realAccessTok = false; bool realAccessTokSecret = false; // remember, dbTOK is 0 (false) if the db setting has returned something - dbTOK = DBGetContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK,&dbv); + dbTOK = db_get_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK,&dbv); if (!dbTOK) { oauthAccessToken = dbv.pwszVal; - DBFreeVariant(&dbv); + db_free(&dbv); // this bit is saying "if we have found the db key, but it contains no data, then set dbTOK to 1" if (oauthAccessToken.size() > 1) { realAccessTok = true; @@ -212,10 +210,10 @@ bool TwitterProto::NegotiateConnection() else { LOG( _T("**NegotiateConnection - oauthAccesToken too small? this is.. weird.")); } } - dbTOKSec = DBGetContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET,&dbv); + dbTOKSec = db_get_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET,&dbv); if (!dbTOKSec) { oauthAccessTokenSecret = dbv.pwszVal; - DBFreeVariant(&dbv); + db_free(&dbv); if (oauthAccessTokenSecret.size() > 1) { realAccessTokSecret = true; //WLOG("**NegotiateConnection - we have an oauthAccessTokenSecret already in the db - %s", oauthAccessTokenSecret); @@ -226,24 +224,22 @@ bool TwitterProto::NegotiateConnection() if (!realAccessTok || !realAccessTokSecret) { // if we don't have one of these beasties then lets go get 'em! wstring pin; LOG( _T("**NegotiateConnection - either the accessToken or accessTokenSecret was not there..")); - if (!DBGetContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_PIN,&dbv)) { + if (!db_get_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_PIN,&dbv)) { pin = dbv.pwszVal; //WLOG("**NegotiateConnection - we have an pin already in the db - %s", pin); - DBFreeVariant(&dbv); + db_free(&dbv); } else { ShowPopup(TranslateT("OAuth variables are out of sequence, they have been reset. Please reconnect and reauthorise Miranda to Twitter.com (do the PIN stuff again)")); LOG( _T("**NegotiateConnection - We don't have a PIN? this doesn't make sense. Resetting OAuth keys and setting offline.")); resetOAuthKeys(); - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED,(HANDLE)old_status,m_iStatus); // Set to offline old_status = m_iStatus; m_iDesiredStatus = m_iStatus = ID_STATUS_OFFLINE; - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); return false; } @@ -265,14 +261,12 @@ bool TwitterProto::NegotiateConnection() resetOAuthKeys(); - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED,(HANDLE)old_status,m_iStatus); // Set to offline old_status = m_iStatus; m_iDesiredStatus = m_iStatus = ID_STATUS_OFFLINE; - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); return false; } @@ -294,29 +288,29 @@ bool TwitterProto::NegotiateConnection() LOG( _T("**NegotiateConnection - screen name is %s"), screenName.c_str()); //save em - DBWriteContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK,oauthAccessToken.c_str()); - DBWriteContactSettingWString(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET,oauthAccessTokenSecret.c_str()); - DBWriteContactSettingString(0,m_szModuleName,TWITTER_KEY_NICK,screenName.c_str()); - DBWriteContactSettingString(0,m_szModuleName,TWITTER_KEY_UN,screenName.c_str()); + db_set_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK,oauthAccessToken.c_str()); + db_set_ws(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET,oauthAccessTokenSecret.c_str()); + db_set_s(0,m_szModuleName,TWITTER_KEY_NICK,screenName.c_str()); + db_set_s(0,m_szModuleName,TWITTER_KEY_UN,screenName.c_str()); } } -/* if( !DBGetContactSettingString(0,m_szModuleName,TWITTER_KEY_PASS,&dbv)) { +/* if( !db_get_s(0,m_szModuleName,TWITTER_KEY_PASS,&dbv)) { CallService(MS_DB_CRYPT_DECODESTRING,strlen(dbv.pszVal)+1, reinterpret_cast(dbv.pszVal)); pass = dbv.pszVal; - DBFreeVariant(&dbv); + db_free(&dbv); } else { ShowPopup(TranslateT("Please enter a password.")); return false; }*/ - if( !DBGetContactSettingString(0,m_szModuleName,TWITTER_KEY_BASEURL,&dbv)) + if( !db_get_s(0,m_szModuleName,TWITTER_KEY_BASEURL,&dbv)) { ScopedLock s(twitter_lock_); twit_.set_base_url(dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } LOG( _T("**NegotiateConnection - Setting Consumer Keys and verifying creds...")); @@ -343,22 +337,19 @@ bool TwitterProto::NegotiateConnection() LOG( _T("**NegotiateConnection - Verifying credentials failed! No internet maybe?")); //resetOAuthKeys(); - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_FAILED,(HANDLE)old_status,m_iStatus); // Set to offline old_status = m_iStatus; m_iDesiredStatus = m_iStatus = ID_STATUS_OFFLINE; - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); return false; } else { m_iStatus = m_iDesiredStatus; - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); return true; } } @@ -372,7 +363,7 @@ void TwitterProto::MessageLoop(void*) dm_since_id_ = db_pod_get(0,m_szModuleName,TWITTER_KEY_DMSINCEID,0); bool new_account = db_get_b(0,m_szModuleName,TWITTER_KEY_NEW,1) != 0; - bool popups = db_get_b(0,m_szModuleName,TWITTER_KEY_POPUP_SIGNON,1) != 0; + bool popups = db_get_b(0,m_szModuleName,TWITTER_KEY_POPUP_SIGNON,1) != 0; // if this isn't set, it will automatically not turn a tweet into a msg. probably should make the default that it does turn a tweet into a message bool tweetToMsg = db_get_b(0,m_szModuleName,TWITTER_KEY_TWEET_TO_MSG,0) != 0; @@ -400,7 +391,7 @@ void TwitterProto::MessageLoop(void*) if(new_account) // Not anymore! { new_account = false; - DBWriteContactSettingByte(0,m_szModuleName,TWITTER_KEY_NEW,0); + db_set_b(0,m_szModuleName,TWITTER_KEY_NEW,0); } if(m_iStatus != ID_STATUS_ONLINE) @@ -435,15 +426,15 @@ void TwitterProto::UpdateAvatarWorker(void *p) std::auto_ptr data( static_cast(p)); DBVARIANT dbv = {0}; - // DBGetContactSettingString returns 0 when it suceeds, so if this suceeds it will return 0, or false. + // db_get_s returns 0 when it suceeds, so if this suceeds it will return 0, or false. // therefore if it returns 1, or true, we want to return as there is no such user. // as a side effect, dbv now has the username in it i think - if(DBGetContactSettingTString(data->hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if(db_get_ts(data->hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) return; std::string ext = data->url.substr(data->url.rfind('.')); // finds the filetype of the avatar std::tstring filename = GetAvatarFolder() + _T('\\') + dbv.ptszVal + (TCHAR*)_A2T(ext.c_str()); // local filename and path - DBFreeVariant(&dbv); + db_free(&dbv); PROTO_AVATAR_INFORMATIONT ai = {sizeof(ai)}; ai.hContact = data->hContact; @@ -466,14 +457,11 @@ void TwitterProto::UpdateAvatarWorker(void *p) if(save_url(hAvatarNetlib_,data->url,filename)) { - DBWriteContactSettingString(data->hContact,m_szModuleName,TWITTER_KEY_AV_URL, - data->url.c_str()); - ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_AVATAR, - ACKRESULT_SUCCESS,&ai,0); + db_set_s(data->hContact,m_szModuleName,TWITTER_KEY_AV_URL,data->url.c_str()); + ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_AVATAR,ACKRESULT_SUCCESS,&ai,0); } else - ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_AVATAR, - ACKRESULT_FAILED, &ai,0); + ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_AVATAR,ACKRESULT_FAILED, &ai,0); ReleaseMutex(avatar_lock_); LOG( _T("***** Done avatar: %s"),data->url.c_str()); } @@ -482,9 +470,7 @@ void TwitterProto::UpdateAvatar(HANDLE hContact,const std::string &url,bool forc { DBVARIANT dbv = {0}; - if( !force && - ( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_AV_URL,&dbv) && - url == dbv.pszVal)) + if( !force && (!db_get_s(hContact,m_szModuleName,TWITTER_KEY_AV_URL,&dbv) && url == dbv.pszVal)) { LOG( _T("***** Avatar already up-to-date: %s"), url.c_str()); } @@ -496,17 +482,15 @@ void TwitterProto::UpdateAvatar(HANDLE hContact,const std::string &url,bool forc PROTO_AVATAR_INFORMATIONT ai = {sizeof(ai),hContact}; db_set_s(hContact,m_szModuleName,TWITTER_KEY_AV_URL,url.c_str()); - ProtoBroadcastAck(m_szModuleName,hContact,ACKTYPE_AVATAR, - ACKRESULT_SUCCESS,&ai,0); + ProtoBroadcastAck(m_szModuleName,hContact,ACKTYPE_AVATAR,ACKRESULT_SUCCESS,&ai,0); } else { - ForkThread(&TwitterProto::UpdateAvatarWorker, this, - new update_avatar(hContact,url)); + ForkThread(&TwitterProto::UpdateAvatarWorker, this,new update_avatar(hContact,url)); } } - DBFreeVariant(&dbv); + db_free(&dbv); } void TwitterProto::UpdateFriends() @@ -538,8 +522,7 @@ void TwitterProto::UpdateFriends() } catch(const std::exception &e) { - ShowPopup( (std::string("While updating friends list, an error occurred: ") - +e.what()).c_str()); + ShowPopup( (std::string("While updating friends list, an error occurred: ")+e.what()).c_str()); LOG( _T("***** Error updating friends list: %s"), e.what()); } @@ -547,8 +530,7 @@ void TwitterProto::UpdateFriends() void TwitterProto::ShowContactPopup(HANDLE hContact,const std::string &text) { - if(!ServiceExists(MS_POPUP_ADDPOPUPT) || DBGetContactSettingByte(0, - m_szModuleName,TWITTER_KEY_POPUP_SHOW,0) == 0) + if(!ServiceExists(MS_POPUP_ADDPOPUPT) || db_get_b(0,m_szModuleName,TWITTER_KEY_POPUP_SHOW,0) == 0) { return; } @@ -565,11 +547,10 @@ void TwitterProto::ShowContactPopup(HANDLE hContact,const std::string &text) popup.colorBack = GetSysColor(COLOR_WINDOWTEXT); DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,"CList","MyHandle",&dbv) || - !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if( !db_get_s(hContact,"CList","MyHandle",&dbv) || !db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { mbcs_to_tcs(CP_UTF8,dbv.pszVal,popup.lptzContactName,MAX_CONTACTNAME); - DBFreeVariant(&dbv); + db_free(&dbv); } mbcs_to_tcs(CP_UTF8,text.c_str(),popup.lptzText,MAX_SECONDLINE); @@ -613,8 +594,7 @@ void TwitterProto::UpdateStatuses(bool pre_read, bool popups, bool tweetToMsg) CallService(MS_DB_EVENT_ADD, (WPARAM)hContact, (LPARAM)&dbei); } - DBWriteContactSettingUTF8String(hContact,"CList","StatusMsg", - i->status.text.c_str()); + db_set_utf(hContact,"CList","StatusMsg",i->status.text.c_str()); if(!pre_read && popups) ShowContactPopup(hContact,i->status.text); @@ -680,16 +660,15 @@ void TwitterProto::UpdateMessages(bool pre_read) } catch(const std::exception &e) { - ShowPopup( (std::string("While updating direct messages, an error occurred: ") - +e.what()).c_str()); + ShowPopup( (std::string("While updating direct messages, an error occurred: ")+e.what()).c_str()); LOG( _T("***** Error updating direct messages: %s"), e.what()); } } void TwitterProto::resetOAuthKeys() { - DBDeleteContactSetting(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK); - DBDeleteContactSetting(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET); - DBDeleteContactSetting(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK); - DBDeleteContactSetting(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET); - DBDeleteContactSetting(0,m_szModuleName,TWITTER_KEY_OAUTH_PIN); + db_unset(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK); + db_unset(0,m_szModuleName,TWITTER_KEY_OAUTH_ACCESS_TOK_SECRET); + db_unset(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK); + db_unset(0,m_szModuleName,TWITTER_KEY_OAUTH_TOK_SECRET); + db_unset(0,m_szModuleName,TWITTER_KEY_OAUTH_PIN); } diff --git a/protocols/Twitter/src/contacts.cpp b/protocols/Twitter/src/contacts.cpp index dae818d52b..1eb1314086 100644 --- a/protocols/Twitter/src/contacts.cpp +++ b/protocols/Twitter/src/contacts.cpp @@ -37,8 +37,7 @@ void TwitterProto::AddToListWorker(void *p) } catch(const std::exception &e) { - ShowPopup((std::string("While adding a friend, an error occurred: ") - +e.what()).c_str()); + ShowPopup((std::string("While adding a friend, an error occurred: ") + e.what()).c_str()); LOG( _T("***** Error adding friend: %s"),e.what()); } mir_free(name); @@ -61,10 +60,10 @@ void TwitterProto::UpdateInfoWorker(void *hContact) std::string username; DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if(!db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { username = dbv.pszVal; - DBFreeVariant(&dbv); + db_free(&dbv); } else return; @@ -112,7 +111,6 @@ void TwitterProto::DoSearch(void *p) search_query *query = static_cast(p); twitter_user info; - PROTOSEARCHRESULT psr = {sizeof(psr)}; bool found = false; try @@ -128,15 +126,15 @@ void TwitterProto::DoSearch(void *p) } catch(const std::exception &e) { - ShowPopup( (std::string("While searching for contacts, an error occurred: ") - +e.what()).c_str()); + ShowPopup( (std::string("While searching for contacts, an error occurred: ") + e.what()).c_str()); LOG( _T("***** Error searching for contacts: %s"), e.what()); found = false; } if(found) { - psr.nick = mir_a2t( info.username. c_str()); - psr.firstName = mir_a2t( info.real_name.c_str()); + PROTOSEARCHRESULT psr = {sizeof(psr)}; + psr.nick = mir_a2t(info.username. c_str()); + psr.firstName = mir_a2t(info.real_name.c_str()); ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_SEARCH,ACKRESULT_DATA,(HANDLE)1, (LPARAM)&psr); ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_SEARCH,ACKRESULT_SUCCESS,(HANDLE)1,0); @@ -172,9 +170,9 @@ void TwitterProto::GetAwayMsgWorker(void *hContact) return; DBVARIANT dbv; - if( !DBGetContactSettingTString(hContact,"CList","StatusMsg",&dbv)) { + if( !db_get_ts(hContact,"CList","StatusMsg",&dbv)) { ProtoBroadcastAck(m_szModuleName,hContact,ACKTYPE_AWAYMSG,ACKRESULT_SUCCESS, (HANDLE)1,(LPARAM)dbv.ptszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } else ProtoBroadcastAck(m_szModuleName,hContact,ACKTYPE_AWAYMSG,ACKRESULT_FAILED, (HANDLE)1,0); } @@ -196,14 +194,14 @@ int TwitterProto::OnContactDeleted(WPARAM wParam,LPARAM lParam) return 0; DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if( !db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { if(in_chat_) DeleteChatContact(dbv.pszVal); ScopedLock s(twitter_lock_); twit_.remove_friend(dbv.pszVal); // Be careful about this until Miranda is fixed - DBFreeVariant(&dbv); + db_free(&dbv); } return 0; } @@ -216,30 +214,28 @@ bool TwitterProto::IsMyContact(HANDLE hContact,bool include_chat) if(proto && strcmp(m_szModuleName,proto) == 0) { if(include_chat) return true; - return DBGetContactSettingByte(hContact,m_szModuleName,"ChatRoom",0) == 0; + return db_get_b(hContact,m_szModuleName,"ChatRoom",0) == 0; } else return false; } HANDLE TwitterProto::UsernameToHContact(const char *name) { - for(HANDLE hContact = db_find_first(); - hContact; - hContact = db_find_next(hContact)) + for(HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) { if(!IsMyContact(hContact)) continue; DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if( !db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { if(strcmp(name,dbv.pszVal) == 0) { - DBFreeVariant(&dbv); + db_free(&dbv); return hContact; } else - DBFreeVariant(&dbv); + db_free(&dbv); } } @@ -262,18 +258,18 @@ HANDLE TwitterProto::AddToClientList(const char *name,const char *status) { if(CallService(MS_PROTO_ADDTOCONTACT,(WPARAM)hContact,(LPARAM)m_szModuleName) == 0) { - DBWriteContactSettingString (hContact,m_szModuleName,TWITTER_KEY_UN,name); - DBWriteContactSettingWord (hContact,m_szModuleName,"Status",ID_STATUS_ONLINE); - DBWriteContactSettingUTF8String(hContact,"CList","StatusMsg",status); + db_set_s(hContact,m_szModuleName,TWITTER_KEY_UN,name); + db_set_w(hContact,m_szModuleName,"Status",ID_STATUS_ONLINE); + db_set_utf(hContact,"CList","StatusMsg",status); std::string url = profile_base_url(twit_.get_base_url())+http::url_encode(name); - DBWriteContactSettingString (hContact,m_szModuleName,"Homepage",url.c_str()); + db_set_s(hContact,m_szModuleName,"Homepage",url.c_str()); DBVARIANT dbv; - if( !DBGetContactSettingTString(NULL,m_szModuleName,TWITTER_KEY_GROUP,&dbv)) + if(!db_get_ts(NULL,m_szModuleName,TWITTER_KEY_GROUP,&dbv)) { - DBWriteContactSettingTString(hContact,"CList","Group",dbv.ptszVal); - DBFreeVariant(&dbv); + db_set_ts(hContact,"CList","Group",dbv.ptszVal); + db_free(&dbv); } @@ -288,14 +284,12 @@ HANDLE TwitterProto::AddToClientList(const char *name,const char *status) void TwitterProto::SetAllContactStatuses(int status) { - for(HANDLE hContact = db_find_first(); - hContact; - hContact = db_find_next(hContact)) + for(HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) { if(!IsMyContact(hContact)) continue; - DBWriteContactSettingWord(hContact,m_szModuleName,"Status",status); + db_set_w(hContact,m_szModuleName,"Status",status); } SetChatStatus(status); diff --git a/protocols/Twitter/src/http.cpp b/protocols/Twitter/src/http.cpp index 877399cc11..f953ec1973 100644 --- a/protocols/Twitter/src/http.cpp +++ b/protocols/Twitter/src/http.cpp @@ -23,8 +23,7 @@ along with this program. If not, see . std::string http::url_encode(const std::string &s) { - char *encoded = reinterpret_cast(CallService( MS_NETLIB_URLENCODE, - 0,reinterpret_cast(s.c_str()))); + char *encoded = reinterpret_cast(CallService( MS_NETLIB_URLENCODE,0,reinterpret_cast(s.c_str()))); std::string ret = encoded; HeapFree(GetProcessHeap(),0,encoded); diff --git a/protocols/Twitter/src/main.cpp b/protocols/Twitter/src/main.cpp index 244f0d094b..5f84e69c7e 100644 --- a/protocols/Twitter/src/main.cpp +++ b/protocols/Twitter/src/main.cpp @@ -89,8 +89,7 @@ extern "C" int __declspec(dllexport) Load(void) { mir_getLP(&pluginInfo); - pcli = reinterpret_cast( CallService( - MS_CLIST_RETRIEVE_INTERFACE,0,reinterpret_cast(g_hInstance))); + pcli = reinterpret_cast( CallService(MS_CLIST_RETRIEVE_INTERFACE,0,reinterpret_cast(g_hInstance))); PROTOCOLDESCRIPTOR pd = {sizeof(pd)}; pd.szName = "Twitter"; diff --git a/protocols/Twitter/src/proto.cpp b/protocols/Twitter/src/proto.cpp index 4c9d0db3a9..eca9aea2ff 100644 --- a/protocols/Twitter/src/proto.cpp +++ b/protocols/Twitter/src/proto.cpp @@ -95,7 +95,7 @@ TwitterProto::~TwitterProto() // ************************* -DWORD_PTR TwitterProto::GetCaps(int type,HANDLE hContact) +DWORD_PTR TwitterProto::GetCaps(int type,HANDLE) { switch(type) { @@ -142,14 +142,13 @@ void TwitterProto::SendSuccess(void *p) send_direct *data = static_cast(p); DBVARIANT dbv; - if( !DBGetContactSettingString(data->hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if( !db_get_s(data->hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { ScopedLock s(twitter_lock_); twit_.send_direct(dbv.pszVal,data->msg); - ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_MESSAGE,ACKRESULT_SUCCESS, - (HANDLE)1,0); - DBFreeVariant(&dbv); + ProtoBroadcastAck(m_szModuleName,data->hContact,ACKTYPE_MESSAGE,ACKRESULT_SUCCESS,(HANDLE)1,0); + db_free(&dbv); } delete data; @@ -198,8 +197,7 @@ int TwitterProto::SetStatus(int new_status) // i think here we tell the proto interface struct that we're connecting, just so it knows m_iStatus = ID_STATUS_CONNECTING; // ok.. here i think we're telling the core that this protocol something.. but why? - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); ForkThread(&TwitterProto::SignOn,this); } @@ -209,8 +207,7 @@ int TwitterProto::SetStatus(int new_status) m_iStatus = m_iDesiredStatus; SetAllContactStatuses(ID_STATUS_OFFLINE); - ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS, - (HANDLE)old_status,m_iStatus); + ProtoBroadcastAck(m_szModuleName,0,ACKTYPE_STATUS,ACKRESULT_SUCCESS,(HANDLE)old_status,m_iStatus); } return 0; @@ -232,10 +229,9 @@ int TwitterProto::OnEvent(PROTOEVENTTYPE event,WPARAM wParam,LPARAM lParam) // ************************* -int TwitterProto::SvcCreateAccMgrUI(WPARAM wParam,LPARAM lParam) +int TwitterProto::SvcCreateAccMgrUI(WPARAM,LPARAM lParam) { - return (int)CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWITTERACCOUNT), - (HWND)lParam, first_run_dialog, (LPARAM)this ); + return (int)CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWITTERACCOUNT),(HWND)lParam, first_run_dialog, (LPARAM)this ); } int TwitterProto::GetName(WPARAM wParam,LPARAM lParam) @@ -244,24 +240,23 @@ int TwitterProto::GetName(WPARAM wParam,LPARAM lParam) return 0; } -int TwitterProto::GetStatus(WPARAM wParam,LPARAM lParam) +int TwitterProto::GetStatus(WPARAM,LPARAM) { return m_iStatus; } -int TwitterProto::ReplyToTweet(WPARAM wParam,LPARAM lParam) +int TwitterProto::ReplyToTweet(WPARAM wParam,LPARAM) { // TODO: support replying to tweets instead of just users HANDLE hContact = reinterpret_cast(wParam); - HWND hDlg = CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWEET), - (HWND)0,tweet_proc,reinterpret_cast(this)); + HWND hDlg = CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWEET),0,tweet_proc,reinterpret_cast(this)); DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) + if(!db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { SendMessage(hDlg,WM_SETREPLY,reinterpret_cast(dbv.pszVal),0); - DBFreeVariant(&dbv); + db_free(&dbv); } ShowWindow(hDlg,SW_SHOW); @@ -269,28 +264,19 @@ int TwitterProto::ReplyToTweet(WPARAM wParam,LPARAM lParam) return 0; } -int TwitterProto::VisitHomepage(WPARAM wParam,LPARAM lParam) +int TwitterProto::VisitHomepage(WPARAM wParam,LPARAM) { HANDLE hContact = reinterpret_cast(wParam); DBVARIANT dbv; - if( !DBGetContactSettingString(hContact,m_szModuleName,"Homepage",&dbv)) + // TODO: remove this + if( !db_get_s(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) { - CallService(MS_UTILS_OPENURL,1,reinterpret_cast(dbv.pszVal)); - DBFreeVariant(&dbv); - } - else - { - // TODO: remove this - if( !DBGetContactSettingString(hContact,m_szModuleName,TWITTER_KEY_UN,&dbv)) - { - std::string url = profile_base_url(twit_.get_base_url())+ - http::url_encode(dbv.pszVal); - DBWriteContactSettingString(hContact,m_szModuleName,"Homepage",url.c_str()); + std::string url = profile_base_url("https://twitter.com/") + http::url_encode(dbv.pszVal); + db_set_s(hContact,m_szModuleName,"Homepage",url.c_str()); - CallService(MS_UTILS_OPENURL,1,reinterpret_cast(url.c_str())); - DBFreeVariant(&dbv); - } + CallService(MS_UTILS_OPENURL,1,reinterpret_cast(url.c_str())); + db_free(&dbv); } return 0; @@ -298,7 +284,7 @@ int TwitterProto::VisitHomepage(WPARAM wParam,LPARAM lParam) // ************************* -int TwitterProto::OnBuildStatusMenu(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnBuildStatusMenu(WPARAM,LPARAM) { HGENMENU hRoot = pcli->pfnGetProtocolMenu(m_szModuleName); if (hRoot == NULL) @@ -328,7 +314,7 @@ int TwitterProto::OnBuildStatusMenu(WPARAM wParam,LPARAM lParam) return 0; } -int TwitterProto::OnOptionsInit(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnOptionsInit(WPARAM wParam,LPARAM) { OPTIONSDIALOGPAGE odp = {sizeof(odp)}; odp.position = 271828; @@ -354,18 +340,17 @@ int TwitterProto::OnOptionsInit(WPARAM wParam,LPARAM lParam) return 0; } -int TwitterProto::OnTweet(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnTweet(WPARAM,LPARAM) { if(m_iStatus != ID_STATUS_ONLINE) return 1; - HWND hDlg = CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWEET), - 0,tweet_proc,reinterpret_cast(this)); + HWND hDlg = CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_TWEET), 0,tweet_proc,reinterpret_cast(this)); ShowWindow(hDlg,SW_SHOW); return 0; } -int TwitterProto::OnModulesLoaded(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnModulesLoaded(WPARAM,LPARAM) { TCHAR descr[512]; NETLIBUSER nlu = {sizeof(nlu)}; @@ -425,14 +410,14 @@ int TwitterProto::OnModulesLoaded(WPARAM wParam,LPARAM lParam) return 0; } -int TwitterProto::OnPreShutdown(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnPreShutdown(WPARAM,LPARAM) { Netlib_Shutdown(hNetlib_); Netlib_Shutdown(hAvatarNetlib_); return 0; } -int TwitterProto::OnPrebuildContactMenu(WPARAM wParam,LPARAM lParam) +int TwitterProto::OnPrebuildContactMenu(WPARAM wParam,LPARAM) { HANDLE hContact = reinterpret_cast(wParam); if(IsMyContact(hContact)) @@ -443,8 +428,7 @@ int TwitterProto::OnPrebuildContactMenu(WPARAM wParam,LPARAM lParam) int TwitterProto::ShowPinDialog() { - HWND hDlg = (HWND)DialogBoxParam(g_hInstance,MAKEINTRESOURCE(IDD_TWITTERPIN), - 0,pin_proc,reinterpret_cast(this)); + HWND hDlg = (HWND)DialogBoxParam(g_hInstance,MAKEINTRESOURCE(IDD_TWITTERPIN),0,pin_proc,reinterpret_cast(this)); ShowWindow(hDlg,SW_SHOW); return 0; } @@ -452,7 +436,7 @@ int TwitterProto::ShowPinDialog() void TwitterProto::ShowPopup(const wchar_t *text, int Error) { POPUPDATAT popup = {}; - _sntprintf(popup.lptzContactName,MAX_CONTACTNAME,TranslateT("%s Protocol"),m_tszUserName); + mir_sntprintf(popup.lptzContactName,MAX_CONTACTNAME,TranslateT("%s Protocol"),m_tszUserName); wcs_to_tcs(CP_UTF8,text,popup.lptzText,MAX_SECONDLINE); if (Error) { @@ -470,7 +454,7 @@ void TwitterProto::ShowPopup(const wchar_t *text, int Error) void TwitterProto::ShowPopup(const char *text, int Error) { POPUPDATAT popup = {}; - _sntprintf(popup.lptzContactName,MAX_CONTACTNAME,TranslateT("%s Protocol"),m_tszUserName); + mir_sntprintf(popup.lptzContactName,MAX_CONTACTNAME,TranslateT("%s Protocol"),m_tszUserName); mbcs_to_tcs(CP_UTF8,text,popup.lptzText,MAX_SECONDLINE); if (Error) { popup.iSeconds = -1; @@ -496,7 +480,7 @@ void TwitterProto::LOG(TCHAR *fmt,...) mir_vsntprintf(text,SIZEOF(text),fmt,va); va_end(va); - CallService(MS_NETLIB_LOG, (WPARAM)hNetlib_, (LPARAM)( char* )_T2A(text)); + CallService(MS_NETLIB_LOGW, (WPARAM)hNetlib_, (LPARAM)text); } // TODO: the more I think about it, the more I think all twit.* methods should @@ -508,10 +492,9 @@ void TwitterProto::SendTweetWorker(void *p) char *text = static_cast(p); if (strlen(text) > 140) { // looks like the chat max outgoing msg thing doesn't work, so i'll do it here. - char * errorPopup = new char[280]; // i hate c strings ... i should use std::string here. why did i use char* ??? need to delete[] or use std::String - sprintf(errorPopup, "Don't be crazy! Everyone knows the max tweet size is 140, and you're trying to fit %d chars in there?", strlen(text)); + TCHAR errorPopup[280]; + mir_sntprintf(errorPopup,SIZEOF(errorPopup), _T("Don't be crazy! Everyone knows the max tweet size is 140, and you're trying to fit %d chars in there?"), strlen(text)); ShowPopup(errorPopup, 1); - delete[] errorPopup; return; } @@ -533,9 +516,7 @@ void TwitterProto::UpdateSettings() if(in_chat_) OnLeaveChat(0,0); - for(HANDLE hContact = db_find_first(); - hContact; - hContact = db_find_next(hContact)) + for(HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) { if(!IsMyContact(hContact,true)) continue; diff --git a/protocols/Twitter/src/theme.cpp b/protocols/Twitter/src/theme.cpp index d1d212fbfe..5d866160aa 100644 --- a/protocols/Twitter/src/theme.cpp +++ b/protocols/Twitter/src/theme.cpp @@ -82,8 +82,7 @@ static int PrebuildContactMenu(WPARAM wParam,LPARAM lParam) void InitContactMenus() { - g_hMenuEvts[0] = HookEvent(ME_CLIST_PREBUILDCONTACTMENU, - PrebuildContactMenu); + g_hMenuEvts[0] = HookEvent(ME_CLIST_PREBUILDCONTACTMENU,PrebuildContactMenu); CLISTMENUITEM mi = {sizeof(mi)}; mi.flags = CMIF_NOTOFFLINE | CMIF_ICONFROMICOLIB | CMIF_TCHAR; @@ -99,8 +98,7 @@ void InitContactMenus() mi.icolibItem = GetIconHandle("homepage"); mi.ptszName = LPGENT("Visit Homepage"); mi.pszService = "Twitter/VisitHomepage"; - g_hMenuEvts[2] = CreateServiceFunction(mi.pszService, - GlobalService<&TwitterProto::VisitHomepage>); + g_hMenuEvts[2] = CreateServiceFunction(mi.pszService, GlobalService<&TwitterProto::VisitHomepage>); g_hMenuItems[1] = Menu_AddContactMenuItem(&mi); } @@ -123,7 +121,6 @@ void ShowContactMenus(bool show) if(!show) item.flags |= CMIF_HIDDEN; - CallService(MS_CLIST_MODIFYMENUITEM,reinterpret_cast(g_hMenuItems[i]), - reinterpret_cast(&item)); + CallService(MS_CLIST_MODIFYMENUITEM,reinterpret_cast(g_hMenuItems[i]),reinterpret_cast(&item)); } } \ No newline at end of file diff --git a/protocols/Twitter/src/ui.cpp b/protocols/Twitter/src/ui.cpp index ada3fd5ae5..eb0a8b2543 100644 --- a/protocols/Twitter/src/ui.cpp +++ b/protocols/Twitter/src/ui.cpp @@ -42,39 +42,38 @@ INT_PTR CALLBACK first_run_dialog(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lPa DBVARIANT dbv; - if( !DBGetContactSettingTString(0,proto->ModuleName(),TWITTER_KEY_GROUP,&dbv)) + if(!db_get_ts(0,proto->ModuleName(),TWITTER_KEY_GROUP,&dbv)) { SetDlgItemText(hwndDlg,IDC_GROUP,dbv.ptszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } else { SetDlgItemText(hwndDlg,IDC_GROUP,L"Twitter"); } - if( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_UN,&dbv)) + if(!db_get_s(0,proto->ModuleName(),TWITTER_KEY_UN,&dbv)) { SetDlgItemTextA(hwndDlg,IDC_USERNAME,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } - /*if ( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_PASS,&dbv)) + /*if ( !db_get_s(0,proto->ModuleName(),TWITTER_KEY_PASS,&dbv)) { CallService(MS_DB_CRYPT_DECODESTRING,strlen(dbv.pszVal)+1, reinterpret_cast(dbv.pszVal)); SetDlgItemTextA(hwndDlg,IDC_PW,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); }*/ for(size_t i=0; i(sites[i])); + SendDlgItemMessage(hwndDlg,IDC_SERVER,CB_ADDSTRING,0,reinterpret_cast(sites[i])); } - if( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_BASEURL,&dbv)) + if(!db_get_s(0,proto->ModuleName(),TWITTER_KEY_BASEURL,&dbv)) { SetDlgItemTextA(hwndDlg,IDC_SERVER,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } else { @@ -85,8 +84,7 @@ INT_PTR CALLBACK first_run_dialog(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lPa case WM_COMMAND: if(LOWORD(wParam) == IDC_NEWACCOUNTLINK) { - CallService(MS_UTILS_OPENURL,1,reinterpret_cast - ("http://twitter.com/signup")); + CallService(MS_UTILS_OPENURL,1,reinterpret_cast("https://twitter.com/signup")); return true; } @@ -111,20 +109,20 @@ INT_PTR CALLBACK first_run_dialog(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lPa /* GetDlgItemTextA(hwndDlg,IDC_UN,str,sizeof(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_UN,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_UN,str); GetDlgItemTextA(hwndDlg,IDC_PW,str,sizeof(str)); CallService(MS_DB_CRYPT_ENCODESTRING,sizeof(str),reinterpret_cast(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_PASS,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_PASS,str); */ GetDlgItemTextA(hwndDlg,IDC_SERVER,str,sizeof(str)-1); if(str[strlen(str)-1] != '/') strncat(str,"/",sizeof(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_BASEURL,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_BASEURL,str); GetDlgItemText(hwndDlg,IDC_GROUP,tstr,SIZEOF(tstr)); - DBWriteContactSettingTString(0,proto->ModuleName(),TWITTER_KEY_GROUP,tstr); + db_set_ts(0,proto->ModuleName(),TWITTER_KEY_GROUP,tstr); return true; } @@ -178,7 +176,7 @@ INT_PTR CALLBACK tweet_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) { size_t len = SendDlgItemMessage(hwndDlg,IDC_TWEETMSG,WM_GETTEXTLENGTH,0,0); char str[4]; - _snprintf(str,sizeof(str),"%d",140-len); + mir_snprintf(str,sizeof(str),"%d",140-len); SetDlgItemTextA(hwndDlg,IDC_CHARACTERS,str); return true; @@ -188,14 +186,14 @@ INT_PTR CALLBACK tweet_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) case WM_SETREPLY: { char foo[512]; - _snprintf(foo,sizeof(foo),"@%s ",(char*)wParam); + mir_snprintf(foo,sizeof(foo),"@%s ",(char*)wParam); size_t len = strlen(foo); SetDlgItemTextA(hwndDlg,IDC_TWEETMSG,foo); SendDlgItemMessage(hwndDlg,IDC_TWEETMSG,EM_SETSEL,len,len); char str[4]; - _snprintf(str,sizeof(str),"%d",140-len); + mir_snprintf(str,sizeof(str),"%d",140-len); SetDlgItemTextA(hwndDlg,IDC_CHARACTERS,str); return true; @@ -218,33 +216,31 @@ INT_PTR CALLBACK options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) proto = reinterpret_cast(lParam); DBVARIANT dbv; - if( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_UN,&dbv)) + if(!db_get_s(0,proto->ModuleName(),TWITTER_KEY_UN,&dbv)) { SetDlgItemTextA(hwndDlg,IDC_UN,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } - /*if( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_PASS,&dbv)) + /*if( !db_get_s(0,proto->ModuleName(),TWITTER_KEY_PASS,&dbv)) { CallService(MS_DB_CRYPT_DECODESTRING,strlen(dbv.pszVal)+1, reinterpret_cast(dbv.pszVal)); SetDlgItemTextA(hwndDlg,IDC_PW,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); }*/ - CheckDlgButton(hwndDlg,IDC_CHATFEED,DBGetContactSettingByte(0, - proto->ModuleName(),TWITTER_KEY_CHATFEED,0)); + CheckDlgButton(hwndDlg,IDC_CHATFEED,db_get_b(0,proto->ModuleName(),TWITTER_KEY_CHATFEED,0)); for(size_t i=0; i(sites[i])); + SendDlgItemMessage(hwndDlg,IDC_BASEURL,CB_ADDSTRING,0,reinterpret_cast(sites[i])); } - if( !DBGetContactSettingString(0,proto->ModuleName(),TWITTER_KEY_BASEURL,&dbv)) + if(!db_get_s(0,proto->ModuleName(),TWITTER_KEY_BASEURL,&dbv)) { SetDlgItemTextA(hwndDlg,IDC_BASEURL,dbv.pszVal); - DBFreeVariant(&dbv); + db_free(&dbv); } else { @@ -252,12 +248,10 @@ INT_PTR CALLBACK options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) } char pollrate_str[32]; - mir_snprintf(pollrate_str,sizeof(pollrate_str),"%d", - DBGetContactSettingDword(0,proto->ModuleName(),TWITTER_KEY_POLLRATE,80)); + mir_snprintf(pollrate_str,sizeof(pollrate_str),"%d",db_get_dw(0,proto->ModuleName(),TWITTER_KEY_POLLRATE,80)); SetDlgItemTextA(hwndDlg,IDC_POLLRATE,pollrate_str); - CheckDlgButton(hwndDlg,IDC_TWEET_MSG,DBGetContactSettingByte(0, - proto->ModuleName(),TWITTER_KEY_TWEET_TO_MSG,0)); + CheckDlgButton(hwndDlg,IDC_TWEET_MSG,db_get_b(0,proto->ModuleName(),TWITTER_KEY_TWEET_TO_MSG,0)); // Do this last so that any events propagated by pre-filling the form don't @@ -293,28 +287,26 @@ INT_PTR CALLBACK options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) char str[128]; GetDlgItemTextA(hwndDlg,IDC_UN,str,sizeof(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_UN,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_UN,str); /*GetDlgItemTextA(hwndDlg,IDC_PW,str,sizeof(str)); CallService(MS_DB_CRYPT_ENCODESTRING,sizeof(str),reinterpret_cast(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_PASS,str);*/ + db_set_s(0,proto->ModuleName(),TWITTER_KEY_PASS,str);*/ GetDlgItemTextA(hwndDlg,IDC_BASEURL,str,sizeof(str)-1); if(str[strlen(str)-1] != '/') strncat(str,"/",sizeof(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_BASEURL,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_BASEURL,str); - DBWriteContactSettingByte(0,proto->ModuleName(),TWITTER_KEY_CHATFEED, - IsDlgButtonChecked(hwndDlg,IDC_CHATFEED)); + db_set_b(0,proto->ModuleName(),TWITTER_KEY_CHATFEED,IsDlgButtonChecked(hwndDlg,IDC_CHATFEED)); GetDlgItemTextA(hwndDlg,IDC_POLLRATE,str,sizeof(str)); int rate = atoi(str); if(rate == 0) rate = 80; - DBWriteContactSettingDword(0,proto->ModuleName(),TWITTER_KEY_POLLRATE,rate); + db_set_dw(0,proto->ModuleName(),TWITTER_KEY_POLLRATE,rate); - DBWriteContactSettingByte(0,proto->ModuleName(),TWITTER_KEY_TWEET_TO_MSG, - IsDlgButtonChecked(hwndDlg,IDC_TWEET_MSG)); + db_set_b(0,proto->ModuleName(),TWITTER_KEY_TWEET_TO_MSG,IsDlgButtonChecked(hwndDlg,IDC_TWEET_MSG)); proto->UpdateSettings(); return true; @@ -439,10 +431,8 @@ INT_PTR CALLBACK popup_options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM l proto = reinterpret_cast(lParam); - CheckAndUpdateDlgButton(hwndDlg,IDC_SHOWPOPUPS, - db_get_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SHOW,0)); - CheckDlgButton(hwndDlg,IDC_NOSIGNONPOPUPS, - !db_get_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SIGNON,0)); + CheckAndUpdateDlgButton(hwndDlg,IDC_SHOWPOPUPS,db_get_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SHOW,0)); + CheckDlgButton(hwndDlg,IDC_NOSIGNONPOPUPS,!db_get_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SIGNON,0)); // ***** Get color information @@ -474,7 +464,7 @@ INT_PTR CALLBACK popup_options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM l else { char str[32]; - _snprintf(str,sizeof(str),"%d",timeout); + mir_snprintf(str,sizeof(str),"%d",timeout); SetDlgItemTextA(hwndDlg,IDC_TIMEOUT,str); CheckAndUpdateDlgButton(hwndDlg,IDC_TIMEOUT_CUSTOM,true); } @@ -490,8 +480,7 @@ INT_PTR CALLBACK popup_options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM l switch(LOWORD(wParam)) { case IDC_SHOWPOPUPS: - EnableWindow(GetDlgItem(hwndDlg,IDC_NOSIGNONPOPUPS), - IsDlgButtonChecked(hwndDlg,IDC_SHOWPOPUPS)); + EnableWindow(GetDlgItem(hwndDlg,IDC_NOSIGNONPOPUPS),IsDlgButtonChecked(hwndDlg,IDC_SHOWPOPUPS)); break; case IDC_COL_CUSTOM: @@ -529,20 +518,15 @@ INT_PTR CALLBACK popup_options_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM l { proto = reinterpret_cast(GetWindowLongPtr(hwndDlg,GWLP_USERDATA)); - DBWriteContactSettingByte(0,proto->ModuleName(),TWITTER_KEY_POPUP_SHOW, - IsDlgButtonChecked(hwndDlg,IDC_SHOWPOPUPS)); - DBWriteContactSettingByte(0,proto->ModuleName(),TWITTER_KEY_POPUP_SIGNON, - !IsDlgButtonChecked(hwndDlg,IDC_NOSIGNONPOPUPS)); + db_set_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SHOW,IsDlgButtonChecked(hwndDlg,IDC_SHOWPOPUPS)); + db_set_b(0,proto->ModuleName(),TWITTER_KEY_POPUP_SIGNON,!IsDlgButtonChecked(hwndDlg,IDC_NOSIGNONPOPUPS)); // ***** Write color settings - DBWriteContactSettingDword(0,proto->ModuleName(),TWITTER_KEY_POPUP_COLBACK, - get_back_color(hwndDlg,true)); - DBWriteContactSettingDword(0,proto->ModuleName(),TWITTER_KEY_POPUP_COLTEXT, - get_text_color(hwndDlg,true)); + db_set_dw(0,proto->ModuleName(),TWITTER_KEY_POPUP_COLBACK,get_back_color(hwndDlg,true)); + db_set_dw(0,proto->ModuleName(),TWITTER_KEY_POPUP_COLTEXT,get_text_color(hwndDlg,true)); // ***** Write timeout setting - DBWriteContactSettingDword(0,proto->ModuleName(),TWITTER_KEY_POPUP_TIMEOUT, - get_timeout(hwndDlg)); + db_set_dw(0,proto->ModuleName(),TWITTER_KEY_POPUP_TIMEOUT,get_timeout(hwndDlg)); return true; } @@ -573,7 +557,7 @@ INT_PTR CALLBACK pin_proc(HWND hwndDlg,UINT msg,WPARAM wParam,LPARAM lParam) GetDlgItemTextA(hwndDlg,IDC_PIN,str,sizeof(str)); - DBWriteContactSettingString(0,proto->ModuleName(),TWITTER_KEY_OAUTH_PIN,str); + db_set_s(0,proto->ModuleName(),TWITTER_KEY_OAUTH_PIN,str); EndDialog(hwndDlg, wParam); return true; } -- cgit v1.2.3