Changeset 888


Ignore:
Timestamp:
Sep 22, 2006, 2:34:10 PM (15 years ago)
Author:
livings124
Message:

show nat status in prefs

Location:
branches/nat-traversal/macosx
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/nat-traversal/macosx/English.lproj/PrefsWindow.nib/classes.nib

    r880 r888  
    4848                fImportFolderPopUp = NSPopUpButton;
    4949                fNatCheck = NSButton;
     50                fNatStatusField = NSTextField;
    5051                fNetworkView = NSView;
    5152                fPlayDownloadSoundCheck = NSButton;
  • branches/nat-traversal/macosx/English.lproj/PrefsWindow.nib/info.nib

    r886 r888  
    1212                <string>88 406 582 290 0 0 1152 842 </string>
    1313                <key>41</key>
    14                 <string>65 318 577 302 0 0 1152 842 </string>
     14                <string>287 428 577 302 0 0 1152 842 </string>
    1515                <key>66</key>
    16                 <string>287 507 577 144 0 0 1152 842 </string>
     16                <string>181 326 577 182 0 0 1152 842 </string>
    1717        </dict>
    1818        <key>IBFramework Version</key>
     
    2222                <integer>253</integer>
    2323        </array>
     24        <key>IBOpenObjects</key>
     25        <array>
     26                <integer>66</integer>
     27                <integer>41</integer>
     28        </array>
    2429        <key>IBSystem Version</key>
    2530        <string>8J135</string>
  • branches/nat-traversal/macosx/PrefsController.h

    r880 r888  
    5151                            * fSpeedLimitAutoCheck;
    5252
    53     IBOutlet NSTextField    * fPortField;
     53    IBOutlet NSTextField    * fPortField, * fNatStatusField;
    5454    IBOutlet NSButton       * fNatCheck;
     55    NSTimer                 * fNatStatusTimer;
    5556   
    5657    IBOutlet NSButton       * fRatioCheck;
     
    8687- (void) setPort:   (id) sender;
    8788- (void) setNat:    (id) sender;
     89- (void) updateNatStatus;
    8890
    8991- (void) setSpeedLimit: (id) sender;
  • branches/nat-traversal/macosx/PrefsController.m

    r880 r888  
    7676- (void) dealloc
    7777{
     78    [fNatStatusTimer invalidate];
     79
    7880    [fDownloadFolder release];
    7981    [fImportFolder release];
     
    128130        tr_natTraversalEnable(fHandle);
    129131    [fNatCheck setState: natShouldEnable];
     132   
     133    [fNatStatusField setHidden: !natShouldEnable];
     134    [self updateNatStatus];
     135    fNatStatusTimer = [NSTimer scheduledTimerWithTimeInterval: 5.0 target: self
     136                        selector: @selector(updateNatStatus) userInfo: nil repeats: YES];
    130137   
    131138    //checks for old version upload speed of -1
     
    351358        tr_setBindPort(fHandle, bindPort);
    352359        [fDefaults setInteger: bindPort forKey: @"BindPort"];
     360       
     361        [self updateNatStatus];
    353362    }
    354363}
     
    359368    enable ? tr_natTraversalEnable(fHandle) : tr_natTraversalDisable(fHandle);
    360369    [fDefaults setBool: enable forKey: @"NatTraversal"];
     370   
     371    [fNatStatusField setHidden: !enable];
     372    [self updateNatStatus];
     373}
     374
     375- (void) updateNatStatus
     376{
     377    if ([fNatStatusField isHidden])
     378        return;
     379   
     380    int status = tr_natTraversalStatus(fHandle);
     381    if (status == 2)
     382        [fNatStatusField setStringValue: @"Ports have been successfully mapped."];
     383    else if (status == 3 || status == 4)
     384        [fNatStatusField setStringValue: @"Error mapping ports."];
     385    else
     386        [fNatStatusField setStringValue: @""];
    361387}
    362388
Note: See TracChangeset for help on using the changeset viewer.