Commit Graph

524 Commits

Author SHA1 Message Date
juliandescottes
11a3155e38 Merge branch 'master' into improve-color-selection-ux 2013-11-23 19:51:47 +01:00
grosbouddha
e88d8fae07 Merge pull request #141 from juliandescottes/zoom-level
Zoom level
2013-11-23 05:21:37 -08:00
jdescottes
f26b1d4ebc improve : color picker : initial implementation using spectrum 2013-11-21 00:44:46 +01:00
jdescottes
e68ae7f31d feature : zoom level : code review
+ Switched from BITWISE OR 0 (x | 0) to Math.floor for readability
2013-11-15 00:39:43 +01:00
jdescottes
3af64d3f45 feature : zoom level : code review
+ added explanatory comment for CanvasUtils.disableImageSmoothing
+ detect browser for chosing wheel/mousewheel event in DrawingController
+ create ABSTRACT_FUNCTION constant to be reused forabstract methods
2013-11-15 00:32:18 +01:00
jdescottes
c8a8d470a7 renamed all references to dpi to zoom for consistency (also wtf dpi anyway !) 2013-11-05 22:11:47 +01:00
jdescottes
bd030fdf1f Merge branch 'master' into zoom-level 2013-11-05 00:15:08 +01:00
jdescottes
6e1ce724cb feature : zoom level
- fix : removed duplicated code between ImageResizer and CanvasUtils
  (disabledImageSmoothing utility method)
- added pskl.utils.UserAgent, basic user agent sniffer. I need it to sniff
  out IE10 for frame rendering (and it's not possible to feature detect
  here). Can check isChrome, isFirefox, isIE and get the version for each
  of them
- added resizeNearestNeighbour in ImageResizer. Readapted from piskel
  website, this allows us to 1 - resize without AA on IE10, and 2 - add a
  pixel gap to reenable the GRID
- finally : added back support for GRID !
- also extracted the 'zoomed out background color' as a constant in
  Constant.js
2013-11-05 00:05:49 +01:00
jdescottes
2248f41e68 feature : zoom-level
- Fixed bug with layer rendering when moving drawing offset (bad
  redraw-flag checking)
2013-11-02 13:45:41 +01:00
jdescottes
44722ab88e feature : zoom-level
- Fixed bug with layer rendering when moving drawing offset (bad
  redraw-flag checking)
2013-11-02 11:39:35 +01:00
jdescottes
cd4952cc7b feature : zoom-level
- Minimap usability : mouseup and mousemove events are now plugged on
  document.body instead of the minimap's controller. This way the user can
  move his mouse outside the container to keep moving the map's frame.
  Also the mouseup information is no longer lost if it occurs outside for
  the minimap.
2013-11-02 11:24:02 +01:00
jdescottes
eb559eee0c fix : import-picture-panel
- When imported 1 picture and then importing another one, the picture
  preview was not cleaned and was displaying the two images side by side.
  Fixed in ImportController.js
- Switched all double-quoted strings in ImportController to single-quoted
  strings. Should enforce this using jshint
- Aligned all inputs in the import picture panel
- Renamed 'Preview :' import section to 'Info :'. Mostly it's to make it
  shorter, but also I'd like to display additional information to the
  right of the preview in the future.
2013-11-02 11:02:03 +01:00
jdescottes
e0d63bf295 fix : renderer resize on window resize 2013-11-02 00:00:38 +01:00
jdescottes
8a380b6c78 merged from master 2013-11-01 23:37:09 +01:00
jdescottes
5693f34fb9 fix : LocalStorageService deserialization 2013-11-01 23:30:33 +01:00
grosbouddha
2ba451d42c Merge pull request #140 from juliandescottes/import-picture-panel
Import picture panel
2013-11-01 15:28:17 -07:00
jdescottes
bd99027852 feature : zoom
- Added MinimapController that displays a frame on the animated preview
  when zoomed in
- Added bounds for the offset to make sure it doesn't go crazy
- Added new utility Math.js with a minmax function
- TODO : the minimap controller has a lot of dependencies, see if could be
  cleaned up
- TODO : DrawingController knows the size of the picture it has to render
  only indirectly, which makes it hard in some cases (such as boundary
  checking performed during setOffset)
2013-11-01 23:11:11 +01:00
jdescottes
68edbe62c7 Forgot 2 files ! 2013-11-01 17:17:41 +01:00
jdescottes
472906957a feature : zoom :
- Extracted layers rendering logic from DrawingController to dedicated
  class
- Turned RendererManager into Composite renderer (extends
  AbstractRenderer)
- AbstractRenderer no longer contains a render(frame) method, implementing
  the render differs too much between my current renderers to impose a
  single signature, but I should improve this later if too much time on ma
  hands
2013-11-01 17:12:59 +01:00
jdescottes
b7e8310b61 feature : zoom : continued
- simplified Renderer(s) architecture (removed decorator,
  CachedFrameRenderer simply inherits from FrameRenderer now)
- keeping AbstractRenderer to act as interface
- fixed issue with layers : forgot to clone the first frame while merging
  and therefore was modifying the original frame when I just wanted to
  create a tmp frame (FrameUtils.js)
- extracted the mousemove throttling delay used in DrawingController to
  Constants.js and reduced it from 40ms to 10ms
2013-11-01 16:27:23 +01:00
jdescottes
51f86afe6e feature : zoom
- Created AbstractRenderer in rendering package
- Created CachedRenderer and CachedFrameRenderer to extract basic frame
  caching logic from DrawingController
- Created RendererManager to synchronize updates made to several Renderer
  settings
- Moved FrameRenderer from pskl.rendering to pskl.rendering.frame
- Fixed the resize of the drawing area when the window is resized
2013-11-01 15:39:42 +01:00
jdescottes
3ce9aaa843 Added utilities for alpha-composition in FrameUtils, for future usage ... maybe 2013-11-01 11:17:50 +01:00
jdescottes
7490651f83 Zoom initial implementation. No UI, only bound to mousewheel. Everything is broken, to amend ! 2013-10-29 22:16:39 +01:00
jdescottes
2f6f0d14e1 Merge branch 'master' into import-picture-panel 2013-10-28 21:58:28 +01:00
jdescottes
a69b83e9bd Fix : layer : duplicateFrame bug 2013-10-28 21:57:59 +01:00
jdescottes
c332aa2dea import-picture-panel : IE10 CSS fix for input text with text-align:right 2013-10-25 00:32:42 +02:00
jdescottes
b2258a668d import-picture-panel : IE10 CSS fix for input text with text-align:right 2013-10-25 00:31:45 +02:00
jdescottes
a0a1fa7bdf Added preview picture. Added a flow : start with only file input enabled 2013-10-23 23:34:09 +02:00
jdescottes
3dde3504d1 Synchronize resize fields, resize image when importing 2013-10-23 01:01:35 +02:00
jdescottes
6c0f54032d Import panel 2013-10-22 07:40:08 +02:00
jdescottes
61419f0bba import panel : before removal of import from URL option 2013-10-21 23:08:12 +02:00
jdescottes
2509ba80a4 intermediary 2013-10-18 08:01:25 +02:00
jdescottes
07cb37f2bf Merge branch 'master' into import-picture-panel 2013-10-16 23:15:09 +02:00
jdescottes
1156008213 Import from file 2013-10-16 23:14:41 +02:00
jdescottes
a8b42a35da import template basic version 2013-10-16 21:43:47 +02:00
grosbouddha
721783ce6c Merge pull request #138 from juliandescottes/piskel-website-adaptations
Piskel website adaptations
2013-10-11 11:27:28 -07:00
jdescottes
f549174424 Import panel:
- added pskl.controller.settings.ImportController (empty atm)
- moved SettingsController under settings namespace
- move settings templates in a dedicated folder
- created import icon (svg is in the resources folder)
- added import button in right-layer
2013-10-11 00:04:40 +02:00
Julian Descottes
4527846ad6 PR138#commitcomment-4293036 use full namespace when specifying a classtype
See https://github.com/juliandescottes/piskel/pull/138#commitcomment-4293036
2013-10-10 13:35:18 +02:00
jdescottes
55e3607ecc Cleanup of saving/loading process 2013-10-10 00:06:11 +02:00
jdescottes
564f74265a Piskel website adaptations :
M CanvasRenderer : can set the color used to represent transparency
M app.js : modified code responsible for saving when in website mode
M PiskelController.js : just some argument renaming
2013-10-08 23:44:06 +02:00
grosbouddha
913a50cb28 Merge pull request #129 from juliandescottes/cleanup-cheap-templates
Refactor : moved cheap-templates.js to lib. Added documentation
2013-10-04 15:07:01 -07:00
grosbouddha
93ba8c70a0 Merge pull request #130 from juliandescottes/layers-backward-compatibility
Layers:Added backward compatibility for previous models
2013-10-04 15:03:27 -07:00
jdescottes
17a147c880 grrmml 2013-10-04 23:55:45 +02:00
jdescottes
1e99a051e6 Rollback of initialization sequence 2013-10-04 23:46:19 +02:00
jdescottes
894486fba6 Review : fixes 2013-10-04 23:26:53 +02:00
jdescottes
5502d75ca5 Layers:Added backward compatibility for previous models 2013-10-04 22:59:42 +02:00
jdescottes
a87b09908d Refactor : moved cheap-templates.js to lib. Added documentation 2013-10-04 22:25:47 +02:00
Vince
09da75af92 Removing external libs from Closure compiler pass 2013-10-02 00:11:03 +02:00
grosbouddha
a075a1c8b3 Merge pull request #128 from juliandescottes/feature-gif-export-panel
Feature gif export panel
2013-09-30 15:51:20 -07:00
jdescottes
2686a2e944 Layers:Review:Removed grid drawing routine : was never drawn 2013-09-30 22:44:02 +02:00