#include "stdafx.h"
#include "nlite_include.h"
-
+using namespace std::tr1;
namespace nlite{
return;
}
+VOID ListenerData::SetUserName(LPCTSTR name){
+
+ this->name = name;
+ this->writePropertyFlag = TRUE;
+
+}
+
CChatData::ViewData::ViewData():
sellLineColor(INIT_COLOR),
this->listenerData = &listenerList.Register(listener,FALSE);
-
+ tstring target(chat_in.chatBuf);
+
+ match_results<tstring::iterator> results;
+ if(regex_match(target.begin(),target.end(),results,nliteregex::NAMESERTCHREGEX) == TRUE){
+
+ const tstring &name = results.str(results.size() - 1).c_str();
+
+ if(nliteProperty.gp.numberNameFlag == TRUE || _tcstol(name.c_str(),NULL,10) == 0){
+ this->listenerData->SetUserName(name.c_str());
+ }
+
+ }
this->vpos = _ttol(chat_in.vpos);
this->thread = _ttol(chat_in.thread);
///\83\8a\83X\83i\81[\83f\81[\83^
///
struct ListenerData{
+ private:
public:
CNLiteString user_id; //\83\86\81[\83U\81[ID
///
VOID SetBkColor(COLORREF bkColor_in);
+ ///
+ ///\83\86\81[\83U\96¼\90Ý\92è
+ ///
+ VOID SetUserName(LPCTSTR name);
};
//
BOOL rslt = FALSE;
try{
- tstring viewString(regex_replace(tstring(chat.chatBuf),nliteregex::TAGSTRING,nliteregex::NUTHINGSTRING));
+ tstring viewString(regex_replace(tstring(chat.chatBuf),nliteregex::TAGSTRING,nliteregex::text::NUTHINGSTRING));
rslt = __super::SetWindowText(viewString.c_str());
CHARFORMAT2 defaultFormat;
const CString VIDEOID_TEXT = TEXT("(sm|nm)([0-9])+");
const CString LIVEID_TEXT = TEXT("(lv)([0-9])+");
const CString LINK_TEXT = TEXT("(") + URL_TEXT + TEXT(")|(") + VIDEOID_TEXT + TEXT(")|(") + LIVEID_TEXT + TEXT(")");
+ const CString SEARTCH_AT_MARK(TEXT("(.*)(@|\81\97)([^@^\81\97]+)"));
+ const tstring NUTHINGSTRING(TEXT(""));
}
const tregex URL(text::URL_TEXT);
const tregex TAGSTRING(text::TAG_TEXT);
const tregex VIDEOID(text::VIDEOID_TEXT);
const tregex LIVEID(text::LIVEID_TEXT);
const tregex LILNKREGEX(text::LINK_TEXT);
- const tstring NUTHINGSTRING(TEXT(""));
+ const tregex NAMESERTCHREGEX(text::SEARTCH_AT_MARK);
}
Property nliteProperty;
CListenerList nlite::listenerList;
extern const CString VIDEOID_TEXT;
extern const CString LIVEID_TEXT;
extern const CString LINK_TEXT;
+ extern const CString SEARTCH_AT_MARK;
+ extern const tstring NUTHINGSTRING;
}
extern const tregex URL;
extern const tregex TAGSTRING;
extern const tregex VIDEOID;
extern const tregex LIVEID;
extern const tregex LILNKREGEX;
- extern const tstring NUTHINGSTRING;
+ extern const tregex NAMESERTCHREGEX;
}
}
\ No newline at end of file
COLORREF normalSellLineColor; //\92Ê\8fí\8e\9e\82Ì\98g\90ü
COLORREF baseStringColor; //\8aî\92ê\82Ì\95¶\8e\9a\90F
COLORREF ownerStringColor; //\89^\89c\95¶\8e\9a\90F
- COLORREF linkStringColor; //\8aî\92ê\82Ì\83n\83C\83p\81[\83\8a\83\93\83N\82Ì\90F
+ COLORREF linkStringColor; //\8aî\92ê\82Ì\83n\83C\83p\81[\83\8a\83\93\83N\82Ì\90F
COLORREF anonymousIDLinkColor; //\93½\96¼ID\95\\8e¦\90F
COLORREF colLineColor; //\8d\80\96Ú\82Ì\8fc\90ü
srand((unsigned int)time(NULL));
for(int indexfirst = 0; indexfirst < STARTRECEVECOUNT;indexfirst++){
- liveChat.chatBuf = commentcount % 2 == 0 ? TEXT("http://live.nicovideo.jp/watch/lv79715214?alert=1 2545 http://live.nicovideo.jp/watch/lv79715214?alert=1") : TEXT("test");
+ liveChat.chatBuf = commentcount % 2 == 0 ? TEXT("http://live.nicovideo.jp/watch/lv79715214?alert=1 2545 http://live.nicovideo.jp/watch/lv79715214?alert=1") : TEXT("test @\83e\83X\83g\83\86\81[\83U1");
_stprintf((LPTSTR)liveChat.user_id,user_id_format,rand() % 15);
commentcount++;
_stprintf((LPTSTR)liveChat.no,TEXT("%u"),commentcount);
for(index2 = 0;index2 < ONERECEVECHATCOUNT;index2++){
- liveChat.chatBuf = commentcount % 2 == 0 ? TEXT("http://live.nicovideo.jp/watch/lv79715214?alert=1 254 http://live.nicovideo.jp/") : TEXT("<font color=FF0000>sm552447 sm1543514 lv25447 </font >");
+ liveChat.chatBuf = commentcount % 2 == 0 ? TEXT("http://live.nicovideo.jp/watch/lv79715214?alert=1 254 http://live.nicovideo.jp/") : TEXT("<font color=FF0000>sm552447 sm1543514 lv25447 </font >@3333");
_stprintf((LPTSTR)liveChat.user_id,TEXT("%s"),TEXT("0NsZs9X9GFLJaE9Ru3QuV2StCIM"));
commentcount++;
_stprintf((LPTSTR)liveChat.no,TEXT("%u"),commentcount);