summaryrefslogtreecommitdiffstats
path: root/plugins/textviewer/syntaxhighlighter/tests/theme_tests.html
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/textviewer/syntaxhighlighter/tests/theme_tests.html')
-rw-r--r--plugins/textviewer/syntaxhighlighter/tests/theme_tests.html134
1 files changed, 134 insertions, 0 deletions
diff --git a/plugins/textviewer/syntaxhighlighter/tests/theme_tests.html b/plugins/textviewer/syntaxhighlighter/tests/theme_tests.html
new file mode 100644
index 00000000000..da07ecfa158
--- /dev/null
+++ b/plugins/textviewer/syntaxhighlighter/tests/theme_tests.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title>SyntaxHighlighter Theme Tests</title>
+ <script type="text/javascript" src="/js/jquery-1.4.2.js"></script>
+</head>
+
+<body>
+
+<div id="output"></div>
+
+<style>
+body {
+ background: white;
+ font-family: Helvetica;
+}
+
+.test-wrap {
+ width: 100%;
+ height: 800px;
+ overflow: auto;
+ border: none;
+}
+</style>
+
+<script id="sample" type="text/plain">
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title>SyntaxHighlighter Theme Tests</title>
+ </head>
+
+ <body>
+ &lt;script>
+ /**
+ * Looks for a child or parent node which has specified classname.
+ * Equivalent to jQuery's $(container).find(".className")
+ * @param {Element} target Target element.
+ * @param {String} search Class name or node name to look for.
+ * @param {Boolean} reverse If set to true, will go up the node tree instead of down.
+ * @return {Element} Returns found child or parent element on null.
+ */
+ function findElement(target, search, reverse /* optional */)
+ {
+ if (target == null)
+ return null;
+
+ var nodes = reverse != true ? target.childNodes : [ target.parentNode ],
+ propertyToFind = { '#' : 'id', '.' : 'className' }[search.substr(0, 1)] || 'nodeName',
+ expectedValue,
+ found
+ ;
+
+ // main return of the found node
+ if ((target[propertyToFind] || '').indexOf(expectedValue) != -1)
+ return target;
+
+ return found;
+ };
+ &lt;/script>
+
+ </body>
+ </html>
+</script>
+
+<script type="text/javascript">
+var themes = [
+ ['#fff', 'Default'],
+ ['#000', 'Django'],
+ ['#fff', 'Eclipse'],
+ ['#000', 'Emacs'],
+ ['#000', 'FadeToGrey'],
+ ['#000', 'MDUltra'],
+ ['#000', 'Midnight'],
+ ['#000', 'RDark']
+ ];
+
+$(document).ready(function()
+{
+ var sample = $('#sample').text().replace(/</g, '&lt;');
+
+ $.each(themes, function(index)
+ {
+ var $iframe = $('<iframe class="test-wrap" src="about:blank" />'),
+ background = this[0],
+ themeName = this[1]
+ ;
+
+ $('#output')
+ .append(''
+ + '<h1>'
+ + '<a href="#theme' + (index + 1) + '">next</a> '
+ + '<a name="theme' + index + '">'
+ + themeName
+ + '</a>'
+ + '</h1>'
+ )
+ .append($iframe)
+ ;
+
+ $iframe.ready(function()
+ {
+ var doc = $iframe[0].contentDocument;
+ $iframe.css('background', background);
+
+ doc.write(''
+ + '<scr' + 'ipt type="text/javascript" src="/sh/scripts/XRegExp.js"></scr' + 'ipt>'
+ + '<scr' + 'ipt type="text/javascript" src="/sh/scripts/shCore.js"></scr' + 'ipt>'
+ + '<scr' + 'ipt type="text/javascript" src="/sh/scripts/shBrushXml.js"></scr' + 'ipt>'
+ + '<scr' + 'ipt type="text/javascript" src="/sh/scripts/shBrushJScript.js"></scr' + 'ipt>'
+ + '<link type="text/css" rel="stylesheet" href="/sh/styles/shCore' + themeName + '.css"/>'
+ + '<pre type="syntaxhighlighter" class="brush: js; html-script: true; highlight: [5, 20]" title="This is SyntaxHighlighter theme ' + themeName + ' in action!">'
+ + sample
+ + '</pre>'
+ + '<pre type="syntaxhighlighter" class="brush: js; html-script: true; collapse: true">'
+ + sample
+ + '</pre>'
+ + '<scr' + 'ipt type="text/javascript">'
+ + 'SyntaxHighlighter.highlight();'
+ + '</scr' + 'ipt>'
+ );
+ doc.close();
+ });
+ });
+
+ $('#output a[name]:first').attr('name', 'top');
+ $('#output a[href]:last').attr('href', '#top').html('top');
+});
+</script>
+
+</body>
+</html>