mirror of
https://github.com/piskelapp/piskel.git
synced 2023-08-10 21:12:52 +03:00
Issue #751 - add repeat checkbox to GIF export panel
This commit is contained in:
parent
0eface45f1
commit
cfd3773a2b
@ -18,9 +18,14 @@
|
|||||||
this.previewContainerEl = document.querySelector('.gif-export-preview');
|
this.previewContainerEl = document.querySelector('.gif-export-preview');
|
||||||
this.uploadButton = document.querySelector('.gif-upload-button');
|
this.uploadButton = document.querySelector('.gif-upload-button');
|
||||||
this.downloadButton = document.querySelector('.gif-download-button');
|
this.downloadButton = document.querySelector('.gif-download-button');
|
||||||
|
this.repeatCheckbox = document.querySelector('.gif-repeat-checkbox');
|
||||||
|
|
||||||
|
// Initialize repeatCheckbox state
|
||||||
|
this.repeatCheckbox.checked = this.getRepeatSetting_();
|
||||||
|
|
||||||
this.addEventListener(this.uploadButton, 'click', this.onUploadButtonClick_);
|
this.addEventListener(this.uploadButton, 'click', this.onUploadButtonClick_);
|
||||||
this.addEventListener(this.downloadButton, 'click', this.onDownloadButtonClick_);
|
this.addEventListener(this.downloadButton, 'click', this.onDownloadButtonClick_);
|
||||||
|
this.addEventListener(this.repeatCheckbox, 'change', this.onRepeatCheckboxChange_);
|
||||||
|
|
||||||
var currentColors = pskl.app.currentColorsService.getCurrentColors();
|
var currentColors = pskl.app.currentColorsService.getCurrentColors();
|
||||||
var tooManyColors = currentColors.length >= MAX_GIF_COLORS;
|
var tooManyColors = currentColors.length >= MAX_GIF_COLORS;
|
||||||
@ -108,6 +113,7 @@
|
|||||||
width: width * zoom,
|
width: width * zoom,
|
||||||
height: height * zoom,
|
height: height * zoom,
|
||||||
preserveColors : preserveColors,
|
preserveColors : preserveColors,
|
||||||
|
repeat: this.getRepeatSetting_() ? 0 : 1,
|
||||||
transparent : transparent
|
transparent : transparent
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -152,6 +158,15 @@
|
|||||||
return transparentColor;
|
return transparentColor;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
ns.GifExportController.prototype.onRepeatCheckboxChange_ = function () {
|
||||||
|
var checked = this.repeatCheckbox.checked;
|
||||||
|
pskl.UserSettings.set(pskl.UserSettings.EXPORT_GIF_REPEAT, checked);
|
||||||
|
};
|
||||||
|
|
||||||
|
ns.GifExportController.prototype.getRepeatSetting_ = function () {
|
||||||
|
return pskl.UserSettings.get(pskl.UserSettings.EXPORT_GIF_REPEAT);
|
||||||
|
};
|
||||||
|
|
||||||
ns.GifExportController.prototype.updateStatus_ = function (imageUrl, error) {
|
ns.GifExportController.prototype.updateStatus_ = function (imageUrl, error) {
|
||||||
if (imageUrl) {
|
if (imageUrl) {
|
||||||
var linkTpl = '<a class="highlight" href="{{link}}" target="_blank">{{shortLink}}</a>';
|
var linkTpl = '<a class="highlight" href="{{link}}" target="_blank">{{shortLink}}</a>';
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
LAYER_OPACITY : 'LAYER_OPACITY',
|
LAYER_OPACITY : 'LAYER_OPACITY',
|
||||||
EXPORT_SCALE: 'EXPORT_SCALE',
|
EXPORT_SCALE: 'EXPORT_SCALE',
|
||||||
EXPORT_TAB: 'EXPORT_TAB',
|
EXPORT_TAB: 'EXPORT_TAB',
|
||||||
|
EXPORT_GIF_REPEAT: 'EXPORT_GIF_REPEAT',
|
||||||
PEN_SIZE : 'PEN_SIZE',
|
PEN_SIZE : 'PEN_SIZE',
|
||||||
RESIZE_SETTINGS: 'RESIZE_SETTINGS',
|
RESIZE_SETTINGS: 'RESIZE_SETTINGS',
|
||||||
COLOR_FORMAT: 'COLOR_FORMAT',
|
COLOR_FORMAT: 'COLOR_FORMAT',
|
||||||
@ -41,6 +42,7 @@
|
|||||||
'LAYER_PREVIEW' : true,
|
'LAYER_PREVIEW' : true,
|
||||||
'EXPORT_SCALE' : 1,
|
'EXPORT_SCALE' : 1,
|
||||||
'EXPORT_TAB' : 'gif',
|
'EXPORT_TAB' : 'gif',
|
||||||
|
'EXPORT_GIF_REPEAT' : true,
|
||||||
'PEN_SIZE' : 1,
|
'PEN_SIZE' : 1,
|
||||||
'RESIZE_SETTINGS': {
|
'RESIZE_SETTINGS': {
|
||||||
maintainRatio : true,
|
maintainRatio : true,
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
Too many colors: can not preserve original colors or transparency.
|
Too many colors: can not preserve original colors or transparency.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="export-panel-section export-panel-row">
|
||||||
|
<input id="gif-repeat-checkbox" class="gif-repeat-checkbox checkbox-fix" type="checkbox" />
|
||||||
|
<label for="gif-repeat-checkbox">Loop repeatedly</label>
|
||||||
|
</div>
|
||||||
<div class="export-panel-section export-panel-row">
|
<div class="export-panel-section export-panel-row">
|
||||||
<button type="button" class="button button-primary gif-download-button">Download</button>
|
<button type="button" class="button button-primary gif-download-button">Download</button>
|
||||||
<div class="export-info">Download as an animated GIF.</div>
|
<div class="export-info">Download as an animated GIF.</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user