home *** CD-ROM | disk | FTP | other *** search
- /*
- * SpoofStick - Options Window
- *
- * Copyright (C) 2004 CoreStreet, Ltd.
- * http://www.corestreet.com/
- *
- * Author: Mark Ayzenshtat
- */
-
- const prefsClassString = "@mozilla.org/preferences-service;1";
- const branchName = "spoofstick.";
- const showYouAreOnPref = "showYouAreOn";
- const showOptionsButtonPref = "showOptionsButton";
- const showFullHostNamePref = "showFullHostName";
- const domainSizePref = "size";
- const displayColorPref = "color";
- const showYouAreOnControl = "youareon-cb";
- const showOptionsButtonControl = "optionsbutton-cb";
- const showFullHostNameControl = "fullhostname-cb";
- const domainSizeControl = "size-rg";
- const domainSizePrefix = "radio-size-";
- const displayColorControl = "display-color";
- const errorCouldNotLoad = "Could not load options: ";
- const errorCouldNotSave = "Could not save options: ";
-
- const aboutWindowURI = "chrome://spoofstick/content/about.xul";
- const aboutWindowTitle = "About SpoofStick";
- const aboutWindowParams = "chrome,centerscreen";
-
- // preferences-related objects
- var prefs = Components.classes[prefsClassString].
- getService(Components.interfaces.nsIPrefService);
- var prefsBranch = prefs.getBranch(branchName);
-
- function loadOptions() {
- try {
- var cbYouAreOn = document.getElementById(showYouAreOnControl);
- cbYouAreOn.checked = prefsBranch.getBoolPref(showYouAreOnPref);
-
- var cbOptionsButton = document.getElementById(showOptionsButtonControl);
- cbOptionsButton.checked = prefsBranch.getBoolPref(showOptionsButtonPref);
-
- var rgDomainSize = document.getElementById(domainSizeControl);
- rgDomainSize.selectedItem = document.getElementById(
- domainSizePrefix + prefsBranch.getIntPref(domainSizePref));
-
- var displayColorPicker = document.getElementById(displayColorControl);
- displayColorPicker.color = prefsBranch.getCharPref(displayColorPref);
-
- var cbFullHostName = document.getElementById(showFullHostNameControl);
- cbFullHostName.checked = prefsBranch.getBoolPref(showFullHostNamePref);
- } catch (e) {
- alert(errorCouldNotLoad + e.name + ", " + e.message);
- }
- }
-
- function saveOptionsAndClose() {
- try {
- var cbYouAreOn = document.getElementById(showYouAreOnControl);
- prefsBranch.setBoolPref(showYouAreOnPref, cbYouAreOn.checked);
-
- var cbOptionsButton = document.getElementById(showOptionsButtonControl);
- prefsBranch.setBoolPref(showOptionsButtonPref, cbOptionsButton.checked);
-
- var rgDomainSize = document.getElementById(domainSizeControl);
- prefsBranch.setIntPref(domainSizePref, rgDomainSize.value);
-
- var displayColorPicker = document.getElementById(displayColorControl);
- prefsBranch.setCharPref(displayColorPref, displayColorPicker.color);
-
- var cbFullHostName = document.getElementById(showFullHostNameControl);
- prefsBranch.setBoolPref(showFullHostNamePref, cbFullHostName.checked);
- } catch (e) {
- alert(errorCouldNotSave + e.name + ", " + e.message);
- }
-
- window.close();
- }
-
- function openAboutWindow() {
- window.open(aboutWindowURI, aboutWindowTitle, aboutWindowParams);
- }