瀏覽代碼

idTree:无任何节点时,可新增节点
idTree:界面绑定是否显示6个基本功能按钮

MaiXinRong 8 年之前
父節點
當前提交
ee878f8143
共有 4 個文件被更改,包括 25 次插入12 次删除
  1. 7 3
      public/web/tree_sheet_controller.js
  2. 5 4
      web/main/html/main.html
  3. 12 4
      web/main/js/models/cache_tree.js
  4. 1 1
      web/main/js/models/project.js

+ 7 - 3
public/web/tree_sheet_controller.js

@@ -38,12 +38,16 @@ var TREE_SHEET_CONTROLLER = {
 
         controller.prototype.insert = function () {
             var newNode = null, that = this;
-            if (this.tree && this.tree.selected) {
-                newNode = this.tree.insert(this.tree.selected.getParentID(), this.tree.selected.getNextSiblingID());
+            if (this.tree) {
+                if (this.tree.selected) {
+                    newNode = this.tree.insert(this.tree.selected.getParentID(), this.tree.selected.getNextSiblingID());
+                } else {
+                    newNode = this.tree.insert();
+                }
                 if (newNode) {
                     TREE_SHEET_HELPER.massOperationSheet(this.sheet, function () {
                         var sels = that.sheet.getSelections();
-                        var iRow = sels[0].row, newNodeRow = iRow + that.tree.selected.posterityCount() + 1;
+                        var iRow = sels[0].row, newNodeRow = that.tree.selected ? iRow + that.tree.selected.posterityCount() + 1 : iRow;
                         that.sheet.addRows(newNodeRow, 1);
                         TREE_SHEET_HELPER.refreshTreeNodeData(that.setting, that.sheet, [newNode], false);
                         that.tree.selected = newNode;

+ 5 - 4
web/main/html/main.html

@@ -629,10 +629,11 @@
                     btn.hide();
                 }
             };
-            showButton(selected.canUpLevel(), $('#upLevel'));
-            showButton(selected.canDownLevel(), $('#downLevel'));
-            showButton(selected.canUpMove(), $('#upMove'));
-            showButton(selected.canDownMove(), $('#downMove'));
+            showButton(selected && selected.canUpLevel(), $('#upLevel'));
+            showButton(selected && selected.canDownLevel(), $('#downLevel'));
+            showButton(selected && selected.canUpMove(), $('#upMove'));
+            showButton(selected && selected.canDownMove(), $('#downMove'));
+            showButton(selected ? true : false, $('#delete'));
         });
 
         $('#insert').click(function () {

+ 12 - 4
web/main/js/models/cache_tree.js

@@ -2,7 +2,7 @@
  * Created by Mai on 2017/4/5.
  */
 var cacheTree = {
-    createNew: function () {
+    createNew: function (owner) {
         var tools = {
             findNode: function (nodes, check) {
                 for (var i = 0; i < nodes.length; i++) {
@@ -286,11 +286,10 @@ var cacheTree = {
             return success;
         };
 
-        var Tree = function (setting) {
+        var Tree = function (owner) {
             this.nodes = {};
             this.roots = [];
             this.items = [];
-            this.setting = setting;
             this.prefix = 'id_';
             this.selected = null;
 
@@ -305,6 +304,11 @@ var cacheTree = {
                 } else {
                     _MaxID = Math.max(_MaxID, id);
                 }
+            };
+
+            var rootId = -1;
+            this.rootID = function () {
+                return rootId;
             }
         };
 
@@ -405,6 +409,10 @@ var cacheTree = {
             return success;
         };
 
-        return new Tree(setting);
+        Tree.prototype.editedData = function (field, id, newText) {
+            var node = this.findNode(id);
+        }
+
+        return new Tree(owner);
     }
 };

+ 1 - 1
web/main/js/models/project.js

@@ -8,7 +8,7 @@ var PROJECT = {
 
         // 所有通过this访问的属性,都不应在此单元外部进行写入操作
         var project = function () {
-            this.mainTree = cacheTree.createNew();
+            this.mainTree = cacheTree.createNew(this);
 
             this.Bills = Bills.createNew(this);
             this.Rations = Rations.createNew(this);