From 0225b1c8035a1c03dafa4c971d21facc76dbc2de Mon Sep 17 00:00:00 2001 From: Einar Egilsson Date: Mon, 14 Sep 2009 21:19:32 +0000 Subject: Moved component implementation into chrome folder git-svn-id: http://einaregilsson.googlecode.com/svn/mozilla/redirector/trunk@246 119bf307-c92d-0410-89bd-8f53e6181181 --- chrome/content/redirectList.js | 288 ++++++++++++++++++++--------------------- 1 file changed, 144 insertions(+), 144 deletions(-) (limited to 'chrome/content/redirectList.js') diff --git a/chrome/content/redirectList.js b/chrome/content/redirectList.js index 7583f5f..b3a3200 100644 --- a/chrome/content/redirectList.js +++ b/chrome/content/redirectList.js @@ -1,53 +1,53 @@ -//// $Id$ - -var Redirector = Components.classes["@einaregilsson.com/redirector;1"].getService(Components.interfaces.nsISupports).wrappedJSObject; -const Cc = Components.classes; -const Ci = Components.interfaces; - -function $(id) { - return document.getElementById(id); -} - -var RedirectList = { - - id : "redirector@einaregilsson.com", - name : "Redirector", - lstRedirects: null, - btnDelete : null, - btnEdit : null, - - addItemsToListBox : function(items) { - - var list = $('lstRedirects'); - var item, row, value, newItem; - - for each (item in items) { - newItem = this.template.cloneNode(true); - - newItem.getElementsByAttribute('name', 'dscrIncludePattern')[0].setAttribute('value', item.pattern); - newItem.getElementsByAttribute('name', 'dscrExcludePattern')[0].setAttribute('value', item.excludePattern); - newItem.getElementsByAttribute('name', 'dscrRedirectTo')[0].setAttribute('value', item.redirectUrl); - newItem.item = item; - list.appendChild(newItem); - newItem.setAttribute("selected", false); - } - - }, - - onLoad : function() { - try { - this.lstRedirects = $('lstRedirects'); - this.lstRedirects.selType = 'single'; - this.template = document.getElementsByTagName('richlistitem')[0]; - this.lstRedirects.removeChild(this.template); - this.btnDelete = $('btnDelete'); - this.btnEdit = $('btnEdit'); - this.addItemsToListBox(Redirector.list); - } catch(e) { - alert(e); - } - }, - +//// $Id$ + +var Redirector = Components.classes["@einaregilsson.com/redirector;1"].getService(Components.interfaces.nsISupports).wrappedJSObject; +const Cc = Components.classes; +const Ci = Components.interfaces; + +function $(id) { + return document.getElementById(id); +} + +var RedirectList = { + + id : "redirector@einaregilsson.com", + name : "Redirector", + lstRedirects: null, + btnDelete : null, + btnEdit : null, + + addItemsToListBox : function(items) { + + var list = $('lstRedirects'); + var item, row, value, newItem; + + for each (item in items) { + newItem = this.template.cloneNode(true); + + newItem.getElementsByAttribute('name', 'dscrIncludePattern')[0].setAttribute('value', item.pattern); + newItem.getElementsByAttribute('name', 'dscrExcludePattern')[0].setAttribute('value', item.excludePattern); + newItem.getElementsByAttribute('name', 'dscrRedirectTo')[0].setAttribute('value', item.redirectUrl); + newItem.item = item; + list.appendChild(newItem); + newItem.setAttribute("selected", false); + } + + }, + + onLoad : function() { + try { + this.lstRedirects = $('lstRedirects'); + this.lstRedirects.selType = 'single'; + this.template = document.getElementsByTagName('richlistitem')[0]; + this.lstRedirects.removeChild(this.template); + this.btnDelete = $('btnDelete'); + this.btnEdit = $('btnEdit'); + this.addItemsToListBox(Redirector.list); + } catch(e) { + alert(e); + } + }, + openHelp : function() { var windowName = "redirectorHelp"; var windowsMediator = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator); @@ -62,97 +62,97 @@ var RedirectList = { } window.openDialog("chrome://redirector/content/help.html", windowName, "chrome,dialog,resizable=yes,location=0,toolbar=0,status=0,width=800px,height=600px,centerscreen", this); }, - - close : function() { - window.close(); - }, - - moveUp : function(){ - if (this.lstRedirects.selectedIndex <= 0) { - return; - } - this.switchItems(this.lstRedirects.selectedIndex-1); - }, - - moveDown : function() { - if (this.lstRedirects.selectedIndex == Redirector.list.length-1) { - return; - } - this.switchItems(this.lstRedirects.selectedIndex); - }, - - switchItems : function(firstIndex) { - var first = Redirector.list[firstIndex]; - var second = Redirector.list[firstIndex+1]; - Redirector.list[firstIndex] = second; - Redirector.list[firstIndex+1] = first; - this.setListItemValues(this.lstRedirects.children[firstIndex+1], first); - this.setListItemValues(this.lstRedirects.children[firstIndex], second); - this.lstRedirects.selectedIndex -= 1; - Redirector.save(); - }, - - setListItemValues : function(listItem, item){ - listItem.getElementsByAttribute('name', 'dscrIncludePattern')[0].setAttribute('value', item.pattern); - listItem.getElementsByAttribute('name', 'dscrExcludePattern')[0].setAttribute('value', item.excludePattern); - listItem.getElementsByAttribute('name', 'dscrRedirectTo')[0].setAttribute('value', item.redirectUrl); - }, - - addRedirect : function() { - - var item = { pattern : '', exampleUrl : '', redirectUrl : '', patternType : 'W'}; - - window.openDialog("chrome://redirector/content/redirect.xul", - "redirect", - "chrome,dialog,modal,centerscreen", item); - - if (item.saved) { - this.addItemsToListBox([item]); - Redirector.addRedirect(item); - } - - }, - - editRedirect : function() { - - var listItem = this.lstRedirects.selectedItem; - - if (!listItem) { - return; - } - - var item = listItem.item; - - window.openDialog("chrome://redirector/content/redirect.xul", - "redirect", - "chrome,dialog,modal,centerscreen", item); - - if (item.saved) { - this.setListItemValues(listItem, item); - Redirector.save(); - } - }, - - deleteRedirect : function() { - var index = this.lstRedirects.selectedIndex; - - if (index == -1) { - return; - } - - try { - this.lstRedirects.removeChild(this.lstRedirects.children[index]); - Redirector.deleteAt(index); - } catch(e) { - alert(e); - } - }, - - selectionChange : function() { - var index = $('lstRedirects').selectedIndex; - - $('btnEdit').disabled = (index == -1); - $('btnDelete').disabled = (index == -1); - } - -}; + + close : function() { + window.close(); + }, + + moveUp : function(){ + if (this.lstRedirects.selectedIndex <= 0) { + return; + } + this.switchItems(this.lstRedirects.selectedIndex-1); + }, + + moveDown : function() { + if (this.lstRedirects.selectedIndex == Redirector.list.length-1) { + return; + } + this.switchItems(this.lstRedirects.selectedIndex); + }, + + switchItems : function(firstIndex) { + var first = Redirector.list[firstIndex]; + var second = Redirector.list[firstIndex+1]; + Redirector.list[firstIndex] = second; + Redirector.list[firstIndex+1] = first; + this.setListItemValues(this.lstRedirects.children[firstIndex+1], first); + this.setListItemValues(this.lstRedirects.children[firstIndex], second); + this.lstRedirects.selectedIndex -= 1; + Redirector.save(); + }, + + setListItemValues : function(listItem, item){ + listItem.getElementsByAttribute('name', 'dscrIncludePattern')[0].setAttribute('value', item.pattern); + listItem.getElementsByAttribute('name', 'dscrExcludePattern')[0].setAttribute('value', item.excludePattern); + listItem.getElementsByAttribute('name', 'dscrRedirectTo')[0].setAttribute('value', item.redirectUrl); + }, + + addRedirect : function() { + + var item = { pattern : '', exampleUrl : '', redirectUrl : '', patternType : 'W'}; + + window.openDialog("chrome://redirector/content/redirect.xul", + "redirect", + "chrome,dialog,modal,centerscreen", item); + + if (item.saved) { + this.addItemsToListBox([item]); + Redirector.addRedirect(item); + } + + }, + + editRedirect : function() { + + var listItem = this.lstRedirects.selectedItem; + + if (!listItem) { + return; + } + + var item = listItem.item; + + window.openDialog("chrome://redirector/content/redirect.xul", + "redirect", + "chrome,dialog,modal,centerscreen", item); + + if (item.saved) { + this.setListItemValues(listItem, item); + Redirector.save(); + } + }, + + deleteRedirect : function() { + var index = this.lstRedirects.selectedIndex; + + if (index == -1) { + return; + } + + try { + this.lstRedirects.removeChild(this.lstRedirects.children[index]); + Redirector.deleteAt(index); + } catch(e) { + alert(e); + } + }, + + selectionChange : function() { + var index = $('lstRedirects').selectedIndex; + + $('btnEdit').disabled = (index == -1); + $('btnDelete').disabled = (index == -1); + } + +}; -- cgit v1.2.3-70-g09d2