Changeset 274


Ignore:
Timestamp:
08/27/07 18:22:11 (13 years ago)
Author:
Eoin
Message:

File listing early test.

Files:
2 added
14 edited

Legend:

Unmodified
Added
Removed
  • Halite.pnproj

    r264 r274  
    1 <Project name="Halite"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="res" path="res\"><File path="About.rtf"></File><File path="afxres.h"></File><File path="Halite.aps"></File><File path="Halite.ico"></File><File path="Halite.rc"></File><File path="Manifest.xml"></File><File path="resource.h"></File><File path="toolbar.bmp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="src" path="src\"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="advtabs" path="advtabs\"><File path="Debug.cpp"></File><File path="Debug.hpp"></File><File path="Peers.cpp"></File><File path="Peers.hpp"></File><File path="ThemeTestDialog.hpp"></File><File path="Torrent.cpp"></File><File path="Torrent.hpp"></File><File path="Tracker.cpp"></File><File path="Tracker.hpp"></File><File path="TrackerAddDialog.hpp"></File><File path="TrackerListView.cpp"></File><File path="TrackerListView.hpp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="global" path="global\"><File path="InheritEnum.hpp"></File><File path="ini.cpp"></File><File path="ini.hpp"></File><File path="ini_adapter.cpp"></File><File path="ini_adapter.hpp"></File><File path="logger.cpp"></File><File path="logger.hpp"></File><File path="string_conv.cpp"></File><File path="string_conv.hpp"></File><File path="tinyxml.cpp"></File><File path="tinyxml.hpp"></File><File path="tinyxmlerror.cpp"></File><File path="tinyxmlparser.cpp"></File><File path="unicode.hpp"></File><File path="utf8.hpp"></File><File path="wtl_app.cpp"></File><File path="wtl_app.hpp"></File></MagicFolder><File path="AdvHaliteDialog.cpp"></File><File path="AdvHaliteDialog.hpp"></File><File path="ConfigOptions.cpp"></File><File path="ConfigOptions.hpp"></File><File path="CSSFileDialog.hpp"></File><File path="DdxEx.hpp"></File><File path="DebugDialog.hpp"></File><File path="DropFileTarget.h"></File><File path="halConfig.cpp"></File><File path="halConfig.hpp"></File><File path="halEvent.cpp"></File><File path="halEvent.hpp"></File><File path="Halite.cpp"></File><File path="Halite.hpp"></File><File path="HaliteDialog.cpp"></File><File path="HaliteDialog.hpp"></File><File path="HaliteDialogBase.hpp"></File><File path="HaliteEditCtrl.hpp"></File><File path="HaliteIni.hpp"></File><File path="HaliteListManager.hpp"></File><File path="HaliteListView.cpp"></File><File path="HaliteListView.hpp"></File><File path="HaliteListViewCtrl.hpp"></File><File path="HaliteSortListViewCtrl.hpp"></File><File path="HaliteTabCtrl.hpp"></File><File path="HaliteTabPage.hpp"></File><File path="HaliteWindow.cpp"></File><File path="HaliteWindow.hpp"></File><File path="halTorrent.cpp"></File><File path="halTorrent.hpp"></File><File path="halTorrentInternal.hpp"></File><File path="halXmlRpc.cpp"></File><File path="halXmlRpc.hpp"></File><File path="NTray.cpp"></File><File path="NTray.hpp"></File><File path="ProgressDialog.hpp"></File><File path="SimpleHtml.h"></File><File path="SplashDialog.hpp"></File><File path="SSFileDialog.hpp"></File><File path="stdAfx.cpp"></File><File path="stdAfx.hpp"></File><File path="UxthemeWrapper.cpp"></File><File path="UxthemeWrapper.hpp"></File><File path="WinAPIMutex.hpp"></File><File path="WinAPIWaitableTimer.hpp"></File></MagicFolder><File path="Jamfile.v2"></File></Project> 
     1<Project name="Halite"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="res" path="res\"><File path="About.rtf"></File><File path="afxres.h"></File><File path="Halite.aps"></File><File path="Halite.ico"></File><File path="Halite.rc"></File><File path="Manifest.xml"></File><File path="resource.h"></File><File path="toolbar.bmp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="src" path="src\"><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="advtabs" path="advtabs\"><File path="Debug.cpp"></File><File path="Debug.hpp"></File><File path="Files.cpp"></File><File path="Files.hpp"></File><File path="Peers.cpp"></File><File path="Peers.hpp"></File><File path="ThemeTestDialog.hpp"></File><File path="Torrent.cpp"></File><File path="Torrent.hpp"></File><File path="Tracker.cpp"></File><File path="Tracker.hpp"></File><File path="TrackerAddDialog.hpp"></File><File path="TrackerListView.cpp"></File><File path="TrackerListView.hpp"></File></MagicFolder><MagicFolder excludeFolders="CVS;.svn" filter="*.*" name="global" path="global\"><File path="InheritEnum.hpp"></File><File path="ini.cpp"></File><File path="ini.hpp"></File><File path="ini_adapter.cpp"></File><File path="ini_adapter.hpp"></File><File path="logger.cpp"></File><File path="logger.hpp"></File><File path="string_conv.cpp"></File><File path="string_conv.hpp"></File><File path="tinyxml.cpp"></File><File path="tinyxml.hpp"></File><File path="tinyxmlerror.cpp"></File><File path="tinyxmlparser.cpp"></File><File path="unicode.hpp"></File><File path="utf8.hpp"></File><File path="wtl_app.cpp"></File><File path="wtl_app.hpp"></File></MagicFolder><File path="AdvHaliteDialog.cpp"></File><File path="AdvHaliteDialog.hpp"></File><File path="ConfigOptions.cpp"></File><File path="ConfigOptions.hpp"></File><File path="CSSFileDialog.hpp"></File><File path="DdxEx.hpp"></File><File path="DebugDialog.hpp"></File><File path="DropFileTarget.h"></File><File path="halConfig.cpp"></File><File path="halConfig.hpp"></File><File path="halEvent.cpp"></File><File path="halEvent.hpp"></File><File path="Halite.cpp"></File><File path="Halite.hpp"></File><File path="HaliteDialog.cpp"></File><File path="HaliteDialog.hpp"></File><File path="HaliteDialogBase.hpp"></File><File path="HaliteEditCtrl.hpp"></File><File path="HaliteIni.hpp"></File><File path="HaliteListManager.hpp"></File><File path="HaliteListView.cpp"></File><File path="HaliteListView.hpp"></File><File path="HaliteListViewCtrl.hpp"></File><File path="HaliteSortListViewCtrl.hpp"></File><File path="HaliteTabCtrl.hpp"></File><File path="HaliteTabPage.hpp"></File><File path="HaliteWindow.cpp"></File><File path="HaliteWindow.hpp"></File><File path="halTorrent.cpp"></File><File path="halTorrent.hpp"></File><File path="halTorrentInternal.hpp"></File><File path="halXmlRpc.cpp"></File><File path="halXmlRpc.hpp"></File><File path="NTray.cpp"></File><File path="NTray.hpp"></File><File path="ProgressDialog.hpp"></File><File path="SimpleHtml.h"></File><File path="SplashDialog.hpp"></File><File path="SSFileDialog.hpp"></File><File path="stdAfx.cpp"></File><File path="stdAfx.hpp"></File><File path="UxthemeWrapper.cpp"></File><File path="UxthemeWrapper.hpp"></File><File path="WinAPIMutex.hpp"></File><File path="WinAPIWaitableTimer.hpp"></File></MagicFolder><File path="Jamfile.v2"></File></Project> 
  • Jamfile.v2

    r268 r274  
    3131        advtabs/Torrent.cpp 
    3232        advtabs/Peers.cpp 
     33        advtabs/Files.cpp 
    3334        advtabs/Tracker.cpp 
    3435        advtabs/TrackerListView.cpp 
  • res/Halite.rc

    r272 r274  
    218218    EDITTEXT        IDC_BC_SAVEFOLDER,118,119,170,12,ES_AUTOHSCROLL 
    219219    PUSHBUTTON      "...",IDC_BC_SAVEBROWSE,293,118,18,13 
    220     AUTOCHECKBOX    "Prompt for alternate save folder.",IDC_BC_PROMPTSAVE | WS_TABSTOP,118,133,195,11 
     220    AUTOCHECKBOX    "Prompt for alternate save folder.",IDC_BC_PROMPTSAVE,118,133,195,11 
    221221END 
    222222 
     
    360360END 
    361361 
     362IDD_ADVFILES DIALOGEX 0, 0, 305, 81 
     363STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD 
     364FONT 8, "MS Shell Dlg", 400, 0, 0x1 
     365BEGIN 
     366    LTEXT           "",IDC_CONTAINER,4,7,297,70,0,WS_EX_DLGMODALFRAME 
     367END 
     368 
    362369IDR_TRAY_MENU MENU 
    363370BEGIN 
     
    449456    HAL_DOWNLOADT_SUMMARY         "Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
    450457    HAL_PAYLOAD_SUMMARY           "Total transfer including protocol overhead; %1$.2fMB down and %2$.2fMB up." 
    451         HAL_NAME_STATUS                           "Name: %1%, %2%." 
     458        HAL_NAME_STATUS                           "%1%, %2%." 
    452459    HAL_TRANSFERED                                "%1$.2fMB down - %2$.2fMB up" 
    453460    HAL_REMAINING                                 "%1$.2fMB of %2$.2fMB" 
     
    472479        HAL_TORRENT_TAB                           "Torrent" 
    473480        HAL_PEERS_TAB                             "Peers" 
     481        HAL_FILES_TAB                             "Files" 
    474482        HAL_TRACKER_TAB                           "Tracker" 
    475483        HAL_DEBUG_TAB                             "Logging" 
     
    527535        HAL_DIALOGPEER_LISTVIEW_ADV       "Peer;Country;Download;Upload;Type;Client;Status" 
    528536        HAL_DIALOGPEER_LISTVIEW_ADV_DEFAULTS      "95;64;64;50;100;500" 
     537        HAL_DIALOGFILE_LISTVIEW_ADV     "Path;Filename;Size;Progress;Priority" 
    529538END 
    530539 
  • res/resource.h

    r270 r274  
    286286#define IDC_PEERS                                               40127 
    287287//#define IDC_TRANSFERED                                        40128 
    288 //#define IDC_REMAINING                                 40129 
    289 //#define IDC_RATE                                              40130 
     288#define IDD_ADVFILES                                    40129 
     289#define IDC_CONTAINER                                   40130 
     290#define HAL_FILES_TAB                               40131 
     291#define HAL_DIALOGFILE_LISTVIEW_ADV             40132 
     292 
  • sln/Halite/Halite.vcproj

    r262 r274  
    4444                                Name="VCCLCompilerTool" 
    4545                                Optimization="0" 
    46                                 AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\include\libtorrent&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     46                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    4747                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;_DEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS" 
    4848                                MinimalRebuild="true" 
     
    123123                                Name="VCCLCompilerTool" 
    124124                                Optimization="0" 
    125                                 AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\include\libtorrent&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     125                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    126126                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;_DEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS" 
    127127                                MinimalRebuild="true" 
     
    201201                        <Tool 
    202202                                Name="VCCLCompilerTool" 
    203                                 AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\include\libtorrent&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     203                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    204204                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS" 
    205205                                ExceptionHandling="2" 
     
    281281                                Name="VCCLCompilerTool" 
    282282                                WholeProgramOptimization="false" 
    283                                 AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\include\libtorrent&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     283                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    284284                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS" 
    285285                                ExceptionHandling="2" 
     
    400400                                </File> 
    401401                                <File 
     402                                        RelativePath="..\..\src\advtabs\Files.cpp" 
     403                                        > 
     404                                </File> 
     405                                <File 
    402406                                        RelativePath="..\..\src\advtabs\Peers.cpp" 
    403407                                        > 
     
    586590                                </File> 
    587591                                <File 
     592                                        RelativePath="..\..\src\advtabs\Files.hpp" 
     593                                        > 
     594                                </File> 
     595                                <File 
    588596                                        RelativePath="..\..\src\advtabs\Peers.hpp" 
    589597                                        > 
  • sln/libtorrent/libtorrent.vcproj

    r262 r274  
    4444                                Name="VCCLCompilerTool" 
    4545                                Optimization="0" 
    46                                 AdditionalIncludeDirectories="&quot;$(ProjectDir)..\..\lib\libtorrent\include&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\include\libtorrent&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     46                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    4747                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;_DEBUG;WIN32 ;_WIN32;_WINDOWS;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
    4848                                MinimalRebuild="true" 
     
    109109                                Name="VCCLCompilerTool" 
    110110                                Optimization="0" 
    111                                 AdditionalIncludeDirectories="&quot;$(ProjectDir)..\..\lib\libtorrent\include&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\include\libtorrent&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     111                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    112112                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;_DEBUG;WIN32 ;_WIN32;_WINDOWS;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
    113113                                MinimalRebuild="true" 
     
    174174                        <Tool 
    175175                                Name="VCCLCompilerTool" 
    176                                 AdditionalIncludeDirectories="&quot;$(ProjectDir)..\..\lib\libtorrent\include&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\include\libtorrent&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     176                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    177177                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
    178178                                ExceptionHandling="2" 
     
    237237                        <Tool 
    238238                                Name="VCCLCompilerTool" 
    239                                 AdditionalIncludeDirectories="&quot;$(ProjectDir)..\..\lib\libtorrent\include&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\include\libtorrent&quot;;&quot;$(ProjectDir)..\..\lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
     239                                AdditionalIncludeDirectories="&quot;$(SolutionDir)lib\libtorrent\include&quot;;&quot;$(SolutionDir)lib\libtorrent\zlib&quot;;&quot;$(SolutionDir)lib\Asio\include\&quot;;&quot;$(SolutionDir)lib\openssl\inc&quot;" 
    240240                                PreprocessorDefinitions="WIN32_LEAN_AND_MEAN;_WIN32_WINNT=0x0500;__USE_W32_SOCKETS;WIN32 ;_WIN32;_WINDOWS;NDEBUG;TORRENT_USE_BOOST_DATE_TIME;TORRENT_USE_OPENSSL;_SCL_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE" 
    241241                                ExceptionHandling="2" 
     
    287287                        <File 
    288288                                RelativePath="..\..\lib\libtorrent\src\alert.cpp" 
    289                                 > 
    290                         </File> 
    291                         <File 
    292                                 RelativePath="..\..\lib\libtorrent\src\allocate_resources.cpp" 
    293289                                > 
    294290                        </File> 
  • src/AdvHaliteDialog.cpp

    r268 r274  
    3131        m_peers.Create(m_tabCtrl); 
    3232        m_tabCtrl.AddPage(m_peers, hal::app().res_wstr(HAL_PEERS_TAB).c_str()); 
     33         
     34        m_files.Create(m_tabCtrl); 
     35        m_tabCtrl.AddPage(m_files, hal::app().res_wstr(HAL_FILES_TAB).c_str()); 
    3336         
    3437        m_tracker.Create(m_tabCtrl); 
  • src/AdvHaliteDialog.hpp

    r268 r274  
    1616#include "advtabs/Tracker.hpp" 
    1717#include "advtabs/Debug.hpp" 
     18#include "advtabs/Files.hpp" 
    1819 
    1920#include "HaliteListManager.hpp" 
     
    4344                m_torrent(halWindow), 
    4445                m_peers(halWindow), 
     46                m_files(halWindow), 
    4547                m_tracker(halWindow), 
    4648                m_debug(halWindow) 
     
    8486        AdvTorrentDialog m_torrent; 
    8587        AdvPeerDialog m_peers; 
     88        AdvFilesDialog m_files; 
    8689        AdvTrackerDialog m_tracker; 
    8790        AdvDebugDialog m_debug; 
  • src/ConfigOptions.hpp

    r272 r274  
    408408        { 
    409409                hal::bittorrent().clearIpFilter(); 
    410  
    411                 CFolderDialog fldDlg (NULL, hal::app().res_wstr(HAL_FOLDER_SELECT).c_str(), 
    412                         BIF_RETURNONLYFSDIRS|BIF_NEWDIALOGSTYLE ); 
     410                 
     411                wstring folderSelect = hal::app().res_wstr(HAL_FOLDER_SELECT); 
     412 
     413                CFolderDialog fldDlg (NULL, folderSelect.c_str(), 
     414                        BIF_RETURNONLYFSDIRS|BIF_NEWDIALOGSTYLE); 
    413415 
    414416                if (IDOK == fldDlg.DoModal()) 
  • src/HaliteIni.hpp

    r268 r274  
    6262        std::string name_;       
    6363}; 
    64  
  • src/HaliteSortListViewCtrl.hpp

    r268 r274  
    632632        bool autoSort() { return autoSort_; } 
    633633         
     634        void ConditionallyDoAutoSort() 
     635        { 
     636                int iCol = GetSortColumn(); 
     637                if (autoSort() && iCol >= 0 && iCol < m_arrColSortType.GetSize()) 
     638                        DoSortItems(iCol, IsSortDescending());   
     639        } 
     640         
    634641protected:       
    635642        inline void* CustomItemConversion(LVCompareParam* param, int iSortCol) 
     
    665672                }                
    666673                return NULL; 
    667         } 
    668          
    669         void ConditionallyDoAutoSort() 
    670         { 
    671                 int iCol = GetSortColumn(); 
    672                 if (autoSort() && iCol >= 0 && iCol < m_arrColSortType.GetSize()) 
    673                         DoSortItems(iCol, IsSortDescending());   
    674674        } 
    675675         
  • src/halTorrent.cpp

    r268 r274  
    252252         
    253253        return peerDetails_; 
     254} 
     255 
     256const FileDetails& TorrentDetail::fileDetails() const 
     257{ 
     258        if (!fileDetailsFilled_) 
     259        { 
     260                bittorrent().getAllFileDetails(hal::to_utf8(filename_), fileDetails_); 
     261                fileDetailsFilled_ = true; 
     262        } 
     263         
     264        return fileDetails_; 
    254265} 
    255266 
     
    12091220} 
    12101221 
     1222void BitTorrent::getAllFileDetails(string filename, FileDetails& fileDetails) 
     1223{ 
     1224        try { 
     1225         
     1226        TorrentMap::iterator i = pimpl->torrents.find(filename); 
     1227         
     1228        if (i != pimpl->torrents.end()) 
     1229                (*i).second.getFileDetails(fileDetails); 
     1230         
     1231        } HAL_GENERIC_TORRENT_EXCEPTION_CATCH(filename, "getAllFileDetails") 
     1232} 
     1233 
    12111234bool BitTorrent::isTorrent(string filename) 
    12121235{        
     
    12921315} 
    12931316 
    1294 std::pair<std::wstring, std::wstring>  BitTorrent::getTorrentLogin(std::string filename) 
     1317std::pair<std::wstring, std::wstring> BitTorrent::getTorrentLogin(std::string filename) 
    12951318{ 
    12961319        try { 
  • src/halTorrent.hpp

    r268 r274  
    6969typedef shared_ptr<PeerDetail> PeerDetail_ptr; 
    7070typedef std::vector<PeerDetail> PeerDetails; 
     71 
     72struct FileDetail 
     73{ 
     74        FileDetail(boost::filesystem::wpath p, size_t s=0, float pg=0, int pr=1) : 
     75                path(p), 
     76                size(s), 
     77                progress(pg), 
     78                priority(pr) 
     79        {} 
     80         
     81        bool operator==(const FileDetail& file) const 
     82        { 
     83                return (path == file.path); 
     84        } 
     85         
     86        bool operator<(const FileDetail& file) const 
     87        { 
     88                return (path < file.path); 
     89        } 
     90         
     91        boost::filesystem::wpath path; 
     92        size_t size; 
     93        float progress; 
     94        int priority; 
     95}; 
     96 
     97typedef std::vector<FileDetail> FileDetails; 
    7198 
    7299class TorrentDetail  
     
    95122                estimatedTimeLeft_(eta), 
    96123                updateTrackerIn_(uIn), 
    97                 peerDetailsFilled_(false) 
     124                peerDetailsFilled_(false), 
     125                fileDetailsFilled_(false) 
    98126        {} 
    99127 
    100128        TorrentDetail() :        
    101                 peerDetailsFilled_(false) 
     129                peerDetailsFilled_(false), 
     130                fileDetailsFilled_(false) 
    102131        {};      
    103132         
     
    135164         
    136165        const PeerDetails& peerDetails() const; 
     166        const FileDetails& fileDetails() const; 
    137167         
    138168public: 
     
    165195        mutable bool peerDetailsFilled_; 
    166196        mutable PeerDetails peerDetails_; 
     197         
     198        mutable bool fileDetailsFilled_; 
     199        mutable FileDetails fileDetails_; 
    167200}; 
    168201 
     
    303336         
    304337        void getAllPeerDetails(std::string filename, PeerDetails& peerContainer); 
     338        void getAllFileDetails(std::string filename, FileDetails& fileDetails); 
    305339         
    306340        void resumeAll(); 
  • src/halTorrentInternal.hpp

    r268 r274  
    336336                        }        
    337337        } 
    338          
     338 
     339        void getFileDetails(FileDetails& fileDetails) const 
     340        { 
     341                if (in_session_) 
     342                { 
     343                        lbt::torrent_info info = handle_.get_torrent_info(); 
     344                        std::vector<lbt::file_entry> files; 
     345                         
     346                        std::copy(info.begin_files(), info.end_files(),  
     347                                std::back_inserter(files)); 
     348                         
     349                        std::vector<float> fileProgress;                         
     350                        handle_.file_progress(fileProgress); 
     351                         
     352                        for(size_t i=0, e=files.size(); i<e; ++i) 
     353                        { 
     354                                wstring fullPath = hal::from_utf8(files[i].path.string()); 
     355                                 
     356                                fileDetails.push_back(FileDetail(fullPath, files[i].size, fileProgress[i])); 
     357                        } 
     358                } 
     359        } 
     360 
    339361private: 
    340362        static libtorrent::session* the_session_; 
     
    351373        std::wstring filename_; 
    352374        std::wstring save_directory_; 
    353         libtorrent::torrent_handle handle_;      
     375        mutable libtorrent::torrent_handle handle_;      
    354376         
    355377        libtorrent::entry metadata_; 
     
    370392        std::vector<lbt::announce_entry> torrent_trackers_; 
    371393        mutable std::vector<lbt::peer_info> peers_; 
     394         
    372395}; 
    373396 
Note: See TracChangeset for help on using the changeset viewer.