wip: canvas publishes wlxmlNode as selected + handling in nodePane
authorAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Thu, 10 Oct 2013 14:16:02 +0000 (16:16 +0200)
committerAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Mon, 2 Dec 2013 13:50:52 +0000 (14:50 +0100)
src/editor/modules/documentCanvas/canvas/canvas.js
src/editor/modules/nodePane/nodePane.js
src/editor/modules/rng/rng.js

index a589a20..bf68ede 100644 (file)
@@ -298,7 +298,7 @@ $.extend(Canvas.prototype, {
         if(!(currentNodeElement && currentNodeElement.sameNode(nodeElementToLand))) {
             _markAsCurrent(nodeElementToLand);
 
-            this.publisher('currentNodeElementSet', nodeElementToLand);
+            this.publisher('currentNodeElementSet', nodeElementToLand.data('wlxmlNode'));
         }
     },
 
index f3fb68a..b2a1161 100644 (file)
@@ -10,12 +10,15 @@ define([
 
 return function(sandbox) {
     
-    var view = $(_.template(templateSrc)({tagNames: wlxmlUtils.wlxmlTagNames, classNames: wlxmlUtils.wlxmlClassNames}));
+    var view = $(_.template(templateSrc)({tagNames: wlxmlUtils.wlxmlTagNames, classNames: wlxmlUtils.wlxmlClassNames})),
+        currentNode;
     
     view.on('change', 'select', function(e) {
         var target = $(e.target);
-        var attr = target.attr('class').split('-')[3] === 'tagSelect' ? 'tag' : 'class';
-        sandbox.publish('nodeElementChange', attr, target.val().replace(/-/g, '.'));
+        var attr = target.attr('class').split('-')[3] === 'tagSelect' ? 'Tag' : 'Class',
+            value = target.val().replace(/-/g, '.');
+                
+        currentNode['set' + attr](value);
     });
     
     return {
@@ -25,17 +28,19 @@ return function(sandbox) {
         getView: function() {
             return view;
         },
-        setNodeElement: function(nodeElement) {
-            view.find('.rng-module-nodePane-tagSelect').val(nodeElement.getWlxmlTag());
+        setNodeElement: function(wlxmlNodeElement) {
+            view.find('.rng-module-nodePane-tagSelect').val(wlxmlNodeElement.getTagName());
 
-            var escapedClassName = (nodeElement.getWlxmlClass() || '').replace(/\./g, '-')
+            var escapedClassName = (wlxmlNodeElement.getClass() || '').replace(/\./g, '-')
             view.find('.rng-module-nodePane-classSelect').val(escapedClassName);
 
-            var widget = metaWidget.create({attrs:nodeElement.getWlxmlMetaAttrs()});
+            var widget = metaWidget.create({attrs:wlxmlNodeElement.getMetaAttributes()});
             widget.on('valueChanged', function(key, value) {
                 sandbox.publish('nodeElementChange', key, value);
             });
             view.find('.metaFields').empty().append(widget.el);
+
+            currentNode = wlxmlNodeElement;
         }
     };
     
index 59652a7..9dc9251 100644 (file)
@@ -69,8 +69,8 @@ return function(sandbox) {
         },
         updateCurrentNodeElement: function(nodeElement) {
             sandbox.getModule('nodePane').setNodeElement(nodeElement);
-            sandbox.getModule('nodeFamilyTree').setElement(nodeElement);
-            sandbox.getModule('nodeBreadCrumbs').setNodeElement(nodeElement);
+            //sandbox.getModule('nodeFamilyTree').setElement(nodeElement);
+            //sandbox.getModule('nodeBreadCrumbs').setNodeElement(nodeElement);
         },
         updateCurrentTextElement: function(textElement) {
             sandbox.getModule('nodeFamilyTree').setElement(textElement);