Changeset 386


Ignore:
Timestamp:
02/27/08 17:36:05 (12 years ago)
Author:
Eoin
Message:

New Torrent Dialog switched over to PropertySheets?.

Location:
trunk
Files:
23 edited

Legend:

Unmodified
Added
Removed
  • trunk/7z Halite Source.bat

    r384 r386  
    1 "C:\Program Files\7-Zip\7zG.exe" a -r -t7z Halite.src.7z -mx=7 ../trunk/* -x!test -x!bin -x!.svn -x!tools -x!*.7z -x!*.suo -x!*.ncb -x!*x64 -x!debug -x!Debug -x!release -x!Release 
     1"D:\Program Files\7-Zip\7zG.exe" a -r -t7z Halite.src.7z -mx=7 ../trunk/* -x!test -x!bin -x!.svn -x!tools -x!*.7z -x!*.suo -x!*.ncb -x!*x64 -x!debug -x!Debug -x!release -x!Release 
  • trunk/Halite.iss

    r376 r386  
    22 
    33#define MyAppName "Halite" 
    4 #define MyAppVerName "Halite 0.3.0.2" 
     4#define MyAppVerName "Halite 0.3.0.4" 
    55#define MyAppPublisher "BinaryNotions.com" 
    66#define MyAppURL "http://www.binarynotions.com/halite.php" 
     
    1919AllowNoIcons=yes 
    2020LicenseFile=LICENSE_1_0.txt 
    21 OutputBaseFilename=Halite.0_3_0_2.setup 
     21OutputBaseFilename=Halite.0_3_0_4_dev386a.setup 
    2222Compression=lzma 
    2323SolidCompression=true 
     
    4848Source: lang\bin\x86\Spanish.dll; DestDir: {app}; Check: not Is64BitInstallMode; Flags: ignoreversion 32bit 
    4949Source: lang\bin\x86\Turkish.dll; DestDir: {app}; Check: not Is64BitInstallMode; Flags: ignoreversion 32bit 
     50Source: lang\bin\x86\Japanese.dll; DestDir: {app}; Check: not Is64BitInstallMode; Flags: ignoreversion 32bit 
     51Source: lang\bin\x86\Portuguese.dll; DestDir: {app}; Check: not Is64BitInstallMode; Flags: ignoreversion 32bit 
    5052 
    5153Source: x64\release\Halite.exe; DestDir: {app}; Check: Is64BitInstallMode; Flags: ignoreversion 64bit 
     
    6163Source: lang\bin\x64\Spanish.dll; DestDir: {app}; Check: Is64BitInstallMode; Flags: ignoreversion 64bit 
    6264Source: lang\bin\x64\Turkish.dll; DestDir: {app}; Check: Is64BitInstallMode; Flags: ignoreversion 64bit 
     65Source: lang\bin\x64\Japanese.dll; DestDir: {app}; Check: Is64BitInstallMode; Flags: ignoreversion 64bit 
     66Source: lang\bin\x64\Portuguese.dll; DestDir: {app}; Check: Is64BitInstallMode; Flags: ignoreversion 64bit 
    6367 
    6468Source: Readme.txt; DestDir: {app}; Flags: ignoreversion isreadme 
  • trunk/lang/Build.bat

    r385 r386  
    1 convert.bat Halite Dutch German Italian Slovenian Spanish Turkish Norwegian Polish Russian French Japanese Template 
     1convert.bat Halite Dutch German Italian Slovenian Spanish Turkish Norwegian Polish Russian French Japanese Portuguese 
  • trunk/lang/Italian.txt

    r385 r386  
    9494"Create new torrent" ---> "Crea nuovo torrent" 
    9595"Save" ---> "Salva" 
    96 "Select a file or directory to construct the torrent." ---> "Seleziona un file o una directory da aggiungere al file torrent." 
     96"Select a file or directory from which to construct the torrent." --->  ???  
     97"File" --->  ???  
     98"Dir." --->  ???  
     99"SysListView32" --->  ???  
    97100"Enter the tracker URLs for the torrent." ---> "Inserisci gli indirizzi dei tracker per il torrent." 
    98101"Private" --->  ???  
    99102"Add" ---> "Aggiungi" 
    100 "Comment." --->  ???  
     103"Comment" --->  ???  
    101104"Creator" --->  ???  
    102105"Halite shutting down..." ---> "Halite in chiusura...." 
     
    106109"Reannounce" ---> "Riannuncia" 
    107110"Remove" ---> "Rimuovi" 
    108 "SysListView32" --->  ???  
    109111"Name:" ---> "Nome" 
    110112"Tracker:" --->  ???  
  • trunk/lang/Norwegian.txt

    r385 r386  
    9595"Create new torrent" ---> "Lag en ny torrent" 
    9696"Save" ---> "Lagre" 
    97 "Select a file or directory to construct the torrent." ---> "Velg en fil eller mappe for Ã¥ lage torrenten." 
     97"Select a file or directory from which to construct the torrent." --->  ???  
     98"File" --->  ???  
     99"Dir." --->  ???  
     100"SysListView32" --->  ???  
    98101"Enter the tracker URLs for the torrent." ---> "Legg til tracker URL'er for torrenten." 
    99102"Private" --->  ???  
    100103"Add" ---> "Legg til" 
    101 "Comment." --->  ???  
     104"Comment" --->  ???  
    102105"Creator" --->  ???  
    103106"Halite shutting down..." ---> "Halite lukkes..." 
     
    107110"Reannounce" ---> "Oppdater Tracker" 
    108111"Remove" ---> "Fjern" 
    109 "SysListView32" --->  ???  
    110112"Name:" ---> "Navn:" 
    111113"Tracker:" --->  ???  
  • trunk/lang/Slovenian.txt

    r385 r386  
    9494"Create new torrent" ---> "Ustvari nov torrent" 
    9595"Save" ---> "Shrani" 
    96 "Select a file or directory to construct the torrent." ---> "Izberi datoteko ali mapo za ustvarjanje torrent datoteke" 
     96"Select a file or directory from which to construct the torrent." --->  ???  
     97"File" --->  ???  
     98"Dir." --->  ???  
     99"SysListView32" ---> "SysListView32" 
    97100"Enter the tracker URLs for the torrent." ---> "VpiÅ¡i sledilnikov (announce) URL." 
    98101"Private" --->  ???  
    99102"Add" ---> "Dodaj" 
    100 "Comment." --->  ???  
     103"Comment" --->  ???  
    101104"Creator" --->  ???  
    102105"Halite shutting down..." ---> "Halite se izklaplja..." 
     
    106109"Reannounce" ---> "Posodobi sledilnik" 
    107110"Remove" ---> "Odstrani" 
    108 "SysListView32" ---> "SysListView32" 
    109111"Name:" ---> "Ime:" 
    110112"Tracker:" ---> "Tracker" 
  • trunk/lang/Spanish.txt

    r385 r386  
    9494"Create new torrent" ---> "Crear nuevo torrent" 
    9595"Save" ---> "Guardar" 
    96 "Select a file or directory to construct the torrent." ---> "Elige un archivo o directorio para construir el torrent." 
     96"Select a file or directory from which to construct the torrent." --->  ???  
     97"File" --->  ???  
     98"Dir." --->  ???  
     99"SysListView32" --->  ???  
    97100"Enter the tracker URLs for the torrent." ---> "Introduce las URLs de los trackers del torrent." 
    98101"Private" --->  ???  
    99102"Add" ---> "Añadir" 
    100 "Comment." --->  ???  
     103"Comment" --->  ???  
    101104"Creator" --->  ???  
    102105"Halite shutting down..." ---> "Halite se está cerrando..." 
     
    106109"Reannounce" ---> "Reanunciar" 
    107110"Remove" ---> "Borrar" 
    108 "SysListView32" --->  ???  
    109111"Name:" ---> "Nombre:" 
    110112"Tracker:" ---> "Tracker:" 
  • trunk/lang/Turkish.txt

    r385 r386  
    9494"Create new torrent" ---> "Yeni torrent oluştur" 
    9595"Save" ---> "Kaydet" 
    96 "Select a file or directory to construct the torrent." ---> "Torrent oluşturmak için bir dizin ya da dosya seçin." 
     96"Select a file or directory from which to construct the torrent." --->  ???  
     97"File" --->  ???  
     98"Dir." --->  ???  
     99"SysListView32" ---> "SysListView32" 
    97100"Enter the tracker URLs for the torrent." ---> "Torrent için izleyici URL'lerini girin" 
    98101"Private" --->  ???  
    99102"Add" ---> "Ekle" 
    100 "Comment." --->  ???  
     103"Comment" --->  ???  
    101104"Creator" --->  ???  
    102105"Halite shutting down..." ---> "Halite kapatılıyor..." 
     
    106109"Reannounce" ---> "Tekrar Duyur" 
    107110"Remove" ---> "Kaldır" 
    108 "SysListView32" ---> "SysListView32" 
    109111"Name:" ---> "Ä°sim" 
    110112"Tracker:" ---> "Ä°zleyici" 
  • trunk/res/Halite.rc

    r385 r386  
    233233 
    234234IDD_NEWTORRENT DIALOGEX 0,0,229,132 
    235 STYLE WS_THICKFRAME | DS_SETFONT | DS_FIXEDSYS | WS_BORDER | WS_CAPTION | WS_POPUP 
    236 EXSTYLE WS_EX_WINDOWEDGE | WS_EX_TOPMOST 
    237 CAPTION "Create new torrent" 
    238 FONT 8,"MS Shell Dlg",400,0,1 
    239 BEGIN 
    240     PUSHBUTTON      "Save",IDOK,130,114,45,14,BS_DEFPUSHBUTTON 
    241     PUSHBUTTON      "Cancel",IDCANCEL,180,114,45,14 
    242     LTEXT           "Select a file or directory from which to construct the torrent.",IDC_NEWTORRENT_SELECT_TEXT,4,4,221,11 
     235STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILDWINDOW | WS_CLIPCHILDREN 
     236CAPTION "Files" 
     237FONT 8,"MS Shell Dlg",400,0,1 
     238BEGIN 
     239//    PUSHBUTTON      "Save",IDOK,130,114,45,14,BS_DEFPUSHBUTTON 
     240//    PUSHBUTTON      "Cancel",IDCANCEL,180,114,45,14 
     241    LTEXT           "Select a file or directory from which to construct the torrent.",IDC_NEWTORRENT_SELECT_TEXT,4,4,221,11,SS_WORDELLIPSIS|SS_CENTERIMAGE 
    243242    EDITTEXT        IDC_NEWT_FILE,4,15,203,12,ES_AUTOHSCROLL 
    244243    PUSHBUTTON      "File",IDC_NEWT_FILE_BROWSE,212,14,25,13 
    245244    PUSHBUTTON      "Dir.",IDC_NEWT_DIR_BROWSE,212,14,25,13 
     245    LISTBOX         IDC_NEWT_LISTTRACKERS,4,57,221,52,WS_TABSTOP|WS_VSCROLL|LBS_NOINTEGRALHEIGHT|LBS_SORT|NOT WS_VISIBLE 
     246    CONTROL         "",IDC_NEWT_LISTFILES,"SysListView32",WS_TABSTOP | WS_BORDER | LVS_ALIGNLEFT | LVS_REPORT,4,7,296,59 
     247    LTEXT           "Enter the tracker URLs for the torrent.",IDC_NEWTORRENT_TRACKERS_TEXT,4,32,221,11,NOT WS_VISIBLE 
     248    EDITTEXT        IDC_NEWT_TRACKER,4,42,193,12,ES_AUTOHSCROLL|NOT WS_VISIBLE 
     249//    AUTOCHECKBOX    "Have Halite acts a DHT node.",IDC_NEWT_DHTNODE,4,116,118,8,WS_DISABLED 
     250    AUTOCHECKBOX    "Private",IDC_NEWTORRENT_PRIVATE,4,116,118,8,NOT WS_VISIBLE 
     251    PUSHBUTTON      "Add",IDC_NEWT_ADDTRACKER,202,41,23,13,NOT WS_VISIBLE 
     252    LTEXT           "Comment",IDC_NEWTORRENT_COMMENT_TEXT,4,4,50,11,SS_WORDELLIPSIS|SS_CENTERIMAGE|NOT WS_VISIBLE 
     253    EDITTEXT        IDC_NEWTORRENT_COMMENT,4,15,203,12,ES_AUTOHSCROLL|NOT WS_VISIBLE 
     254    LTEXT           "Creator",IDC_NEWTORRENT_CREATOR_TEXT,4,4,50,11,SS_WORDELLIPSIS|SS_CENTERIMAGE|NOT WS_VISIBLE 
     255    EDITTEXT        IDC_NEWTORRENT_CREATOR,4,15,203,12,ES_AUTOHSCROLL|NOT WS_VISIBLE 
     256END 
     257 
     258IDD_NEWT_TRACKERS DIALOGEX 0,0,229,132 
     259STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILDWINDOW | WS_CLIPCHILDREN 
     260CAPTION "Trackers" 
     261FONT 8,"MS Shell Dlg",400,0,1 
     262BEGIN 
    246263    LISTBOX         IDC_NEWT_LISTTRACKERS,4,57,221,52,WS_TABSTOP|WS_VSCROLL|LBS_NOINTEGRALHEIGHT|LBS_SORT 
    247     CONTROL         "",IDC_NEWT_LISTFILES,"SysListView32",WS_TABSTOP | WS_BORDER | LVS_ALIGNLEFT | LVS_REPORT,4,7,296,59 
    248     LTEXT           "Enter the tracker URLs for the torrent.",IDC_NEWTORRENT_TRACKERS_TEXT,4,32,221,11 
     264    LTEXT           "Enter the tracker URLs for the torrent.",IDC_NEWTORRENT_TRACKERS_TEXT,4,32,221,11,SS_WORDELLIPSIS|SS_CENTERIMAGE 
    249265    EDITTEXT        IDC_NEWT_TRACKER,4,42,193,12,ES_AUTOHSCROLL 
    250 //    AUTOCHECKBOX    "Have Halite acts a DHT node.",IDC_NEWT_DHTNODE,4,116,118,8,WS_DISABLED 
     266    PUSHBUTTON      "Add",IDC_NEWT_ADDTRACKER,202,41,23,13 
     267END 
     268 
     269IDD_NEWT_DETAILS DIALOGEX 0,0,229,132 
     270STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILDWINDOW | WS_CLIPCHILDREN 
     271CAPTION "Details" 
     272FONT 8,"MS Shell Dlg",400,0,1 
     273BEGIN 
    251274    AUTOCHECKBOX    "Private",IDC_NEWTORRENT_PRIVATE,4,116,118,8 
    252     PUSHBUTTON      "Add",IDC_NEWT_ADDTRACKER,202,41,23,13 
    253275    LTEXT           "Comment",IDC_NEWTORRENT_COMMENT_TEXT,4,4,50,11,SS_WORDELLIPSIS|SS_CENTERIMAGE 
    254276    EDITTEXT        IDC_NEWTORRENT_COMMENT,4,15,203,12,ES_AUTOHSCROLL 
  • trunk/res/resource.h

    r383 r386  
    3333#define IDD_ADVPEER                     131 
    3434#define IDD_NEWTORRENT                                  133 
     35#define IDD_NEWT_TRACKERS                               134 
     36#define IDD_NEWT_DETAILS                                135 
    3537#define IDR_TRACKERLV_MENU              132 
    3638#define IDC_TRANS_SES                   1004 
  • trunk/src/NewTorrentDialog.cpp

    r385 r386  
    1111#include "CSSFileDialog.hpp" 
    1212 
    13 LRESULT NewTorrentDialog::onInitDialog(HWND, LPARAM) 
    14 { 
    15         hal::event().post(shared_ptr<hal::EventDetail>( 
    16                         new hal::EventMsg(L"NewTorrentDialog::onInitDialog(HWND, LPARAM)")));    
    17          
    18         MoveWindow(rect_.left, rect_.top, rect_.right-rect_.left, rect_.bottom-rect_.top, true);         
    19  
    20 /*      SetWindowText(windowText_.c_str()); 
    21         prog_.Attach(GetDlgItem(IDC_PROG_PROGRESS)); 
    22         prog_.SetRange(0, 100); 
    23          
    24         thread_ptr.reset(new thread(bind(&ProgressDialog::ProgressThread, this))); 
    25 */               
    26         return 0; 
    27 } 
    28  
    29 void NewTorrentDialog::OnFileBrowse(UINT, int, HWND hWnd) 
     13void FileSheet::OnFileBrowse(UINT, int, HWND hWnd) 
    3014{        
    3115        CSSFileDialog dlgOpen(TRUE, NULL, NULL, OFN_HIDEREADONLY, L"Torrents (*.torrent)|*.torrent|", m_hWnd); 
     
    3721} 
    3822 
    39 void NewTorrentDialog::OnDirBrowse(UINT, int, HWND hWnd) 
     23void FileSheet::OnDirBrowse(UINT, int, HWND hWnd) 
    4024{        
    4125        CFolderDialog fldDlg (NULL, L"", 
     
    4832} 
    4933 
    50 void NewTorrentDialog::onCancel(UINT, int, HWND hWnd) 
    51 { 
    52         EndDialog(0); 
    53 } 
    54  
    5534#define NEWTORRENT_SELECT_LAYOUT \ 
    5635        WMB_HEAD(WMB_COLNOMIN(_exp|150), WMB_COL(_auto), WMB_COL(_auto)), \ 
     
    5837                WMB_ROW(_auto,  IDC_NEWT_FILE, IDC_NEWT_FILE_BROWSE, IDC_NEWT_DIR_BROWSE), \ 
    5938                WMB_ROWNOMAX(_exp|50,   IDC_NEWT_LISTFILES,  _r, _r), \ 
    60                 WMB_ROW(_auto,  IDC_NEWTORRENT_TRACKERS_TEXT, _r, _r), \ 
    61                 WMB_ROW(_auto,  IDC_NEWT_TRACKER, _r, IDC_NEWT_ADDTRACKER), \ 
    62                 WMB_ROWNOMAX(_exp|50,   IDC_NEWT_LISTTRACKERS,  _r, _r), \ 
    6339        WMB_END() 
    6440 
    6541#define NEWTORRENT_TRACKERS_LAYOUT \ 
    6642        WMB_HEAD(WMB_COLNOMIN(_exp), WMB_COL(_auto)), \ 
     43                WMB_ROW(_auto,  IDC_NEWTORRENT_TRACKERS_TEXT, _r), \ 
     44                WMB_ROW(_auto,  IDC_NEWT_TRACKER, IDC_NEWT_ADDTRACKER), \ 
     45                WMB_ROWNOMAX(_exp|50,   IDC_NEWT_LISTTRACKERS,  _r), \ 
    6746        WMB_END() 
    6847 
     
    8261        WMB_END() 
    8362 
    84 NewTorrentDialog::CWindowMapStruct* NewTorrentDialog::GetWindowMap() 
     63FileSheet::CWindowMapStruct* FileSheet::GetWindowMap() 
    8564{ 
    8665        BEGIN_WINDOW_MAP_INLINE(NewTorrentDialog, 3, 3, 3, 3) 
    8766                WMB_HEAD(WMB_COL(_exp)),  
    8867                WMB_ROWNOMIN(_exp, NEWTORRENT_SELECT_LAYOUT), 
    89                 WMB_ROW(_auto, NEWTORRENT_CREATOR_LAYOUT), 
    90                 WMB_ROW(_auto, NEWTORRENT_COMMENT_LAYOUT), 
    91                 WMB_ROW(_auto, NEWTORRENT_BUTTONS_LAYOUT), 
     68//              WMB_ROW(_auto, NEWTORRENT_CREATOR_LAYOUT), 
     69//              WMB_ROW(_auto, NEWTORRENT_COMMENT_LAYOUT), 
     70//              WMB_ROW(_auto, NEWTORRENT_BUTTONS_LAYOUT), 
    9271                WMB_END()  
    9372        END_WINDOW_MAP_INLINE()  
    94 } 
    95  
    96 void NewTorrentDialog::OnClose() 
    97 { 
    98         EndDialog(0); 
    99 } 
    100   
    101 void NewTorrentDialog::OnDestroy() 
    102 { 
    103         GetWindowRect(rect_); 
    104         Save(); 
    105 } 
    106  
    107 void NewTorrentDialog::OnSize(UINT type, CSize) 
    108 { 
    109         GetWindowRect(rect_);    
    110         SetMsgHandled(false); 
    11173}        
    11274 
     75#define NEWTORRENT_TRACKERS_LAYOUT \ 
     76        WMB_HEAD(WMB_COLNOMIN(_exp), WMB_COL(_auto)), \ 
     77                WMB_ROW(_auto,  IDC_NEWTORRENT_TRACKERS_TEXT, _r), \ 
     78                WMB_ROW(_auto,  IDC_NEWT_TRACKER, IDC_NEWT_ADDTRACKER), \ 
     79                WMB_ROWNOMAX(_exp|50,   IDC_NEWT_LISTTRACKERS,  _r), \ 
     80        WMB_END() 
     81 
     82TrackerSheet::CWindowMapStruct* TrackerSheet::GetWindowMap() 
     83{ 
     84        BEGIN_WINDOW_MAP_INLINE(NewTorrentDialog, 3, 3, 3, 3) 
     85                WMB_HEAD(WMB_COL(_exp)),  
     86                WMB_ROWNOMIN(_exp, NEWTORRENT_TRACKERS_LAYOUT), 
     87                WMB_END()  
     88        END_WINDOW_MAP_INLINE()  
     89}        
     90 
     91#define NEWTORRENT_DETAILS_LAYOUT \ 
     92        WMB_HEAD(WMB_COLNOMIN(_exp|33), WMB_COLNOMIN(_exp)), \ 
     93                WMB_ROW(_auto,  IDC_NEWTORRENT_COMMENT_TEXT,  IDC_NEWTORRENT_COMMENT), \ 
     94                WMB_ROW(_auto,  IDC_NEWTORRENT_CREATOR_TEXT,  IDC_NEWTORRENT_CREATOR), \ 
     95        WMB_END() 
     96 
     97DetailsSheet::CWindowMapStruct* DetailsSheet::GetWindowMap() 
     98{ 
     99        BEGIN_WINDOW_MAP_INLINE(NewTorrentDialog, 3, 3, 3, 3) 
     100                WMB_HEAD(WMB_COL(_exp)),  
     101                WMB_ROWNOMIN(_exp, NEWTORRENT_DETAILS_LAYOUT), 
     102                WMB_ROW(_gap), 
     103                WMB_ROW(_auto, IDC_NEWTORRENT_PRIVATE), 
     104                WMB_END()  
     105        END_WINDOW_MAP_INLINE()  
     106}        
  • trunk/src/NewTorrentDialog.hpp

    r385 r386  
    2828#include "halEvent.hpp" 
    2929 
    30 class NewTorrentDialog : 
    31         public CDialogImpl<NewTorrentDialog>,    
    32         public hal::IniBase<NewTorrentDialog>, 
    33         public CAutoSizeWindow<NewTorrentDialog, false> 
     30 
     31 
     32class FileSheet : 
     33    public CPropertyPageImpl<FileSheet>, 
     34        public CAutoSizeWindow<FileSheet, false> 
    3435{ 
    3536protected: 
    36         typedef NewTorrentDialog thisClass; 
    37         typedef CDialogImpl<thisClass> baseClass; 
    38         typedef hal::IniBase<NewTorrentDialog> iniClass; 
     37        typedef FileSheet thisClass; 
     38        typedef CPropertyPageImpl<thisClass> sheetClass; 
    3939        typedef CAutoSizeWindow<thisClass, false> autosizeClass; 
    4040 
    4141public: 
    42         NewTorrentDialog() : 
    43                 iniClass("NewTorrents", "Dialog"), 
    44                 rect_(50,50,400,500) 
    45         {                
    46                 Load(); 
    47         } 
    48  
    49         ~NewTorrentDialog() 
     42        FileSheet() 
    5043        {} 
     44 
     45        ~FileSheet() 
     46        {} 
    5147         
    5248        enum { IDD = IDD_NEWTORRENT }; 
    5349 
    5450    BEGIN_MSG_MAP_EX(thisClass) 
    55                 MSG_WM_INITDIALOG(onInitDialog) 
    56                 MSG_WM_CLOSE(OnClose) 
    57                 MSG_WM_SIZE(OnSize) 
    5851                MSG_WM_DESTROY(OnDestroy) 
    5952 
     
    6154                COMMAND_ID_HANDLER_EX(IDC_NEWT_DIR_BROWSE, OnDirBrowse) 
    6255 
    63                 COMMAND_ID_HANDLER_EX(IDCANCEL, onCancel) 
    64                 COMMAND_ID_HANDLER_EX(IDOK, onCancel) 
    65  
    6656                CHAIN_MSG_MAP(autosizeClass) 
     57                CHAIN_MSG_MAP(sheetClass) 
    6758                REFLECT_NOTIFICATIONS() 
    6859    END_MSG_MAP() 
     60 
     61        static CWindowMapStruct* GetWindowMap(); 
     62         
     63        BOOL PreTranslateMessage(MSG* pMsg) 
     64        { 
     65                return this->IsDialogMessage(pMsg); 
     66        } 
     67         
     68        void OnFileBrowse(UINT, int, HWND hWnd); 
     69        void OnDirBrowse(UINT, int, HWND hWnd); 
     70        void OnDestroy() {}; 
     71         
     72private: 
     73}; 
     74 
     75class TrackerSheet : 
     76    public CPropertyPageImpl<TrackerSheet>, 
     77        public CAutoSizeWindow<TrackerSheet, false> 
     78{ 
     79protected: 
     80        typedef TrackerSheet thisClass; 
     81        typedef CPropertyPageImpl<thisClass> sheetClass; 
     82        typedef CAutoSizeWindow<thisClass, false> autosizeClass; 
     83 
     84public:  
     85        enum { IDD = IDD_NEWT_TRACKERS }; 
     86 
     87    BEGIN_MSG_MAP_EX(thisClass) 
     88                MSG_WM_DESTROY(OnDestroy) 
     89 
     90                COMMAND_ID_HANDLER_EX(IDC_NEWT_ADDTRACKER, OnFileBrowse) 
     91//              COMMAND_ID_HANDLER_EX(IDC_NEWT_DIR_BROWSE, OnDirBrowse) 
     92 
     93                CHAIN_MSG_MAP(autosizeClass) 
     94                CHAIN_MSG_MAP(sheetClass) 
     95                REFLECT_NOTIFICATIONS() 
     96    END_MSG_MAP() 
     97 
     98        static CWindowMapStruct* GetWindowMap(); 
     99         
     100        BOOL PreTranslateMessage(MSG* pMsg) 
     101        { 
     102                return this->IsDialogMessage(pMsg); 
     103        } 
     104         
     105        void OnFileBrowse(UINT, int, HWND hWnd) {} 
     106        void OnDestroy() {} 
     107         
     108private: 
     109}; 
     110 
     111class DetailsSheet : 
     112    public CPropertyPageImpl<DetailsSheet>, 
     113        public CAutoSizeWindow<DetailsSheet, false> 
     114{ 
     115protected: 
     116        typedef DetailsSheet thisClass; 
     117        typedef CPropertyPageImpl<thisClass> sheetClass; 
     118        typedef CAutoSizeWindow<thisClass, false> autosizeClass; 
     119 
     120public:  
     121        enum { IDD = IDD_NEWT_DETAILS }; 
     122 
     123    BEGIN_MSG_MAP_EX(thisClass) 
     124                MSG_WM_DESTROY(OnDestroy) 
     125 
     126                CHAIN_MSG_MAP(autosizeClass) 
     127                CHAIN_MSG_MAP(sheetClass) 
     128                REFLECT_NOTIFICATIONS() 
     129    END_MSG_MAP() 
     130 
     131        static CWindowMapStruct* GetWindowMap(); 
     132         
     133        BOOL PreTranslateMessage(MSG* pMsg) 
     134        { 
     135                return this->IsDialogMessage(pMsg); 
     136        } 
     137         
     138        void OnFileBrowse(UINT, int, HWND hWnd) {} 
     139        void OnDestroy() {} 
     140         
     141private: 
     142}; 
     143 
     144class NewTorrentDialog : 
     145        public CPropertySheet, 
     146        public hal::IniBase<NewTorrentDialog>, 
     147        public CDialogResize<NewTorrentDialog> 
     148{ 
     149        typedef NewTorrentDialog thisClass; 
     150        typedef hal::IniBase<thisClass> iniClass; 
     151        typedef CDialogResize<thisClass> resizeClass; 
     152 
     153public: 
     154    NewTorrentDialog(LPCTSTR title = (LPCTSTR)NULL, 
     155                        UINT uStartPage = 0, HWND hWndParent = NULL) : 
     156        CPropertySheet(title, uStartPage, hWndParent), 
     157                iniClass("NewTorrentDialog", "Dialog"), 
     158                m_bCentered(false), 
     159                rect_(50,50,400,500) 
     160    { 
     161                AddPage(fileSheet); 
     162                AddPage(trackerSheet); 
     163                AddPage(detailsSheet); 
     164                 
     165        } 
     166 
     167    BEGIN_MSG_MAP_EX(thisClass) 
     168        MSG_WM_SHOWWINDOW(OnShowWindow) 
     169                MSG_WM_SIZE(OnSize) 
     170                MSG_WM_DESTROY(OnDestroy) 
     171 
     172                CHAIN_MSG_MAP(resizeClass) 
     173        CHAIN_MSG_MAP(CPropertySheet) 
     174    END_MSG_MAP() 
     175 
     176    BEGIN_DLGRESIZE_MAP(thisClass) 
     177                DLGRESIZE_CONTROL(0x3020, DLSZ_SIZE_X|DLSZ_SIZE_Y) 
     178 
     179                DLGRESIZE_CONTROL(0x1, DLSZ_MOVE_X|DLSZ_MOVE_Y) 
     180                DLGRESIZE_CONTROL(0x2, DLSZ_MOVE_X|DLSZ_MOVE_Y) 
     181                DLGRESIZE_CONTROL(0x3021, DLSZ_MOVE_X|DLSZ_MOVE_Y) 
     182        END_DLGRESIZE_MAP() 
     183 
     184        LRESULT OnInitDialog(HWND, LPARAM); 
     185        void OnDestroy() {} 
     186 
     187        void OnSize(UINT, CSize) 
     188        { 
     189        SetMsgHandled(false); 
     190 
     191                GetWindowRect(rect_); 
     192                resizeActiveSheet(); 
     193        } 
     194 
     195    void OnShowWindow(BOOL bShow, UINT nStatus) 
     196    { 
     197                hal::event().post(shared_ptr<hal::EventDetail>( 
     198                        new hal::EventMsg(L"NewTorrentDialog::OnShowWindow()")));        
     199 
     200        SetMsgHandled(false); 
     201 
     202        if (bShow == TRUE) 
     203        { 
     204            CMenuHandle pSysMenu = GetSystemMenu(FALSE); 
     205 
     206                if (pSysMenu != NULL) 
     207                pSysMenu.InsertMenu(-1, MF_BYPOSITION|MF_STRING, SC_SIZE, L"&Size"); 
     208 
     209            ModifyStyle(0, WS_THICKFRAME, 0); 
     210            Center(); 
     211 
     212            resizeClass::DlgResize_Init(false, true, WS_CLIPCHILDREN); 
     213        } 
     214 
     215                resizeActiveSheet(); 
     216    } 
     217 
     218    void Center(void) 
     219    { 
     220        if (!m_bCentered) 
     221        { 
     222            CenterWindow(); 
     223            m_bCentered = true; 
     224        } 
     225    } 
    69226 
    70227        friend class boost::serialization::access; 
     
    75232        } 
    76233 
    77         LRESULT onInitDialog(HWND, LPARAM); 
    78         static CWindowMapStruct* GetWindowMap(); 
    79  
    80         void ProgressThread() 
    81         { 
    82 //              fn_(bind(&ProgressDialog::Callback, this, _1)); 
    83                  
    84 //              EndDialog(0); 
    85         } 
    86          
    87         bool Callback(size_t progress) 
    88         { 
    89 //              prog_.SetPos(progress); 
    90                  
    91                 return true; 
    92         } 
    93          
    94         BOOL PreTranslateMessage(MSG* pMsg) 
    95         { 
    96 //              return this->IsDialogMessage(pMsg); 
    97         } 
    98          
    99         void OnFileBrowse(UINT, int, HWND hWnd); 
    100         void OnDirBrowse(UINT, int, HWND hWnd); 
    101         void onCancel(UINT, int, HWND hWnd); 
    102         void OnClose(); 
    103         void OnSize(UINT, CSize); 
    104         void OnDestroy(); 
    105          
    106 private: 
     234private: 
     235    bool m_bCentered; 
    107236        CRect rect_; 
     237 
     238        void resizeActiveSheet() 
     239        { 
     240        HWND propTabs = GetDlgItem(0x3020); 
     241 
     242                RECT rect; 
     243                ::GetWindowRect(propTabs, &rect); 
     244 
     245                ::MapWindowPoints(NULL, m_hWnd, (LPPOINT)&rect, 2); 
     246                ::SendMessage(propTabs, TCM_ADJUSTRECT, false, (LPARAM)&rect); 
     247 
     248                ::MoveWindow(GetActivePage(), rect.left, rect.top, 
     249            rect.right-rect.left, rect.bottom-rect.top, true); 
     250        } 
     251 
     252        FileSheet fileSheet; 
     253        TrackerSheet trackerSheet; 
     254        DetailsSheet detailsSheet; 
     255 
    108256}; 
    109257 
  • trunk/src/halTorrent.cpp

    r383 r386  
    66 
    77 
    8 #define HALITE_VERSION                                  0, 3, 0, 381 
    9 #define HALITE_VERSION_STRING                   "v 0.3.0.3 dev 381" 
    10 #define HALITE_FINGERPRINT                              "HL", 0, 3, 0, 3 
     8#define HALITE_VERSION                                  0, 3, 0, 386 
     9#define HALITE_VERSION_STRING                   "v 0.3.0.4 dev 386" 
     10#define HALITE_FINGERPRINT                              "HL", 0, 3, 0, 4 
    1111 
    1212#ifndef HAL_NA 
Note: See TracChangeset for help on using the changeset viewer.