Changeset 993

Show
Ignore:
Timestamp:
07/27/08 01:34:30 (1 month ago)
Author:
MaierMan
Message:

* Modularize Prefs more
* No need for special multibyte handling
* (Fix Prompts/AuthPrompts in manager)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/chrome/content/about/notice.xul

    r991 r993  
    3434                        var version = params.GetString(0); 
    3535                        try { 
    36                                 Preferences.setDTA('version', version); 
     36                                Preferences.setExt('version', version); 
    3737                        } 
    3838                        catch (ex) { 
  • trunk/chrome/content/common/bindings.xml

    r961 r993  
    120120                                        } 
    121121                                        try { 
    122                                                 return eval(DTA_preferences.getMultiByteDTA(this._pref, rv)); 
     122                                                return eval(DTA_preferences.getExt(this._pref, rv)); 
    123123                                        } 
    124124                                        catch (ex) { 
     
    128128                                ]]></getter> 
    129129                        </property> 
    130                         <property name="_max" onget="return DTA_preferences.getDTA('history', 5);"/> 
     130                        <property name="_max" onget="return DTA_preferences.getExt('history', 5);"/> 
    131131                        <property name="inputField" onget="return this._list.inputField"/> 
    132132                        <property name="value" onget="return this._list.label"> 
     
    183183                                        } 
    184184                                        try { 
    185                                                 DTA_preferences.setMultiByteDTA(this._pref, outValues.toSource()); 
     185                                                DTA_preferences.setExt(this._pref, outValues.toSource()); 
    186186                                        } 
    187187                                        catch (ex) { 
     
    192192                        <method name="clear"> 
    193193                                <body> 
    194                                         DTA_preferences.resetDTA(this._pref); 
     194                                        DTA_preferences.resetExt(this._pref); 
    195195                                </body> 
    196196                        </method> 
  • trunk/chrome/content/common/internalFunctions.js

    r961 r993  
    299299        playSound: function(name) { 
    300300                try { 
    301                         if (Preferences.getDTA("sounds." + name, false)) { 
     301                        if (Preferences.getExt("sounds." + name, false)) { 
    302302                                new SoundFactory(("chrome://dta/skin/sounds/" + name + ".wav").toURI()); 
    303303                        } 
  • trunk/chrome/content/common/overlayFunctions.js

    r991 r993  
    268268 
    269269        getDropDownValue : function(name) { 
    270                 var values = eval(DTA_preferences.getMultiByteDTA(name, '[]')); 
     270                var values = eval(DTA_preferences.getExt(name, '[]')); 
    271271                return values.length ? values[0] : ''; 
    272272        }, 
     
    281281                } 
    282282 
    283                 var num = DTA_preferences.getDTA("counter", 0); 
     283                var num = DTA_preferences.getExt("counter", 0); 
    284284                if (++num > 999) { 
    285285                        num = 1; 
    286286                } 
    287                 DTA_preferences.setDTA("counter", num); 
     287                DTA_preferences.setExt("counter", num); 
    288288 
    289289                for (var i = 0; i < urlsArray.length; i++) { 
     
    293293                } 
    294294 
    295                 this.sendToDown(!DTA_preferences.getDTA("lastqueued", false), urlsArray); 
     295                this.sendToDown(!DTA_preferences.getExt("lastqueued", false), urlsArray); 
    296296        }, 
    297297 
     
    308308                        var links; 
    309309                        var type; 
    310                         if (DTA_preferences.getDTA("seltab", 0)) { 
     310                        if (DTA_preferences.getExt("seltab", 0)) { 
    311311                                links = images; 
    312312                                type = 2; 
  • trunk/chrome/content/dta/addurl.js

    r986 r993  
    425425                }                
    426426 
    427                 var num = Preferences.getDTA("counter", 0); 
     427                var num = Preferences.getExt("counter", 0); 
    428428                if (++num > 999) { 
    429429                        num = 1; 
     
    467467                DTA_AddingFunctions.sendToDown(start, batch); 
    468468 
    469                 Preferences.setDTA("counter", num); 
    470                 Preferences.setDTA("lastqueued", !start); 
     469                Preferences.setExt("counter", num); 
     470                Preferences.setExt("lastqueued", !start); 
    471471         
    472472                ['ddRenaming', 'ddDirectory'].forEach(function(e) { Dialog[e].save(); }); 
  • trunk/chrome/content/dta/manager.js

    r986 r993  
    496496        }, 
    497497        _cleanTmpDir: function D__cleanTmpDir() { 
    498                 if (!Prefs.tempLocation || Preferences.getMultiByteDTA("tempLocation", '') != '') { 
     498                if (!Prefs.tempLocation || Preferences.getExt("tempLocation", '') != '') { 
    499499                        // cannot perform this action if we don't use a temp file 
    500500                        // there might be far too many directories containing far too many tmpFiles. 
     
    18911891} 
    18921892 
    1893 var Prompts = { 
     1893let AuthPrompts = { 
    18941894        _authPrompter: null, 
    18951895        _prompter: null, 
     
    20172017                } 
    20182018                if (iid.equals(Ci.nsIAuthPrompt)) { 
    2019                         return Prompts.authPrompter; 
     2019                        return AuthPrompts.authPrompter; 
    20202020                } 
    20212021                if (iid.equals(Ci.nsIPrompt)) { 
    2022                         return Prompts.prompter; 
     2022                        return AuthPrompts.prompter; 
    20232023                } 
    20242024                // for 1.9 
    20252025                /* this one makes minefield ask for the password again and again :p 
    20262026                if ('nsIAuthPromptProvider' in Ci && iid.equals(Ci.nsIAuthPromptProvider)) { 
    2027                         return Prompts.prompter.QueryInterface(Ci.nsIAuthPromptProvider); 
     2027                        return AuthPrompts.prompter.QueryInterface(Ci.nsIAuthPromptProvider); 
    20282028                }*/ 
    20292029                // for 1.9 
    20302030                if ('nsIAuthPrompt2' in Ci && iid.equals(Ci.nsIAuthPrompt2)) { 
    2031                         return Prompts.authPrompter.QueryInterface(Ci.nsIAuthPrompt2); 
     2031                        return AuthPrompts.authPrompter.QueryInterface(Ci.nsIAuthPrompt2); 
    20322032                } 
    20332033                try { 
     
    27352735                } 
    27362736                if (type == 2) { 
    2737                         Preferences.setDTA('conflictresolution', option); 
     2737                        Preferences.setExt('conflictresolution', option); 
    27382738                }                
    27392739                this._return(option); 
  • trunk/chrome/content/dta/manager/metalinker.js

    r959 r993  
    131131                        } 
    132132         
    133                         var aNum = Preferences.getDTA('numistance', 0); 
     133                        var aNum = Preferences.getExt('numistance', 0); 
    134134                        if (++aNum > 999) { 
    135135                                aNum = 1; 
    136136                        } 
    137                         Preferences.setDTA('numistance', aNum); 
     137                        Preferences.setExt('numistance', aNum); 
    138138         
    139139         
  • trunk/chrome/content/dta/manager/prefs.js

    r970 r993  
    9999                                def = e[1]; 
    100100                        } 
    101                         this[key] = Preferences.getDTA(pref, def); 
     101                        this[key] = Preferences.getExt(pref, def); 
    102102                } 
    103103                 
     
    114114                this.dirPermissions = perms;             
    115115 
    116                 if (Preferences.getDTA("saveTemp", true)) { 
     116                if (Preferences.getExt("saveTemp", true)) { 
    117117                        try { 
    118                                 this.tempLocation = Preferences.getMultiByteDTA("tempLocation", ''); 
     118                                this.tempLocation = Preferences.getExt("tempLocation", ''); 
    119119                                if (this.tempLocation == '') { 
    120120                                        // #44: generate a default tmp dir on per-profile basis 
     
    142142                                                 
    143143                        if (conns != cur) { 
    144                                 Preferences.setDTA(PREF_CONN, cur); 
     144                                Preferences.setExt(PREF_CONN, cur); 
    145145                        } 
    146146                        if (conns > cur) { 
     
    155155        }, 
    156156        _resetConnPrefs: function() { 
    157                 let conn = Preferences.getDTA(PREF_CONN, 0); 
     157                let conn = Preferences.getExt(PREF_CONN, 0); 
    158158                if (conn) { 
    159159                        Preferences.set(PREF_CONN, conn); 
    160                         Preferences.setDTA(PREF_CONN, 0); 
     160                        Preferences.setExt(PREF_CONN, 0); 
    161161                } 
    162162        } 
  • trunk/chrome/content/dta/manager/tree.js

    r989 r993  
    288288                        let res = Prompts.confirm(window, _('removetitle'), _('removequestion'), Prompts.YES, Prompts.NO, null, 0, false, _('removecheck')); 
    289289                        if (res.checked) { 
    290                                 Preferences.setDTA('confirmremove', false); 
     290                                Preferences.setExt('confirmremove', false); 
    291291                        } 
    292292                        if (res.button) { 
  • trunk/chrome/content/dta/select.js

    r983 r993  
    343343 
    344344                        // changeTab will initialize the filters and do the selection for us 
    345                         this.changeTab(Preferences.getDTA("seltab", 0) ? 'images': 'links'); 
     345                        this.changeTab(Preferences.getExt("seltab", 0) ? 'images': 'links'); 
    346346 
    347347                        $("urlList").addEventListener( 
     
    403403                        var dir = this.ddDirectory.value; 
    404404                        var mask = this.ddRenaming.value; 
    405                         var counter = Preferences.getDTA("counter", 1); 
     405                        var counter = Preferences.getExt("counter", 1); 
    406406                        if (++counter > 999) { 
    407407                                counter = 1; 
     
    442442 
    443443                        // save the counter, queued state 
    444                         Preferences.setDTA("counter", counter); 
    445                         Preferences.setDTA("lastqueued", !start); 
     444                        Preferences.setExt("counter", counter); 
     445                        Preferences.setExt("lastqueued", !start); 
    446446                         
    447447                        let boxen = this.boxen; 
     
    632632                var type = this.current.type; 
    633633                if (type == 1) { 
    634                         Preferences.setDTA('seltab', 0); 
     634                        Preferences.setExt('seltab', 0); 
    635635                        $("viewlinks").setAttribute("selected", true); 
    636636                        $("viewpics").setAttribute("selected", false); 
    637637                } 
    638638                else { 
    639                         Preferences.setDTA('seltab', 1); 
     639                        Preferences.setExt('seltab', 1); 
    640640                        $("viewlinks").setAttribute("selected", false); 
    641641                        $("viewpics").setAttribute("selected", true); 
  • trunk/chrome/content/integration/elements.js

    r989 r993  
    251251        findLinks: function(turbo, all) { 
    252252                try { 
    253                         if (all == undefined && turbo && DTA_preferences.getDTA('rememberoneclick', false)) { 
    254                                 all = DTA_preferences.getDTA('lastalltabs', false); 
     253                        if (all == undefined && turbo && DTA_preferences.getExt('rememberoneclick', false)) { 
     254                                all = DTA_preferences.getExt('lastalltabs', false); 
    255255                        } 
    256256                        if (turbo && all != undefined) { 
    257                                 DTA_preferences.setDTA('lastalltabs', all); 
     257                                DTA_preferences.setExt('lastalltabs', all); 
    258258                        } 
    259259                         
     
    530530                        var ctx = this.contextMenu; 
    531531                        // get settings 
    532                         var items = DTA_preferences.getDTA("ctxmenu", "1,1,0").split(",").map(function(e){return parseInt(e);}); 
    533                         var compact = DTA_preferences.getDTA("ctxcompact", false); 
     532                        var items = DTA_preferences.getExt("ctxmenu", "1,1,0").split(",").map(function(e){return parseInt(e);}); 
     533                        var compact = DTA_preferences.getExt("ctxcompact", false); 
    534534                         
    535535                        var menu; 
     
    639639                         
    640640                        // get settings 
    641                         var menu = DTA_preferences.getDTA("toolsmenu", "1,1,1").split(",").map(function(e){return parseInt(e);}); 
     641                        var menu = DTA_preferences.getExt("toolsmenu", "1,1,1").split(",").map(function(e){return parseInt(e);}); 
    642642                         
    643643                        // all hidden... 
    644                         var hidden = DTA_preferences.getDTA("toolshidden", false); 
     644                        var hidden = DTA_preferences.getExt("toolshidden", false); 
    645645                        for (var i in this.tools) { 
    646646                                this.tools[i].hidden = hidden; 
  • trunk/chrome/content/integration/saveas.js

    r980 r993  
    4343                var normalBox = document.getElementById('normalBox'); 
    4444                const doRevert = basicBox && (!basicBox.collapsed || (normalBox && normalBox.collapsed)); 
    45                 const doOverlay = DTA_preferences.getDTA("downloadWin", true); 
     45                const doOverlay = DTA_preferences.getExt("downloadWin", true); 
    4646                if ( 
    4747                        !doOverlay 
     
    8888                 
    8989                try { 
    90                         switch (DTA_preferences.getDTA('saveasmode', 0)) { 
     90                        switch (DTA_preferences.getExt('saveasmode', 0)) { 
    9191                                case 1: 
    9292                                        this.mode.selectedItem = this.normal; 
     
    9696                                        break; 
    9797                        } 
    98                         if (DTA_preferences.getDTA('saveasmode', 0)) { 
     98                        if (DTA_preferences.getExt('saveasmode', 0)) { 
    9999                                this.remember.checked = true; 
    100100                                this.remember.disabled = false; 
     
    183183                if (mode == this.normal || mode == this.turbo) { 
    184184                        if (this.remember.checked) { 
    185                                 DTA_preferences.setDTA("saveasmode", mode == this.normal ? 1 : 2); 
     185                                DTA_preferences.setExt("saveasmode", mode == this.normal ? 1 : 2); 
    186186                        } 
    187187                        else { 
    188                                 DTA_preferences.setDTA("saveasmode", 0); 
     188                                DTA_preferences.setExt("saveasmode", 0); 
    189189                        } 
    190190                        this.download(mode == this.turbo);                       
    191191                        return false; 
    192192                } 
    193                 DTA_preferences.setDTA("saveasmode", 0);               
     193                DTA_preferences.setExt("saveasmode", 0);               
    194194          return true; 
    195195        }, 
  • trunk/chrome/content/integration/toolbarButtons.js

    r707 r993  
    5252        _refresh: function() { 
    5353                DTA_preferences 
    54                         .getDTA('sm.buttons') 
     54                        .getExt('sm.buttons') 
    5555                        .split(',') 
    5656                        .forEach( 
  • trunk/chrome/content/preferences/prefs.js

    r991 r993  
    6666                                .forEach(function(e) { e.disabled = log; }); 
    6767                         
    68                         var history = uneval(Preferences.getDTA("filter", '')); 
     68                        var history = uneval(Preferences.getExt("filter", '')); 
    6969                        history = !history || !history.length; 
    7070                        $("butFiltDel").disabled = history; 
    7171                                 
    72                         history = uneval(Preferences.getDTA("directory", '')); 
     72                        history = uneval(Preferences.getExt("directory", '')); 
    7373                        history = !history || !history.length; 
    7474                        $("butFoldDel").disabled = history; 
     
    8686        }, 
    8787        delFilters: function() { 
    88                 Preferences.resetDTA("filter"); 
     88                Preferences.resetExt("filter"); 
    8989        }, 
    9090        delDirectories: function() { 
    91                 Preferences.resetDTA("directory"); 
     91                Preferences.resetExt("directory"); 
    9292        }, 
    9393        showLog: function() { 
     
    136136                        return; 
    137137                } 
    138                 var f = Utils.askForDir(Preferences.getMultiByteDTA("tempLocation", tmp.value), ""); 
     138                var f = Utils.askForDir(Preferences.getExt("tempLocation", tmp.value), ""); 
    139139                if (!f) { 
    140140                        return; 
    141141                } 
    142142                $("temp").value = f; 
    143                 Preferences.setMultiByteDTA("tempLocation", f); 
     143                Preferences.setExt("tempLocation", f); 
    144144                $("temp").focus(); 
    145145        }, 
     
    431431                } 
    432432                try { 
    433                         Preferences.resetAllDTA(); 
     433                        Preferences.resetAllExt(); 
    434434                } catch(ex) { 
    435435                        // XXX 
  • trunk/components/debugService.js

    r985 r993  
    9090        _log: function DS__log(msg, exception) { 
    9191                try { 
    92                         if (msg == "" && typeof(exception) != "object") { 
     92                        if (!msg || (msg == "" && typeof(exception) != "object")) { 
    9393                                return; 
    9494                        } 
  • trunk/components/migrationService.js

    r991 r993  
    6363                                .getService(Ci.nsIVersionComparator); 
    6464                 
    65                         var lastVersion = Preferences.getDTA('version', '0'); 
     65                        var lastVersion = Preferences.getExt('version', '0'); 
    6666                        if (0 == vc.compare(DTA.VERSION, lastVersion)) { 
    6767                                return; 
     
    9191                        debug("MigrationManager:", ex); 
    9292                        try { 
    93                                 Preferences.resetDTA("version"); 
     93                                Preferences.resetExt("version"); 
    9494                        } 
    9595                        catch (ex) { 
     
    136136                for each (let [oldName, newName, defaultValue] in toMigrate) { 
    137137                        try { 
    138                                 let nv = Preferences.getDTA(newName, defaultValue); 
    139                                 let ov = Preferences.getDTA(oldName, nv); 
     138                                let nv = Preferences.getExt(newName, defaultValue); 
     139                                let ov = Preferences.getExt(oldName, nv); 
    140140                                if (ov != nv) {  
    141                                         Preferences.setDTA(newName, ov); 
     141                                        Preferences.setExt(newName, ov); 
    142142                                } 
    143143                                Preferences.reset(oldName);                              
     
    183183                        var name = 'context.' + children[i].slice(0, -8); 
    184184                        try { 
    185                                 var reg = Preferences.getMultiByteDTA(name + '.filter', ''); 
     185                                var reg = Preferences.getExt(name + '.filter', ''); 
    186186                                if (-1 != defFilters.indexOf(reg) || !reg.length) { 
    187187                                        continue; 
    188188                                } 
    189                                 var label = Preferences.getMultiByteDTA(name + '.caption', 'imported'); 
    190                                 var active = Preferences.getDTA(name + '.checked', false); 
     189                                var label = Preferences.getExt(name + '.caption', 'imported'); 
     190                                var active = Preferences.getExt(name + '.checked', false); 
    191191                                var type = 0; 
    192                                 if (Preferences.getDTA(name + '.isImageFilter', false)) { 
     192                                if (Preferences.getExt(name + '.isImageFilter', false)) { 
    193193                                        type |= IMAGE_FILTER; 
    194194                                } 
    195                                 if (Preferences.getDTA(name + '.isLinkFilter', false)) { 
     195                                if (Preferences.getExt(name + '.isLinkFilter', false)) { 
    196196                                        type |= LINK_FILTER; 
    197197                                } 
     
    209209                for each (let e in ['renaming', 'filter', 'directory']) { 
    210210                        try { 
    211                                 Preferences.resetDTA(e); 
     211                                Preferences.resetExt(e); 
    212212                        } 
    213213                        catch (ex) { 
     
    215215                        } 
    216216                        try { 
    217                                 let cv = Preferences.getMultiByteDTA('dropdown.' + e + '-history', null); 
     217                                let cv = Preferences.getExt('dropdown.' + e + '-history', null); 
    218218                                if (cv == null) { 
    219219                                        return; 
    220220                                } 
    221221                                cv = cv.split('|@|'); 
    222                                 Preferences.setMultiByteDTA(e, cv.toSource()); 
     222                                Preferences.setExt(e, cv.toSource()); 
    223223                        } 
    224224                        catch (ex) { 
     
    231231        _migrateRemove: function MM_migrateRemove() { 
    232232                for each (let e in ['context.', 'tool.', 'dropdown.', 'windows.', 'rename.']) { 
    233                         Preferences.resetBranchDTA(e); 
     233                        Preferences.resetBranchExt(e); 
    234234                } 
    235235        }, 
  • trunk/modules/preferences.jsm

    r991 r993  
    3737const EXPORTED_SYMBOLS = [ 
    3838        'get', 
    39         'getDTA', 
    40         'getMultiByte', 
    41         'getMultiByteDTA', 
     39        'getExt', 
    4240        'set', 
    43         'setDTA', 
    44         'setMultiByte', 
    45         'setMultiByteDTA', 
     41        'setExt', 
     42        'hasUserValue', 
     43        'hasUserValueExt', 
     44        'getChildren', 
     45        'getChildrenExt', 
    4646        'reset', 
    47         'resetDTA', 
     47        'resetExt', 
    4848        'resetBranch', 
    49         'resetBranchDTA', 
    50         'resetAllDTA', 
     49        'resetBranchExt', 
     50        'resetAllExt', 
    5151        'addObserver', 
    5252        'removeObserver' 
    5353]; 
     54 
     55const EXT = 'extensions.dta.'; 
    5456 
    5557const Cc = Components.classes; 
     
    9193} 
    9294         
    93 function getDTA(key, defaultValue) { 
    94                 return get('extensions.dta.' + key, defaultValue); 
     95function getExt(key, defaultValue) { 
     96                return get(EXT + key, defaultValue); 
    9597} 
    9698 
     
    105107} 
    106108 
    107 function setDTA(key, value){ 
    108         return set('extensions.dta.' + key, value); 
     109function setExt(key, value){ 
     110        return set(EXT + key, value); 
    109111} 
    110112 
     
    119121} 
    120122 
    121 function getMultiByteDTA(key, defaultValue){ 
    122         return getMultiByte('extensions.dta.' + key, defaultValue); 
    123 } 
    124  
    125123function setMultiByte(key, value) { 
    126124        let str = new SupportsString(); 
     
    129127} 
    130128 
    131 function setMultiByteDTA(key, value) { 
    132                 setMultiByte('extensions.dta.' + key, value); 
     129function hasUserValue(key) { 
     130        try { 
     131                return prefs.prefHasUserValue(key); 
     132        } 
     133        catch (ex) { 
     134                // no-op 
     135        } 
     136        return false; 
     137
     138 
     139function hasUserValueExt(key) { 
     140        return hasUserValue(EXT + key); 
     141
     142 
     143function getChildren(key) { 
     144        return prefs.getChildList(key, {}); 
     145
     146 
     147function getChildrenExt(key) { 
     148        return getChildren(EXT + key); 
    133149} 
    134150 
     
    144160 
    145161 
    146 function resetDTA(key) { 
    147         if (key.search(/^extensions\.dta\./) != 0) { 
    148                 key = 'extensions.dta.' + key; 
     162function resetExt(key) { 
     163        if (key.search(new RegExp('/^' + EXT + '/')) != 0) { 
     164                key = EXT + key; 
    149165        } 
    150166        return reset(key); 
     
    165181} 
    166182 
    167 function resetBranchDTA(branch) { 
     183function resetBranchExt(branch) { 
    168184        resetBranch('extension.dta.' + branch); 
    169185} 
    170186 
    171 function resetAllDTA() { 
    172         resetBranchDTA(''); 
     187function resetAllExt() { 
     188        resetBranchExt(''); 
    173189} 
    174190