[kupu-checkins] r43612 - in kupu/trunk/kupu: common common/kupudrawers default doc plone/kupu_plone_layer

duncan at codespeak.net duncan at codespeak.net
Fri May 25 11:16:12 CEST 2007


Author: duncan
Date: Fri May 25 11:16:10 2007
New Revision: 43612

Modified:
   kupu/trunk/kupu/common/kupubeforeunload.js
   kupu/trunk/kupu/common/kupudrawers.js
   kupu/trunk/kupu/common/kupudrawers/drawer.xsl
   kupu/trunk/kupu/common/kupudrawerstyles.css
   kupu/trunk/kupu/common/kupustyles.css
   kupu/trunk/kupu/default/drawers.kupu
   kupu/trunk/kupu/doc/CHANGES.txt
   kupu/trunk/kupu/plone/kupu_plone_layer/kupu_wysiwyg_support.html
   kupu/trunk/kupu/plone/kupu_plone_layer/kupumyitems.xml.pt
   kupu/trunk/kupu/plone/kupu_plone_layer/kupuploneinit.js
   kupu/trunk/kupu/plone/kupu_plone_layer/kupurecentitems.xml.pt
   kupu/trunk/kupu/plone/kupu_plone_layer/kupusearch.xml.pt
   kupu/trunk/kupu/plone/kupu_plone_layer/kupuselection.xml.pt
Log:
Changed the ui for anchors in link drawer.xsl
Added some i18n attributes for recent drawer features.

Modified: kupu/trunk/kupu/common/kupubeforeunload.js
==============================================================================
--- kupu/trunk/kupu/common/kupubeforeunload.js	(original)
+++ kupu/trunk/kupu/common/kupubeforeunload.js	Fri May 25 11:16:10 2007
@@ -143,7 +143,7 @@
     };
 
     Class.isElementChanged = function(ele) {
-        var method = ele.id && this.chkId[ele.id];
+        var method = (ele.id && this.chkId.hasOwnProperty(ele.id))?this.chkId[ele.id]:null;
         if (!method && ele.type && ele.name) {
             method = this.chkType[ele.type];
         }

Modified: kupu/trunk/kupu/common/kupudrawers.js
==============================================================================
--- kupu/trunk/kupu/common/kupudrawers.js	(original)
+++ kupu/trunk/kupu/common/kupudrawers.js	Fri May 25 11:16:10 2007
@@ -154,37 +154,47 @@
 proto = DrawerWithAnchors.prototype;
 
 proto.initAnchors = function() {
-    var limit = 200;
+    var limit = 40;
     var anchorframe = this.anchorframe;
+    var ed = this.editor;
     function onloadEvent() {
         var state = anchorframe.readyState;
-        if (state && state != 'complete') {
+        if (state && !(/complete/.test(state))) {
+            console.log("state="+state+", limit="+limit);
             if (limit-- && anchorframe.src==src) {
-                timer_instance.registerFunction(this, onloadEvent, 50);
+                timer_instance.registerFunction(this, onloadEvent, 500);
+            } else {
+                ed.notbusy(true);
             }
             return;
         };
         if(window.drawertool && window.drawertool.current_drawer) {
             window.drawertool.current_drawer.anchorframe_loaded();
         };
+        ed.notbusy();
     };
 
     var id = 'kupu-linkdrawer-anchors';
     var base = getBaseTagClass(this.element, 'div', id);
+    var self = this;
     if (base) {
         this.anchorui = getBaseTagClass(base, 'div', id);
 
         var inp = base.getElementsByTagName('input');
+        if (inp.length > 1) {
+            inp[1].disabled = true;
+        }
         var src = inp[0].value;
-        anchorframe.src = src;
-
+        inp[0].value = "";
+        if (!src) { return; }
+        ed.busy();
         if (this.anchorframe.readyState) { // IE
-            timer_instance.registerFunction(this, onloadEvent, 50);
+            anchorframe.src = src;
+            onloadEvent();
         } else { // FF
             this.anchorframe.onload = onloadEvent;
+            anchorframe.src = src;
         }
-
-        inp[1].style.display = 'none';
     }
 };
 proto.anchorSelect = function() {
@@ -260,6 +270,7 @@
             select.options.add(opt);
         }
     }
+    select.disabled = false;
     if (opts.length > 1) {
         this.anchorui.style.display = '';
     }
@@ -633,6 +644,7 @@
             var xsltproc =  new XSLTProcessor();
             this.shared.xsltproc = xsltproc;
             xsltproc.importStylesheet(dom);
+            xsltproc.setParameter("", "ie", this.editor.getBrowserName() == 'IE');
             xsltproc.setParameter("", "drawertype", this.drawertype);
             xsltproc.setParameter("", "drawertitle", this.drawertitle);
             xsltproc.setParameter("", "showupload", this.showupload);

Modified: kupu/trunk/kupu/common/kupudrawers/drawer.xsl
==============================================================================
--- kupu/trunk/kupu/common/kupudrawers/drawer.xsl	(original)
+++ kupu/trunk/kupu/common/kupudrawers/drawer.xsl	Fri May 25 11:16:10 2007
@@ -54,6 +54,7 @@
     <xsl:param name="image-class"></xsl:param>
     <xsl:param name="link_target"></xsl:param>
     <xsl:param name="link_name"></xsl:param>
+    <xsl:param name="ie"></xsl:param>
     <xsl:variable name="titlelength" select="60"/>
     <xsl:variable name="i18n_drawertitle"> 
         <xsl:choose>
@@ -340,7 +341,7 @@
           <input id="kupu-media" type="hidden" value="{media}" />
           <input id="kupu-width" type="hidden" value="{width}" />
           <input id="kupu-height" type="hidden" value="{height}" />
-          <label class="kupu-detail">Alignment</label>
+          <label class="kupu-detail" i18n:translate="image_alignment">Alignment</label>
           <span class="kupu-detail">
              <input type="radio" name="image-align" id="image-align-left" value="image-left">
                 <xsl:attribute name="onkeypress">if(event.keyCode==13)return false;</xsl:attribute>
@@ -383,8 +384,14 @@
              </xsl:choose>
           </xsl:if>
           <xsl:if test="sizes">
-             <label class="kupu-detail"
-                    for="image-size-selector">Size</label>
+             <label class="kupu-detail" i18n:translate="imagedrawer_size"
+                    for="image-size-selector">Size
+                <span class="image-dimensions">
+                   (<span i18n:name="width"><xsl:value-of select="width"/></span>
+                   by
+                   <span i18n:name="height"><xsl:value-of select="height"/></span>)
+                </span>
+             </label>
              <span class="kupu-detail">
                 <select name="image-size-selector">
                    <option name="image-size-option" value="{uri}">Original</option>
@@ -393,7 +400,7 @@
              </span>
           </xsl:if>
           <xsl:if test="class">
-             <label class="kupu-detail"
+             <label class="kupu-detail" i18n:translate="imagedrawer_style"
                     for="kupu-image-class-selector">Style</label>
              <span class="kupu-detail">
                 <select name="kupu-image-class-selector" id="kupu-image-class">
@@ -402,12 +409,11 @@
              </span>
           </xsl:if>
           <label class="kupu-detail" id="image-alt-label"
-                 for="image-alt"
-                 i18n:translate="imagedrawer_upload_alt_text">
+                 for="image-alt">
              <xsl:if test="$usecaptions='yes' and $image-caption='true'">
                 <xsl:attribute name="style">display:none;</xsl:attribute>
              </xsl:if>
-             Text equivalent
+             <span tal:omit-tag="" i18n:translate="imagedrawer_upload_alt_text">Text equivalent</span>
           </label>
           <textarea class="kupu-detail" type="text" id="image-alt" rows="4">
              <xsl:if test="$usecaptions='yes' and $image-caption='true'">
@@ -469,13 +475,18 @@
     <xsl:template match="anchor">
         <div class="kupu-linkdrawer-anchors">
             <input type="hidden" value="{../uri}"/>
-            <input type="button" class="kupu-dialog-button" value="Anchors..."
-                onclick="drawertool.current_drawer.initAnchors()"/>
-            <div style="display:none;" class="kupu-linkdrawer-anchors">
-                <label for="kupu-anchor-select">Anchor</label>
-                <br/>
-                <select>
-                    <option i18n:translate="" value="">(none)</option>
+            <div class="kupu-linkdrawer-anchors">
+                <label for="kupu-anchor-select" i18n:translate="linkdrawer_anchor">Link to anchor</label>
+                <xsl:if test="$ie='true'">
+                   <input type="checkbox">
+                      <xsl:attribute name="onclick">drawertool.current_drawer.initAnchors();</xsl:attribute>
+                   </input>
+                </xsl:if>
+                <select onmousedown="drawertool.current_drawer.initAnchors();">
+                   <xsl:if test="$ie='true'">
+                      <xsl:attribute name="disabled">disabled</xsl:attribute>
+                   </xsl:if>
+                   <option i18n:translate="" value="">top of page (default)</option>
                 </select>
             </div>
         </div>

Modified: kupu/trunk/kupu/common/kupudrawerstyles.css
==============================================================================
--- kupu/trunk/kupu/common/kupudrawerstyles.css	(original)
+++ kupu/trunk/kupu/common/kupudrawerstyles.css	Fri May 25 11:16:10 2007
@@ -196,7 +196,7 @@
   white-space: nowrap;
 }
 
-.kupu-busy, .kupu-busy div, .kupu-busy a:hover {
+.kupu-busy, .kupu-busy div, .kupu-busy a:hover, .kupu-busy input , .kupu-busy select {
   cursor: wait !IMPORTANT;
 }
 

Modified: kupu/trunk/kupu/common/kupustyles.css
==============================================================================
--- kupu/trunk/kupu/common/kupustyles.css	(original)
+++ kupu/trunk/kupu/common/kupustyles.css	Fri May 25 11:16:10 2007
@@ -274,7 +274,7 @@
    overflow: auto;
 }
 
-button.disabled {
+input.disabled, button.disabled {
    opacity:0.5;
    filter:alpha(opacity=50);
 }

Modified: kupu/trunk/kupu/default/drawers.kupu
==============================================================================
--- kupu/trunk/kupu/default/drawers.kupu	(original)
+++ kupu/trunk/kupu/default/drawers.kupu	Fri May 25 11:16:10 2007
@@ -48,8 +48,8 @@
 
       <div id="kupu-linkdrawer-addlink" class="kupu-panels kupu-linkdrawer-addlink">
          <ul class="kupu-tabs">
-            <li class="kupu-linkdrawer-addlink"><a href="#">Link to url</a></li>
-            <li class="kupu-linkdrawer-embed"><a href="#">Embed external object</a></li>
+            <li class="kupu-linkdrawer-addlink"><a href="#" i18n:translate="">Link to url</a></li>
+            <li class="kupu-linkdrawer-embed"><a href="#" i18n:translate="">Embed external object</a></li>
          </ul>
          <table class="kupu-tabbed">
             <tbody class="kupu-addlink">
@@ -73,7 +73,8 @@
                <tr class="kupu-linkdrawer-anchors" style="display:none">
                   <td colspan="2">
                      <label i18n:translate="" for="anchorselect">Anchor</label>
-                     <select id="anchorselect"><option i18n:translate="" value="">(none)</option></select>
+                     <select id="anchorselect"><option
+                     i18n:translate="" value="">top of page (default)</option></select>
                   </td>
                </tr>
                <tr><td colspan="2" align="center">
@@ -92,11 +93,11 @@
                            Paste &lt;object&gt; or &lt;embed&gt; tag here:
                         </span>
                      </div>
-                     <textarea class="kupu-toolbox-st kupu-embed-input">[insert arbitrary HTML code here]</textarea>
+                     <textarea class="kupu-toolbox-st kupu-embed-input" i18n:translate="">[insert arbitrary HTML code here]</textarea>
                   </td>
                </tr>
                <tr>
-                  <td>
+                  <td i18n:translate="custom_html_help">
                   You may use this box to insert custom snippets of
                   HTML code. There is no guarantee that any code
                   inserted in this way will be preserved when you save
@@ -303,10 +304,10 @@
                 <input type="checkbox" checked="checked" id="kupu-bm-checkall"/>
               </div>
               <div class="kupu-bm-paras">&#xa0;</div>
-              <div class="kupu-bm-helpanchor">
+              <div class="kupu-bm-helpanchor" i18n_translate="create_anchor_help">
                 Select a paragraph style then choose a paragraph and Ok to insert a link to that location.
               </div>
-              <div class="kupu-bm-helptoc">
+              <div class="kupu-bm-helptoc" i18n_translate="create_toc_help">
                 Select one or two paragraph styles, then Ok to insert a table of contents.
               </div>
             </td>

Modified: kupu/trunk/kupu/doc/CHANGES.txt
==============================================================================
--- kupu/trunk/kupu/doc/CHANGES.txt	(original)
+++ kupu/trunk/kupu/doc/CHANGES.txt	Fri May 25 11:16:10 2007
@@ -10,6 +10,10 @@
 
   - Image drawer layout has been tidied up.
 
+  - Anchors in the link drawer now have a slightly cleaner ui.
+
+  - Drawer actions which do server requests now display a wait cursor.
+
   - Removed the tabindex from all the toolbar buttons and added it to
     the iframe: this means you can tab into kupu from above without
     dying of old age as you try to get past the toolbar. Added a

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupu_wysiwyg_support.html
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupu_wysiwyg_support.html	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupu_wysiwyg_support.html	Fri May 25 11:16:10 2007
@@ -16,7 +16,7 @@
     <!--$Id: toolboxes.kupu 37754 2007-02-01 17:24:29Z yuppie $-->
     <!--$Id: colorchooser.kupu 35491 2006-12-08 15:41:49Z duncan $-->
     <!--$Id: save.kupu 9520 2005-02-26 16:30:23Z duncan $-->
-    <!--$Id: drawers.kupu 43565 2007-05-22 15:29:33Z duncan $-->
+    <!--$Id: drawers.kupu 43571 2007-05-23 13:06:13Z duncan $-->
     <!--$Id: include.kupu 39202 2007-02-19 12:06:45Z duncan $-->
     <!--$Id: wire.kupu 25247 2006-04-03 11:23:02Z fschulze $-->
     <!--$Id: head.kupu 34332 2006-11-07 14:50:40Z duncan $-->
@@ -250,7 +250,7 @@
                <tr class="kupu-linkdrawer-anchors" style="display:none">
                   <td colspan="2">
                      <label i18n:translate="" for="anchorselect">Anchor</label>
-                     <select id="anchorselect"><option i18n:translate="" value="">(none)</option></select>
+                     <select id="anchorselect"><option i18n:translate="" value="">top of page (default)</option></select>
                   </td>
                </tr>
                <tr><td colspan="2" align="center">

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupumyitems.xml.pt
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupumyitems.xml.pt	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupumyitems.xml.pt	Fri May 25 11:16:10 2007
@@ -19,7 +19,7 @@
   <breadcrumbs class="kupu-locate">
     <crumb tal:define="locator here/kupulocate.xml/absolute_url;
                        url python:kupu.kupuUrl(locator);"
-      tal:attributes="href string:$url&src=$$src$$">
+      tal:attributes="href string:$url&src=$$src$$" i18n:translate="locate_content">
       Locate
     </crumb>
   </breadcrumbs>

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupuploneinit.js
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupuploneinit.js	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupuploneinit.js	Fri May 25 11:16:10 2007
@@ -181,9 +181,9 @@
     // Use the generic beforeUnload handler if we have it:
     var beforeunloadTool = window.onbeforeunload && window.onbeforeunload.tool;
     if (beforeunloadTool) {
-        var initialBody = ibody.innerHTML;
+        var initialBody = kupu.getHTMLBody();
         beforeunloadTool.addHandler(function() {
-            return ibody.innerHTML != initialBody;
+            return kupu.getHTMLBody() != initialBody;
         });
         beforeunloadTool.chkId[textarea.id] = function() { return false; };
         beforeunloadTool.addForm(form);

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupurecentitems.xml.pt
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupurecentitems.xml.pt	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupurecentitems.xml.pt	Fri May 25 11:16:10 2007
@@ -19,7 +19,7 @@
   <breadcrumbs class="kupu-locate">
     <crumb tal:define="locator here/kupulocate.xml/absolute_url;
                        url python:kupu.kupuUrl(locator);"
-      tal:attributes="href string:$url&src=$$src$$">
+      tal:attributes="href string:$url&src=$$src$$" i18n:translate="locate_content">
       Locate
     </crumb>
   </breadcrumbs>

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupusearch.xml.pt
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupusearch.xml.pt	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupusearch.xml.pt	Fri May 25 11:16:10 2007
@@ -19,7 +19,7 @@
   <breadcrumbs class="kupu-locate">
     <crumb tal:define="locator here/kupulocate.xml/absolute_url;
                        url python:kupu.kupuUrl(locator);"
-      tal:attributes="href string:$url&src=$$src$$">
+      tal:attributes="href string:$url&src=$$src$$" i18n:translate="locate_content">
       Locate
     </crumb>
   </breadcrumbs>

Modified: kupu/trunk/kupu/plone/kupu_plone_layer/kupuselection.xml.pt
==============================================================================
--- kupu/trunk/kupu/plone/kupu_plone_layer/kupuselection.xml.pt	(original)
+++ kupu/trunk/kupu/plone/kupu_plone_layer/kupuselection.xml.pt	Fri May 25 11:16:10 2007
@@ -25,7 +25,8 @@
     <crumb
       tal:define="url context/portal_url;
         resource_type request/resource_type | string:mediaobject;"
-      tal:attributes="href string:${context/portal_url}/kupulocate.xml?resource_type=${resource_type}&amp;src=$$src$$">
+      tal:attributes="href string:${context/portal_url}/kupulocate.xml?resource_type=${resource_type}&amp;src=$$src$$"
+      i18n:translate="locate_content">
       Locate
     </crumb>
   </breadcrumbs>


More information about the kupu-checkins mailing list