Changeset 764


Ignore:
Timestamp:
05/26/09 20:02:37 (10 years ago)
Author:
Eoin
Message:

Fixed the starting (or not) of added torrents.

Location:
trunk
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/res/Halite.rc

    r762 r764  
    441441FONT 8, "MS Shell Dlg", 400, 0, 0x1 
    442442BEGIN 
    443 //    GROUPBOX        "Program Information",HAL_ABOUT_GROUP,5,6,315,136,WS_EX_TRANSPARENT 
     443        CTEXT                   "", HAL_TIME_LABEL_SET_ACTION,8,15,265,14,SS_WORDELLIPSIS|SS_CENTERIMAGE         
    444444        RTEXT                   "Select action to take :", HAL_TIME_EDITABOUT,8,15,265,14,SS_WORDELLIPSIS|SS_CENTERIMAGE         
    445445        COMBOBOX                HAL_TIME_ACTIONS, 166,15,70,14,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP 
    446 //      CONTROL "",HAL_TIME_PICKER,"SysDateTimePick32",WS_CHILD|WS_BORDER|ES_MULTILINE|ES_READONLY|WS_VSCROLL|WS_TABSTOP|DTS_UPDOWN|DTS_TIMEFORMAT,5,6,40,12 
    447 //      CONTROL "",HAL_TIME_DATE_PICKER,"SysDateTimePick32",WS_CHILD|WS_BORDER|ES_MULTILINE|ES_READONLY|WS_VSCROLL|WS_TABSTOP,5,6,40,12 
    448 //      CONTROL "",,"RichEdit20A",WS_CHILD|WS_BORDER|ES_MULTILINE|ES_READONLY|WS_VSCROLL|WS_TABSTOP,5,6,315,136 
    449446        RTEXT                   "Set time :", HAL_TIME_SETTEXT,8,15,265,14,SS_WORDELLIPSIS|SS_CENTERIMAGE        
    450447        CONTROL         "", HAL_TIME_PICKER,"SysDateTimePick32", DTS_UPDOWN | WS_TABSTOP | DTS_TIMEFORMAT,116,77,64,14 
     
    459456FONT 8,"MS Shell Dlg",400,0,1 
    460457BEGIN 
    461     CONTROL         "",HAL_TAB,"SysTabControl32",0,1,0,315,71 
    462     RTEXT           "Static",HAL_ADVDLG_VERSION,235,2,78,8,SS_CENTERIMAGE 
     458        CONTROL         "",HAL_TAB,"SysTabControl32",0,1,0,315,71 
     459        RTEXT                   "Static",HAL_ADVDLG_VERSION,235,2,78,8,SS_CENTERIMAGE 
    463460END 
    464461 
     
    758755 
    7597561 VERSIONINFO 
    760     FILEVERSION     HALITE_VERSION 
    761     PRODUCTVERSION  HALITE_VERSION 
    762     FILEOS          VOS_UNKNOWN 
    763     FILETYPE        VFT_UNKNOWN 
    764 BEGIN 
    765     BLOCK "StringFileInfo" 
    766     BEGIN 
    767         BLOCK "180904b0" 
    768         BEGIN 
    769             VALUE "Comments", "libTorrrent based client." 
    770             VALUE "CompanyName", "BinaryNotions.com" 
    771             VALUE "FileDescription", "Halite BitTorrent Client" 
    772             VALUE "FileVersion", HALITE_VERSION_STRING 
    773             VALUE "InternalName", "Halite" 
    774             VALUE "LegalCopyright", "(C) Eoin O'Callaghan 2008" 
    775             VALUE "OriginalFilename", "Halite.exe" 
    776             VALUE "ProductName", "Halite" 
    777             VALUE "ProductVersion", HALITE_VERSION_STRING 
    778         END 
    779     END 
    780     BLOCK "VarFileInfo" 
    781     BEGIN 
    782         VALUE "Translation", 6153, 1200 
    783     END 
     757FILEVERSION     HALITE_VERSION 
     758PRODUCTVERSION  HALITE_VERSION 
     759FILEOS          VOS_UNKNOWN 
     760FILETYPE        VFT_UNKNOWN 
     761BEGIN 
     762        BLOCK "StringFileInfo" 
     763        BEGIN 
     764                BLOCK "180904b0" 
     765                BEGIN 
     766                        VALUE "Comments", "libTorrrent based client." 
     767                        VALUE "CompanyName", "BinaryNotions.com" 
     768                        VALUE "FileDescription", "Halite BitTorrent Client" 
     769                        VALUE "FileVersion", HALITE_VERSION_STRING 
     770                        VALUE "InternalName", "Halite" 
     771                        VALUE "LegalCopyright", "(C) Eoin O'Callaghan 2008" 
     772                        VALUE "OriginalFilename", "Halite.exe" 
     773                        VALUE "ProductName", "Halite" 
     774                        VALUE "ProductVersion", HALITE_VERSION_STRING 
     775                END 
     776        END 
     777        BLOCK "VarFileInfo" 
     778        BEGIN 
     779                VALUE "Translation", 6153, 1200 
     780        END 
    784781END 
    785782 
    786783STRINGTABLE 
    787784BEGIN 
    788         HAL_NEW_PANE_DLG                                "Construct a New Torrent" 
    789     IDPANE_STATUS                                       "(D-U) 0000.000KB/s - 0000.000KB/s" 
    790     IDPANE_CAPS_INDICATOR                       "CAPS" 
    791     IDPANE_DHT                                          "0000 DHT node(s)" 
    792     IDPANE_FILTER                                       "Filtering 0000000 ranges." 
    793     IDS_TRYANOTHERPORT                          "The BitTorrent session could not start. Try selecting another port in the settings." 
    794     IDS_DHTTRYANOTHERPORT                       "DHT session could not start. Try selecting another port in the settings." 
    795     IDS_SAVEPROMPT                                      "Select a directory to save the files to or cancel to not download torrent at all." 
    796     IDS_NA                                                      "N/A" 
    797     HAL_HALITE                                          "Halite" 
    798     HAL_INF                                                     "∞" 
    799     HAL_COMPLETED_SUMMARY                       "%1$.2fMB of %2$.2fMB" 
    800     HAL_DOWNLOAD_SUMMARY                        "This Session Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
    801     HAL_DOWNLOADT_SUMMARY                       "Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
    802     HAL_PAYLOAD_SUMMARY                         "Total transfer including protocol overhead: %1$.2fMB down and %2$.2fMB up." 
    803         HAL_NAME_STATUS                                 "%1%, %2%." 
    804     HAL_TRANSFERED                                      "%1$.2fMB down - %2$.2fMB up" 
    805     HAL_REMAINING                                       "%1$.2fMB of %2$.2fMB" 
    806     HAL_RATE                                            "%1$.2fKB/s down - %2$.2fKB/s up" 
    807     HAL_TIME_TIME_REMAINING                             "Time remaining: %1% hour(s), %2% minute(s) and %3% second(s)" 
    808     HAL_TIME_ACTION_PAUSEALL                            "Pause all torrents" 
    809     HAL_TIME_ACTION_EXIT                                "Exit Halite" 
    810     HAL_TIME_ACTION_LOGOFF                              "Log off Windows" 
    811     HAL_TIME_ACTION_SHUTDOWN                    "Shutdown Windows" 
    812     HAL_DHT_ON                                          "%1% DHT node(s)" 
    813     HAL_CSPLASH_ACT_MSG                         "%1% active torrent(s)" 
    814     HAL_CSPLASH_SHUTDOWN_MSG            "Shutting down session" 
    815     HAL_ADDT_TITLE                                      "Edit Torrent Save Folders" 
    816     HAL_DHT_OFF                                         "DHT disabled" 
    817     HAL_IPFILTER_ON                                     "Filtering %1% range(s)" 
    818     HAL_IPFILTER_OFF                            "IP filter disabled" 
    819     HAL_EVENT_STDEXP                            "Standard exception (%1%) thrown from %2%." 
    820     HAL_DOWN_RATES                                      "(D-U) %1$.2fKB/s - %2$.2fKB/s" 
    821     HAL_NOT_LISTENING                           "Halite not listening!" 
    822     HAL_PORT_OPEN                                       "Port %1% open" 
    823     HAL_VERSION_STRING                          HALITE_VERSION_STRING 
    824         HAL_FOLDER_SELECT                               "Select a directory to save the downloads to. Select cancel to accept default 'incoming' location." 
    825         HAL_TORRENT_TAB                                 "Torrent" 
    826         HAL_PEERS_TAB                                   "Peers" 
    827         HAL_FILES_TAB                                   "Files" 
    828         HAL_TRACKER_TAB                                 "Tracker" 
    829         HAL_DEBUG_TAB                                   "Logging" 
    830         HAL_INCORRECT_ENCODING_LEVEL    "An invalid encoding level, %1%, was passed as an encryption setting." 
    831         HAL_INCORRECT_CONNECT_POLICY    "An invalid connection policy, %1%, was passed as an encryption setting." 
    832         HAL_AUTOSORT                                    "Auto Sort" 
    833         HAL_TORRENT_ROOT                                "Torrent Root" 
    834         HAL_WINDOW_CLOSECONFRIM                 "Are you sure you wish to close Halite? Doing so will stop any active torrents" 
    835         HAL_WINDOW_SOCKETS_FAILED               "The socket infrastructure failed to start so Halite is forced to close. Please ensure no program is blocking Halites network access." 
    836         HAL_SAVE_TEXT                                   "Save" 
    837         HAL_LISTVIEW_CONFIRMDELETE              "Are you sure you wish to delete all downloaded data?" 
     785        HAL_NEW_PANE_DLG                                        "Construct a New Torrent" 
     786        IDPANE_STATUS                                           "(D-U) 0000.000KB/s - 0000.000KB/s" 
     787        IDPANE_CAPS_INDICATOR                                   "CAPS" 
     788        IDPANE_DHT                                                      "0000 DHT node(s)" 
     789        IDPANE_FILTER                                           "Filtering 0000000 ranges." 
     790        IDS_TRYANOTHERPORT                                      "The BitTorrent session could not start. Try selecting another port in the settings." 
     791        IDS_DHTTRYANOTHERPORT                           "DHT session could not start. Try selecting another port in the settings." 
     792        IDS_SAVEPROMPT                                          "Select a directory to save the files to or cancel to not download torrent at all." 
     793        IDS_NA                                                  "N/A" 
     794        HAL_HALITE                                                      "Halite" 
     795        HAL_INF                                                 "∞" 
     796        HAL_COMPLETED_SUMMARY                           "%1$.2fMB of %2$.2fMB" 
     797        HAL_DOWNLOAD_SUMMARY                            "This Session Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
     798        HAL_DOWNLOADT_SUMMARY                           "Downloaded %1$.2fMB, Uploaded %2$.2fMB, Ratio %3$.2f." 
     799        HAL_PAYLOAD_SUMMARY                                     "Total transfer including protocol overhead: %1$.2fMB down and %2$.2fMB up." 
     800        HAL_NAME_STATUS                                         "%1%, %2%." 
     801        HAL_TRANSFERED                                          "%1$.2fMB down - %2$.2fMB up" 
     802        HAL_REMAINING                                           "%1$.2fMB of %2$.2fMB" 
     803        HAL_RATE                                                        "%1$.2fKB/s down - %2$.2fKB/s up" 
     804        HAL_TIME_TIME_REMAINING                         "Time remaining: %1% hour(s), %2% minute(s) and %3% second(s)" 
     805        HAL_TIME_ACTION_SET                                     "Currently set to '%1%' at %2%" 
     806        HAL_TIME_ACTION_NOT_SET                         "Not currently set to take any action" 
     807        HAL_TIME_ACTION_NO_ACTION                               "Take no action" 
     808        HAL_TIME_ACTION_PAUSEALL                                "Pause all torrents" 
     809        HAL_TIME_ACTION_EXIT                                    "Exit Halite" 
     810        HAL_TIME_ACTION_LOGOFF                          "Log off Windows" 
     811        HAL_TIME_ACTION_SHUTDOWN                                "Shutdown Windows" 
     812        HAL_DHT_ON                                                      "%1% DHT node(s)" 
     813        HAL_CSPLASH_ACT_MSG                                     "%1% active torrent(s)" 
     814        HAL_CSPLASH_SHUTDOWN_MSG                                "Shutting down session" 
     815        HAL_ADDT_TITLE                                          "Edit Torrent Save Folders" 
     816        HAL_DHT_OFF                                             "DHT disabled" 
     817        HAL_IPFILTER_ON                                         "Filtering %1% range(s)" 
     818        HAL_IPFILTER_OFF                                                "IP filter disabled" 
     819        HAL_EVENT_STDEXP                                                "Standard exception (%1%) thrown from %2%." 
     820        HAL_DOWN_RATES                                          "(D-U) %1$.2fKB/s - %2$.2fKB/s" 
     821        HAL_NOT_LISTENING                                       "Halite not listening!" 
     822        HAL_PORT_OPEN                                           "Port %1% open" 
     823        HAL_VERSION_STRING                                      HALITE_VERSION_STRING 
     824        HAL_FOLDER_SELECT                                       "Select a directory to save the downloads to. Select cancel to accept default 'incoming' location." 
     825        HAL_TORRENT_TAB                                         "Torrent" 
     826        HAL_PEERS_TAB                                           "Peers" 
     827        HAL_FILES_TAB                                           "Files" 
     828        HAL_TRACKER_TAB                                         "Tracker" 
     829        HAL_DEBUG_TAB                                           "Logging" 
     830        HAL_INCORRECT_ENCODING_LEVEL                    "An invalid encoding level, %1%, was passed as an encryption setting." 
     831        HAL_INCORRECT_CONNECT_POLICY                    "An invalid connection policy, %1%, was passed as an encryption setting." 
     832        HAL_AUTOSORT                                            "Auto Sort" 
     833        HAL_TORRENT_ROOT                                        "Torrent Root" 
     834        HAL_WINDOW_CLOSECONFRIM                         "Are you sure you wish to close Halite? Doing so will stop any active torrents" 
     835        HAL_WINDOW_SOCKETS_FAILED                               "The socket infrastructure failed to start so Halite is forced to close. Please ensure no program is blocking Halites network access." 
     836        HAL_SAVE_TEXT                                           "Save" 
     837        HAL_LISTVIEW_CONFIRMDELETE                              "Are you sure you wish to delete all downloaded data?" 
    838838END 
    839839 
    840840STRINGTABLE 
    841841BEGIN 
    842     HAL_PEER_INTERESTING                "Interesting" 
    843     HAL_PEER_CHOKED                     "Choked" 
    844     HAL_PEER_REMOTE_INTERESTING         "Interested in us" 
    845     HAL_PEER_REMOTE_CHOKED              "Has choked us" 
    846     HAL_PEER_SUPPORT_EXTENSIONS         "Supports extensions" 
    847     HAL_PEER_LOCAL_CONNECTION           "Local connection" 
    848     HAL_PEER_HANDSHAKE                  "Handshake" 
    849     HAL_PEER_CONNECTING                 "Connecting" 
    850     HAL_PEER_QUEUED                             "Queued" 
    851     HAL_PEER_RC4_ENCRYPTED              "RC4 Encrypted" 
    852     HAL_PEER_PLAINTEXT_ENCRYPTED    "Plaintext Encrypted" 
     842        HAL_PEER_INTERESTING                                    "Interesting" 
     843        HAL_PEER_CHOKED                                                 "Choked" 
     844        HAL_PEER_REMOTE_INTERESTING                             "Interested in us" 
     845        HAL_PEER_REMOTE_CHOKED                                  "Has choked us" 
     846        HAL_PEER_SUPPORT_EXTENSIONS                     "Supports extensions" 
     847        HAL_PEER_LOCAL_CONNECTION                               "Local connection" 
     848        HAL_PEER_HANDSHAKE                                      "Handshake" 
     849        HAL_PEER_CONNECTING                                     "Connecting" 
     850        HAL_PEER_QUEUED                                         "Queued" 
     851        HAL_PEER_RC4_ENCRYPTED                                  "RC4 Encrypted" 
     852        HAL_PEER_PLAINTEXT_ENCRYPTED                    "Plaintext Encrypted" 
    853853END 
    854854 
    855855STRINGTABLE 
    856856BEGIN 
    857     HAL_TORRENT_QUEUED_CHECKING         "Queued for Checking" 
    858     HAL_TORRENT_CHECKING_FILES          "Checking Files" 
    859     HAL_TORRENT_CONNECTING                      "Connecting to Tracker" 
    860     HAL_TORRENT_DOWNLOADING                     "Downloading" 
    861     HAL_TORRENT_FINISHED                        "Finished" 
    862     HAL_TORRENT_SEEDING                         "Seeding" 
    863     HAL_TORRENT_ALLOCATING                      "Allocating" 
    864     HAL_TORRENT_QUEUED                          "Queued" 
    865         HAL_TORRENT_STOPPED                             "Stopped" 
    866         HAL_TORRENT_PAUSED                              "Paused" 
    867         HAL_TORRENT_STOPPING                    "Stopping" 
    868         HAL_TORRENT_PAUSING                             "Pausing" 
    869         HAL_TORRENT_IN_ERROR                    "Error!" 
    870         HAL_TORRENT_METADATA                    "Downloading Metadata" 
     857        HAL_TORRENT_QUEUED_CHECKING                     "Queued for Checking" 
     858        HAL_TORRENT_CHECKING_FILES                              "Checking Files" 
     859        HAL_TORRENT_CONNECTING                          "Connecting to Tracker" 
     860        HAL_TORRENT_DOWNLOADING                         "Downloading" 
     861        HAL_TORRENT_FINISHED                                    "Finished" 
     862        HAL_TORRENT_SEEDING                                     "Seeding" 
     863        HAL_TORRENT_ALLOCATING                          "Allocating" 
     864        HAL_TORRENT_QUEUED                                      "Queued" 
     865        HAL_TORRENT_STOPPED                                     "Stopped" 
     866        HAL_TORRENT_PAUSED                                      "Paused" 
     867        HAL_TORRENT_STOPPING                                    "Stopping" 
     868        HAL_TORRENT_PAUSING                                     "Pausing" 
     869        HAL_TORRENT_IN_ERROR                                    "Error!" 
     870        HAL_TORRENT_METADATA                                    "Downloading Metadata" 
    871871         
    872         HAL_TORRENT_IMPORT_FILTERS              "Importing IP Filters..." 
    873         HAL_TORRENT_LOAD_FILTERS                "Loading IP filters..." 
    874  
    875         HAL_NEWT_CREATING_TORRENT               "Creating Torrent..." 
    876         HAL_NEWT_HASHING_PIECES                 "Calculating Piece Hashes..." 
    877         HAL_NEWT_DIALOG_TITLE                   "Creating a New Torrent File" 
    878         HAL_NEWT_CREATION_CANCELED              "User canceled Torrent file creation" 
    879  
    880         HAL_NEWT_ADD_PEERS_WEB                  "Web Seed" 
    881         HAL_INT_NEWT_ADD_PEERS_WEB              "Web Seed" 
    882         HAL_NEWT_ADD_PEERS_DHT                  "DHT Node" 
    883         HAL_INT_NEWT_ADD_PEERS_DHT              "DHT Node" 
    884  
    885         HAL_NEWT_EDIT_PEER                              "Edit Peer" 
    886         HAL_NEWT_ADD_NEW_PEER                   "Add New Peer" 
    887         HAL_NEWT_SAVING_TORRENT                 "Saving Torrent" 
    888         HAL_NEWT_EDIT_TRACKER                   "Edit Tracker" 
    889         HAL_NEWT_ADD_NEW_TRACKER                "Add New Tracker" 
     872        HAL_TORRENT_IMPORT_FILTERS                              "Importing IP Filters..." 
     873        HAL_TORRENT_LOAD_FILTERS                                "Loading IP filters..." 
     874 
     875        HAL_NEWT_CREATING_TORRENT                               "Creating Torrent..." 
     876        HAL_NEWT_HASHING_PIECES                         "Calculating Piece Hashes..." 
     877        HAL_NEWT_DIALOG_TITLE                                   "Creating a New Torrent File" 
     878        HAL_NEWT_CREATION_CANCELED                      "User canceled Torrent file creation" 
     879 
     880        HAL_NEWT_ADD_PEERS_WEB                          "Web Seed" 
     881        HAL_INT_NEWT_ADD_PEERS_WEB                              "Web Seed" 
     882        HAL_NEWT_ADD_PEERS_DHT                          "DHT Node" 
     883        HAL_INT_NEWT_ADD_PEERS_DHT                              "DHT Node" 
     884 
     885        HAL_NEWT_EDIT_PEER                                      "Edit Peer" 
     886        HAL_NEWT_ADD_NEW_PEER                           "Add New Peer" 
     887        HAL_NEWT_SAVING_TORRENT                         "Saving Torrent" 
     888        HAL_NEWT_EDIT_TRACKER                                   "Edit Tracker" 
     889        HAL_NEWT_ADD_NEW_TRACKER                                "Add New Tracker" 
    890890END 
    891891 
    892892STRINGTABLE 
    893893BEGIN 
    894         HAL_LISTVIEW_COLUMNS                    "Name;Status;Progress;Download;Upload;Peers;Seeds;ETA;Copies;Tracker;Reannounce;Ratio;Total;Completed;Remaining;Downloaded;Uploaded;Active;Seeding;Start Time;Finish Time;Managed;Queue Position" 
    895         HAL_DEBUG_LISTVIEW_COLUMNS              "Time;Message;Severity" 
    896         HAL_TRACKER_LISTVIEW_COLUMNS    "Tracker;Tier" 
    897         HAL_DIALOGPEER_LISTVIEW_COS             "Peer;Country;Download;Upload;Type;Client" 
    898         HAL_DIALOGPEER_LISTVIEW_ADV             "Peer;Country;Download;Upload;Type;Client;Status" 
    899         HAL_DIALOGFILE_LISTVIEW_ADV             "Filename;Path;Size;Progress;Priority" 
    900         HAL_FILES_LISTVIEW_ADV                  "Filename;Path;Size" 
    901         HAL_NTPLVM_NAMES                                "URL;Port;Type" 
    902  
    903         HAL_FILE_PRIORITY_0                             "Don't download" 
    904         HAL_FILE_PRIORITY_1                             "Normal" 
    905         HAL_FILE_PRIORITY_2                             "2" 
    906         HAL_FILE_PRIORITY_3                             "3" 
    907         HAL_FILE_PRIORITY_4                             "4" 
    908         HAL_FILE_PRIORITY_5                             "Above Normal" 
    909         HAL_FILE_PRIORITY_6                             "6" 
    910         HAL_FILE_PRIORITY_7                             "Maximum" 
     894        HAL_LISTVIEW_COLUMNS                                    "Name;Status;Progress;Download;Upload;Peers;Seeds;ETA;Copies;Tracker;Reannounce;Ratio;Total;Completed;Remaining;Downloaded;Uploaded;Active;Seeding;Start Time;Finish Time;Managed;Queue Position" 
     895        HAL_DEBUG_LISTVIEW_COLUMNS                              "Time;Message;Severity" 
     896        HAL_TRACKER_LISTVIEW_COLUMNS                    "Tracker;Tier" 
     897        HAL_DIALOGPEER_LISTVIEW_COS                     "Peer;Country;Download;Upload;Type;Client" 
     898        HAL_DIALOGPEER_LISTVIEW_ADV                     "Peer;Country;Download;Upload;Type;Client;Status" 
     899        HAL_DIALOGFILE_LISTVIEW_ADV                             "Filename;Path;Size;Progress;Priority" 
     900        HAL_FILES_LISTVIEW_ADV                                  "Filename;Path;Size" 
     901        HAL_NTPLVM_NAMES                                        "URL;Port;Type" 
     902 
     903        HAL_FILE_PRIORITY_0                                     "Don't download" 
     904        HAL_FILE_PRIORITY_1                                     "Normal" 
     905        HAL_FILE_PRIORITY_2                                     "2" 
     906        HAL_FILE_PRIORITY_3                                     "3" 
     907        HAL_FILE_PRIORITY_4                                     "4" 
     908        HAL_FILE_PRIORITY_5                                     "Above Normal" 
     909        HAL_FILE_PRIORITY_6                                     "6" 
     910        HAL_FILE_PRIORITY_7                                     "Maximum" 
    911911END 
    912912 
     
    931931HAL_MAINFRAME TOOLBAR 22,22 
    932932BEGIN 
    933     BUTTON                      ID_FILE_NEW 
    934     BUTTON                      ID_FILE_OPEN 
    935     SEPARATOR 
    936     BUTTON                      ID_SETTINGS 
    937     BUTTON                      ID_ADVANCED 
    938     SEPARATOR 
    939     BUTTON                      ID_RESUME 
    940     BUTTON                      ID_PAUSE 
    941     BUTTON                      HAL_WINDOW_AUTOSHUTDOWN 
    942     SEPARATOR 
    943     BUTTON                      HAL_WINDOW_EXIT 
    944     BUTTON                      ID_HELP 
    945 END 
    946  
    947 HAL_APP_ICON                    ICON                    "Halite.ico" 
     933        BUTTON                  ID_FILE_NEW 
     934        BUTTON                  ID_FILE_OPEN 
     935        SEPARATOR 
     936        BUTTON                  ID_SETTINGS 
     937        BUTTON                  ID_ADVANCED 
     938        SEPARATOR 
     939        BUTTON                  ID_RESUME 
     940        BUTTON                  ID_PAUSE 
     941        BUTTON                  HAL_WINDOW_AUTOSHUTDOWN 
     942        SEPARATOR 
     943        BUTTON                  HAL_WINDOW_EXIT 
     944        BUTTON                  ID_HELP 
     945END 
     946 
     947HAL_APP_ICON                    ICON                            "Halite.ico" 
    948948HAL_MAINFRAME                   BITMAP                  "Toolbar2k.bmp" 
    949949 
     
    956956        HAL_EVENTCRITICAL                                       "Critical" 
    957957 
    958         HAL_EXTERNAL_IP_ALERT                           "Informed of external IP address: %1%." 
    959         HAL_PORTMAP_ERROR_ALERT                 "%1% port mapping request failed." 
     958        HAL_EXTERNAL_IP_ALERT                                   "Informed of external IP address: %1%." 
     959        HAL_PORTMAP_ERROR_ALERT                         "%1% port mapping request failed." 
    960960        HAL_PORTMAP_ALERT                                       "%1% port %2% mapping succeeded." 
    961         HAL_FILE_ERROR_ALERT                            "OS reported error for file '%1%'; %2%" 
    962         HAL_DHT_REPLY_ALERT                             "%1% peers from DHT for %2%." 
     961        HAL_FILE_ERROR_ALERT                                    "OS reported error for file '%1%'; %2%" 
     962        HAL_DHT_REPLY_ALERT                                     "%1% peers from DHT for %2%." 
    963963        HAL_PEER_ALERT                                          "Peer %2%: %1%." 
    964964        HAL_PEER_BAN_ALERT                                      "Peer banned %2%. (%1%)" 
    965         HAL_HASH_FAIL_ALERT                             "Hash failed for piece %2% of %1%." 
     965        HAL_HASH_FAIL_ALERT                                     "Hash failed for piece %2% of %1%." 
    966966        HAL_URL_SEED_ALERT                                      "URL Seed %2%, %3%. (%1%)" 
    967         HAL_TRACKER_WARNING_ALERT               "Tracker warning: %2%! (%1%)" 
    968         HAL_TRACKER_ANNOUNCE_ALERT              "Tracker Announce. (%1%)" 
     967        HAL_TRACKER_WARNING_ALERT                               "Tracker warning: %2%! (%1%)" 
     968        HAL_TRACKER_ANNOUNCE_ALERT                              "Tracker Announce. (%1%)" 
    969969        HAL_TRACKER_ALERT                                       "Alert %2%, Status code: %4%, Times %3%. (%1%)" 
    970         HAL_TRACKER_REPLY_ALERT                 "%2%. %3% Peers. (%1%)" 
    971         HAL_FAST_RESUME_ALERT                           "Fast resume failed: %2%. (%1%)" 
    972         HAL_WRITE_RESUME_FAIL_ALERT             "Resume data generation failed. (%1%)" 
    973         HAL_WRITE_RESUME_ALERT                  "Resume data generated. (%1%)" 
    974         HAL_TORRENT_RESUME_ALERT                "Resuming torrent. (%1%)" 
    975         HAL_TORRENT_ERROR_PAUSE_ALERT   "Torrent error: %1% (%2%)" 
    976         HAL_PIECE_FINISHED_ALERT                        "Piece %2% finished. (%1%)" 
    977         HAL_BLOCK_FINISHED_ALERT                        "Block %2% of piece %3% finished. (%1%)" 
    978         HAL_BLOCK_DOWNLOADING_ALERT     "Block %2% of piece %3% downloading. (%1%)" 
    979         HAL_LISTEN_SUCCEEDED_ALERT              "Successfully %1%." 
    980         HAL_LISTEN_FAILED_ALERT                 "Failed, %1%" 
    981         HAL_LISTEN_V6_FAILED_ALERT              "IP version 6 listen attempt failed. Not serious." 
     970        HAL_TRACKER_REPLY_ALERT                         "%2%. %3% Peers. (%1%)" 
     971        HAL_FAST_RESUME_ALERT                                   "Fast resume failed: %2%. (%1%)" 
     972        HAL_WRITE_RESUME_FAIL_ALERT                             "Resume data generation failed. (%1%)" 
     973        HAL_WRITE_RESUME_ALERT                          "Resume data generated. (%1%)" 
     974        HAL_TORRENT_RESUME_ALERT                                "Resuming torrent. (%1%)" 
     975        HAL_TORRENT_ERROR_PAUSE_ALERT                   "Torrent error: %1% (%2%)" 
     976        HAL_PIECE_FINISHED_ALERT                                "Piece %2% finished. (%1%)" 
     977        HAL_BLOCK_FINISHED_ALERT                                "Block %2% of piece %3% finished. (%1%)" 
     978        HAL_BLOCK_DOWNLOADING_ALERT                     "Block %2% of piece %3% downloading. (%1%)" 
     979        HAL_LISTEN_SUCCEEDED_ALERT                              "Successfully %1%." 
     980        HAL_LISTEN_FAILED_ALERT                         "Failed, %1%" 
     981        HAL_LISTEN_V6_FAILED_ALERT                              "IP version 6 listen attempt failed. Not serious." 
    982982        HAL_IPFILTER_ALERT                                      "IP Filter blocked %1%, %2%." 
    983983 
    984         LBT_EVENT_TORRENT_FINISHED              "Torrent %1% finished." 
    985         LBT_EVENT_TORRENT_PAUSED                "Torrent %1% paused." 
    986         HAL_EVENT_TORRENTEXP                            "Torrent (%1%) exception caught: %2% from %3%." 
    987         HAL_EVENT_INVTORRENT                            "Invalid torrent (%1%) from %2%." 
     984        LBT_EVENT_TORRENT_FINISHED                              "Torrent %1% finished." 
     985        LBT_EVENT_TORRENT_PAUSED                                "Torrent %1% paused." 
     986        HAL_EVENT_TORRENTEXP                                    "Torrent (%1%) exception caught: %2% from %3%." 
     987        HAL_EVENT_INVTORRENT                                    "Invalid torrent (%1%) from %2%." 
    988988 
    989989        HAL_EVENT_EXP                                           "Exception caught: %1%, from %2%." 
    990990        HAL_EVENT_XML_EXP                                       "Xml Exception (%1%) with %2%." 
    991         HAL_EVENT_UNICODE_EXP                   "Unicode exception: %1%." 
    992         HAL_EVENT_UNCLASSIFIED                  "Bittorrent Event: %1%." 
     991        HAL_EVENT_UNICODE_EXP                                   "Unicode exception: %1%." 
     992        HAL_EVENT_UNCLASSIFIED                          "Bittorrent Event: %1%." 
    993993        HAL_EVENT_PEER                                          "Peer Event: %1%." 
    994994        HAL_EVENT_TRACKER                                       "Tracker Event: %1%." 
    995         HAL_EVENT_DEBUG                                 "Debug Event: %1%." 
     995        HAL_EVENT_DEBUG                                         "Debug Event: %1%." 
    996996        HAL_EVENT_DEV                                           "Dev Msg: %1%." 
    997         HAL_PORTMAP_TYPE_PMP                            "NAT-PMP" 
    998         HAL_PORTMAP_TYPE_UPNP                   "UPnP" 
     997        HAL_PORTMAP_TYPE_PMP                                    "NAT-PMP" 
     998        HAL_PORTMAP_TYPE_UPNP                                   "UPnP" 
    999999        HAL_AUTO_MANAGED                                        "Auto-managed" 
    10001000        HAL_UNMANAGED                                           "Unmanaged" 
    1001         HAL_MANAGED_DOWNLOADING         "Managed Downloading" 
    1002         HAL_MANAGED_SEEDING                             "Managed Seeding" 
    1003         HAL_BC_CACHE_GROUP_TEXT                 "Cache Status, Current Total Size : %1.2f MiB" 
     1001        HAL_MANAGED_DOWNLOADING                         "Managed Downloading" 
     1002        HAL_MANAGED_SEEDING                                     "Managed Seeding" 
     1003        HAL_BC_CACHE_GROUP_TEXT                         "Cache Status, Current Total Size : %1.2f MiB" 
    10041004END 
    10051005 
     
    10111011FONT 8, "MS Shell Dlg", 400, 0, 0x1 
    10121012BEGIN 
    1013     DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
    1014     PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
     1013        DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
     1014        PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
    10151015END 
    10161016 
     
    10201020FONT 8, "MS Shell Dlg", 400, 0, 0x1 
    10211021BEGIN 
    1022     DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
    1023     PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
     1022        DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
     1023        PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
    10241024END 
    10251025 
     
    10301030FONT 8, "MS Shell Dlg", 400, 0, 0x1 
    10311031BEGIN 
    1032     DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
    1033     PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
     1032        DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
     1033        PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
    10341034END 
    10351035 
     
    10381038FONT 8, "MS Shell Dlg", 400, 0, 0x1 
    10391039BEGIN 
    1040     DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
    1041     PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
     1040        DEFPUSHBUTTON   "OK",IDOK,129,7,50,14 
     1041        PUSHBUTTON      "Cancel",IDCANCEL,129,24,50,14 
    10421042END 
    10431043 
    10441044#endif 
    1045  
    1046  
  • trunk/sln/HaliteWix/Product.wxs

    r754 r764  
    33<?define VerGeneration = "0" ?> 
    44<?define VerMajor = "3" ?> 
    5 <?define VerMinor = "1" ?> 
    6 <?define VerBuild = "0745" ?> 
     5<?define VerMinor = "2" ?> 
     6<?define VerBuild = "0760" ?> 
    77 
    88<?define FullGMmbVersion = "$(var.VerGeneration).$(var.VerMajor).$(var.VerMinor) Build $(var.VerBuild)" ?> 
     
    5353                <Upgrade Id="$(var.UpgradeCode)"> 
    5454                        <UpgradeVersion  
    55                                 Minimum="0.3.0" 
     55                                Minimum="0.3.1" 
    5656                                IncludeMinimum="yes" 
    5757                                Maximum="$(var.ShortGMmbVersion)" 
  • trunk/src/HaliteWindow.cpp

    r763 r764  
    3131        closeToTray(false), 
    3232        confirmClose(true), 
    33         activeTab(0) 
     33        activeTab(0), 
     34        action_time_(boost::posix_time::not_a_date_time), 
     35        action_action_(TimePickerDlg::action_na) 
    3436{ 
    3537        rect.top = 10; 
     
    605607void HaliteWindow::exitCallback() 
    606608{ 
    607         HAL_DEV_MSG(L"In callback"); 
     609        HAL_DEV_MSG(L"In exit callback"); 
     610 
     611        PostMessage(WM_HALITE_UNCONDITIONAL_SHUTDOWN, 0, 0); 
     612} 
     613 
     614void HaliteWindow::logoffCallback() 
     615{ 
     616        HAL_DEV_MSG(L"In logoff callback"); 
     617 
     618        post_halite_function_ = bind(boost::function<BOOL (UINT, DWORD)>(ExitWindowsEx),  
     619                EWX_LOGOFF, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED); 
     620 
     621        PostMessage(WM_HALITE_UNCONDITIONAL_SHUTDOWN, 0, 0); 
     622} 
     623 
     624void HaliteWindow::shutdownCallback() 
     625{ 
     626        HAL_DEV_MSG(L"In shutdown callback"); 
     627 
     628        post_halite_function_ = bind(boost::function<BOOL (UINT, DWORD)>(ExitWindowsEx),  
     629                EWX_SHUTDOWN, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED); 
    608630 
    609631        PostMessage(WM_HALITE_UNCONDITIONAL_SHUTDOWN, 0, 0); 
     
    612634LRESULT HaliteWindow::OnAutoShutdown(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled) 
    613635{        
    614 /*      WTL::CMenuHandle m; 
    615         WTL::CMenu menu;         
    616  
    617         m.LoadMenu(HAL_SHUTDOWN_MENU); 
    618         menu.Attach(m.GetSubMenu(0)); 
    619  
    620         POINT ptPoint; 
    621         GetCursorPos(&ptPoint); 
    622         menu.TrackPopupMenu(0, ptPoint.x, ptPoint.y, m_hWnd);*/ 
    623  
    624 //      typedef ATL::CWinTraits<WS_VISIBLE | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_CENTER, WS_EX_DLGMODALFRAME> ; 
    625         typedef ATL::CWinTraits<WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | DTS_UPDOWN | DTS_TIMEFORMAT , 0>                                    CDateTimePickerCtrlTraits; 
    626         typedef WTL::CControlDialog<1598426, WTL::CDateTimePickerCtrl, CDateTimePickerCtrlTraits> CDateDialog; 
    627  
    628         boost::posix_time::time_duration time; 
    629         unsigned action; 
     636        boost::posix_time::ptime time = action_time_; 
     637        unsigned action = action_action_; 
    630638 
    631639        TimePickerDlg dd(time, action); 
    632         dd.DoModal(); 
    633  
    634         if (!time.is_not_a_date_time()) 
     640 
     641        if (dd.DoModal() == 1) 
    635642        {                
    636                 hal::event_log().post(shared_ptr<hal::EventDetail>( 
    637                         new hal::EventMsg(hal::wform(L"OnAutoShutdown %1% %2%") % hal::from_utf8(to_simple_string(time)) % action))); 
    638  
    639                 switch(action) 
     643                if (!time.is_not_a_date_time()) 
    640644                { 
    641                 case TimePickerDlg::action_pause: 
    642                         hal::bittorrent::Instance().schedual_action(time, hal::bit::action_pause); 
    643                         break; 
    644                 case TimePickerDlg::action_exit: 
    645                         hal::bittorrent::Instance().schedual_callback( 
    646                                 time, bind(&HaliteWindow::exitCallback, this)); 
    647                         break; 
    648                 case TimePickerDlg::action_logoff: 
    649                         post_halite_function_ = bind(boost::function<BOOL (UINT, DWORD)>(ExitWindowsEx),  
    650                                 EWX_LOGOFF, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED); 
    651  
    652                         hal::bittorrent::Instance().schedual_callback( 
    653                                 time, bind(&HaliteWindow::exitCallback, this)); 
    654                         break; 
    655                 case TimePickerDlg::action_shutdown: 
    656                         post_halite_function_ = bind(boost::function<BOOL (UINT, DWORD)>(ExitWindowsEx),  
    657                                 EWX_SHUTDOWN, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED); 
    658  
    659                         hal::bittorrent::Instance().schedual_callback( 
    660                                 time, bind(&HaliteWindow::exitCallback, this)); 
    661                         break; 
    662                 default: 
    663                         break; 
     645                        hal::event_log().post(shared_ptr<hal::EventDetail>( 
     646                                new hal::EventMsg(hal::wform(L"OnAutoShutdown %1% %2%")  
     647                                        % hal::from_utf8(to_simple_string(time)) % action))); 
     648 
     649                        switch(action) 
     650                        { 
     651                        case TimePickerDlg::action_pause: 
     652                                hal::bittorrent::Instance().schedual_action(time, hal::bit::action_pause); 
     653                                break; 
     654 
     655                        case TimePickerDlg::action_exit: 
     656                                hal::bittorrent::Instance().schedual_callback( 
     657                                        time, bind(&HaliteWindow::exitCallback, this)); 
     658                                break; 
     659 
     660                        case TimePickerDlg::action_logoff: 
     661 
     662                                hal::bittorrent::Instance().schedual_callback( 
     663                                        time, bind(&HaliteWindow::logoffCallback, this)); 
     664                                break; 
     665 
     666                        case TimePickerDlg::action_shutdown: 
     667 
     668                                hal::bittorrent::Instance().schedual_callback( 
     669                                        time, bind(&HaliteWindow::shutdownCallback, this)); 
     670                                break; 
     671 
     672                        case TimePickerDlg::action_na: 
     673                        default: 
     674                                action_time_ = boost::posix_time::not_a_date_time; 
     675                                hal::bittorrent::Instance().schedual_cancel(); 
     676                                return 0; 
     677                        } 
     678 
     679                        action_time_ = time; 
     680                        action_action_ = action; 
    664681                } 
     682                else 
     683                { 
     684                        action_time_ = boost::posix_time::not_a_date_time; 
     685                        hal::bittorrent::Instance().schedual_cancel(); 
     686                } 
    665687        } 
    666688        else 
    667689        {                
    668                 hal::event_log().post(shared_ptr<hal::EventDetail>( 
    669                         new hal::EventMsg(L"Not a date_time"))); 
    670         } 
    671  
    672 //      hal::bittorrent::Instance().schedual_callback( 
    673 //              boost::posix_time::hours(5), bind(&HaliteWindow::exitCallback, this)); 
     690                hal::event_log().post(shared_ptr<hal::EventDetail>(new hal::EventMsg(L"Not a date_time"))); 
     691        } 
    674692 
    675693        return 0; 
  • trunk/src/HaliteWindow.hpp

    r763 r764  
    198198        void setCorrectDialog(); 
    199199        void exitCallback(); 
     200        void logoffCallback(); 
     201        void shutdownCallback(); 
    200202 
    201203        friend class boost::serialization::access; 
     
    265267        bool confirmClose; 
    266268        int activeTab; 
     269 
     270        boost::posix_time::ptime action_time_; 
     271        unsigned action_action_; 
    267272}; 
    268273 
  • trunk/src/TimePickerDlg.hpp

    r762 r764  
    2121#define HAL_TIME_ACTION_SHUTDOWN                ID_TIME_DLG_BEGIN + 11 
    2222#define HAL_TIME_SETTEXT                        ID_TIME_DLG_BEGIN + 12 
    23  
     23#define HAL_TIME_ACTION_SET                     ID_TIME_DLG_BEGIN + 13 
     24#define HAL_TIME_ACTION_NO_ACTION               ID_TIME_DLG_BEGIN + 14 
     25#define HAL_TIME_ACTION_NOT_SET         ID_TIME_DLG_BEGIN + 15 
     26#define HAL_TIME_LABEL_SET_ACTION               ID_TIME_DLG_BEGIN + 16 
    2427 
    2528#ifndef RC_INVOKED 
     
    8689        enum timeout_actions 
    8790        { 
    88                 action_pause = 0, 
     91                action_na = 0, 
     92                action_pause, 
    8993                action_exit, 
    9094                action_logoff, 
     
    9296        }; 
    9397 
    94         TimePickerDlg(boost::posix_time::time_duration& time, unsigned& action) : 
     98        TimePickerDlg(boost::posix_time::ptime& time, unsigned& action) : 
    9599                time_ctrl_(bind(&TimePickerDlg::updateTimeoutDisplay, this)), 
    96100                date_ctrl_(bind(&TimePickerDlg::updateTimeoutDisplay, this)), 
     
    127131        BEGIN_WINDOW_MAP(thisClass, 6, 6, 3, 3) 
    128132                WMB_HEAD(WMB_COL(80), WMB_COL(_exp), WMB_COL(_exp)), 
     133                        WMB_ROW(_auto, HAL_TIME_LABEL_SET_ACTION, _r, _r),  
    129134                        WMB_ROW(_auto, HAL_TIME_EDITABOUT, HAL_TIME_ACTIONS),  
    130135                        WMB_ROW(_auto, HAL_TIME_SETTEXT, HAL_TIME_PICKER, HAL_TIME_DATE_PICKER),  
     
    144149                action_types.AddString(hal::app().res_wstr(HAL_TIME_ACTION_LOGOFF).c_str()); 
    145150                action_types.AddString(hal::app().res_wstr(HAL_TIME_ACTION_SHUTDOWN).c_str()); 
     151                action_types.AddString(hal::app().res_wstr(HAL_TIME_ACTION_NO_ACTION).c_str()); 
    146152                 
    147153                action_types.SetCurSel(0); 
    148154                OnActionChanged(0, HAL_TIME_ACTIONS, action_types); 
    149                 //action_ = 0; 
     155 
     156                if (!action_time_.is_not_a_date_time()) 
     157                { 
     158                        std::wstring action_str; 
     159 
     160                        switch (action_) 
     161                        { 
     162                        case TimePickerDlg::action_pause: 
     163                                action_str = hal::app().res_wstr(HAL_TIME_ACTION_PAUSEALL); 
     164                                break; 
     165                        case TimePickerDlg::action_exit: 
     166                                action_str = hal::app().res_wstr(HAL_TIME_ACTION_EXIT); 
     167                                break; 
     168                        case TimePickerDlg::action_logoff: 
     169                                action_str = hal::app().res_wstr(HAL_TIME_ACTION_LOGOFF); 
     170                                break; 
     171                        case TimePickerDlg::action_shutdown: 
     172                                action_str = hal::app().res_wstr(HAL_TIME_ACTION_SHUTDOWN); 
     173                                break; 
     174 
     175                        default: 
     176                                action_str = hal::app().res_wstr(IDS_NA); 
     177                        } 
     178 
     179                        SetDlgItemText(HAL_TIME_LABEL_SET_ACTION, (hal::wform(hal::app().res_wstr(HAL_TIME_ACTION_SET))  
     180                                % action_str % hal::from_utf8(to_simple_string(action_time_))).str().c_str()); 
     181                } 
     182                else 
     183                { 
     184                        SetDlgItemText(HAL_TIME_LABEL_SET_ACTION, hal::app().res_wstr(HAL_TIME_ACTION_NOT_SET).c_str()); 
     185                } 
    150186 
    151187                time_ctrl_.Attach(GetDlgItem(HAL_TIME_PICKER)); 
     
    180216                { 
    181217                        action_ = action_shutdown; 
     218                }        
     219                else if (str_buf.str() == hal::app().res_wstr(HAL_TIME_ACTION_NO_ACTION)) 
     220                { 
     221                        action_ = action_na; 
    182222                }                
    183223        } 
     
    219259                ptime now = second_clock::local_time(); 
    220260                 
    221  
    222                 SetDlgItemText(HAL_TIME_TIMEOUT_DISPLAY, hal::from_utf8(to_simple_string(time)).c_str()); 
    223                 SetDlgItemText(HAL_TIME_EDITABOUT, hal::from_utf8(to_simple_string(time)).c_str()); 
    224  
    225261                if (time > now) 
    226262                { 
     
    230266                                % time_left.hours() % time_left.minutes() % time_left.seconds()).str().c_str()); 
    231267 
    232                         action_time_ = time_left; 
     268                        hal::event_log().post(shared_ptr<hal::EventDetail>( 
     269                                new hal::EventMsg(hal::wform(L"updateTimeoutDisplay %1%")  
     270                                        % hal::from_utf8(to_simple_string(time_left))))); 
     271 
     272                        action_time_ = time; 
    233273                } 
    234274                else 
     275                { 
    235276                        action_time_ = not_a_date_time; 
    236  
    237                 hal::event_log().post(shared_ptr<hal::EventDetail>( 
    238                         new hal::EventMsg(hal::wform(L"updateTimeoutDisplay %1%") % hal::from_utf8(to_simple_string(action_time_))))); 
     277                        action_ = action_na; 
     278                } 
    239279        } 
    240280 
     
    243283 
    244284        unsigned& action_; 
    245         boost::posix_time::time_duration& action_time_; 
     285        boost::posix_time::ptime& action_time_; 
    246286}; 
    247287 
  • trunk/src/halSession.cpp

    r761 r764  
    416416        HAL_DEV_MSG(hal::wform(L"Schedual absolute action %1% at %2%") % action % time); 
    417417 
    418         action_timer_.cancel(); 
    419  
    420         action_timer_.expires_at(time); 
    421         action_timer_.async_wait(bind(&bit_impl::execute_action, this, _1, action)); 
    422 } 
     418        boost::posix_time::ptime now = boost::posix_time::second_clock::local_time(); 
     419        assert(time > now); 
     420 
     421        schedual_action(time - now, action); 
     422} 
     423 
    423424void bit_impl::schedual_action(boost::posix_time::time_duration duration, bit::timeout_actions action) 
    424425{ 
    425426        HAL_DEV_MSG(hal::wform(L"Schedual relative action %1% in %2%") % action % duration); 
    426427 
    427         action_timer_.cancel(); 
     428        schedual_cancel(); 
    428429 
    429430        action_timer_.expires_from_now(duration); 
     
    435436        HAL_DEV_MSG(hal::wform(L"Schedual absolute callback %1%") % time); 
    436437 
    437         action_timer_.cancel(); 
    438  
    439         action_timer_.expires_at(time); 
    440         action_timer_.async_wait(bind(&bit_impl::execute_callback, this, _1, action)); 
    441 } 
     438        boost::posix_time::ptime now = boost::posix_time::second_clock::local_time(); 
     439        assert(time > now); 
     440 
     441        schedual_callback(time - now, action); 
     442} 
     443 
    442444void bit_impl::schedual_callback(boost::posix_time::time_duration duration, action_callback_t action) 
    443445{ 
    444446        HAL_DEV_MSG(hal::wform(L"Schedual relative callback %1%") % duration); 
    445447 
    446         action_timer_.cancel(); 
     448        schedual_cancel(); 
    447449 
    448450        action_timer_.expires_from_now(duration); 
    449451        action_timer_.async_wait(bind(&bit_impl::execute_callback, this, _1, action)); 
    450452}        
     453 
     454void bit_impl::schedual_cancel() 
     455{ 
     456        if (action_timer_.cancel() > 0) 
     457                HAL_DEV_MSG(L"Schedualed action canceled"); 
     458} 
    451459 
    452460void bit_impl::start_alert_handler() 
  • trunk/src/halSession.hpp

    r761 r764  
    740740        void alert_handler(); 
    741741 
    742         void add_torrent(wpath file, wpath saveDirectory, bool startStopped, bool managed, bit::allocations alloc,  
     742        void add_torrent(wpath file, wpath saveDirectory, bool start_stopped, bool managed, bit::allocations alloc,  
    743743                        boost::filesystem::wpath moveToDirectory)  
    744744        { 
     
    779779 
    780780                        TIp->start(); 
     781 
     782                        if (!start_stopped) TIp->resume(); 
    781783                } 
    782784                 
     
    965967 
    966968        void service_thread(size_t); 
    967         void alert_handler_wait(const boost::system::error_code& /*e*/); 
     969        void alert_handler_wait(const boost::system::error_code&); 
    968970 
    969971        void execute_action(const boost::system::error_code&, bit::timeout_actions action); 
     
    988990        void schedual_callback(boost::posix_time::ptime time, action_callback_t action); 
    989991        void schedual_callback(boost::posix_time::time_duration duration, action_callback_t action);     
     992        void schedual_cancel(); 
    990993         
    991994        boost::optional<libt::session> session_;         
  • trunk/src/halTorrent.cpp

    r760 r764  
    838838} 
    839839 
     840void bit::schedual_cancel() 
     841{ 
     842        return pimpl()->schedual_cancel(); 
     843} 
     844 
    840845bit::torrent::torrent() 
    841846{} 
  • trunk/src/halTorrent.hpp

    r760 r764  
    790790        void schedual_callback(boost::posix_time::ptime time, action_callback_t); 
    791791        void schedual_callback(boost::posix_time::time_duration duration, action_callback_t); 
     792 
     793        void schedual_cancel(); 
    792794         
    793795//      friend bit& bittorrent(); 
  • trunk/src/halTorrentDefines.hpp

    r763 r764  
    77#pragma once 
    88 
    9 #define HALITE_VERSION                                                  0, 3, 2, 760 
    10 #define HALITE_VERSION_STRING                                   "v 0.3.2 dev 760" 
    11 #define HALITE_FINGERPRINT                                              "HL", 0, 3, 2, 0 
     9#define HALITE_VERSION                                          0, 3, 2, 760 
     10#define HALITE_VERSION_STRING                           "v 0.3.2 dev 760" 
     11#define HALITE_FINGERPRINT                                      "HL", 0, 3, 2, 0 
    1212 
    1313#ifndef HAL_NA 
    14 #define HAL_NA 40013 
     14#define HAL_NA                                                  40013 
    1515#endif 
    1616 
    1717#define HAL_TORRENT_EXT_BEGIN                           41000 
    18 #define LBT_EVENT_TORRENT_FINISHED                      HAL_TORRENT_EXT_BEGIN + 1 
     18#define LBT_EVENT_TORRENT_FINISHED                              HAL_TORRENT_EXT_BEGIN + 1 
    1919#define HAL_PEER_BAN_ALERT                                      HAL_TORRENT_EXT_BEGIN + 2 
    2020#define HAL_HASH_FAIL_ALERT                                     HAL_TORRENT_EXT_BEGIN + 3 
    2121#define HAL_URL_SEED_ALERT                                      HAL_TORRENT_EXT_BEGIN + 5 
    22 #define HAL_TRACKER_WARNING_ALERT                       HAL_TORRENT_EXT_BEGIN + 4 
    23 #define HAL_TRACKER_ANNOUNCE_ALERT              HAL_TORRENT_EXT_BEGIN + 6 
    24 #define HAL_TRACKER_ALERT                                               HAL_TORRENT_EXT_BEGIN + 7 
     22#define HAL_TRACKER_WARNING_ALERT                               HAL_TORRENT_EXT_BEGIN + 4 
     23#define HAL_TRACKER_ANNOUNCE_ALERT                      HAL_TORRENT_EXT_BEGIN + 6 
     24#define HAL_TRACKER_ALERT                                       HAL_TORRENT_EXT_BEGIN + 7 
    2525#define HAL_TRACKER_REPLY_ALERT                         HAL_TORRENT_EXT_BEGIN + 8 
    26 #define LBT_EVENT_TORRENT_PAUSED                        HAL_TORRENT_EXT_BEGIN + 9 
     26#define LBT_EVENT_TORRENT_PAUSED                                HAL_TORRENT_EXT_BEGIN + 9 
    2727#define HAL_FAST_RESUME_ALERT                           HAL_TORRENT_EXT_BEGIN + 10 
    2828#define HAL_PIECE_FINISHED_ALERT                                HAL_TORRENT_EXT_BEGIN + 11 
    29 #define HAL_BLOCK_FINISHED_ALERT                        HAL_TORRENT_EXT_BEGIN + 12 
    30 #define HAL_BLOCK_DOWNLOADING_ALERT             HAL_TORRENT_EXT_BEGIN + 13 
     29#define HAL_BLOCK_FINISHED_ALERT                                HAL_TORRENT_EXT_BEGIN + 12 
     30#define HAL_BLOCK_DOWNLOADING_ALERT                     HAL_TORRENT_EXT_BEGIN + 13 
    3131#define HAL_LISTEN_SUCCEEDED_ALERT                      HAL_TORRENT_EXT_BEGIN + 14 
    3232#define HAL_LISTEN_FAILED_ALERT                         HAL_TORRENT_EXT_BEGIN + 15 
    33 #define HAL_IPFILTER_ALERT                                              HAL_TORRENT_EXT_BEGIN + 16 
    34 #define HAL_INCORRECT_ENCODING_LEVEL            HAL_TORRENT_EXT_BEGIN + 17 
    35 #define HAL_INCORRECT_CONNECT_POLICY            HAL_TORRENT_EXT_BEGIN + 18 
    36 #define HAL_PEER_ALERT                                                  HAL_TORRENT_EXT_BEGIN + 19 
    37 #define HAL_LISTEN_V6_FAILED_ALERT                      HAL_TORRENT_EXT_BEGIN + 20 
    38 #define HAL_TORRENT_LOAD_FILTERS                        HAL_TORRENT_EXT_BEGIN + 21 
     33#define HAL_IPFILTER_ALERT                                      HAL_TORRENT_EXT_BEGIN + 16 
     34#define HAL_INCORRECT_ENCODING_LEVEL                    HAL_TORRENT_EXT_BEGIN + 17 
     35#define HAL_INCORRECT_CONNECT_POLICY                    HAL_TORRENT_EXT_BEGIN + 18 
     36#define HAL_PEER_ALERT                                          HAL_TORRENT_EXT_BEGIN + 19 
     37#define HAL_LISTEN_V6_FAILED_ALERT                              HAL_TORRENT_EXT_BEGIN + 20 
     38#define HAL_TORRENT_LOAD_FILTERS                                HAL_TORRENT_EXT_BEGIN + 21 
    3939#define HAL_EXTERNAL_IP_ALERT                                   HAL_TORRENT_EXT_BEGIN + 22 
    40 #define HAL_PORTMAP_ERROR_ALERT                 HAL_TORRENT_EXT_BEGIN + 23 
    41 #define HAL_PORTMAP_ALERT                                               HAL_TORRENT_EXT_BEGIN + 24 
    42 #define HAL_PORTMAP_TYPE_PMP                            HAL_TORRENT_EXT_BEGIN + 25                       
     40#define HAL_PORTMAP_ERROR_ALERT                         HAL_TORRENT_EXT_BEGIN + 23 
     41#define HAL_PORTMAP_ALERT                                       HAL_TORRENT_EXT_BEGIN + 24 
     42#define HAL_PORTMAP_TYPE_PMP                                    HAL_TORRENT_EXT_BEGIN + 25                       
    4343#define HAL_PORTMAP_TYPE_UPNP                           HAL_TORRENT_EXT_BEGIN + 26 
    4444#define HAL_FILE_ERROR_ALERT                                    HAL_TORRENT_EXT_BEGIN + 27 
    4545#define HAL_DHT_REPLY_ALERT                                     HAL_TORRENT_EXT_BEGIN + 28 
    4646#define HAL_WRITE_RESUME_ALERT                          HAL_TORRENT_EXT_BEGIN + 29 
    47 #define HAL_WRITE_RESUME_FAIL_ALERT             HAL_TORRENT_EXT_BEGIN + 30 
    48 #define HAL_TORRENT_RESUME_ALERT                        HAL_TORRENT_EXT_BEGIN + 31 
    49 #define HAL_TORRENT_ERROR_PAUSE_ALERT           HAL_TORRENT_EXT_BEGIN + 32 
     47#define HAL_WRITE_RESUME_FAIL_ALERT                     HAL_TORRENT_EXT_BEGIN + 30 
     48#define HAL_TORRENT_RESUME_ALERT                                HAL_TORRENT_EXT_BEGIN + 31 
     49#define HAL_TORRENT_ERROR_PAUSE_ALERT                   HAL_TORRENT_EXT_BEGIN + 32 
    5050 
    5151#define HAL_TORRENT_INT_BEGIN                           42000 
    5252#define HAL_PEER_INTERESTING                                    HAL_TORRENT_INT_BEGIN + 1 
    5353#define HAL_PEER_CHOKED                                         HAL_TORRENT_INT_BEGIN + 2 
    54 #define HAL_PEER_REMOTE_INTERESTING             HAL_TORRENT_INT_BEGIN + 3 
     54#define HAL_PEER_REMOTE_INTERESTING                     HAL_TORRENT_INT_BEGIN + 3 
    5555#define HAL_PEER_REMOTE_CHOKED                          HAL_TORRENT_INT_BEGIN + 4 
    56 #define HAL_PEER_SUPPORT_EXTENSIONS             HAL_TORRENT_INT_BEGIN + 5 
    57 #define HAL_PEER_LOCAL_CONNECTION                       HAL_TORRENT_INT_BEGIN + 6 
     56#define HAL_PEER_SUPPORT_EXTENSIONS                     HAL_TORRENT_INT_BEGIN + 5 
     57#define HAL_PEER_LOCAL_CONNECTION                               HAL_TORRENT_INT_BEGIN + 6 
    5858#define HAL_PEER_HANDSHAKE                                      HAL_TORRENT_INT_BEGIN + 7 
    5959#define HAL_PEER_CONNECTING                                     HAL_TORRENT_INT_BEGIN + 8 
    60 #define HAL_PEER_QUEUED                                         HAL_TORRENT_INT_BEGIN + 9 
     60#define HAL_PEER_QUEUED                                 HAL_TORRENT_INT_BEGIN + 9 
    6161#define HAL_PEER_RC4_ENCRYPTED                          HAL_TORRENT_INT_BEGIN + 10 
    62 #define HAL_PEER_PLAINTEXT_ENCRYPTED            HAL_TORRENT_INT_BEGIN + 11 
    63 #define HAL_TORRENT_QUEUED_CHECKING             HAL_TORRENT_INT_BEGIN + 12 
     62#define HAL_PEER_PLAINTEXT_ENCRYPTED                    HAL_TORRENT_INT_BEGIN + 11 
     63#define HAL_TORRENT_QUEUED_CHECKING                     HAL_TORRENT_INT_BEGIN + 12 
    6464#define HAL_TORRENT_CHECKING_FILES                      HAL_TORRENT_INT_BEGIN + 13 
    6565#define HAL_TORRENT_CONNECTING                          HAL_TORRENT_INT_BEGIN + 14 
    66 #define HAL_TORRENT_DOWNLOADING                 HAL_TORRENT_INT_BEGIN + 15 
     66#define HAL_TORRENT_DOWNLOADING                         HAL_TORRENT_INT_BEGIN + 15 
    6767#define HAL_TORRENT_FINISHED                                    HAL_TORRENT_INT_BEGIN + 16 
    6868#define HAL_TORRENT_SEEDING                                     HAL_TORRENT_INT_BEGIN + 17 
     
    7373#define HAL_TORRENT_STOPPING                                    HAL_TORRENT_INT_BEGIN + 22 
    7474#define HAL_TORRENT_PAUSING                                     HAL_TORRENT_INT_BEGIN + 23 
    75 #define HAL_TORRENT_METADATA                                    HAL_TORRENT_INT_BEGIN + 24 
    76 #define HAL_NEWT_CREATING_TORRENT                       HAL_TORRENT_INT_BEGIN + 25 
    77 #define HAL_NEWT_HASHING_PIECES                 HAL_TORRENT_INT_BEGIN + 26 
    78 #define HAL_TORRENT_IMPORT_FILTERS              HAL_TORRENT_INT_BEGIN + 27 
    79 #define HAL_INT_NEWT_ADD_PEERS_WEB              HAL_TORRENT_INT_BEGIN + 28 
    80 #define HAL_INT_NEWT_ADD_PEERS_DHT              HAL_TORRENT_INT_BEGIN + 29 
    81 #define HAL_NEWT_CREATION_CANCELED              HAL_TORRENT_INT_BEGIN + 30 
     75#define HAL_TORRENT_METADATA                            HAL_TORRENT_INT_BEGIN + 24 
     76#define HAL_NEWT_CREATING_TORRENT                               HAL_TORRENT_INT_BEGIN + 25 
     77#define HAL_NEWT_HASHING_PIECES                         HAL_TORRENT_INT_BEGIN + 26 
     78#define HAL_TORRENT_IMPORT_FILTERS                              HAL_TORRENT_INT_BEGIN + 27 
     79#define HAL_INT_NEWT_ADD_PEERS_WEB                      HAL_TORRENT_INT_BEGIN + 28 
     80#define HAL_INT_NEWT_ADD_PEERS_DHT                      HAL_TORRENT_INT_BEGIN + 29 
     81#define HAL_NEWT_CREATION_CANCELED                      HAL_TORRENT_INT_BEGIN + 30 
    8282#define HAL_TORRENT_IN_ERROR                                    HAL_TORRENT_INT_BEGIN + 31 
Note: See TracChangeset for help on using the changeset viewer.