- Fix undo issues over features.

This commit is contained in:
Paulo Gustavo Veiga 2012-09-04 01:06:50 -03:00
parent 1efa24f2aa
commit 9ab4c4975c
3 changed files with 10 additions and 4 deletions

View File

@ -274,7 +274,7 @@ mindplot.Topic = new Class({
return result;
},
addFeature:function (type, attributes) {
addFeature:function (type, attributes, featureId) {
var iconGroup = this.getOrBuildIconGroup();
this.closeEditors();
@ -282,8 +282,12 @@ mindplot.Topic = new Class({
// Update model ...
var feature = model.createFeature(type, attributes);
if ($defined(featureId)) {
feature.setId(featureId);
}
model.addFeature(feature);
var result = mindplot.TopicFeature.createIcon(this, feature, this.isReadOnly());
iconGroup.addIcon(result, type == mindplot.TopicFeature.Icon.id && !this.isReadOnly());

View File

@ -40,9 +40,7 @@ mindplot.commands.RemoveFeatureFromTopicCommand = new Class({
var topic = commandContext.findTopics(this._topicId)[0];
var feature = this._oldFeature;
var newFeature = topic.addFeature(feature.getType(), feature.getAttributes());
this._featureId = newFeature.getModel().getId();
topic.addFeature(feature.getType(), feature.getAttributes(), this._featureId);
this._oldFeature = null;
}
});

View File

@ -55,6 +55,10 @@ mindplot.model.FeatureModel = new Class({
return this._id;
},
setId : function(id) {
this._id = id;
},
getType:function() {
return this._type;
}