return;
}
+static VOID agreeEnterKeyThread(LPVOID userData){
+
+ Sleep(1000);
+ ((CSubChatEdit*)userData)->AgreeEnter();
+
+ return;
+}
VOID CCommentWriteWindow::SendChat(){
CCommentMaker commentMaker;
commentMaker.AddMail(ANONYMOUS_MAILCOMMAND);
}
- nicoLiveStream.SendChat(commentMaker);
+ if(nicoLiveStream.SendChat(commentMaker) != NLIB_ERR_OK){
+
+ commentSubEdit.AgreeEnter();
+ } else {
+
+ _beginthread(agreeEnterKeyThread,0,&commentSubEdit);
+
+ }
+
+
return;
}
vScrollInfo.cbSize = sizeof(vScrollInfo);
vScrollInfo.fMask = SIF_RANGE;
- this->SetScrollInfo(SB_VERT,&vScrollInfo,TRUE);
+
+ this->SetScrollPos(SB_VERT,0,FALSE);
- viewStartHeight = 0;
m_commentListWindow.SetRedraw(TRUE);
- vScrollInfo.fMask = SIF_RANGE | SIF_PAGE;
- vScrollInfo.cbSize = sizeof(vScrollInfo);
+ vScrollInfo.fMask = SIF_RANGE;
+ vScrollInfo.cbSize = sizeof(vScrollInfo,FALSE);
+
vScrollInfo.nMax = commentCountSum;
+ this->SetScrollInfo(SB_VERT,&vScrollInfo,FALSE);
+ vScrollInfo.fMask = SIF_PAGE;
vScrollInfo.nPage = m_commentListWindow.CalcScrollPage();
if(scrollFlag == TRUE){
this->SendMessageW(WM_VSCROLL,MAKEWORD(SB_BOTTOM,0),0);
}
- if(vScrollInfo.nPos + vScrollInfo.nPage >= vScrollInfo.nMax - vScrollInfo.nPage && TryEnterCriticalSection(&m_commentListWindow.m_sec) == TRUE){
+
+
+ if(vScrollInfo.nPos + static_cast<INT_PTR>(vScrollInfo.nPage) >= vScrollInfo.nMax - static_cast<INT_PTR>(vScrollInfo.nPage)&& TryEnterCriticalSection(&m_commentListWindow.m_sec) == TRUE){
m_commentListWindow.Invalidate();
m_commentListWindow.Unlock();
}
+ this->SetScrollInfo(SB_VERT,NULL);
+
return;
}
}
- dy = max(-1 * vScrollInfo.nPos, min(dy, vScrollInfo.nMax - (vScrollInfo.nPos + (INT_PTR)vScrollInfo.nPage)));
+ //dy = max(-1 * vScrollInfo.nPos, min(dy, vScrollInfo.nMax - (vScrollInfo.nMax + (INT_PTR)vScrollInfo.nPos)));
if(dy != 0){
vScrollInfo.nPos += dy;
- viewStartHeight = vScrollInfo.nPos;
- this->SetScrollInfo(SB_VERT,&vScrollInfo);
+// viewStartHeight = vScrollInfo.nPos;
+ this->SetScrollPos(SB_VERT,vScrollInfo.nPos);
+ //this->SetScrollInfo(SB_VERT,&vScrollInfo);
+ this->UpdateWindow();
if(TryEnterCriticalSection(&m_commentListWindow.m_sec) == TRUE){
m_commentListWindow.Invalidate();
m_commentListWindow.Unlock();
BOOL selectFlag = FALSE;
CCommentList::iterator selectData;
RECT selectRect = {0};
+ UINT_PTR viewStartHeight = self.GetScrollPos(SB_VERT);
+
- if(commentList.Size() > (UINT_PTR)self.viewStartHeight){
+ if(commentList.Size() > (UINT_PTR)viewStartHeight){
CCommentList::iterator chatData = commentList.begin();
- std::advance(chatData,self.viewStartHeight);
+ std::advance(chatData,viewStartHeight);
for(;rbegin != rend;++rbegin){
height += CalcItemHeight(*rbegin);
-
- if(height > clientRect.bottom)goto overclientrect;
rslt++;
+ if(height > clientRect.bottom)goto overclientrect;
+
}
}
NicoLiveStream_P self = (NicoLiveStream_P)userdata;
DWORD rslt;
do{
- rslt = WaitForSingleObject(self->endEvent,500);
+ rslt = WaitForSingleObject(self->endEvent,3000);
if(rslt != WAIT_TIMEOUT){
break;
_endthread();
}
+VOID NicoLiveStrream_setResFrom(NicoLiveStream_P self,INT_PTR res){
+
+ return;
+}
+
unsigned int WINAPI commentthread(VOID *usadata){
NicoLiveStream_P self = (NicoLiveStream_P)usadata;
DWORD rslt;
srand((unsigned int)time(NULL));
- for(int indexfirst = 0; indexfirst < 1000;indexfirst++){
+ for(int indexfirst = 0; indexfirst < 0;indexfirst++){
liveChat.chatBuf = commentcount % 2 == 0 ? TEXT("testcomment\82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 \82 ") : TEXT("test");
_stprintf((LPTSTR)liveChat.user_id,user_id_format,rand() % 15);
commentcount++;