Commit Graph

217 Commits

Author SHA1 Message Date
jdescottes
947306a80c Issue #287 : Update helptext 2015-11-12 20:31:50 +01:00
jdescottes
0b439e1b00 Issue #287 : Add forbidden keys & helptext 2015-11-12 20:31:50 +01:00
jdescottes
676cbd17ea Issue #287 : Edit shortcuts from cheatsheet window (WIP) 2015-11-12 20:31:49 +01:00
jdescottes
2e3558ef08 Issue #287 : Edit shortcuts from the Cheatsheet dialog (WIP) 2015-11-12 20:31:49 +01:00
jdescottes
b5234089cd Issue #287 : Move CheatsheetService to CheatsheetController + DialogsController 2015-11-12 20:31:48 +01:00
jdescottes
f61682bb8d Issue #300 : follow-up : use shorter label 2015-10-08 23:55:45 +02:00
jdescottes
0021de35b4 Issue #312 : Improve layer preview tooltip + mutualize tooltip code 2015-10-08 00:47:35 +02:00
Julian Descottes
48d1214a6d Merge pull request #314 from juliandescottes/add-save-service
Add save service
2015-10-01 01:10:23 +02:00
jdescottes
a286d5926a Issue #277 : Cleanup save controller 2015-10-01 00:30:36 +02:00
Julian Descottes
92cc986fb6 Merge pull request #300 from jnlopar/exportscale
Adds the ability to export a scaled spritesheet.
2015-09-29 08:34:35 +02:00
Jason Neufeld
91ffce0bfe Makes scaling export more compact and adds tooltip. 2015-09-28 17:10:25 -07:00
jdescottes
6620f7e5a9 Issue #277 : Add global StorageService, enable CTRL+S 2015-09-20 10:42:14 +02:00
jdescottes
069bfb9a90 Issue #305 : Changed naming for consistency -> original-size 2015-09-13 23:28:53 +02:00
jdescottes
96ab2dd781 Issue #305 : Add keyboard shortcut for native preview resolution 2015-09-13 23:07:22 +02:00
jdescottes
84e26b28da Issue #305 : Add 1x icon, redesign popup icon 2015-09-13 19:16:08 +02:00
Jason Neufeld
c6287653f9 Moves the scaling factor into spritesheet export. Cleans up CSS and makes description spans with inline styles into divs. Adds a little more margin below the scaling factor so it's not too snug with the Download PNG button. 2015-09-06 11:53:10 -07:00
Jason Neufeld
72edf47734 Adds the ability to export a scaled spritesheet. 2015-08-31 11:21:17 -07:00
jdescottes
6a4d3cb106 Keyboard Cheatsheet : extract color shortcuts to dedicated category 2015-08-14 00:01:47 +02:00
jdescottes
d962217f90 Issue #281 : Add app.settings & user pref for layer preview opacity 2015-07-26 02:00:46 +02:00
jdescottes
12cfe16cb4 Cleaning up settings and dialogs CSS 2015-06-07 12:40:40 +02:00
James Lissiak
5c46cfe20a Updating for pull request feedback
- Using labels for the import type radio buttons
- Non animated gifs can now be imported as a spritesheet
- Fixing frame slicing to ignore a partial frame while looping
2015-06-03 19:48:29 -07:00
James Lissiak
2d9001db6e Updating the spritesheet import to use size
- The import dialog now allows users to select an option between single image or spritesheet importing
- The spritesheet option allows setting of the size of an indivdual frame and the offset from the left/top from which to start slicing frames
- Selecting the spritesheet option will display a frame slice grid over the preview image to give a quick view of where the frames will be made
- When importing the spritesheet blank (transparent) frames and also partial frames will be ignored
- This allows users to import spritesheets that have been packed into a larger image with excess padding
2015-06-02 21:54:26 -07:00
James Lissiak
8e4ea8437f Fixing unnecessary whitespace changes
- My editor added additional whitespace to several unchanged lines, so I just reverted them
2015-06-01 10:38:10 -07:00
James Lissiak
48f24c0cf3 Adding spritesheet import
- Updated the import dialog to allow users to specify the number of frames in the image (which defaults to 1 x and 1 y)
- Setting the frame count for x and y will draw a dotted line in the preview that shows where the image will be split into individual frames
- When imported with a frame count above 1, the source image will be split into the different frames and loaded just as if it were an animated gif
- This allows users to import existing spritesheet pngs, including those produced by the piskel export function
2015-06-01 10:29:52 -07:00
Max Eden
016316518d Zip-Export: Split by layers option 2015-04-29 20:20:35 +06:00
juliandescottes
daceb326c5 enhancement : use size-input instead of select for export 2015-04-24 14:55:00 +02:00
jdescottes
5fbadc0d80 wip : Add save as button 2015-04-24 00:00:53 +02:00
jdescottes
473bd4705c Add save as button 2015-04-23 23:59:05 +02:00
jdescottes
54ae52e117 Merge branch 'master' of https://github.com/juliandescottes/piskel 2015-04-14 21:31:49 +02:00
juliandescottes
007e4d4e11 Usability : keyboard shortcuts cheatsheet
- click outside of cheatsheet-wrapper closes the popup
- removed jquery from CheatsheetService
- removed label 'Keyboard shortcuts' in favor of tooltip
2015-04-14 11:09:36 +02:00
jdescottes
e260b36585 Update save form display 2015-04-10 00:57:20 +02:00
juliandescottes
4b7b18ca6f post merge 2015-04-07 23:15:36 +02:00
Lee Grey
f114676db7 Include save file path in "Successfully Saved" popup. Show full save path under the save button. Hide the "save to browser" portion of the save panel when running in desktop mode. 2015-03-26 20:32:27 +13:00
jdescottes
6254490a23 feature #251 : Set default size in Resize pref panel 2015-03-04 08:37:37 +01:00
jdescottes
fe95abca0f Switch to template for popup preview (easier integration) 2015-03-03 23:36:12 +01:00
jdescottes
bcecd3058b Popup preview : refactor, cross browser, WIP
- moved preview controllers to pskl.controller.preview
- renamed PreviewFilmController to FramesListController
- renamed AnimatedPreviewController to PreviewController
- fixed init of popup preview on IE (use ownerDocument to create
  TiledFrameRenderer container) => should try with innerHTML
- moved open popup button inside the minimap (show on hover)
2015-02-28 10:56:15 +01:00
jdescottes
7a355b39a0 Refactored HistoryService, CurrentColorsService, draft for popup preview 2015-02-27 23:54:18 +01:00
jdescottes
bab3d6677e Remove JQuery from all setting controllers 2015-02-26 01:25:33 +01:00
jdescottes
4f2f01ea36 Wrapped applicationSettings in FORM 2015-02-23 00:32:34 +01:00
jdescottes
8592cd2e53 Moved resize+app settings to AbstractSettingController 2015-02-23 00:23:11 +01:00
jdescottes
b4c1a4c714 Merge branch 'master' into fix-palette-bugs 2015-02-22 23:08:21 +01:00
jdescottes
3585a6f96e Merge resize content and resize canvas in single form 2015-02-22 23:01:43 +01:00
juliandescottes
0914e2816e Added Event utils to easily add/remove events without leaks. Added Max FPS setting to appl settings 2015-02-22 18:03:46 +01:00
juliandescottes
beb2fa6ba9 Removed JQuery from ApplicationSettings 2015-02-21 15:41:32 +01:00
jdescottes
61fb6c5e6f Extract resize anchor code to dedicated widget file 2015-02-20 01:40:34 +01:00
jdescottes
d310a77893 Enhancement : choose anchor for resize canvas 2015-02-17 02:06:52 +01:00
juliandescottes
84f366e7e4 enhancement : resize panel 2015-02-15 23:41:58 +01:00
jdescottes
561d016a45 fix : keyboard accessibility for colorpicker inpus 2015-02-12 00:39:38 +01:00
jdescottes
334d6ad21f fix : rename preferences tab 2015-02-10 23:09:28 +01:00
jdescottes
0382b3858b enhancement - cleaner UI for resize panel 2015-02-05 02:21:15 +01:00
jdescottes
2aa87b5fac enhancement - cleaner UI for resize panel 2015-02-05 02:16:25 +01:00
jdescottes
1402394d07 Animation pauses when FPS slider at 0FPS + slight perf improvement 2014-12-18 23:57:34 +01:00
jdescottes
e1ba57c92f cleanup MinimapController 2014-12-18 22:29:14 +01:00
jdescottes
2db04fe7d6 Support rectangular resolution & maximize viewport usage 2014-12-18 21:42:03 +01:00
jdescottes
61ee1d9b32 Added clone tool + icon 2014-11-23 16:27:12 +01:00
jdescottes
ce1a5c4918 Rotate non square sprites, added rotate icon, unit tests for transforms 2014-11-23 15:03:35 +01:00
jdescottes
0f49c884f2 Mutualize HTML generation for drawing tools and transform 2014-11-21 01:15:55 +01:00
jdescottes
c8dae1cb79 Added mirror transformation 2014-11-19 23:00:25 +01:00
jdescottes
243990a90f Fixed : cache issue coming from piskel-boot file 2014-09-30 00:19:54 +02:00
juliandescottes
fe5e8966a5 added shortcuts to select previous / next color in palette 2014-09-27 11:04:03 +02:00
jdescottes
00dd660571 Use dedicated service to display progress information 2014-09-22 23:51:28 +02:00
jdescottes
6445b44d02 Moved image import to worker 2014-09-20 09:14:21 +02:00
jdescottes
508fb79c32 Homogeneize layout, drop palette 2014-09-18 07:18:07 +02:00
juliandescottes
4ed7338f25 Feature : merge layers
Added feature to merge a layer with the layer below
Done at #jsconfeu2014 :)

New icon in icons : merge-icon.png
TODO : reorder the icons folder, it's waaaaaaay too messy !!
2014-09-13 20:10:05 +02:00
jdescottes
90845b3a62 Enhancement : Color palettes
- Added clone feature when editing existing palette
- Added arrow up/down to increase decrease input values
- Paint.net palettes are supported
2014-09-09 23:53:57 +02:00
jdescottes
e457209c8f Enhancement : Palette color creator
- Added import button on create palette dialog
- implemented import from images
- missing limitation on color count when importing !!
- should remove button when editing existing palette
2014-09-07 14:31:28 +02:00
jdescottes
92d7109ef7 Enhancement : Palette colors creation
- Added cancel button to create palette dialog
- Added escape/unescapeHtml methods to pskl.utils
- Escaping palette name now ...
- Removed outdated comment in app.js regarding appEngine token
- Added a call to destroy() during dialogClose of AbstractDlgCtrl
2014-09-07 12:22:44 +02:00
jdescottes
8441f28ac1 Palette creator can save palettes to local storage 2014-09-06 12:37:11 +02:00
jdescottes
e8db80a0ec Extracted ColorPicker code to dedicated widget package (noooooooo) ; Added basic palette creation mechanism (list colors + add color) 2014-09-04 08:34:17 +02:00
jdescottes
7d9f8a8ccf Added color picker in create palette popup 2014-09-04 00:22:02 +02:00
juliandescottes
073f46b0d7 starting palette implementation using creation wizard 2014-08-30 18:39:54 +02:00
jdescottes
32e528525c Small cleanup zip export screen 2014-08-27 01:12:29 +02:00
Eduardo San Martin Morote
978319af20 Allow to rename basename for PNG in ZIP export option.
This may helps #192
2014-08-22 11:27:45 +02:00
jdescottes
c1900a07f0 Final fixes before new version 2014-07-15 00:31:24 +02:00
jdescottes
d4884a2de5 Capture events on tmp download link created by FileUtils 2014-07-13 15:54:13 +02:00
jdescottes
581bd46dcd Cleanup + updated tooltips 2014-07-13 15:15:45 +02:00
jdescottes
cc8460cc26 Fix gif worker URL on IE11 appengine mode 2014-07-13 14:02:35 +02:00
jdescottes
e5cb0717e2 cleanup 2014-07-13 00:43:35 +02:00
jdescottes
6af04bb599 cleanup 2014-07-13 00:21:36 +02:00
jdescottes
dfc3bfd181 Fixed Gruntfile for ghpages export 2014-07-12 21:14:07 +02:00
jdescottes
ad3dd935e0 Create 2 new dialog controllers
Image import is now triggering a popup after selecting the file.
Same for local saves.

Drag and drop of .piskel files opens the piskel immediately !

Remains to do :
- redesign the dialog for import image and browse local
- create dialog for recover session
- improve recover session to handle more than the last session
2014-07-12 15:34:50 +02:00
jdescottes
b2fbe269d3 Merge branch 'master' into feature-export-to-file 2014-07-12 00:46:27 +02:00
jdescottes
b66d5ee93b Cleanup of tooltip generation 2014-07-11 00:14:21 +02:00
jdescottes
41a4ee3f3d cleanup of import tab 2014-07-06 12:55:29 +02:00
jdescottes
f8b6d7b0d3 Merge branch 'master' into feature-export-to-file 2014-07-05 23:53:03 +02:00
jdescottes
2c235e659b Fixed layout on FF, removed options in drawer 2014-07-05 11:39:02 +02:00
jdescottes
a77168986a Enhancement : Shortcuts for onion kin + layer prev
Added 2 new icons :
- Animated Preview Panel : toggle onion skin
- Layers Toolbox : toggle layer preview

Added an icon font generated with icomoon.

SVGs for both icons have been made under Inkscape and are kept under
misc/svg.

All reference SVGs have been moved to misc/svg.

Added 2 keyboard shortcuts for toggling onion skin / layer preview :
- alt L : toggle layer preview
- alt O : toggle onion skin
2014-07-05 11:27:11 +02:00
jdescottes
f2281d7125 temp commit 2014-06-29 23:16:37 +02:00
jdescottes
3efa94dce5 Merge branch 'master' into feature-export-to-file 2014-06-27 07:16:48 +02:00
jdescottes
bd7ebc5f7d Fix : add backup service and make undo safer 2014-06-27 02:08:00 +02:00
jdescottes
89466d582a Feature : Save Piskel project as File
First commit :
Removed Local storage feature
Added 'download project' 'open project' options

First attempt at simplifying right panel.

To be continued ...
2014-06-23 00:49:54 +02:00
jdescottes
98f59fecf1 Feature : add onion skin option
New option in application settings : onion skin.
You can choose the overlay to display now :
- no overlay
- onion skin (default)
- layer preview (previous default)

Available in Application Settings panel.

Only one overlay can be used at the same time.
The onion skin overlay is driven by a new OnionSkinRenderer maanged by the
drawing.

The drawing controller is responsible for instanciating and 'choosing' the
overlay renderer.

When switching to a new overlay, other overlays are cleared and flushed
(they cache their rendering frame, flush empties the cache).

NB : flush is only available on LayersRenderer and OnionSkinRenderer for
now.
2014-06-19 23:33:57 +02:00
jdescottes
2809a551d7 Fix : Export to GIF : download option
In the GIF export panel, user can now choose between :
- export online (previous 'upload' feature)
- download GIF

Labels have been updated in the PNG export panel to follow the same
convention.

CanvasToBlob library was modified and moved to dedicated utils to handle
not only canvas, but also any base64 dateURI.
2014-06-14 14:21:26 +02:00
jdescottes
384f8f71b1 Merge 2014-05-12 00:18:34 +02:00
jdescottes
9af23baa88 Fix : set name for tiled background checkbox 2014-05-08 21:23:15 +02:00
jdescottes
6ad5bde5d1 TiledPreview : follow up 2014-05-08 20:45:05 +02:00
juliandescottes
98135d01f8 Merge branch 'master' into feature-tiled-preview 2014-05-08 01:42:53 +02:00
juliandescottes
aa4c94e3af Feature : Tiled preview initial commiy 2014-05-08 01:41:14 +02:00
jdescottes
637fa05109 Feature : Current colors palette
Created dynamic palette displaying currently used colors.
This palette is now selected by default.

New service UsedColorsService created. Listens to PISKEL_RESET and
TOOL_RELEASED and keeps track of the list of current colors.

Still need to :
- improve sorting of colors
- allow to clone the current color palette as a custom palette
- add proper getter in UsedColorService to get the list of current colors

Also I hardcoded a max-height for the palettes-list as I found no better
way of handling the case of palettes containing many colors.

Maybe should add a limit to the number of colors handled by this automatic
palette.
2014-05-07 00:43:28 +02:00
jdescottes
f4108c7dbf Fix : removing useless label in resize panel 2014-05-06 07:27:12 +02:00
jdescottes
0b1977b47c Fix : Fixed styling for resize content checkbox 2014-05-05 21:58:17 +02:00
juliandescottes
1db937ae01 Enhancement : Possibility to resize canvas content during resize
- new checkbox in resize panel
- content is resized using nearest neighbor
- deactivated by default

2 bug fixes :
- remove focus after closing drawer
- fire resize event after undo/redo if size changed
2014-05-04 22:58:36 +02:00
jdescottes
b712a497e2 Feature : import sprites from GIF 2014-04-12 18:54:39 +02:00
jdescottes
9e78086ea8 Feature : import sprites from GIF 2014-04-12 18:48:39 +02:00
jdescottes
09319ecc1b Added progress bar for GIF rendering 2014-04-12 12:08:53 +02:00
jdescottes
dc729ee80b Feature : display cursor coordinates
- new controller CursorCoordinatesController
- added div in right column (bottom:0)
- 3 new events : CURSOR_MOVED, DRAG_START, DRAG_END
- modified tools to fire events when necessary

The cursor coordinates are displayed when the mouse is hovering the
drawing area. When the mouse leaves the area, the indication disappears.
If the user is using a tool that involves dragging (selection, rectangle,
circle), the indicator displays the original coordinates (captured during
drag start) and the current coordinates.
2014-04-11 23:32:28 +02:00
jdescottes
abd5ac5959 Feature : export to ZIP 2014-04-11 01:12:01 +02:00
jdescottes
39d7d4d8c8 Enhancement : Rename layers
- added rename icon in layers list
- mutualized CSS for edit icon between palette manager and layers list
- new CSS file icons.css for actions/links/buttons using icons
- layers are no longer retrieved by name, but by index
2014-04-09 23:24:25 +02:00
jdescottes
090443c318 Feature : Color palette : fix spectrum issue
The palette manager UI is redrawn almost everytime the model changes.
This way, UI is always in sync with the model.

However, spectrum instances are spawning everytime a redraw is performed.
They cannot be cleaned before the redraw is performed, because if a
spectrum picker is opened, it should remain like this. This allows the
cuser to keep modifying a color without having to reopen the picker each
time he/she stops on a color.

As a workaround, I keep a reference on all the spectrum containers and
destroy them all when the manager is disposed.

Ideally I'd prefer to have a single spectrum instance that I could move
around depending on which color the user wants to edit. I.e. I want to
mutualize all the picker instances ...  But this will require a bit more
work.

Also added a notification when the user saves a palette.
Updated z-index of user-message container so that it is always above the
rest of the application.
2014-03-30 22:42:28 +02:00
jdescottes
231ae9e165 Feature : color palette
- Fixed : manager UI is redrawn after save
- the Selected palette is saved as a user preference
- default background is now the dark one
- the selected palette is not reset after closing palette manager
2014-03-30 14:56:31 +02:00
juliandescottes
d2ec797496 integrate palette list with palette manager 2014-03-30 01:10:00 +01:00
jdescottes
f2da622edb Merge + palette manager 1st drop
- can create palettes
- palettes are persisted to local storage
- can add colors to palettes using spectrum color picker
- can remove created palettes
- can revert changes on unsaved palettes

Merge branch 'master' into feature-color-palette

Conflicts:
	src/css/spectrum/spectrum-overrides.css
2014-03-29 18:35:56 +01:00
jdescottes
d4f315e0c1 Color Palette : Added popup mgr + palettes list 2014-03-26 07:41:45 +01:00
jdescottes
1f022fd4a7 Enhancement : Add hint to see Keyboard cheatsheet 2014-03-18 01:45:59 +01:00
jdescottes
903f6817cf feature : allow to delete current selection
* Users can now use DEL to delete the current selection
* Cheatsheet has been updated accordingly
* Cheatsheet has been refactored to mutualize markup creation code
2014-03-16 23:22:47 +01:00
jdescottes
9ae01cb074 feature : change grid size
* removed SHOW_GRID boolean, replaced with GRID_WIDTH
* gridEnabled on a frame is now infered from the grid width setting
* updated template to use a select to pick the grid size
2014-03-16 22:46:43 +01:00
jdescottes
87574a2b30 Cleanup project root 2014-03-16 21:15:34 +01:00