##// END OF EJS Templates
Note todos for widgets
Jason Grout -
Show More
@@ -95,10 +95,9 b''
95 95 var view = new ViewType({model: model, widget_manager: this, cell: cell});
96 96 view.render();
97 97 model.views.push(view);
98 model.on('destroy', view.remove, view);
98 99 /*
99 // jng: Handle when the view element is remove from the page.
100 // observe the view destruction event and do this. We may need
101 // to override the view's remove method to trigger this event.
100 // TODO: handle view deletion. Don't forget to delete child views
102 101 var that = this;
103 102 view.$el.on("remove", function () {
104 103 var index = that.views.indexOf(view);
@@ -109,7 +108,7 b''
109 108
110 109 // Close the comm if there are no views left.
111 110 if (that.views.length() === 0) {
112 //jng: trigger comm close event
111 //trigger comm close event?
113 112 }
114 113
115 114
@@ -41,7 +41,6 b' function(widget_manager, underscore, backbone){'
41 41 comm.on_close($.proxy(this._handle_comm_closed, this));
42 42 comm.on_msg($.proxy(this._handle_comm_msg, this));
43 43 }
44
45 44 return Backbone.Model.apply(this);
46 45 },
47 46
@@ -54,12 +53,11 b' function(widget_manager, underscore, backbone){'
54 53
55 54 // Handle when a widget is closed.
56 55 _handle_comm_closed: function (msg) {
57 // jng: widget manager should observe the comm_close event and delete views when triggered
58
59 56 this.trigger('comm:close');
60 57 delete this.comm.model; // Delete ref so GC will collect widget model.
61 58 delete this.comm;
62 59 delete this.widget_id; // Delete id from model so widget manager cleans up.
60 // TODO: Handle deletion, like this.destroy(), and delete views, etc.
63 61 },
64 62
65 63
General Comments 0
You need to be logged in to leave comments. Login now