Annotation of kupuMPIWG/roundup/kupuinit.js, revision 1.1
1.1 ! dwinter 1: /* here's where the customized initialization will be done */
! 2:
! 3: function RoundupLinkTool() {
! 4: this.createLinkHandler = function(event) {
! 5: /* create a link according to a url entered in a popup */
! 6: var linkWindow = openPopup('_file/kupu/common/popups/link.html', 300, 200);
! 7: linkWindow.linktool = this;
! 8: linkWindow.focus();
! 9: };
! 10: };
! 11:
! 12: RoundupLinkTool.prototype = new LinkTool;
! 13:
! 14: function RoundupImageTool() {
! 15: this.createImageHandler = function(event) {
! 16: /* create an image according to a url entered in a popup */
! 17: var imageWindow = openPopup('_file/kupu/common/popups/image.html', 300, 200);
! 18: imageWindow.imagetool = this;
! 19: imageWindow.focus();
! 20: };
! 21: };
! 22:
! 23: RoundupImageTool.prototype = new ImageTool;
! 24:
! 25: function initKupu(iframe) {
! 26: /* Although this is meant to be a sample implementation, it can
! 27: be used out-of-the box to run the sample pagetemplate or for simple
! 28: implementations that just don't use some elements. When you want
! 29: to do some customization, this should probably be overridden. For
! 30: larger customization actions you will have to subclass or roll your
! 31: own UI object.
! 32: */
! 33:
! 34: // first we create a logger
! 35: var l = new DummyLogger();
! 36:
! 37: // now some config values
! 38: // XXX To mimic the 'old' behaviour, vars should be retrieved from the
! 39: // iframe (attributes)
! 40: var src = iframe.getAttribute('src');
! 41: var dst = iframe.getAttribute('dst');
! 42: if (!dst) {
! 43: dst = '..';
! 44: }
! 45: var use_css = (iframe.getAttribute('usecss') != "0");
! 46: var reload_src = (iframe.getAttribute('reloadsrc') == "1");
! 47: var strict_output = (iframe.getAttribute('strict_output') == "1");
! 48: var content_type = 'application/xhtml+xml';
! 49: if (iframe.getAttribute('content_type')) {
! 50: content_type = iframe.getAttribute('content_type');
! 51: };
! 52:
! 53: var conf = {'src': src,
! 54: 'dst': dst,
! 55: 'use_css': use_css,
! 56: 'reload_after_save': reload_src,
! 57: 'strict_output': strict_output,
! 58: 'content_type': content_type
! 59: };
! 60:
! 61: // the we create the document, hand it over the id of the iframe
! 62: var doc = new KupuDocument(iframe);
! 63:
! 64: // now we can create the controller
! 65: var kupu = new KupuEditor(doc, conf, l);
! 66:
! 67: // add the contextmenu
! 68: var cm = new ContextMenu();
! 69: kupu.setContextMenu(cm);
! 70:
! 71: var listtool = new ListTool('kupu-list-ul-addbutton', 'kupu-list-ol-addbutton', 'kupu-ulstyles', 'kupu-olstyles');
! 72: kupu.registerTool('listtool', listtool);
! 73:
! 74: var linktool = new RoundupLinkTool();
! 75: kupu.registerTool('linktool', linktool);
! 76:
! 77: var imagetool = new RoundupImageTool();
! 78: kupu.registerTool('imagetool', imagetool);
! 79:
! 80: // now we can create a UI object which we can use from the UI
! 81: var ui = new KupuUI('kupu-tb-styles');
! 82:
! 83: // the ui must be registered to the editor as well so it can be notified
! 84: // of state changes
! 85: kupu.registerTool('ui', ui); // XXX Should this be a different method?
! 86:
! 87: // register some cleanup filter
! 88: // remove tags that aren't in the XHTML DTD
! 89: var nonxhtmltagfilter = new NonXHTMLTagFilter();
! 90: kupu.registerFilter(nonxhtmltagfilter);
! 91:
! 92: return kupu;
! 93: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>