Changeset 684


Ignore:
Timestamp:
01/15/09 20:27:28 (11 years ago)
Author:
Eoin
Message:

Ctrl + Click on LVHeader sets secondary listview sorting parameter.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sln/Halite/Halite.vcproj

    r681 r684  
    1818        </Platforms> 
    1919        <ToolFiles> 
    20  
    2120        </ToolFiles> 
    2221        <Configurations> 
     
    3332                        <Tool 
    3433                                Name="VCCustomBuildTool" 
    35                         /> 
    36                         <Tool 
    37                                 Name="Concurrent Collections Translator" 
    3834                        /> 
    3935                        <Tool 
     
    119115                        /> 
    120116                        <Tool 
    121                                 Name="Concurrent Collections Translator" 
    122                         /> 
    123                         <Tool 
    124117                                Name="VCXMLDataGeneratorTool" 
    125118                        /> 
     
    204197                        /> 
    205198                        <Tool 
    206                                 Name="Concurrent Collections Translator" 
    207                         /> 
    208                         <Tool 
    209199                                Name="VCXMLDataGeneratorTool" 
    210200                        /> 
     
    289279                        /> 
    290280                        <Tool 
    291                                 Name="Concurrent Collections Translator" 
    292                         /> 
    293                         <Tool 
    294281                                Name="VCXMLDataGeneratorTool" 
    295282                        /> 
     
    374361                        <Tool 
    375362                                Name="VCCustomBuildTool" 
    376                         /> 
    377                         <Tool 
    378                                 Name="Concurrent Collections Translator" 
    379363                        /> 
    380364                        <Tool 
     
    463447                        /> 
    464448                        <Tool 
    465                                 Name="Concurrent Collections Translator" 
    466                         /> 
    467                         <Tool 
    468449                                Name="VCXMLDataGeneratorTool" 
    469450                        /> 
     
    12511232                        </File> 
    12521233                        <File 
    1253                                 RelativePath="..\..\src\HaliteListViewCtrl.hpp" 
    1254                                 > 
    1255                         </File> 
    1256                         <File 
    12571234                                RelativePath="..\..\src\HaliteListViewDlg.hpp" 
    12581235                                > 
  • trunk/src/WTLx/ListViewSortMixin.hpp

    r658 r684  
    1717class ListViewSortMixin : public WTL::CSortListViewImpl<T> 
    1818{ 
     19protected: 
     20        ListViewSortMixin() : 
     21                iSecondarySort(-1), 
     22                bSecondaryDescending(false) 
     23        {} 
    1924 
    20 protected: 
    2125        BEGIN_MSG_MAP(ListViewSortMixin) 
    2226                MESSAGE_HANDLER(LVM_INSERTCOLUMN, WTL::CSortListViewImpl<T>::OnInsertColumn) 
     
    5862                if(p->iButton == 0) 
    5963                { 
    60                         int iOld = m_iSortColumn; 
    61                         bool bDescending = (m_iSortColumn == p->iItem) ? !m_bSortDescending : false; 
     64                        if (GetKeyState(VK_LCONTROL) || GetKeyState(VK_RCONTROL)) 
     65                        { 
     66                                bSecondaryDescending = (iSecondarySort == p->iItem) ? !bSecondaryDescending : false; 
     67                                iSecondarySort = p->iItem; 
     68                        } 
     69                        else 
     70                        { 
     71                                int iOld = m_iSortColumn; 
     72                                bool bDescending = (m_iSortColumn == p->iItem) ? !m_bSortDescending : false; 
    6273 
    63                         if (DoSortItems(p->iItem, bDescending)) 
    64                                 NotifyParentSortChanged(p->iItem, iOld); 
     74                                if (DoSortItems(p->iItem, bDescending)) 
     75                                        NotifyParentSortChanged(p->iItem, iOld); 
     76                        } 
    6577                } 
     78 
    6679                bHandled = FALSE; 
    6780                return 0; 
     
    111124                return bRet; 
    112125        } 
     126 
     127        const int GetSecondarySortColumn() { return iSecondarySort; } 
     128        const bool IsSecondarySortDescending() { return bSecondaryDescending; } 
     129 
     130private: 
     131        int iSecondarySort; 
     132        bool bSecondaryDescending; 
    113133}; 
    114134 
Note: See TracChangeset for help on using the changeset viewer.