From 860f8b87b4ca77a0c517a35247e7b35a5da1199e Mon Sep 17 00:00:00 2001 From: qwerty2501 Date: Fri, 10 Feb 2012 00:05:45 +0900 Subject: [PATCH] =?utf8?q?=E8=83=8C=E6=99=AF=E3=83=95=E3=83=A9=E3=82=B0?= =?utf8?q?=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- nlite.suo | Bin 164352 -> 164352 bytes nlite/nlite_chatData.cpp | 37 +++++++++++++++++++++---------------- nlite/nlite_chatData.h | 15 ++++++++++----- nlite/nlite_commentview.cpp | 14 +++++++------- nlite/nlite_property.cpp | 18 ++++++++++++------ nlite/nlite_property.h | 5 +++-- 6 files changed, 53 insertions(+), 36 deletions(-) diff --git a/nlite.suo b/nlite.suo index 6fbcf6edcd3a2cb9f74bb039b7a9cb7f5f7f3bf6..9250c4edf5f289cbf1c489884ac01ac157dbb654 100644 GIT binary patch delta 5385 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 akRbwk@P^SW_u`G*9-%hftsNd=g#Q6N4FpvH delta 5277 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 = _ttol(chat_in.anonymity); @@ -73,7 +74,9 @@ VOID CChatData::SetChat(NicoLiveChat &chat_in){ this->name = chat_in.name; - this->listenerData = &listenerList.Register(chat_in.user_id); + + + this->listenerData = &listenerList.Register(listener); this->vpos = _ttol(chat_in.vpos); @@ -145,10 +148,14 @@ INT_PTR CCommentList::GetCurSelNo(){ } -CCommentList::iterator CCommentList::OnChatReceve(NicoLiveChat_P chatData_in, UINT_PTR commnetCountSum,CCommentListWindow &listWindow){ +CCommentList::iterator CCommentList::OnChatReceve(NicoLiveChat_P chatData_in,LPCTSTR communityID, UINT_PTR commnetCountSum,CCommentListWindow &listWindow){ CChatData chatData; - chatData.SetChat(*chatData_in); + ListenerData listenerData; + listenerData.user_id = chatData_in->user_id; + listenerData.time = time(NULL); + listenerData.community = communityID; + chatData.SetChat(*chatData_in,listenerData); iterator rslt; if(empty() == TRUE || back().date <= chatData.date){ chatList.push_back(chatData); @@ -282,9 +289,9 @@ VOID CListenerList::BkColorCollect(CListenerColorCollector &target){ std::for_each(m_listenerList.begin(), end,target); } -CListenerList::reference CListenerList::Register(LPCTSTR user_id){ +CListenerList::reference CListenerList::Register(ListenerData &listener){ - ListenerPre listenerPre(user_id); + ListenerPre listenerPre(listener); iterator begin = m_listenerList.begin(); iterator end = m_listenerList.end(); @@ -295,10 +302,8 @@ CListenerList::reference CListenerList::Register(LPCTSTR user_id){ if(rslt == end){ - ListenerData insertData; - insertData.user_id = user_id; - insertData.time = time(NULL); - m_listenerList.push_back(insertData); + + m_listenerList.push_back(listener); return m_listenerList.back(); diff --git a/nlite/nlite_chatData.h b/nlite/nlite_chatData.h index 2a17af5..a05a2ca 100644 --- a/nlite/nlite_chatData.h +++ b/nlite/nlite_chatData.h @@ -27,8 +27,13 @@ namespace nlite{ CNLiteString community; //“o˜^‚µ‚½ƒRƒ~ƒ…ƒjƒeƒB COLORREF bgcolor; //”wŒiF time_t time; //“o˜^ŽžŠÔ - BOOL originBkFlag; //”wŒiFÝ’èƒtƒ‰ƒO +// BOOL originBkFlag; //”wŒiFÝ’èƒtƒ‰ƒO public: + + enum { + INIT_COLOR = -1 + + }; /// ///ƒRƒ“ƒXƒgƒ‰ƒNƒ^ @@ -65,7 +70,7 @@ namespace nlite{ //ƒtƒ@ƒ“ƒNƒVƒ‡ƒiƒ‹ void operator()(ListenerData &target){ - if(target.originBkFlag == TRUE){ + if(target.bgcolor != ListenerData::INIT_COLOR){ colorlist.push_back(target.bgcolor); } @@ -96,7 +101,7 @@ namespace nlite{ /// ///ƒ†[ƒU[“o˜^ /// - reference Register(LPCTSTR user_id); + reference Register(ListenerData &listener); /// ///”wŒiF‚ðŽûW‚·‚é @@ -146,7 +151,7 @@ namespace nlite{ /// ///nlib‚̃`ƒƒƒbƒgƒf[ƒ^‚ðƒZƒbƒg /// - VOID SetChat(NicoLiveChat &chat_in); + VOID SetChat(NicoLiveChat &chat_in,ListenerData &listener); }; @@ -259,7 +264,7 @@ namespace nlite{ ///ƒŠƒXƒg‚ª‹ó‚©AŽóM‚µ‚½ƒ`ƒƒƒbƒgƒf[ƒ^‚Ìdate‚Ì’l‚ªƒŠƒXƒgÅŒã”öˆÈã‚Ì‚à‚Ì‚¾‚Á‚½ê‡ÅŒã”ö‚É‘}“ü‚³‚ê‚é ///‚»‚¤‚Å‚È‚©‚Á‚½ê‡‚̓ŠƒXƒg‚̍ŏ‰‚©‚çˆø”‚É“n‚³‚ꂽƒ`ƒƒƒbƒgƒf[ƒ^‚Ìdate‚æ‚è‘å‚«‚¢date‚ðŽ‚Âƒf[ƒ^‚ð’T‚µA‚»‚̃f[ƒ^‚Ì’¼‘O‚É‘}“ü‚·‚é /// - iterator OnChatReceve(NicoLiveChat_P chatData, UINT_PTR count,CCommentListWindow &listWindow); + iterator OnChatReceve(NicoLiveChat_P chatData,LPCTSTR communityID, UINT_PTR count,CCommentListWindow &listWindow); /// ///Žw’肵‚½”ԍ†‚̃Rƒƒ“ƒgŽQÆ‚ðŽæ“¾ diff --git a/nlite/nlite_commentview.cpp b/nlite/nlite_commentview.cpp index 2785a8a..120fa6a 100644 --- a/nlite/nlite_commentview.cpp +++ b/nlite/nlite_commentview.cpp @@ -173,7 +173,7 @@ namespace nlite{ bkColor = comment.viewData.backColor; - }else if(comment.listenerData->originBkFlag == TRUE){ + }else if(comment.listenerData->bgcolor != ListenerData::INIT_COLOR){ bkColor = comment.listenerData->bgcolor; @@ -513,7 +513,7 @@ namespace nlite{ VOID CCommentView::OnChatReceve(NicoLiveChat_P chat,UINT_PTR commnetCountSum){ - commentlist.OnChatReceve(chat,commnetCountSum,this->m_commentListWindow); + commentlist.OnChatReceve(chat,stream.GetDefaultCommunity(),commnetCountSum,this->m_commentListWindow); return; } @@ -1208,13 +1208,13 @@ overclientrect: - if(chatData.viewData.backColor != CChatData::ViewData::INIT_COLOR || chatData.listenerData->originBkFlag == TRUE){ + if(chatData.viewData.backColor != CChatData::ViewData::INIT_COLOR || chatData.listenerData->bgcolor != ListenerData::INIT_COLOR){ if(chatData.viewData.backColor != CChatData::ViewData::INIT_COLOR){ bkColor = chatData.viewData.backColor; originBkBrush.CreateSolidBrush(chatData.viewData.backColor); - }else if(chatData.listenerData->originBkFlag == TRUE){ + }else if(chatData.listenerData->bgcolor != ListenerData::INIT_COLOR){ bkColor = chatData.listenerData->bgcolor; originBkBrush.CreateSolidBrush(chatData.listenerData->bgcolor); @@ -1457,7 +1457,7 @@ end: COLORREF bkColor; - if(lineIte->listenerData->originBkFlag == FALSE){ + if(lineIte->listenerData->bgcolor == ListenerData::INIT_COLOR){ CListenerColorCollector colorCollector; listenerList.BkColorCollect(colorCollector); UCHAR red; @@ -1474,12 +1474,12 @@ end: }while(colorCollector.Find(bkColor)); - lineIte->listenerData->originBkFlag = TRUE; + lineIte->listenerData->SetBkColor(bkColor); } else { - lineIte->listenerData->originBkFlag = FALSE; + lineIte->listenerData->bgcolor = ListenerData::INIT_COLOR; } } diff --git a/nlite/nlite_property.cpp b/nlite/nlite_property.cpp index 9bf41c6..aefe704 100644 --- a/nlite/nlite_property.cpp +++ b/nlite/nlite_property.cpp @@ -184,17 +184,23 @@ namespace nlite{ ::GetPrivateProfileString(sectionName,keyName,TEXT(""),propertyBuf,ARRAY_LENGTH(propertyBuf),iniFile); if((_tcslen(propertyBuf) == 0) || !((PathFileExists(propertyBuf) && !::PathIsDirectory( propertyBuf )))){ - propertyPath = appLocalPath; - propertyPath += TEXT("\\qwerty_nico\\nlite\\property.xml"); - - ::WritePrivateProfileString(sectionName,keyName,propertyPath,iniFile); + + propertyFolderPath = appLocalPath; + propertyFolderPath += TEXT("\\qwerty_nico\\nlite"); + + ::WritePrivateProfileString(sectionName,keyName,propertyFolderPath,iniFile); } else { - propertyPath = propertyBuf; + propertyFolderPath = propertyBuf; } + propertyPath = propertyFolderPath; + propertyPath += TEXT("\\property.xml"); + userSettingPath = propertyFolderPath; + userSettingPath += TEXT("\\user_setting.xml"); + SurelyCreate(propertyFolderPath,FALSE); SurelyCreate(propertyPath,TRUE); - + SurelyCreate(userSettingPath,TRUE); return; } diff --git a/nlite/nlite_property.h b/nlite/nlite_property.h index 048d462..f2ee46c 100644 --- a/nlite/nlite_property.h +++ b/nlite/nlite_property.h @@ -126,8 +126,9 @@ namespace nlite{ GeneralProperty gp; //‹¤—LƒvƒƒpƒeƒB CommentReadProperty crp; //ƒRƒƒ“ƒg“ǂݏグƒvƒƒpƒeƒB CNLiteString appLocalPath; //ƒ[ƒJƒ‹ƒtƒHƒ‹ƒ_ƒpƒX - CNLiteString propertyPath; //ƒvƒƒpƒeƒB”z’uƒtƒHƒ‹ƒ_ƒpƒX - + CNLiteString propertyFolderPath; //ƒvƒƒpƒeƒB”z’uƒtƒHƒ‹ƒ_ + CNLiteString propertyPath; //ƒvƒƒpƒeƒBƒtƒ@ƒCƒ‹ƒpƒX + CNLiteString userSettingPath; //ƒŠƒXƒi[î•ñÝ’èƒtƒ@ƒCƒ‹ƒpƒX Property(); ~Property(); -- 2.11.0