[xwiki-dev] RE: [xwiki-commits] r1928 - in xwiki/trunk/web/standard/src/main/webapp: tiny_mce/themes/wikieditor wiki_editor/plugins
Phung Nam
phunghainam at xwiki.com
Wed Jan 10 08:56:14 CET 2007
Yes, it is necessary and and want to reorganize , put all commands to editor
_template , It is better.
On 1/10/07, Vincent Massol <vincent at massol.net> wrote:
>
> Hi Nam,
>
> Is it normal that we need all this just to get the focus? Isn't there a
> simpler way?
>
> Thanks
> -Vincent
>
> > -----Original Message-----
> > From: Phung Hai Nam [mailto:namphunghai at users.forge.objectweb.org]
> > Sent: mercredi 10 janvier 2007 07:43
> > To: xwiki-commits at objectweb.org
> > Subject: [xwiki-commits] r1928 - in
> > xwiki/trunk/web/standard/src/main/webapp: tiny_mce/themes/wikieditor
> > wiki_editor/plugins
> >
> > Author: namphunghai
> > Date: 2007-01-10 07:43:16 +0100 (Wed, 10 Jan 2007) New Revision: 1928
> >
> > Modified:
> >
> > xwiki/trunk/web/standard/src/main/webapp/tiny_mce/themes/wikieditor/edi
> > tor_template.js
> >
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/attachment
> > s.js
> >
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/macros.js
> > Log:
> > Fixed XWIKI-706 : When clicking on buttons (insert/edit image, insert
> > an attachment link, etc) in WYSIWYG editor the new window doesn't have
> > the focus and is opened in the background.
> >
> > Modified:
> > xwiki/trunk/web/standard/src/main/webapp/tiny_mce/themes/wikieditor/edi
> > tor_template.js
> > ===================================================================
> > ---
> > xwiki/trunk/web/standard/src/main/webapp/tiny_mce/themes/wikieditor/edi
> > tor_template.js 2007-01-10 06:06:45 UTC (rev 1927)
> > +++
> > xwiki/trunk/web/standard/src/main/webapp/tiny_mce/themes/wikieditor/edi
> > tor_template.js 2007-01-10 06:43:16 UTC (rev 1928)
> > @@ -102,6 +102,118 @@
> >
> > return true;
> >
> > + case "mceImage":
> > + var src = "", alt = "", border = "", hspace = "",
> > vspace = "", width = "", height = "", align = "", halign = "";
> > + var title = "", onmouseover = "", onmouseout = "",
> > action = "insert";
> > + var img = tinyMCE.imgElement;
> > + var inst = tinyMCE.getInstanceById(editor_id);
> > +
> > + if (tinyMCE.selectedElement != null &&
> > tinyMCE.selectedElement.nodeName.toLowerCase() == "img") {
> > + img = tinyMCE.selectedElement;
> > + tinyMCE.imgElement = img;
> > + var parent = tinyMCE.selectedElement.parentNode;
> > + var parentClassName = parent.className;
> > + if (parent.nodeName.toLowerCase() == "div") {
> > + halign = parentClassName.substring(3,
> > parentClassName.length);
> > + }
> > + }
> > +
> > + if (img) {
> > + // Is it a internal MCE visual aid image, then
> > skip this one.
> > + if (tinyMCE.getAttrib(img, 'name').indexOf('mce_')
> > == 0)
> > + return true;
> > +
> > + src = tinyMCE.getAttrib(img, 'src');
> > + alt = tinyMCE.getAttrib(img, 'alt');
> > +
> > + // Try polling out the title
> > + if (alt == "")
> > + alt = tinyMCE.getAttrib(img, 'title');
> > +
> > + // Fix width/height attributes if the styles is
> > specified
> > + if (tinyMCE.isGecko) {
> > + var w = img.style.width;
> > + if (w != null && w != "")
> > + img.setAttribute("width", w);
> > +
> > + var h = img.style.height;
> > + if (h != null && h != "")
> > + img.setAttribute("height", h);
> > + }
> > +
> > + border = tinyMCE.getAttrib(img, 'border');
> > + hspace = tinyMCE.getAttrib(img, 'hspace');
> > + vspace = tinyMCE.getAttrib(img, 'vspace');
> > + width = tinyMCE.getAttrib(img, 'width');
> > + height = tinyMCE.getAttrib(img, 'height');
> > + align = tinyMCE.getAttrib(img, 'align');
> > +
> > + onmouseover = tinyMCE.getAttrib(img,
> > 'onmouseover');
> > + onmouseout = tinyMCE.getAttrib(img, 'onmouseout');
> > + title = tinyMCE.getAttrib(img, 'title');
> > +
> > + // Is realy specified?
> > + if (tinyMCE.isMSIE) {
> > + width = img.attributes['width'].specified ?
> > width : "";
> > + height = img.attributes['height'].specified ?
> > height : "";
> > + }
> > +
> > + src =
> > + eval(tinyMCE.settings['urlconverter_callback'] + "(src, img,
> > true);");
> > +
> > + src = src.substring(src.lastIndexOf("/") + 1,
> > + src.length);
> > +
> > + // Use mce_src if defined
> > + mceRealSrc = tinyMCE.getAttrib(img, 'mce_src');
> > + if (mceRealSrc != "") {
> > + src = mceRealSrc;
> > +
> > + if (tinyMCE.getParam('convert_urls'))
> > + src =
> > eval(tinyMCE.settings['urlconverter_callback'] + "(src, img, true);");
> > + src = src.substring(src.lastIndexOf("/") +
> > 1, src.length);
> > + }
> > +
> > + action = "update";
> > + }
> > +
> > + var template = new Array();
> > +
> > + template['file'] = 'image.htm';
> > + template['width'] = 550;
> > + template['height'] = 400 + (tinyMCE.isMSIE ? 25 : 0);
> > +
> > + if (inst.settings['insertimage_callback']) {
> > + var returnVal =
> > eval(inst.settings['insertimage_callback'] + "(src, alt, border,
> > hspace, vspace, width, height, align, title, onmouseover, onmouseout,
> > action);");
> > + if (returnVal && returnVal['src'])
> > +
> > TinyMCE_WikieditorTheme.insertImage(returnVal['src'],
> > returnVal['width'], returnVal['height'], returnVal['align']);
> > + } else {
> > + tinyMCE.openWindow(template, {editor_id :
> > editor_id, scrollbars : 'yes', resizable : 'no', mce_windowresize:
> > false, src : src, alt : alt, border : border, hspace : hspace, vspace :
> > vspace, width : width, height : height, align : align, halign : halign,
> > title : title, onmouseover : onmouseover, onmouseout : onmouseout,
> > action : action, inline : "yes"});
> > + }
> > +
> > + return true;
> > +
> > + case "wikiAttachment":
> > + var href = "", action = "insert";
> > + var template = new Array();
> > +
> > + template['file'] = 'attachment.htm';
> > + template['width'] = 550;
> > + template['height'] = 400 + (tinyMCE.isMSIE ? 25 : 0);
> > +
> > + tinyMCE.openWindow(template, {editor_id : editor_id,
> > + href : href, action : action, inline : "yes", scrollbars : 'yes',
> > + resizable : 'no', mce_windowresize: false});
> > +
> > + return true;
> > +
> > + case "wikiMacro":
> > + var template = new Array();
> > +
> > + template['file'] = 'macro.htm';
> > + template['width'] = 520;
> > + template['height'] = 300;
> > +
> > + tinyMCE.openWindow(template, {editor_id : editor_id,
> > + inline : "yes", command : "insert", scrollbars : 'yes', resizable :
> > + 'no', mce_windowresize: false});
> > +
> > + return true;
> > +
> > case "mceForeColor":
> > var template = new Array();
> > var elm = tinyMCE.selectedInstance.getFocusElement();
> >
> > Modified:
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/attachment
> > s.js
> > ===================================================================
> > ---
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/attachment
> > s.js 2007-01-10 06:06:45 UTC (rev 1927)
> > +++
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/attachment
> > s.js 2007-01-10 06:43:16 UTC (rev 1928)
> > @@ -19,9 +19,6 @@
> > this.addInternalProcessorBefore('convertLinkInternal',
> > (/<a\s*href=\"wikiattachment:-:(.*?)\"\s*([^>]*)>(.*?)<\/a>/i),
> > 'convertAttachmentInternal');
> >
> > this.addToolbarHandler('handleAttachmentsButtons');
> > -
> > - this.addCommand('wikiAttachment', 'attachmentCommand');
> > - this.addCommand('mceImage', 'imageCommand');
> > }
> >
> > wikiEditor.initAttachmentsPlugin();
> > @@ -33,109 +30,6 @@
> > this.core.execInstanceCommand(editor_id, "mceInsertRawHTML",
> > false, '<a href="wikiattachment:-:' + name + '" class="' +
> > this.ATTACHMENT_CLASS_NAME + '">' + text + '<\/a>'); }
> >
> > -WikiEditor.prototype.attachmentCommand = function(editor_id, element,
> > command, user_interface, value) {
> > - var href = "", action = "insert";
> > - var template = new Array();
> > -
> > - template['file'] = 'attachment.htm';
> > - template['width'] = 550;
> > - template['height'] = 400 + (tinyMCE.isMSIE ? 25 : 0);
> > -
> > - tinyMCE.openWindow(template, {editor_id : editor_id, href : href,
> > action : action, scrollbars : 'yes', resizable : 'no',
> > mce_windowresize: false});
> > -
> > - return this.dummyCommand();
> > -}
> > -
> > -WikiEditor.prototype.imageCommand = function(editor_id, element,
> > command, user_interface, value) {
> > - var src = "", alt = "", border = "", hspace = "", vspace = "",
> > width = "", height = "", align = "", halign = "";
> > - var title = "", onmouseover = "", onmouseout = "", action =
> > "insert";
> > - var img = tinyMCE.imgElement;
> > - var inst = tinyMCE.getInstanceById(editor_id);
> > -
> > - if (tinyMCE.selectedElement != null &&
> > tinyMCE.selectedElement.nodeName.toLowerCase() == "img") {
> > - img = tinyMCE.selectedElement;
> > - tinyMCE.imgElement = img;
> > - var parent = tinyMCE.selectedElement.parentNode;
> > - var parentClassName = parent.className;
> > - if (parent.nodeName.toLowerCase() == "div") {
> > - halign = parentClassName.substring(3,
> > parentClassName.length);
> > - }
> > - }
> > -
> > - if (img) {
> > - // Is it a internal MCE visual aid image, then skip this one.
> > - if (tinyMCE.getAttrib(img, 'name').indexOf('mce_') == 0)
> > - return true;
> > -
> > - src = tinyMCE.getAttrib(img, 'src');
> > - alt = tinyMCE.getAttrib(img, 'alt');
> > -
> > - // Try polling out the title
> > - if (alt == "")
> > - alt = tinyMCE.getAttrib(img, 'title');
> > -
> > - // Fix width/height attributes if the styles is specified
> > - if (tinyMCE.isGecko) {
> > - var w = img.style.width;
> > - if (w != null && w != "")
> > - img.setAttribute("width", w);
> > -
> > - var h = img.style.height;
> > - if (h != null && h != "")
> > - img.setAttribute("height", h);
> > - }
> > -
> > - border = tinyMCE.getAttrib(img, 'border');
> > - hspace = tinyMCE.getAttrib(img, 'hspace');
> > - vspace = tinyMCE.getAttrib(img, 'vspace');
> > - width = tinyMCE.getAttrib(img, 'width');
> > - height = tinyMCE.getAttrib(img, 'height');
> > - align = tinyMCE.getAttrib(img, 'align');
> > -
> > - onmouseover = tinyMCE.getAttrib(img, 'onmouseover');
> > - onmouseout = tinyMCE.getAttrib(img, 'onmouseout');
> > - title = tinyMCE.getAttrib(img, 'title');
> > -
> > - // Is realy specified?
> > - if (tinyMCE.isMSIE) {
> > - width = img.attributes['width'].specified ? width : "";
> > - height = img.attributes['height'].specified ? height : "";
> > - }
> > -
> > - src = eval(tinyMCE.settings['urlconverter_callback'] + "(src,
> > img, true);");
> > -
> > - src = src.substring(src.lastIndexOf("/") + 1, src.length);
> > -
> > - // Use mce_src if defined
> > - mceRealSrc = tinyMCE.getAttrib(img, 'mce_src');
> > - if (mceRealSrc != "") {
> > - src = mceRealSrc;
> > -
> > - if (tinyMCE.getParam('convert_urls'))
> > - src = eval(tinyMCE.settings['urlconverter_callback'] +
> > "(src, img, true);");
> > - src = src.substring(src.lastIndexOf("/") + 1,
> > src.length);
> > - }
> > -
> > - action = "update";
> > - }
> > -
> > - var template = new Array();
> > -
> > - template['file'] = 'image.htm';
> > - template['width'] = 550;
> > - template['height'] = 400 + (tinyMCE.isMSIE ? 25 : 0);
> > -
> > - if (inst.settings['insertimage_callback']) {
> > - var returnVal = eval(inst.settings['insertimage_callback'] +
> > "(src, alt, border, hspace, vspace, width, height, align, title,
> > onmouseover, onmouseout, action);");
> > - if (returnVal && returnVal['src'])
> > - TinyMCE_WikieditorTheme.insertImage(returnVal['src'],
> > returnVal['width'], returnVal['height'], returnVal['align']);
> > - } else {
> > - tinyMCE.openWindow(template, {editor_id : editor_id,
> > scrollbars : 'yes', resizable : 'no', mce_windowresize: false, src :
> > src, alt : alt, border : border, hspace : hspace, vspace : vspace,
> > width : width, height : height, align : align, halign : halign, title :
> > title, onmouseover : onmouseover, onmouseout : onmouseout, action :
> > action, inline : "yes"});
> > - }
> > -
> > - return this.dummyCommand();
> > -}
> > -
> > WikiEditor.prototype.convertImageInternal = function(regexp, result,
> > content) {
> > var str="";
> > var href;
> >
> > Modified:
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/macros.js
> > ===================================================================
> > ---
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/macros.js
> > 2007-01-10 06:06:45 UTC (rev 1927)
> > +++
> > xwiki/trunk/web/standard/src/main/webapp/wiki_editor/plugins/macros.js
> > 2007-01-10 06:43:16 UTC (rev 1928)
> > @@ -10,10 +10,8 @@
> > alert("Macros Plugin: You must load the core syntax plugin
> > before!");
> > return;
> > }
> > -
> > +
> > this.addToolbarHandler('handleMacrosButtons');
> > -
> > - this.addCommand('wikiMacro', 'macroCommand');
> > }
> >
> > wikiEditor.initMacrosPlugin();
> > @@ -22,19 +20,6 @@
> > this.core.execInstanceCommand(editor_id, "mceInsertRawHTML",
> > false, name); }
> >
> > -
> > -WikiEditor.prototype.macroCommand = function(editor_id, element,
> > command, user_interface, value) {
> > - var template = new Array();
> > -
> > - template['file'] = 'macro.htm';
> > - template['width'] = 520;
> > - template['height'] = 300;
> > -
> > - tinyMCE.openWindow(template, {editor_id : editor_id, scrollbars :
> > 'yes', resizable : 'no', mce_windowresize: false});
> > -
> > - return this.dummyCommand();
> > -}
> > -
> > WikiEditor.prototype.handleMacrosButtons = function(editor_id, node,
> > undo_index, undo_levels, visual_aid, any_selection) {
> > tinyMCE.switchClass(editor_id + '_macro', 'mceButtonNormal');
> > do
> >
>
>
>
>
>
>
>
>
> ___________________________________________________________________________
> D�couvrez une nouvelle fa�on d'obtenir des r�ponses � toutes vos questions
> !
> Profitez des connaissances, des opinions et des exp�riences des
> internautes sur Yahoo! Questions/R�ponses
> http://fr.answers.yahoo.com
>
>
>
>
> --
> You receive this message as a subscriber of the xwiki-dev at objectweb.orgmailing list.
> To unsubscribe: mailto:xwiki-dev-unsubscribe at objectweb.org
> For general help: mailto:sympa at objectweb.org?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xwiki.org/pipermail/devs/attachments/20070110/9e38763c/attachment.htm
More information about the devs
mailing list