Changeset 11421


Ignore:
Timestamp:
Nov 15, 2010, 12:25:18 AM (11 years ago)
Author:
livings124
Message:

#3742 entering a blocklist URL should register while typing (and support undo) - boo for glue code replacing bindings!

Location:
trunk/macosx
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/macosx/PrefsController.h

    r11369 r11421  
    4646    IBOutlet NSTextField * fPeersGlobalField, * fPeersTorrentField,
    4747                        * fBlocklistURLField, * fBlocklistMessageField, * fBlocklistDateField;
     48    IBOutlet NSButton * fBlocklistButton;
    4849   
    4950    PortChecker * fPortChecker;
     
    9192- (void) setBlocklistAutoUpdate: (id) sender;
    9293- (void) updateBlocklistFields;
     94- (void) updateBlocklistURLField;
     95- (void) updateBlocklistButton;
    9396
    9497- (void) setAutoStartDownloads: (id) sender;
  • trunk/macosx/PrefsController.m

    r11417 r11421  
    216216   
    217217    //set blocklist
     218    NSString * blocklistURL = [fDefaults stringForKey: @"BlocklistURL"];
     219    if (blocklistURL)
     220        [fBlocklistURLField setStringValue: blocklistURL];
     221   
     222    [self updateBlocklistButton];
    218223    [self updateBlocklistFields];
     224   
    219225    [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(updateBlocklistFields)
    220226        name: @"BlocklistUpdated" object: nil];
     227   
     228    [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(updateBlocklistURLField)
     229        name: NSControlTextDidChangeNotification object: fBlocklistURLField];
    221230   
    222231    //set rpc port
     
    481490   
    482491    [[BlocklistScheduler scheduler] updateSchedule];
    483 }
    484 
    485 - (void) setBlocklistURL: (id) sender
    486 {
    487     tr_blocklistSetURL(fHandle, [[fDefaults stringForKey: @"BlocklistURL"] UTF8String]);
     492   
     493    [self updateBlocklistButton];
    488494}
    489495
     
    542548}
    543549
     550- (void) updateBlocklistURLField
     551{
     552    NSString * blocklistString = [fBlocklistURLField stringValue];
     553   
     554    [fDefaults setObject: blocklistString forKey: @"BlocklistURL"];
     555    tr_blocklistSetURL(fHandle, [blocklistString UTF8String]);
     556   
     557    [self updateBlocklistButton];
     558}
     559
     560- (void) updateBlocklistButton
     561{
     562    NSString * blocklistString = [fDefaults objectForKey: @"BlocklistURL"];
     563    const BOOL enable = (blocklistString && ![blocklistString isEqualToString: @""])
     564                            && [fDefaults boolForKey: @"BlocklistNew"];
     565    [fBlocklistButton setEnabled: enable];
     566}
     567
    544568- (void) setAutoStartDownloads: (id) sender
    545569{
     
    11601184        //speed limit schedule times and day handled by bindings
    11611185       
     1186        [fBlocklistURLField setStringValue: blocklistURL];
     1187        [self updateBlocklistButton];
    11621188        [self updateBlocklistFields];
    11631189       
  • trunk/macosx/en.lproj/PrefsWindow.xib

    r11399 r11421  
    1414                        <bool key="EncodedWithXMLCoder">YES</bool>
    1515                        <integer value="1361"/>
    16                         <integer value="256"/>
    1716                </object>
    1817                <object class="NSArray" key="IBDocument.PluginDependencies">
     
    435434                        </object>
    436435                        <object class="NSCustomView" id="314557528">
    437                                 <reference key="NSNextResponder"/>
     436                                <nil key="NSNextResponder"/>
    438437                                <int key="NSvFlags">256</int>
    439438                                <object class="NSMutableArray" key="NSSubviews">
     
    17451744                                </object>
    17461745                                <string key="NSFrameSize">{542, 331}</string>
    1747                                 <reference key="NSSuperview"/>
    17481746                                <string key="NSClassName">NSView</string>
    17491747                                <string key="NSExtension">NSResponder</string>
     
    30833081                                                <object class="NSTextFieldCell" key="NSCell" id="1062646585">
    30843082                                                        <int key="NSCellFlags">-1804468671</int>
    3085                                                         <int key="NSCellFlags2">272634880</int>
     3083                                                        <int key="NSCellFlags2">272630784</int>
    30863084                                                        <string key="NSContents"/>
    30873085                                                        <reference key="NSSupport" ref="86725571"/>
     
    42264224                                                                <string key="NSFrame">{{1, 1}, {291, 76}}</string>
    42274225                                                                <reference key="NSSuperview" ref="122119447"/>
     4226                                                                <reference key="NSNextKeyView" ref="173651346"/>
    42284227                                                                <reference key="NSDocView" ref="173651346"/>
    42294228                                                                <reference key="NSBGColor" ref="729660797"/>
     
    42524251                                                <string key="NSFrame">{{103, 96}, {308, 78}}</string>
    42534252                                                <reference key="NSSuperview" ref="810116101"/>
     4253                                                <reference key="NSNextKeyView" ref="206862330"/>
    42544254                                                <int key="NSsFlags">18</int>
    42554255                                                <reference key="NSVScroller" ref="220703981"/>
     
    43704370                        </object>
    43714371                        <object class="NSUserDefaultsController" id="356871564">
    4372                                 <object class="NSMutableArray" key="NSDeclaredKeys">
    4373                                         <bool key="EncodedWithXMLCoder">YES</bool>
    4374                                         <string>BlocklistNew</string>
    4375                                         <string>BlocklistNew.length</string>
    4376                                         <string>BlocklistURL</string>
    4377                                 </object>
    43784372                                <bool key="NSSharedInstance">YES</bool>
    43794373                        </object>
     
    73317325                                        <object class="IBBindingConnection" key="connection">
    73327326                                                <string key="label">enabled: values.BlocklistNew</string>
    7333                                                 <reference key="source" ref="826556979"/>
    7334                                                 <reference key="destination" ref="356871564"/>
    7335                                                 <object class="NSNibBindingConnector" key="connector" id="2236">
    7336                                                         <reference key="NSSource" ref="826556979"/>
    7337                                                         <reference key="NSDestination" ref="356871564"/>
    7338                                                         <string key="NSLabel">enabled: values.BlocklistNew</string>
    7339                                                         <string key="NSBinding">enabled</string>
    7340                                                         <string key="NSKeyPath">values.BlocklistNew</string>
    7341                                                         <int key="NSNibBindingConnectorVersion">2</int>
    7342                                                 </object>
    7343                                         </object>
    7344                                         <int key="connectionID">1990</int>
    7345                                 </object>
    7346                                 <object class="IBConnectionRecord">
    7347                                         <object class="IBBindingConnection" key="connection">
    7348                                                 <string key="label">enabled: values.BlocklistNew</string>
    73497327                                                <reference key="source" ref="552496111"/>
    73507328                                                <reference key="destination" ref="356871564"/>
     
    74017379                                </object>
    74027380                                <object class="IBConnectionRecord">
    7403                                         <object class="IBActionConnection" key="connection">
    7404                                                 <string key="label">setBlocklistURL:</string>
     7381                                        <object class="IBOutletConnection" key="connection">
     7382                                                <string key="label">fBlocklistButton</string>
    74057383                                                <reference key="source" ref="511492310"/>
    7406                                                 <reference key="destination" ref="552496111"/>
    7407                                         </object>
    7408                                         <int key="connectionID">1995</int>
    7409                                 </object>
    7410                                 <object class="IBConnectionRecord">
    7411                                         <object class="IBBindingConnection" key="connection">
    7412                                                 <string key="label">value: values.BlocklistURL</string>
    7413                                                 <reference key="source" ref="552496111"/>
    7414                                                 <reference key="destination" ref="356871564"/>
    7415                                                 <object class="NSNibBindingConnector" key="connector">
    7416                                                         <reference key="NSSource" ref="552496111"/>
    7417                                                         <reference key="NSDestination" ref="356871564"/>
    7418                                                         <string key="NSLabel">value: values.BlocklistURL</string>
    7419                                                         <string key="NSBinding">value</string>
    7420                                                         <string key="NSKeyPath">values.BlocklistURL</string>
    7421                                                         <int key="NSNibBindingConnectorVersion">2</int>
    7422                                                 </object>
    7423                                         </object>
    7424                                         <int key="connectionID">1996</int>
    7425                                 </object>
    7426                                 <object class="IBConnectionRecord">
    7427                                         <object class="IBBindingConnection" key="connection">
    7428                                                 <string key="label">enabled2: values.BlocklistURL</string>
    7429                                                 <reference key="source" ref="826556979"/>
    7430                                                 <reference key="destination" ref="356871564"/>
    7431                                                 <object class="NSNibBindingConnector" key="connector">
    7432                                                         <reference key="NSSource" ref="826556979"/>
    7433                                                         <reference key="NSDestination" ref="356871564"/>
    7434                                                         <string key="NSLabel">enabled2: values.BlocklistURL</string>
    7435                                                         <string key="NSBinding">enabled2</string>
    7436                                                         <string key="NSKeyPath">values.BlocklistURL</string>
    7437                                                         <object class="NSDictionary" key="NSOptions">
    7438                                                                 <bool key="EncodedWithXMLCoder">YES</bool>
    7439                                                                 <object class="NSArray" key="dict.sortedKeys">
    7440                                                                         <bool key="EncodedWithXMLCoder">YES</bool>
    7441                                                                         <string>NSMultipleValuesPlaceholder</string>
    7442                                                                         <string>NSNoSelectionPlaceholder</string>
    7443                                                                         <string>NSNotApplicablePlaceholder</string>
    7444                                                                         <string>NSNullPlaceholder</string>
    7445                                                                         <string>NSValueTransformerName</string>
    7446                                                                 </object>
    7447                                                                 <object class="NSMutableArray" key="dict.values">
    7448                                                                         <bool key="EncodedWithXMLCoder">YES</bool>
    7449                                                                         <integer value="-1"/>
    7450                                                                         <integer value="-1"/>
    7451                                                                         <integer value="-1"/>
    7452                                                                         <integer value="-1"/>
    7453                                                                         <string>NSIsNotNil</string>
    7454                                                                 </object>
    7455                                                         </object>
    7456                                                         <reference key="NSPreviousConnector" ref="2236"/>
    7457                                                         <int key="NSNibBindingConnectorVersion">2</int>
    7458                                                 </object>
    7459                                         </object>
    7460                                         <int key="connectionID">2026</int>
     7384                                                <reference key="destination" ref="826556979"/>
     7385                                        </object>
     7386                                        <int key="connectionID">2031</int>
    74617387                                </object>
    74627388                        </object>
     
    1131511241                        </object>
    1131611242                        <nil key="sourceID"/>
    11317                         <int key="maxID">2026</int>
     11243                        <int key="maxID">2031</int>
    1131811244                </object>
    1131911245                <object class="IBClassDescriber" key="IBDocument.Classes">
     
    1196311889                                                        <string>fAutoSpeedDayTypePopUp</string>
    1196411890                                                        <string>fBandwidthView</string>
     11891                                                        <string>fBlocklistButton</string>
    1196511892                                                        <string>fBlocklistDateField</string>
    1196611893                                                        <string>fBlocklistMessageField</string>
     
    1200011927                                                        <string>NSPopUpButton</string>
    1200111928                                                        <string>NSView</string>
     11929                                                        <string>NSButton</string>
    1200211930                                                        <string>NSTextField</string>
    1200311931                                                        <string>NSTextField</string>
     
    1204011968                                                        <string>fAutoSpeedDayTypePopUp</string>
    1204111969                                                        <string>fBandwidthView</string>
     11970                                                        <string>fBlocklistButton</string>
    1204211971                                                        <string>fBlocklistDateField</string>
    1204311972                                                        <string>fBlocklistMessageField</string>
     
    1208212011                                                                <string key="name">fBandwidthView</string>
    1208312012                                                                <string key="candidateClassName">NSView</string>
     12013                                                        </object>
     12014                                                        <object class="IBToOneOutletInfo">
     12015                                                                <string key="name">fBlocklistButton</string>
     12016                                                                <string key="candidateClassName">NSButton</string>
    1208412017                                                        </object>
    1208512018                                                        <object class="IBToOneOutletInfo">
Note: See TracChangeset for help on using the changeset viewer.