Fix : fix classes extending simplePen

This commit is contained in:
jdescottes 2014-07-02 07:34:07 +02:00
parent d126023c4a
commit 8a70943b09
4 changed files with 33 additions and 15 deletions

View File

@ -42,6 +42,12 @@
evt.stopPropagation(); evt.stopPropagation();
var name = this.getName(); var name = this.getName();
if (!name) {
name = window.prompt('Please specify a name', 'New piskel');
}
if (name) {
var description = this.getDescription(); var description = this.getDescription();
var isPublic = !!this.isPublicCheckbox.prop('checked'); var isPublic = !!this.isPublicCheckbox.prop('checked');
@ -54,6 +60,7 @@
error : this.onSaveError_.bind(this), error : this.onSaveError_.bind(this),
after : this.afterSaving_.bind(this) after : this.afterSaving_.bind(this)
}); });
}
}; };
ns.SaveController.prototype.onSaveLocalClick_ = function (evt) { ns.SaveController.prototype.onSaveLocalClick_ = function (evt) {

View File

@ -27,7 +27,9 @@
* @override * @override
*/ */
ns.Lighten.prototype.applyToolAt = function(col, row, color, frame, overlay, event, mouseButton) { ns.Lighten.prototype.applyToolAt = function(col, row, color, frame, overlay, event, mouseButton) {
var pixelColor = frame.getPixel(col, row); var overlayColor = overlay.getPixel(col, row);
var frameColor = frame.getPixel(col, row);
var pixelColor = overlayColor === Constants.TRANSPARENT_COLOR ? frameColor : overlayColor;
var isDarken = event.ctrlKey || event.cmdKey; var isDarken = event.ctrlKey || event.cmdKey;
var isSinglePass = event.shiftKey; var isSinglePass = event.shiftKey;
@ -55,7 +57,11 @@
}; };
ns.Lighten.prototype.releaseToolAt = function(col, row, color, frame, overlay, event) { ns.Lighten.prototype.releaseToolAt = function(col, row, color, frame, overlay, event) {
// apply on real frame
this.setPixelsToFrame_(frame, this.pixels);
this.resetUsedPixels_(); this.resetUsedPixels_();
$.publish(Events.PISKEL_SAVE_STATE, { $.publish(Events.PISKEL_SAVE_STATE, {
type : pskl.service.HistoryService.SNAPSHOT type : pskl.service.HistoryService.SNAPSHOT
}); });

View File

@ -23,11 +23,16 @@
*/ */
ns.SimplePen.prototype.applyToolAt = function(col, row, color, frame, overlay, event) { ns.SimplePen.prototype.applyToolAt = function(col, row, color, frame, overlay, event) {
overlay.setPixel(col, row, color); overlay.setPixel(col, row, color);
if (color === Constants.TRANSPARENT_COLOR) {
frame.setPixel(col, row, color);
}
this.previousCol = col; this.previousCol = col;
this.previousRow = row; this.previousRow = row;
this.pixels.push({ this.pixels.push({
col : col, col : col,
row : row row : row,
color : color
}); });
}; };
@ -56,7 +61,7 @@
ns.SimplePen.prototype.releaseToolAt = function(col, row, color, frame, overlay, event) { ns.SimplePen.prototype.releaseToolAt = function(col, row, color, frame, overlay, event) {
// apply on real frame // apply on real frame
this.setPixelsToFrame_(frame, this.pixels, color); this.setPixelsToFrame_(frame, this.pixels);
// save state // save state
this.raiseSaveStateEvent({ this.raiseSaveStateEvent({
@ -74,7 +79,7 @@
ns.SimplePen.prototype.setPixelsToFrame_ = function (frame, pixels, color) { ns.SimplePen.prototype.setPixelsToFrame_ = function (frame, pixels, color) {
pixels.forEach(function (pixel) { pixels.forEach(function (pixel) {
frame.setPixel(pixel.col, pixel.row, color); frame.setPixel(pixel.col, pixel.row, pixel.color);
}); });
}; };
})(); })();

View File

@ -1,6 +1,6 @@
(function () { (function () {
var ns = $.namespace('pskl.service'); var ns = $.namespace('pskl.service');
var BACKUP_INTERVAL = 1000 * 30; var BACKUP_INTERVAL = 1000 * 60;
ns.BackupService = function (piskelController) { ns.BackupService = function (piskelController) {
this.piskelController = piskelController; this.piskelController = piskelController;