From 27a39827a2483e2fc12305349b5f0c15c3bebcfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karsten=20Silkenba=CC=88umer?= Date: Wed, 1 Aug 2012 23:43:19 +0200 Subject: [PATCH 1/5] Add tabSize to config options --- NinjaKit.safariextension/js/options.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/NinjaKit.safariextension/js/options.js b/NinjaKit.safariextension/js/options.js index e5de76b..f63cfb8 100644 --- a/NinjaKit.safariextension/js/options.js +++ b/NinjaKit.safariextension/js/options.js @@ -109,6 +109,14 @@ function init(){ FontList(); } + var currentTabSize = +Config.options.tabSize || 1; + var tabSize = document.getElementById('tabsize'); + tabSize.value = currentTabSize; + tabSize.onclick = function() { + Config.options.tabSize = tabSize.value; + localStorage.Config = JSON.stringify(Config); + }; + var add = document.getElementById('add_script'); var add_script = function(){ var styl = { From d0de3621e9aaa60d743d3e343dd97cdf85ac25d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karsten=20Silkenba=CC=88umer?= Date: Wed, 1 Aug 2012 23:43:34 +0200 Subject: [PATCH 2/5] Add bracesOnNewLine to config options --- NinjaKit.safariextension/js/options.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/NinjaKit.safariextension/js/options.js b/NinjaKit.safariextension/js/options.js index f63cfb8..81e71a3 100644 --- a/NinjaKit.safariextension/js/options.js +++ b/NinjaKit.safariextension/js/options.js @@ -117,6 +117,14 @@ function init(){ localStorage.Config = JSON.stringify(Config); }; + var currentBracesOnNewLine = Config.options.bracesOnNewLine === undefined ? true : Config.options.bracesOnNewLine; + var bracesOnNewLine = document.getElementById('braces-on-own-line'); + bracesOnNewLine.checked = currentBracesOnNewLine ? true : false; + bracesOnNewLine.onclick = function() { + Config.options.bracesOnNewLine = bracesOnNewLine.checked; + localStorage.Config = JSON.stringify(Config); + } + var add = document.getElementById('add_script'); var add_script = function(){ var styl = { From f279853072eda74d872accd3c0ebb56d1a253a03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karsten=20Silkenba=CC=88umer?= Date: Wed, 1 Aug 2012 23:48:41 +0200 Subject: [PATCH 3/5] Refactor initialization of options --- NinjaKit.safariextension/js/options.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/NinjaKit.safariextension/js/options.js b/NinjaKit.safariextension/js/options.js index 81e71a3..0b63b81 100644 --- a/NinjaKit.safariextension/js/options.js +++ b/NinjaKit.safariextension/js/options.js @@ -117,12 +117,16 @@ function init(){ localStorage.Config = JSON.stringify(Config); }; - var currentBracesOnNewLine = Config.options.bracesOnNewLine === undefined ? true : Config.options.bracesOnNewLine; - var bracesOnNewLine = document.getElementById('braces-on-own-line'); - bracesOnNewLine.checked = currentBracesOnNewLine ? true : false; - bracesOnNewLine.onclick = function() { - Config.options.bracesOnNewLine = bracesOnNewLine.checked; - localStorage.Config = JSON.stringify(Config); + initializeOption('braces-on-own-line', 'bracesOnOwnLine', true); + + function initializeOption(id, optionKey, defaultValue) { + var currentValue = Config.options[optionKey] === undefined ? defaultValue : Config.options[optionKey]; + var element = document.getElementById(id); + element.checked = currentValue ? true : false; + element.onclick = function() { + Config.options[optionKey] = element.checked; + localStorage.Config = JSON.stringify(Config); + } } var add = document.getElementById('add_script'); From 6ef16cf9ab62673803c2893c4dac89130c60ad25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karsten=20Silkenba=CC=88umer?= Date: Wed, 1 Aug 2012 23:51:54 +0200 Subject: [PATCH 4/5] Add more options to initializer --- NinjaKit.safariextension/js/options.js | 3 +++ NinjaKit.safariextension/options.html | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/NinjaKit.safariextension/js/options.js b/NinjaKit.safariextension/js/options.js index 0b63b81..a6386f1 100644 --- a/NinjaKit.safariextension/js/options.js +++ b/NinjaKit.safariextension/js/options.js @@ -118,6 +118,9 @@ function init(){ }; initializeOption('braces-on-own-line', 'bracesOnOwnLine', true); + initializeOption('preserve-newlines', 'preserveNewlines', true); + initializeOption('detect-packers', 'detectPackers', false); + initializeOption('keep-array-indentation', 'keepArrayIndentation', false); function initializeOption(id, optionKey, defaultValue) { var currentValue = Config.options[optionKey] === undefined ? defaultValue : Config.options[optionKey]; diff --git a/NinjaKit.safariextension/options.html b/NinjaKit.safariextension/options.html index 3cecba8..6f851d6 100644 --- a/NinjaKit.safariextension/options.html +++ b/NinjaKit.safariextension/options.html @@ -37,8 +37,8 @@

beautify options

-
  • -
  • +
  • +
  • Font size: 12
    840
  • From e576153431f7f722dcf88ae201a7a8a753262029 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karsten=20Silkenba=CC=88umer?= Date: Thu, 2 Aug 2012 00:13:32 +0200 Subject: [PATCH 5/5] Refactor initializeOption to handle checkbox and select elements --- NinjaKit.safariextension/js/options.js | 25 +++++++++++++------------ NinjaKit.safariextension/options.html | 2 +- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/NinjaKit.safariextension/js/options.js b/NinjaKit.safariextension/js/options.js index a6386f1..44021f5 100644 --- a/NinjaKit.safariextension/js/options.js +++ b/NinjaKit.safariextension/js/options.js @@ -109,25 +109,26 @@ function init(){ FontList(); } - var currentTabSize = +Config.options.tabSize || 1; - var tabSize = document.getElementById('tabsize'); - tabSize.value = currentTabSize; - tabSize.onclick = function() { - Config.options.tabSize = tabSize.value; - localStorage.Config = JSON.stringify(Config); - }; - + initializeOption('tabsize', 'tabSize', 1); initializeOption('braces-on-own-line', 'bracesOnOwnLine', true); initializeOption('preserve-newlines', 'preserveNewlines', true); initializeOption('detect-packers', 'detectPackers', false); initializeOption('keep-array-indentation', 'keepArrayIndentation', false); function initializeOption(id, optionKey, defaultValue) { - var currentValue = Config.options[optionKey] === undefined ? defaultValue : Config.options[optionKey]; - var element = document.getElementById(id); - element.checked = currentValue ? true : false; + var currentValue, key, + element = document.getElementById(id); + if (element.tagName == "INPUT" && element.type == "checkbox") { + currentValue = Config.options[optionKey] === undefined ? defaultValue : Config.options[optionKey]; + key = "checked"; + element.checked = currentValue ? true : false; + } else { + currentValue = +Config.options[optionKey] || defaultValue; + key = "value"; + element.value = currentValue; + } element.onclick = function() { - Config.options[optionKey] = element.checked; + Config.options[optionKey] = element[key]; localStorage.Config = JSON.stringify(Config); } } diff --git a/NinjaKit.safariextension/options.html b/NinjaKit.safariextension/options.html index 6f851d6..a47c80c 100644 --- a/NinjaKit.safariextension/options.html +++ b/NinjaKit.safariextension/options.html @@ -30,7 +30,7 @@

    beautify options