+ $(window).resize(function() {
+ resizePanels();
+ })
+
+ var editor = CodeMirror.fromTextArea("id_text", {
+ parserfile: 'parsexml.js',
+ path: "/static/js/codemirror/",
+ stylesheet: "/static/css/xmlcolors.css",
+ parserConfig: {useHTMLKludges: false},
+ initCallback: function() {
+ $('#images').autoscroll('iframe');
+ $('.toggleAutoscroll').toggle(function() {
+ $(this).html('Synchronizuj przewijanie');
+ $('#images').disableAutoscroll();
+ }, function() {
+ $(this).html('Nie synchronizuj przewijania');
+ $('#images').enableAutoscroll();
+ })
+
+ keys = {}
+
+ function addEditorButton(editor, label, keyCode, fn) {
+ var handler = function() {
+ var text = editor.selection();
+ editor.replaceSelection(fn(text));
+ }
+
+ keys[keyCode] = handler;
+
+ $('<button type="button">' + label + '</button>').click(function(event) {
+ event.preventDefault();
+ handler();
+ }).appendTo('#buttons');
+ }
+
+ addEditorButton(editor, 'utwór', 65, function(text) { return '<utwor>' + text + '</utwor>'; });
+ addEditorButton(editor, 'akap', 83, function(text) { return '<akap>' + text + '</akap>'; });
+
+ editor.grabKeys(function(event) {
+ // console.log('handle', event, event.keyCode)
+ if (keys[event.keyCode]) {
+ keys[event.keyCode]();
+ }
+ }, function(event) { return event.ctrlKey && event.keyCode != 17; });
+
+ resizePanels();
+ }