Author: jmorliaguet
Date: Tue May 23 00:26:28 2006
New Revision: 3195

Modified:
   cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.js
   cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.pt
   cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py
   cpsskins/branches/paris-sprint-2006/ui/authoring/authoring.js
   cpsskins/branches/paris-sprint-2006/ui/authoring/definitions.py
   cpsskins/branches/paris-sprint-2006/ui/panels/element_editor.pt
   
cpsskins/branches/paris-sprint-2006/ui/screens/elementeditor/element-editor.css

Log:

- UI / cosmetic changes



Modified: 
cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.js
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.js  
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.js  
Tue May 23 00:26:28 2006
@@ -1,5 +1,6 @@
 
 CPSSkins.addActions({
+
   'selectTag': function(info) {
     var target = info.target;
     var data = CPSSkins.getModelById('element-editor').getData();
@@ -7,7 +8,8 @@
     var style_data = CPSSkins.getModelById('style-editor').getData();
     var style_id = style_data.style_id;
     var selector = getSelectorInContext(target, $('previewArea'), style_id);
-    CPSSkins.getModelById('style-editor').updateData({selector: selector, uri: 
uri});
+    CPSSkins.getModelById('style-editor').updateData(
+    {selector: selector, uri: uri});
   },
 
   'updateLabel': function(info) {
@@ -17,7 +19,7 @@
     var label = info.target.getAttribute("label");
     if (label) {
       box.innerHTML = label;
-      box.setStyle({left: x + 15 + 'px', top: y + 15 +'px'});
+      box.setStyle({left: x+15+'px', top: y+15+'px'});
       box.show();
     } else {
       box.hide();
@@ -31,33 +33,33 @@
 });
 
 function getSelectorInContext(element, context, style_id) {
-    var i, node, tag, name, selector, classnames;
-    node = element;
+  var i, node, tag, name, selector, classnames;
+  node = element;
 
-    // If no context is passed, use the document itself.
-    if (!context) context = document;
+  // If no context is passed, use the document itself.
+  if (!context) context = document;
 
-    var selectors = new Array()
-    while (node) {
-      if (node == context) break;
-      tag = node.tagName;
-      if (!tag) break;
-      tag = tag.toLowerCase();
-      classnames = node.className;
-      name = '';
-      if (classnames) {
-        classnames = classnames.replace(' style' + style_id, '').split(' ');
-        name = classnames.join('.');
-      }
-      selector = name ? tag + '.' + name : tag;
-
-      // ignore tags that have the "ignore" attribute set
-      if (!node.getAttribute("ignore")) selectors.push(selector);
-      node = node.parentNode;
+  var selectors = new Array()
+  while (node) {
+    if (node == context) break;
+    tag = node.tagName;
+    if (!tag) break;
+    tag = tag.toLowerCase();
+    classnames = node.className;
+    name = '';
+    if (classnames) {
+      classnames = classnames.replace(' style' + style_id, '').split(' ');
+      name = classnames.join('.');
     }
-    // reverse the array
-    selectors.reverse();
-    selectors.shift();
-    return selectors.join(" ");
+    selector = name ? tag + '.' + name : tag;
+
+    // ignore tags that have the "ignore" attribute set
+    if (!node.getAttribute("ignore")) selectors.push(selector);
+    node = node.parentNode;
+  }
+  // reverse the array
+  selectors.reverse();
+  selectors.shift();
+  return selectors.join(" ");
 }
 

Modified: 
cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.pt
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.pt  
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/filters/style/style_editor.pt  
Tue May 23 00:26:28 2006
@@ -16,25 +16,29 @@
   }}
   </ins>
 
-  <div class="inlineTabs" style="margin-bottom: 0.3em">
-    <a i18n:translate=""
-       tal:repeat="type widget_types"
-       tal:content="string:widget.${type}"
-       tal:attributes="href 
string:javascript:CPSSkins.getModelById('style-editor').updateData({widget: 
'$type', selector: '', style_id: '$style_id'});" />
+  <div class="inlineTabs">
+    <span>Widget:</span>
+    <a i18n:translate="" tal:repeat="type widget_types"
+     tal:content="string:widget.${type}"
+     tal:attributes="href 
string:javascript:CPSSkins.getModelById('style-editor').updateData({widget: 
'$type', selector: '', style_id: '$style_id'});" />
   </div>
 
   <table width="100%">
     <tr>
       <td width="50%" valign="top">
-        <div id="previewArea" style="cursor: pointer">
+        <fieldset id="previewArea" class="panel" style="cursor: pointer">
+          <legend class="panelTitle">Preview</legend>
           <ins class="view" tal:content="view/getPreviewDef" />
-        </div>
+        </fieldset>
         <div class="floatingHint" style="display: none"
              id="labelInfo">&nbsp;</div>
       </td>
       <td width="5%"></td>
       <td width="45%" valign="top">
-        <ins class="view" tal:content="view/getFormDef" />
+        <fieldset class="panel">
+          <legend class="panelTitle">Edit form</legend>
+          <ins class="view" tal:content="view/getFormDef" />
+        </fieldset>
       </td>
     </tr>
   </table>

Modified: cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py 
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/filters/style/views.py Tue May 
23 00:26:28 2006
@@ -22,9 +22,9 @@
 from zope.app.session.interfaces import ISession
 from zope.component import getUtility, getUtilitiesFor
 
-from cpsskins import configuration
 from cpsskins import minjson as json
 from cpsskins import utils
+from cpsskins.elements.interfaces import IFormattable
 from cpsskins.setup.interfaces import IResourceManager
 from cpsskins.utils import getThemeManager
 
@@ -41,7 +41,10 @@
         self.tmutil = getThemeManager(context)
 
     def getWidgetTypes(self):
-        return [w[0] for w in getUtilitiesFor(configuration.IWidget)]
+        display_id = self.request.form.get('display')
+        display = self.tmutil.getElementById(display_id)
+        widget = IFormattable(display).getFormat(u'widget')
+        return widget.types
 
     def renderWidgetPreview(self):
         """Render a style preview based on the specified widget.

Modified: cpsskins/branches/paris-sprint-2006/ui/authoring/authoring.js
==============================================================================
--- cpsskins/branches/paris-sprint-2006/ui/authoring/authoring.js       
(original)
+++ cpsskins/branches/paris-sprint-2006/ui/authoring/authoring.js       Tue May 
23 00:26:28 2006
@@ -1,19 +1,20 @@
 
 function editSetting(uri) {
-  
CPSSkins.getControllerById('site-manager-perspectives').switchTo('setting-editor')
   CPSSkins.getModelById('setting-editor').updateData({'form': {'uri': uri} });
+  CPSSkins.getControllerById('site-manager-perspectives').switchTo(
+  'setting-editor')
 }
 
 function insertPortlet(info) {
   var url = '@@insertElement'
   var args = {
-    'id': info.target.getAttribute('targetid'),
-    'type_name': info.source.getAttribute('type_name'),
-    'order': 0
+    id: info.target.getAttribute('targetid'),
+    type_name: info.source.getAttribute('type_name'),
+    order: 0
   }
   var options = {
-    'parameters': $H(args).toQueryString(),
-    'onComplete': function(req) {
+    parameters: $H(args).toQueryString(),
+    onComplete: function(req) {
       var controller = info.context;
       controller.refreshViews();
     }
@@ -24,33 +25,36 @@
 function moveElement(info) {
   var url = '@@moveElement'
   var args = {
-    'src_id': info.source.getAttribute('id'),
-    'dest_id': info.target.getAttribute('id'),
-    'order': 0
+    src_id: info.source.getAttribute('id'),
+    dest_id: info.target.getAttribute('id'),
+    order: 0
   }
   var options = {
-    'parameters': $H(args).toQueryString()
+    parameters: $H(args).toQueryString()
   };
   new Ajax.Request(url, options);
 }
 
 function editElement(info) {
   var id = info.target.getAttribute('targetid');
-  CPSSkins.getModelById('element-editor').updateData({'form': {'id': id, 
'format': ''} });
-  
CPSSkins.getControllerById('main-editor-perspectives').switchTo('element-editor')
+  CPSSkins.getModelById('element-editor').updateData({
+    form: {id: id, format: ''}
+  });
+  CPSSkins.getControllerById('main-editor-perspectives').switchTo(
+  'element-editor');
   var style_editor_model = CPSSkins.getModelById('style-editor');
-  if (style_editor_model) style_editor_model.updateData({'widget': ''});
+  if (style_editor_model) style_editor_model.updateData({widget: ''});
 }
 
 function duplicateElement(info) {
-  var url = '@@duplicateElement'
+  var url = '@@duplicateElement';
   var args = {
-    'id': info.target.getAttribute('id')
+    id: info.target.getAttribute('id')
   }
+  var controller = info.context;
   var options = {
-    'parameters': $H(args).toQueryString(),
-    'onComplete': function(req) {
-      var controller = info.context;
+    parameters: $H(args).toQueryString(),
+    onComplete: function(req) {
       controller.refreshViews();
     }
   }
@@ -60,18 +64,25 @@
 function deleteElement(info) {
   var url = '@@deleteElement'
   var args = {
-    'id': info.target.getAttribute('id')
+    id: info.target.getAttribute('id')
   }
+  var controller = info.context;
   var options = {
-    'parameters': $H(args).toQueryString(),
-    'onComplete': function(req) {
-      var controller = info.context;
+    parameters: $H(args).toQueryString(),
+    onComplete: function(req) {
       controller.refreshViews();
     }
   }
   new Ajax.Request(url, options);
 }
 
+StyleSheet = Class.create();
+StyleSheet.prototype = Object.extend(new CPSSkins.View(), {
+  render: function(data) {
+    this.widget.href = './renderCSS?timestamp=' + new Date().getTime();
+  }
+});
+
 /* Register actions */
 CPSSkins.addActions({
   'insert portlet': insertPortlet,
@@ -82,23 +93,12 @@
 
 /* Register widgets */
 CPSSkins.registerWidgets({
-
   'stylesheet': function(def) {
     var widget = CPSSkins.Canvas.createNode({
       tag: "link",
-      attributes: {'rel': 'stylesheet', 'type': 'text/css'}
+      attributes: {rel: 'stylesheet', type: 'text/css'}
     });
     return new StyleSheet(widget, def);
   }
-
-});
-
-StyleSheet = Class.create();
-StyleSheet.prototype = Object.extend(new CPSSkins.View(), {
-
-  render: function(data) {
-    this.widget.href = './renderCSS?timestamp=' + new Date().getTime();
-  }
-
 });
 

Modified: cpsskins/branches/paris-sprint-2006/ui/authoring/definitions.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/ui/authoring/definitions.py     
(original)
+++ cpsskins/branches/paris-sprint-2006/ui/authoring/definitions.py     Tue May 
23 00:26:28 2006
@@ -34,7 +34,7 @@
         'id': 'setting-editor',
         'data': {
             'url': '@@setting-editor.html',
-            'css': '++resource++site-manager.css',
+            'css': '++resource++element-editor.css',
             'script': '',
             'form': {
                 'id': '',

Modified: cpsskins/branches/paris-sprint-2006/ui/panels/element_editor.pt
==============================================================================
--- cpsskins/branches/paris-sprint-2006/ui/panels/element_editor.pt     
(original)
+++ cpsskins/branches/paris-sprint-2006/ui/panels/element_editor.pt     Tue May 
23 00:26:28 2006
@@ -1,91 +1,79 @@
+<tal:block i18n:domain="cpsskins" define="
+  id request/form/id|nothing;
+  mode request/form/mode|string:edit;
+  tmutil context/@@getThemeManager;
+  element python: tmutil.getElementById(id);
+  info element/@@editpanel/getInfo;
+  display nocall:info/display;
+  display_id display/identifier;
+  setting nocall:info/setting;
+  edited nocall:info/edited;
+  edited_type edited/type:resourcename;
+  setting_info edited/@@getSettingsInfo">
 
-<tal:block i18n:domain="cpsskins"
-    define="id request/form/id|nothing;
-            mode request/form/mode|string:edit;
-            tmutil context/@@getThemeManager;
-            element python: tmutil.getElementById(id);
-            info element/@@editpanel/getInfo;
-            display nocall:info/display;
-            display_id display/identifier;
-            setting nocall:info/setting;
-            edited nocall:info/edited;
-            edited_type edited/type:resourcename;
-            setting_info edited/@@getSettingsInfo">
-
-  <a class="next"
-     
href="javascript:CPSSkins.getControllerById('main-editor-perspectives').goBack()">To
 the editor</a>
+  <a 
href="javascript:CPSSkins.getControllerById('main-editor-perspectives').goBack()">&lt;
 back to the editor</a>
 
   <h1 class="title" tal:define="title element/title">
     <tal:block condition="not:title" i18n:translate=""
                content="info/element/name" />
-    <tal:block condition="title"
-               content="title" />
+    <tal:block condition="title" content="title" />
   </h1>
 
-  <p class="description" tal:define="description element/description|string:No 
description"
-     tal:content="description" />
+  <p class="description" tal:content="description"
+   tal:define="description element/description|string:No description" />
 
   <div class="tabs">
-    <a i18n:translate=""
-       tal:attributes="
-         href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: '$id', mode: 'edit'}})"
-       tal:content="info/element/name" />
-
-    <a i18n:translate=""
-       tal:attributes="
-         href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: $id, tab: '${display/type:name}'}})"
-       tal:content="display/type:name" />
-
-    <a i18n:translate=""
-       tal:repeat="format info/formats"
-       tal:attributes="
-         href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({script: 
'/++skin++cpsskins/++resource++style_editor.js', form: {id: $id, display: 
$display_id, format: ${format/id}, uri: '${format/uri}', tab: 
'${format/name}'}})"
-       tal:content="format/name" />
+    <a i18n:translate="" tal:content="info/element/name" tal:attributes="
+       href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: '$id', mode: 'edit'}})" />
 
-    <a i18n:translate=""
-       tal:attributes="
-         href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: '$id', mode: 'preview'}})">Preview</a>
+    <a i18n:translate="" tal:content="display/type:name" tal:attributes="
+       href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: $id, tab: '${display/type:name}'}})" />
 
+    <a i18n:translate="" tal:repeat="format info/formats" tal:attributes="
+       href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({script: 
'/++skin++cpsskins/++resource++style_editor.js', form: {id: $id, display: 
$display_id, format: ${format/id}, uri: '${format/uri}', tab: 
'${format/name}'}})"
+       tal:content="format/name" />
+
+    <a i18n:translate="" tal:attributes="
+       href 
string:javascript:CPSSkins.getModelById('element-editor').updateData({form: 
{id: '$id', mode: 'preview'}})">Preview</a>
   </div>
 
-  <tal:block condition="python: mode == 'edit'">
-    <div class="form" tal:content="structure edited/@@edit.html" />
-  </tal:block>
+  <div class="form" tal:condition="python: mode == 'edit' and setting is None"
+   tal:content="structure edited/@@edit.html" />
 
   <div class="form" tal:condition="python: mode == 'preview'"
-       tal:content="structure info/preview" />
+   tal:content="structure info/preview" />
 
-  <div class="form" tal:condition="request/form/format|nothing">
-    <p tal:condition="setting">
-      This format uses a site-wide setting.
+  <div style="float:right" tal:condition="request/form/format|nothing">
+    <p tal:condition="not:setting">
+      create a setting
     </p>
 
+    <!--
     <div tal:condition="not:setting">
       <div>Create a setting</div>
-      <form tal:attributes="action 
string:${edited/@@absolute_url}/@@createSetting"
-            enctype="multipart/form-data" method="post">
+      <form enctype="multipart/form-data" method="post"
+       tal:attributes="action string:${edited/@@absolute_url}/@@createSetting">
         <p>
           <label for="title">Title</label>
           <input id="title" type="text" name="title" />
           <input type="submit" name="UPDATE_SUBMIT"
-                 i18n:translate="create-button" value="Create" />
+           i18n:translate="create-button" value="Create" />
         </p>
       </form>
     </div>
 
     <tal:block condition="python: edited_type in setting_info">
-    <div>Use another setting</div>
     <ul>
       <li tal:repeat="setting setting_info/?edited_type">
-        <a href=""
-           tal:attributes="href 
string:${display/@@absolute_url}/@@useSettingAsFormat?uri=${setting/uri}"
-           tal:content="setting/name" />
+        <a href="" tal:content="setting/name"
+         tal:attributes="href 
string:${display/@@absolute_url}/@@useSettingAsFormat?uri=${setting/uri}" />
       </li>
     </ul>
     </tal:block>
+
+    -->
   </div>
 
-  <br/>
-  <br/>
+  <br style="clear:both"/>
 
 </tal:block>

Modified: 
cpsskins/branches/paris-sprint-2006/ui/screens/elementeditor/element-editor.css
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/ui/screens/elementeditor/element-editor.css 
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/ui/screens/elementeditor/element-editor.css 
    Tue May 23 00:26:28 2006
@@ -50,11 +50,15 @@
   padding: 0.2em;
 }
 
+div.inlineTabs {
+  margin-bottom: 1em;
+}
+
 div.inlineTabs a {
   margin-left: 0.2em;
   background-color: #efc;
-  color: #060;
   border: 1px solid #ccc;
+  color: #060;
   padding: 0 0.4em
 }
 
@@ -67,3 +71,12 @@
   font-size: 0.8em;
   font-weight: bold;
 }
+
+fieldset.panel {
+  padding: 1.5em;
+  border: 1px solid #ccc;
+}
+
+fieldset.panel legend.panelTitle {
+  color: #666;
+}
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to