OSDN Git Service

2012/01/13 15:23:54
authorunknown <qwerty2501@users.sourceforge.jp>
Fri, 13 Jan 2012 06:23:54 +0000 (15:23 +0900)
committerunknown <qwerty2501@users.sourceforge.jp>
Fri, 13 Jan 2012 06:23:54 +0000 (15:23 +0900)
nlite.suo
nlite/nlite_chatData.cpp
nlite/nlite_chatData.h
nlite/nlite_commentview.cpp
nlite/nlite_commentview.h
nlite/nlite_define.h
nlite/nlite_mailframe.h
nlite/stdafx.h

index bc58913..6d2ed66 100644 (file)
Binary files a/nlite.suo and b/nlite.suo differ
index 4a98503..6a86b3b 100644 (file)
@@ -107,12 +107,18 @@ INT_PTR CCommentList::GetCurSel(){
        return functa.findFlag == TRUE ? functa.count - 1 : -1;
 }
 
+CCommentList::iterator CCommentList::GetCurSelItem(){
+       auto rslt = std::find_if(chatList.begin(),chatList.end(),GetCurSelFunc_t());
 
+       return rslt;
+}
 
-VOID CCommentList::SetCurSel(INT_PTR cursel){
 
-       auto chatData = chatList.at(cursel);
-       chatData.selectFlag = TRUE;
+VOID CCommentList::SetCurSel(INT_PTR cursel){
+       if(cursel < 0)return;
+       iterator data = chatList.begin();
+       std::advance(data,cursel);
+       data->selectFlag = TRUE;
 
        return;
 }
@@ -120,7 +126,9 @@ VOID CCommentList::SetCurSel(INT_PTR cursel){
 
 CCommentList::reference CCommentList::GetChatAt(UINT_PTR no){
 
-       return chatList.at(no);
+       iterator data = chatList.begin();
+       std::advance(data,no);
+       return *data;
 }
 
 
@@ -153,11 +161,7 @@ CCommentList::reverse_iterator CCommentList::rbegein(){
 }
 
 
-BOOL CCommentList::Trylock(){
-       
-       
-       return TryEnterCriticalSection(&this->m_sec);
-}
+
                
 CCommentList::reverse_iterator CCommentList::rend(){
 
@@ -165,9 +169,9 @@ CCommentList::reverse_iterator CCommentList::rend(){
 }
 
 VOID CCommentList::OnDestroy(){
-       this->Lock();
+       
        chatList.clear();
-       this->Unlock();
+       
 }
 
 VOID CCommentList::OnConnect(){
@@ -194,6 +198,8 @@ CListenerList::reference CListenerList::Register(LPCTSTR user_id){
 
        iterator rslt = std::find_if(begin,end,listenerPre);
 
+       
+
        if(rslt == end){
 
                ListenerData insertData(user_id);
index ab62062..476b3e7 100644 (file)
@@ -68,14 +68,14 @@ namespace nlite{
        class CListenerList{
 
        private:
-
-               std::deque<ListenerData> m_listenerList;
+               typedef std::list<ListenerData> ListenerList_Internal; 
+               ListenerList_Internal m_listenerList;
 
        public:
 
-               typedef std::deque<ListenerData>::reference reference;
+               typedef ListenerList_Internal::reference reference;
                
-               typedef std::deque<ListenerData>::iterator iterator;
+               typedef ListenerList_Internal::iterator iterator;
 
                ///
                ///\83\86\81[\83U\81[\93o\98^
@@ -120,12 +120,14 @@ namespace nlite{
        ///
        ///\83R\83\81\83\93\83g\83\8a\83X\83g\83N\83\89\83X
        ///
-       class CCommentList: public CComAutoCriticalSection{
+       class CCommentList{
 
        private:
-               typedef std::deque<CChatData> ChatList;
+               typedef std::list<CChatData> ChatList;
                ChatList chatList;
 
+
+       
                //\83G\83\89\81[\83R\81[\83h
        public:
                enum ERRORCORD{
@@ -177,6 +179,11 @@ namespace nlite{
                INT_PTR GetCurSel();
 
                ///
+               ///\91I\91ð\8fó\91Ô\82Ì\83A\83C\83e\83\80\82ð\8eæ\93¾
+               ///
+               iterator GetCurSelItem();
+
+               ///
                ///\8bó\82©\94»\92è
                ///
                BOOL empty();
@@ -201,10 +208,6 @@ namespace nlite{
                ///
                reverse_iterator rend();
 
-               ///
-               ///\83\8d\83b\83N\83g\83\89\83C
-               ///
-               BOOL Trylock();
 
                VOID SetCurSel(INT_PTR cursel);
 
index bc2cf8f..82cc4e1 100644 (file)
@@ -44,8 +44,13 @@ VOID CCommentView::Unlock(){
 
 
 VOID CCommentView::OnConnect(){
+       m_commentListWindow.SetRedraw(FALSE);
        commentlist.OnConnect();
-//     m_commentListWindow.SetRedraw(FALSE);
+       SCROLLINFO vScrollInfo = {0};
+       vScrollInfo.fMask = SIF_ALL;
+       this->SetScrollInfo(SB_VERT,&vScrollInfo);
+       m_commentListWindow.SetRedraw(TRUE);
+       
        
 }
 
@@ -117,23 +122,27 @@ HWND CCommentView::Create(HWND hWndParent){
 
 
 
-LRESULT CCommentView::OnheaderItemChanged(LPNMHDR lParam){
+LRESULT CCommentView::OnHeaderEndTrack(LPNMHDR lParam){
 
        
        if(lParam->hwndFrom == m_header.m_hWnd){
                
                
-               dumpln(TEXT("OnheaderItemChanged\8aJ\8en"));
+               
                SCROLLINFO vScrollInfo = {0};
                vScrollInfo.fMask = SIF_PAGE | SIF_POS | SIF_RANGE;
                this->GetScrollInfo(SB_VERT,&vScrollInfo);
-               vScrollInfo.nPos++;
-               BOOL scrollFlag = vScrollInfo.nPos + (int)vScrollInfo.nPage >= vScrollInfo.nMax;
+               vScrollInfo.nPage = m_commentListWindow.CalcScrolPage();
+               vScrollInfo.fMask = SIF_PAGE;
+               this->SetScrollInfo(SB_VERT,&vScrollInfo);
+               BOOL scrollFlag = vScrollInfo.nPos + (int)vScrollInfo.nPage + 1>= vScrollInfo.nMax;
                UINT_PTR commentCount = commentlist.Size();
-
-               dumpln(TEXT("Invalidate\91O"));
+               LPNMHEADER  lpNmHdr = (LPNMHEADER )lParam;
+               
+               m_header.SetItem(lpNmHdr->iItem,lpNmHdr->pitem);
+               
                m_commentListWindow.Invalidate();
-               dumpln(TEXT("Invalidate\8cã"));
+               
 
                if(scrollFlag == TRUE){
 
@@ -152,19 +161,14 @@ LRESULT CCommentView::OnheaderItemChanged(LPNMHDR lParam){
                INT_PTR nMin = 0;
                this->SetScrollRange(SB_HORZ,nMin,nMax,TRUE);
                DecisionHorzSize();
-               dumpln(TEXT("OnheaderItemChanged\8fI\97¹"));                
+                       
        }
 
        return 0;
 }
 
 VOID CCommentView::OnChatReceve(NicoLiveChat_P chat,UINT_PTR commnetCountSum){
-
-       
-       commentlist.Lock();
        commentlist.OnChatReceve(chat,commnetCountSum);
-       commentlist.Unlock();
-               
        return;
 }
 
@@ -183,23 +187,25 @@ VOID CCommentView::OnChatReceveSettle(UINT_PTR chatNo,UINT_PTR commentCountSum){
 
        vScrollInfo.fMask = SIF_ALL;
        this->GetScrollInfo(SB_VERT,&vScrollInfo);
+       BOOL scrollFlag = vScrollInfo.nPos + (int)vScrollInfo.nPage >= vScrollInfo.nMax;
        
-       if(vScrollInfo.nPos + (int)vScrollInfo.nPage >= vScrollInfo.nMax == TRUE){
-               vScrollInfo.nPos = commentCountSum;     
-       }
 
-       vScrollInfo.fMask = SIF_RANGE | SIF_POS;
+       vScrollInfo.fMask = SIF_RANGE;
        vScrollInfo.nMax = commentCountSum;
-       this->SetScrollInfo(SB_VERT,&vScrollInfo);
-
-       idumpln(TEXT("chatreceve_start:%d"),GetCurrentThreadId());
-       commentlist.Lock();
+       this->SetScrollInfo(SB_VERT,&vScrollInfo,FALSE);
+       
+       
+       
        vScrollInfo.nPage = m_commentListWindow.CalcScrolPage();
-       commentlist.Unlock();
+       
        vScrollInfo.fMask = SIF_PAGE;
-       this->SetScrollInfo(SB_VERT,&vScrollInfo);
+       this->SetScrollInfo(SB_VERT,&vScrollInfo,FALSE);
+
+       if(scrollFlag == TRUE){
+               this->SendMessageW(WM_VSCROLL,MAKEWORD(SB_BOTTOM,0),0);
+       }
        m_commentListWindow.Invalidate();
-       idumpln(TEXT("chatreceve_end:%d"),GetCurrentThreadId());
+       
        return;
 }
 
@@ -212,48 +218,7 @@ static UCHAR getrgb(){
 LRESULT CCommentView::OnListBoxDoubleClick(UINT uNotifyCode, int nID, CWindow wndCtl){
        
 
-       /*
-       if(wndCtl.m_hWnd == m_commentListWindow.m_hWnd){
-
-               //INT_PTR cursel = m_commentListWindow.GetCurSel();
-               INT_PTR cursel = 0;
-               if(cursel == LB_ERR)return 0;
        
-               auto chatData = commentlist.GetChatAt(cursel);
-               COLORREF bkColor;
-               if(chatData.listenerData->originBkFlag == FALSE){
-                       CListenerColorCollector colorCollector;
-                       listenerList.BkColorCollect(colorCollector);
-                       UCHAR red;
-                       UCHAR green;
-                       UCHAR blue;
-               
-                       srand((unsigned int)time(NULL));
-                       do{
-
-                               red = getrgb();
-                               green = getrgb();
-                               blue = getrgb();
-                               bkColor = RGB(red,green,blue);
-
-                       }while(colorCollector.Find(bkColor));
-
-                       chatData.listenerData->originBkFlag = TRUE;
-
-               } else {
-
-                       bkColor = viewproperty.backColor;
-                       chatData.listenerData->originBkFlag = FALSE;
-               }
-
-       
-       
-
-               chatData.listenerData->SetBkColor(bkColor);
-
-               m_commentListWindow.Invalidate(TRUE);
-       }
-       */
        return 0;
 }
 
@@ -262,15 +227,6 @@ LRESULT CCommentView::OnListBoxDoubleClick(UINT uNotifyCode, int nID, CWindow wn
 
 
 
-VOID CCommentView::OnSizing(UINT wParam,LPRECT lParam){
-
-
-       ChangeSize( _WTYPES_NS::CSize(lParam->right - lParam->left,lParam->bottom - lParam->top));
-
-                       
-       return;
-
-}
 
 
 
@@ -411,7 +367,7 @@ VOID CCommentView::OnVScroll(INT_PTR loWParam,SHORT hiWParam,HWND lParam){
        INT_PTR dy;
        SCROLLINFO vScrollInfo = {0};
        vScrollInfo.fMask = SIF_ALL;
-       vScrollCcs.Lock();
+
        this->GetScrollInfo(SB_VERT,&vScrollInfo);
 
        switch(loWParam){
@@ -470,7 +426,6 @@ VOID CCommentView::OnVScroll(INT_PTR loWParam,SHORT hiWParam,HWND lParam){
 
        dy = max(-1 * vScrollInfo.nPos, min(dy, vScrollInfo.nMax - vScrollInfo.nPos));
 
-       idumpln(TEXT("dy:%d"),dy);
 
        if(dy != 0){
 
@@ -478,7 +433,6 @@ VOID CCommentView::OnVScroll(INT_PTR loWParam,SHORT hiWParam,HWND lParam){
                this->SetScrollInfo(SB_VERT,&vScrollInfo);
                m_commentListWindow.Invalidate();
        }
-       vScrollCcs.Unlock();
 
        return;
 }
@@ -545,27 +499,19 @@ VOID CCommentView::DecisionHorzSize(){
 //\83R\83\81\83\93\83g\83r\83\85\81[\83N\83\89\83X\93à\95\94\83\8a\83X\83g\83N\83\89\83X
 ////////////////////////////////////////////////////////////////////
 
-CCommentListWindow::CCommentListWindow(CCommentView &in_self):self(in_self){
-       
-       colLinePen.CreatePen(PS_SOLID,1,ColorList::colLine);
-       outLinePenNomal.CreatePen(PS_SOLID,1,ColorList::outLineNomal);
-       outLinePenSelect.CreatePen(PS_SOLID,1,ColorList::outLineSelect);
-       
+CCommentListWindow::CCommentListWindow(CCommentView &in_self):self(in_self){   
 
 }
 
 CCommentListWindow::~CCommentListWindow(){
 
-       colLinePen.DeleteObject();
-       outLinePenNomal.DeleteObject();
-       outLinePenSelect.DeleteObject();
        
 }
 
 VOID CCommentListWindow::OnPaint(HDC hdc){
 
        
-       dumpln(TEXT("CCommentListWindow::OnPaint\8aJ\8enthread:%d"),GetCurrentThreadId());
+       
        RECT windowRect;
 
        RECT clientRect;
@@ -584,8 +530,7 @@ VOID CCommentListWindow::OnPaint(HDC hdc){
 
        CCommentList &commentList = self.commentlist;
 
-       //\83R\83\81\83\93\83g\83\8a\83X\83g\83\8d\83b\83N
-       commentList.Lock();
+
 
                
        SCROLLINFO vScrollInfo = {0};
@@ -594,8 +539,12 @@ VOID CCommentListWindow::OnPaint(HDC hdc){
        if(commentList.Size() > (UINT_PTR)vScrollInfo.nPos){
 
                CCommentList::iterator chatData = commentList.begin();
-               chatData += vScrollInfo.nPos;
-               m_memoryDC.FillRect(&listRect,self.viewproperty.backColor);
+               
+               std::advance(chatData,vScrollInfo.nPos);
+               CBrush baseBkBrush;
+               baseBkBrush.CreateSolidBrush(self.viewproperty.backColor);
+               m_memoryDC.FillRect(&listRect,baseBkBrush);
+               baseBkBrush.DeleteObject();
                CCommentList::iterator endData = commentList.end();
                listRect.bottom = 0;
                for(;chatData != endData;++chatData){
@@ -611,27 +560,31 @@ VOID CCommentListWindow::OnPaint(HDC hdc){
                
 
        }
-
        //\83R\83\81\83\93\83g\83\8a\83X\83g\83\8d\83b\83N\89ð\8f\9c
-       commentList.Unlock();
+//     commentList.Unlock();
+       
        
        
        PAINTSTRUCT ps;
        HDC selfDC = this->BeginPaint(&ps);
        ::BitBlt(selfDC,0,0,windowRect.right,windowRect.bottom,m_memoryDC,0,0,SRCCOPY);
        this->EndPaint(&ps);
-       dumpln(TEXT("CCommentListWindow::OnPaint\8fI\97¹:%d"),GetCurrentThreadId());
        return;
 }
 
 VOID CCommentListWindow::OnSize(UINT wParam, _WTYPES_NS::CSize &windowSize){
 
        SCROLLINFO vScrollInfo = {0};
-       vScrollInfo.fMask = SIF_PAGE;
-       self.commentlist.Lock();
+       vScrollInfo.fMask = SIF_ALL;
+       self.GetScrollInfo(SB_VERT,&vScrollInfo);
+       BOOL scrollFlag = (UINT)(vScrollInfo.nPage + vScrollInfo.nPos + 1) >= (UINT)vScrollInfo.nMax;
        vScrollInfo.nPage = CalcScrolPage();
-       self.commentlist.Unlock();
+       
        self.SetScrollInfo(SB_VERT,&vScrollInfo);
+       
+       if(scrollFlag == TRUE){
+               self.SendMessageW(WM_VSCROLL,MAKEWORD(SB_BOTTOM,0),0);
+       }
        return;
 }
 
@@ -658,14 +611,12 @@ UINT_PTR CCommentListWindow::CalcScrolPage(){
        }
        
        vScrollInfo.fMask = SIF_ALL;
-       
+       self.GetScrollInfo(SB_VERT,&vScrollInfo);
        rslt = vScrollInfo.nMax + 1;
 
-
        
 overclientrect:
 
-       self.commentlist.Unlock();
        return rslt;
 }
 
@@ -687,49 +638,60 @@ VOID CCommentListWindow::DrawItem(CDC &dc,RECT &rc,CChatData &chatData){
        _tcsftime(dateString,ARRAY_LENGTH(dateString),ct.tm_hour != 0 ? TEXT("%H:%M:%S") : TEXT("%M:%S"),&ct);
 
        COLORREF bkColor;
+
+       CPen outLinePen;
+       CPen colLinePen;
+       colLinePen.CreatePen(PS_SOLID,1,ColorList::colLine);
+       
        
        //\91I\91ð\8fó\91Ô\82©\83`\83F\83b\83N
        if (chatData.selectFlag == TRUE)
        {
                bkColor = ColorList::selectBack;
-               dc.SelectPen(outLinePenSelect);
-               dc.SetBkColor(ColorList::selectBack);
+               outLinePen.CreatePen(PS_SOLID,1,ColorList::outLineSelect);
        }
        else  
        {
-               dc.SelectPen(outLinePenNomal);
                
+               outLinePen.CreatePen(PS_SOLID,1,ColorList::outLineNomal);
 
                if(chatData.listenerData->originBkFlag == TRUE){
                        
                        bkColor = chatData.listenerData->bkColor;
-                       
-                       dc.SetBkColor(chatData.listenerData->bkColor);
 
                } else {
+                       
                        bkColor = self.viewproperty.backColor;
-                       dc.SetBkColor(self.viewproperty.backColor);
+                       
                        
                        
                }
        }
-               
+
+       dc.SelectPen(outLinePen);
+       dc.SetBkColor(bkColor);
+       //\83e\83L\83X\83g\82Ì\83J\83\89\81[\82ð\90Ý\92è        
        dc.SetTextColor(self.viewproperty.baseStringColor);
-       //\83e\83L\83X\83g\82Ì\83J\83\89\81[\82ð\90Ý\92è
-       dc.FillRect(&rc,bkColor);
+       
+       CBrush bkBrush;
+       bkBrush.CreateSolidBrush(bkColor);
+       dc.FillRect(&rc,bkBrush);
+       bkBrush.DeleteObject();
 
        //\95`\89æ\83T\83C\83Y\82ð\8cv\8eZ
-
+       
        self.m_header.GetItemRect(CCommentView::NO,&noViewRect);
        self.m_header.GetItemRect(CCommentView::USERNAME,&userNameViewRect);
        self.m_header.GetItemRect(CCommentView::COMMENT,&chatViewRect);
        self.m_header.GetItemRect(CCommentView::TIME,&timeViewRect);
        self.m_header.GetItemRect(CCommentView::INFO,&infoViewRect);
 
-       dc.MoveTo(rc.left,rc.top,NULL);
-       dc.LineTo(rc.right,rc.top);
-       dc.MoveTo(rc.left,rc.bottom,NULL);
-       dc.LineTo(rc.right,rc.bottom);
+       UINT_PTR upline = rc.top;
+       UINT_PTR bottomline = rc.bottom -1;
+       dc.MoveTo(rc.left,upline,NULL);
+       dc.LineTo(rc.right,upline);
+       dc.MoveTo(rc.left,bottomline,NULL);
+       dc.LineTo(rc.right,bottomline);
        
        noViewRect.left += 2;
        userNameViewRect.left += 2;
@@ -808,14 +770,88 @@ LRESULT CCommentListWindow::OnCreate(LPCREATESTRUCT lpCreateStruct){
        return 0;
 }
 
+INT_PTR CCommentListWindow::CalcClickLine(INT_PTR height){
+       SCROLLINFO vScrollInfo = {0};
+       vScrollInfo.fMask = SIF_POS;
+       self.GetScrollInfo(SB_VERT,&vScrollInfo);
+       INT_PTR heightSum = 0;
+       INT_PTR lineNo = vScrollInfo.nPos;
+       CCommentList::iterator chatData = self.commentlist.begin();
+       CCommentList::iterator end = self.commentlist.end();    
+       std::advance(chatData,vScrollInfo.nPos);
+       for(; chatData != end;++chatData){
+               
+               heightSum += CalcItemHeight(*chatData);
+
+               if(heightSum >= height){
+
+                       goto end;
+               }
+
+               ++lineNo;
+       }
+       lineNo = -1;
+end:
+
+
+       return lineNo;
+}
+
 VOID CCommentListWindow::OnLButtonDown(UINT wParam, _WTYPES_NS::CPoint &point){
 
+       auto curselItem = self.commentlist.GetCurSelItem();
+       if(curselItem != self.commentlist.end()){
+               curselItem->selectFlag = FALSE;
+       }
+       self.commentlist.SetCurSel(CalcClickLine(point.y));
+
+       this->Invalidate();
        return;
 }
 
 
 VOID CCommentListWindow::OnLButtonDbClk(UINT wParam, _WTYPES_NS::CPoint &point){
 
+       
+
+       
+       
+       auto chatData = self.commentlist.GetChatAt(CalcClickLine(point.y));
+       COLORREF bkColor;
+       if(chatData.listenerData->originBkFlag == FALSE){
+               CListenerColorCollector colorCollector;
+               listenerList.BkColorCollect(colorCollector);
+               UCHAR red;
+               UCHAR green;
+               UCHAR blue;
+               
+               srand((unsigned int)time(NULL));
+               do{
+
+                       red = getrgb();
+                       green = getrgb();
+                       blue = getrgb();
+                       bkColor = RGB(red,green,blue);
+
+               }while(colorCollector.Find(bkColor));
+
+               chatData.listenerData->originBkFlag = TRUE;
+
+       } else {
+
+               bkColor = self.viewproperty.backColor;
+               chatData.listenerData->originBkFlag = FALSE;
+       }
+
+       
+       
+
+       chatData.listenerData->SetBkColor(bkColor);
+
+       this->Invalidate(TRUE);
+       
+       
+
        return;
 }
 
index e7dff11..2f4d249 100644 (file)
@@ -27,10 +27,7 @@ namespace nlite{
                CCommentView &self;
                CBitmap m_bitmap;
                CDC m_memoryDC;
-               CPen outLinePenNomal;
-               CPen outLinePenSelect;
-               CPen colLinePen;
-
+               
        
                struct ColorList{
                        enum type{
@@ -90,8 +87,12 @@ namespace nlite{
                ///
                ///\8ds\82Ì\8d\82\82³\82ð\96â\82¢\8d\87\82í\82¹
                ///
-               UINT_PTR CCommentListWindow::CalcItemHeight(CChatData &chatData);
+               UINT_PTR CalcItemHeight(CChatData &chatData);
 
+               ///
+               ///\83N\83\8a\83b\83N\82µ\82½\8ds\82ð\8cv\8eZ
+               ///
+               INT_PTR CalcClickLine(INT_PTR height);
 
                //\83\81\83b\83Z\81[\83W\83n\83\93\83h\83\89
        private:
@@ -153,14 +154,11 @@ namespace nlite{
                CHeaderCtrl m_header;
                CCommentListWindow  m_commentListWindow;
                CComAutoCriticalSection ccs;
-               CComAutoCriticalSection vScrollCcs;
                CStreamStatus streamStatus;
                CCommentList commentlist;
                CommentViewProperty viewproperty;
                
                HFONT hHeaderFontNew;
-//             SCROLLINFO hScrollInfo;
-//             CSubCommentListBox m_subListBox;
 
 
                
@@ -201,13 +199,12 @@ namespace nlite{
                BEGIN_MSG_MAP(CCommentView)
                        MSG_WM_CREATE(OnCreate)
                        MSG_WM_DESTROY(OnDestroy)                       
-                       MSG_WM_SIZING(OnSizing)
                        MSG_WM_SIZE(OnSize)
                        MSG_WM_HSCROLL(OnHScroll)
                        MSG_WM_VSCROLL(OnVScroll)
                        MSG_WM_ERASEBKGND(OnEraseBkgnd)
                        COMMAND_CODE_HANDLER_EX(LBN_DBLCLK,OnListBoxDoubleClick)
-                       NOTIFY_CODE_HANDLER_EX(HDN_ITEMCHANGED  ,OnheaderItemChanged)
+                       NOTIFY_CODE_HANDLER_EX(HDN_ENDTRACK   ,OnHeaderEndTrack)
                        NOTIFY_CODE_HANDLER_EX(HDN_ENDDRAG ,OnHeaderEndDrag)
                END_MSG_MAP()
 
@@ -240,7 +237,7 @@ namespace nlite{
                ///\83j\83R\90\82Ì\83X\83e\81[\83^\83X\90Ý\92è
                ///
                VOID SetStreamStatus(StreamStatus &st);
-               
+
                ///
                ///\83`\83\83\83b\83g\83R\83\81\83\93\83g\8eó\90M\8e\9e\82Ì\8f\88\97\9d
                ///
@@ -286,10 +283,7 @@ namespace nlite{
                //\83E\83B\83\93\83h\83E\83\81\83b\83Z\81[\83W\83n\83\93\83h\83\89
        private:
 
-               ///
-               ///\83T\83C\83Y\95Ï\8dX\92\86\8f\88\97\9d
-               ///
-               VOID OnSizing(UINT wParam,LPRECT lParam);
+               
 
                ///
                ///\83T\83C\83Y\95Ï\8dX\8cã\8f\88\97\9d
@@ -311,7 +305,7 @@ namespace nlite{
                ///
                ///\83w\83b\83_\83A\83C\83e\83\80\95Ï\8dX\8e\9e\8f\88\97\9d
                ///
-               LRESULT OnheaderItemChanged(LPNMHDR lParam);
+               LRESULT OnHeaderEndTrack(LPNMHDR lParam);
 
 
                ///
index d58616d..acb52a6 100644 (file)
@@ -19,9 +19,10 @@ namespace nlite{
        ///
        ///\92è\90\94
        ///
-#define IDC_COMBO_REBAR 301
-#define IDC_COMBO_TITLE 302
-       
+       enum{
+               IDC_COMBO_REBAR = 301,
+               IDC_COMBO_TITLE = 302
+       };
 
        
 
index 49c815b..4ddbd4a 100644 (file)
@@ -169,7 +169,6 @@ namespace nlite{
                BEGIN_MSG_MAP_EX(CNliteMainFrame)
                        MSG_WM_CREATE(OnCreate)
                        MSG_WM_DESTROY(OnDestroy)
-                       MESSAGE_HANDLER(WM_SIZING,OnSizing)
                        MESSAGE_HANDLER(WM_SIZE,OnSize)
                        MESSAGE_HANDLER_EX(WM_ERASEBKGND,OnErasekgnd);
                        COMMAND_ID_HANDLER_EX(IDM_EXIT, OnMenuExit)
@@ -180,23 +179,7 @@ namespace nlite{
                        CHAIN_MSG_MAP(CFrameWindowImpl<CNliteMainFrame>)
                END_MSG_MAP()
 
-               //\83T\83C\83Y\95Ï\8dX\92\86
-               LRESULT OnSizing(UINT uMsg,WPARAM wParam,LPARAM lParam,BOOL& bHandled){
-
-                       ((LPRECT)lParam)->right = ((LPRECT)lParam)->right - ((LPRECT)lParam)->left < lowestFrameSize.cx ? lowestFrameSize.cx + ((LPRECT)lParam)->left : ((LPRECT)lParam)->right;
-                       ((LPRECT)lParam)->bottom = ((LPRECT)lParam)->bottom - ((LPRECT)lParam)->top < lowestFrameSize.cy ? lowestFrameSize.cy + ((LPRECT)lParam)->top : ((LPRECT)lParam)->bottom;
-                       RECT client;
-                       GetClientRect(&client);
-
-                       ChangeSize( _WTYPES_NS::CSize(client.right - client.left,client.bottom - client.top));
-                       
-                       
-
-                       bHandled = FALSE;
-                       
-                       return 0;
-
-               }
+               
 
                //\83`\83\89\83c\83L\82ð\82È\82­\82·
                LRESULT OnErasekgnd(UINT uMsg,WPARAM wParam,LPARAM lParam){
index 6a69ef2..206e928 100644 (file)
@@ -39,6 +39,7 @@
 #include <algorithm>
 #include <set>
 #include <map>
+#include <list>
 
 
 // TODO: \83v\83\8d\83O\83\89\83\80\82É\95K\97v\82È\92Ç\89Á\83w\83b\83_\81[\82ð\82±\82±\82Å\8eQ\8fÆ\82µ\82Ä\82­\82¾\82³\82¢\81B