Commit graph

320 commits

Author SHA1 Message Date
Paul Kaplan
62fad01607 Increase zoom button increment 2017-10-27 10:05:21 -04:00
Paul Kaplan
9ac6b0b048 Save and restore project pan and zoom correctly between costume changes 2017-10-27 09:59:57 -04:00
Paul Kaplan
da12930e00 Fix linting 2017-10-27 09:33:06 -04:00
Paul Kaplan
94b90e104b Add basic zooming and panning from mousewheel 2017-10-27 09:12:31 -04:00
Matthew Taylor
bbf47b8eeb Remove user select state from form fields in paint
Also add a pointer curser to the color-button html elements so that it’s clear those are clickable
2017-10-27 08:37:28 -04:00
Paul Kaplan
c1ce433f72 Merge pull request #112 from paulkaplan/transparent-state
Fix several color state inconsistencies
2017-10-27 08:20:09 -04:00
Paul Kaplan
e4387739a5 Remove not required prop 2017-10-26 18:17:33 -04:00
Paul Kaplan
433baae5ba Fix linting 2017-10-26 18:16:14 -04:00
Paul Kaplan
68c6f69211 Add box to make outline different from fill button 2017-10-26 18:09:27 -04:00
Paul Kaplan
ab3b4e4555 Force a stroke width on pen and line mode 2017-10-26 17:43:06 -04:00
Paul Kaplan
b8aadc3c54 Disable fill or outline indicators for brush, line and pen mode. 2017-10-26 17:43:06 -04:00
Paul Kaplan
40ec57fbf1 Force a real color when activating brush, pen and line mode. 2017-10-26 17:43:06 -04:00
Paul Kaplan
d98a493954 Add initial transparent and mixed icons for color buttons and swatch 2017-10-26 17:43:06 -04:00
DD
7c8c9aa23d change default color to looks purple 2017-10-26 16:41:01 -04:00
DD
ad28e1ff16 Change default fill color to motion blue 2017-10-26 15:58:02 -04:00
Matthew Taylor
162ca81ff9 comment out currently disabled imports 2017-10-26 15:48:20 -04:00
DD Liu
b2eb47d7f2 Merge pull request #107 from fsih/backspace
Don't delete when input field focused
2017-10-26 15:44:19 -04:00
Matthew Taylor
b7f0df5214 Merge branch 'issue/disabled-state' into develop
* issue/disabled-state:
  comment out disabled mode tools for now
  Change border on disabled undo/enabled redo
  pass props to button from labeled button
  Add undo/redo disabled states
  Have the paint-editor container listen to `selectedItems`
  Add bool to `disabled` prop type
  Add disabled state for button

# Conflicts:
#	src/containers/paint-editor.jsx
2017-10-26 15:32:43 -04:00
Matthew Taylor
0f726c9d40 comment out disabled mode tools for now 2017-10-26 14:20:39 -04:00
Matthew Taylor
cdb235a876 Change border on disabled undo/enabled redo
thanks @fsih
2017-10-26 14:03:09 -04:00
DD
6e589e8f81 case 2017-10-26 12:05:54 -04:00
DD
2019196256 Do onUpdateSvg only once on changing stroke width 2017-10-26 11:28:10 -04:00
DD
7ca851985e Move delete out of tools so its always available 2017-10-26 11:25:38 -04:00
Matthew Taylor
9ef967aa24 pass props to button from labeled button
so that we don’t have to check for things like `disabled` twice.
2017-10-26 11:02:01 -04:00
Matthew Taylor
7b783a5c46 Add undo/redo disabled states 2017-10-26 10:58:28 -04:00
Matthew Taylor
2376a3ce63 Have the paint-editor container listen to selectedItems
This solves the issue of buttons not updating their disabled/enabled state until being dragged by making sure that a re-render occurs whenever a new item is selected, checking again for state.
2017-10-26 09:28:01 -04:00
Matthew Taylor
128f9ca642 Add bool to disabled prop type
fixes a warning that @paulkaplan noticed, thanks!
2017-10-26 09:26:54 -04:00
DD Liu
4e7a1fab40 Merge pull request #97 from fsih/crosshair
Add the background guide layer
2017-10-25 17:26:47 -04:00
DD
8fccfb3dc3 Use content-box so that we dont have edges around the border 2017-10-25 16:47:56 -04:00
Matthew Taylor
a38b1f6121 Add disabled state for button
This implements #47 by adding a disabled state to the button component, and then by applying it to top row buttons for group/ungroup, and front/back forward/backward.
2017-10-25 16:44:04 -04:00
Matthew Taylor
c1862284ff Remove unused reference 2017-10-25 15:23:30 -04:00
DD
67562c8799 Use a raster for the guid layer background 2017-10-25 14:47:40 -04:00
Matthew Taylor
117c24787a remove unused reference 2017-10-25 14:36:08 -04:00
Matthew Taylor
e2fd966ae9 Increase max size to 1 2017-10-25 14:22:36 -04:00
Matthew Taylor
3574918f23 Add comment, and adjust handleChange()
make `e.target.value` the submitted thing, rather than `this.props.value`
2017-10-25 14:15:02 -04:00
Matthew Taylor
90c485ba23 remove half-baked slider stuff
whoops!
2017-10-25 13:51:57 -04:00
Matthew Taylor
ea36e10577 Add basic eraser and brush size picker
this implements the first version of #36 and #37, in which the brush size picker is a numeric input field rather than a slider.
2017-10-25 13:37:41 -04:00
DD
29f5cc7216 fix undo snapshotting with the background guide layer 2017-10-24 17:37:55 -04:00
DD
29a3d74143 Add the background guide layer 2017-10-24 17:12:44 -04:00
Paul Kaplan
4d0f3e8311 Update default mode in reducer 2017-10-24 15:52:39 -04:00
Paul Kaplan
4e9108e8e3 Update default mode order 2017-10-24 15:51:57 -04:00
Paul Kaplan
748bd44cbc Merge pull request #92 from paulkaplan/update-color-language
Change "Hue" to "Color" in color picker
2017-10-24 15:01:14 -04:00
DD
251967fefb fix merge 2017-10-24 13:27:09 -04:00
DD
a538d10992 Add comments to group code 2017-10-24 13:26:43 -04:00
DD
083bf63869 Add group and ungroup 2017-10-24 13:26:43 -04:00
Matthew Taylor
091201756b Add UI formatting for edit fields
This adds formatting and icons to the edit field buttons at the top of the ui, as well as some additional components for abstraction – such as `InputGroup`, `ButtonGroup` and `EditFieldButton` (which is a subcomponent of the paint editor)
2017-10-24 13:25:44 -04:00
Paul Kaplan
0bc3f12475 Change "Hue" to "Color" in color picker 2017-10-24 09:27:23 -04:00
Matthew Taylor
3fd72e775d remove svg for now
fix lint error since this is not used while rotation point is not part of the ui
2017-10-23 17:27:08 -04:00
DD
3b4f509f89 Implement ordering buttons 2017-10-23 17:20:35 -04:00
Matthew Taylor
c3f578c140 Add UI formatting for edit fields
This adds formatting and icons to the edit field buttons at the top of the ui, as well as some additional components for abstraction – such as `InputGroup`, `ButtonGroup` and `EditFieldButton` (which is a subcomponent of the paint editor)
2017-10-23 17:19:44 -04:00
Matthew Taylor
1963d9d0db Merge branch 'issue/edit-field-ui' of https://github.com/mewtaylor/scratch-paint into develop
* 'issue/edit-field-ui' of https://github.com/mewtaylor/scratch-paint:
  Hide rotation point button for now
  Add UI formatting for edit fields

# Conflicts:
#	src/components/paint-editor/paint-editor.jsx
2017-10-23 17:08:56 -04:00
Matthew Taylor
f44bd4b7fd Hide rotation point button for now
thanks @fsih!
2017-10-23 15:56:38 -04:00
Ray Schamp
82386c2c88 Merge pull request #78 from rschamp/costume-on-submit
Add props for name, onUpdateName, and svgId
2017-10-23 11:56:34 -04:00
DD Liu
1caf47a891 Merge pull request #86 from fsih/deleteShapes
Delete shapes
2017-10-23 11:27:03 -04:00
DD Liu
c2f561829e Merge pull request #85 from fsih/ovalTool
Oval mode
2017-10-23 11:16:39 -04:00
Matthew Taylor
2fe9ac12a7 Add UI formatting for edit fields
This adds formatting and icons to the edit field buttons at the top of the ui, as well as some additional components for abstraction – such as `InputGroup`, `ButtonGroup` and `EditFieldButton` (which is a subcomponent of the paint editor)
2017-10-23 10:35:30 -04:00
DD Liu
7e5c14a982 Merge pull request #87 from fsih/fixApplyStrokeColor
Fix color matching logic in apply stroke color
2017-10-23 09:13:19 -04:00
Ray Schamp
138718008c Add SVG id prop to track costume changes
Since the editor will receive an update every time the svg is updated, only re-render if the actual svg id changes.
2017-10-21 16:15:55 -04:00
Ray Schamp
303b4caced Add props for name/onUpdateName 2017-10-21 16:15:55 -04:00
Paul Kaplan
6e9a2ef178 Merge pull request #81 from fsih/rectTool
Rectangle drawing tool
2017-10-20 15:57:52 -04:00
DD
30e21e5d1c Fix color matching logic in apply stroke color 2017-10-20 15:57:48 -04:00
Paul Kaplan
65dbf70fa1 Merge pull request #84 from mewtaylor/issue/gh-83
Fix GH-83: Move paint-specific styling out of button
2017-10-20 15:57:38 -04:00
DD
059eb1fc1d hook up delete key for rect and oval 2017-10-20 15:19:14 -04:00
DD
cc350e9056 oval mode 2017-10-20 15:01:25 -04:00
DD
4fcb908ad5 Fix another issue caused by undo causing layers to be selected 2017-10-20 14:54:21 -04:00
Matthew Taylor
79661622fc Move paint-specific styling out of button
Fixes #83 by making sure the copied-over button component has the same styling as in gui too, and move specifics to composing components
2017-10-20 14:29:49 -04:00
DD
7f4812ad55 remove debug 2017-10-20 14:19:52 -04:00
DD
d6fc238359 Fix an issue where undoing when there is a bounding box would cause the whole layer to be selected 2017-10-20 14:19:52 -04:00
DD Liu
dbe24ed50c lint and clean up some things 2017-10-20 14:19:52 -04:00
DD
6732483d80 Add selection tool to rect 2017-10-20 14:19:52 -04:00
DD
f95bbe2ca5 Basic rectangle tool 2017-10-20 14:19:52 -04:00
DD
f9772e90ed Remove hover. Why did I leave hover in all of these 2017-10-20 14:19:02 -04:00
DD Liu
4580fcc7d8 Merge pull request #71 from fsih/penTool
Pen tool
2017-10-20 14:18:04 -04:00
DD
b62c2e32cb remove references to hover 2017-10-20 14:17:10 -04:00
DD
131193ef73 Pen tool 2017-10-20 14:17:10 -04:00
DD Liu
29ca6c66cf Merge pull request #70 from fsih/lineToolSnapping
Line tool snapping
2017-10-20 14:16:51 -04:00
DD
b79bb8174f found a better fix than the in handle = null thing 2017-10-20 14:16:23 -04:00
DD Liu
da15ed392a Merge pull request #73 from fsih/eraseThroughGroups
Allow erase through groups
2017-10-20 14:15:54 -04:00
DD
021930eadc fix lines getting curved when joining paths 2017-10-20 13:36:57 -04:00
DD
70ff3b656f Fix allowing connecting lines with end points that are very close together 2017-10-20 12:02:28 -04:00
Paul Kaplan
8a5e59dd44 Merge pull request #79 from mewtaylor/issue/tool-select-ui
Add svg icons to tool select components
2017-10-20 11:41:24 -04:00
Matthew Taylor
26dbb30a83 update css paths 2017-10-19 16:40:00 -04:00
Matthew Taylor
b1ca3f29d5 Rename paint-editor to new folder too
and update click tests to just look at the base component
2017-10-19 16:37:39 -04:00
Matthew Taylor
1abb10d320 change comment style to match other files 2017-10-19 15:41:59 -04:00
Matthew Taylor
2e0b34a325 Add svg icons to tool select components
This also adds a generic `tool-select` component which can be composed by each of the individual tools for presentation purposes.

Towards #40.
2017-10-19 15:08:15 -04:00
DD
e425fc6dcb Allow erase through groups 2017-10-19 11:48:14 -04:00
chrisgarrity
ced3563fda Adding scratch-l10n dependency
* Added .tx configuation to be able to send source strings to transifex
* added dependency on scratch-l10n 2.x, and removed everything related to generating the l10n messages locally
* updated playground intl reducer to use paint messages from l10n package
2017-10-19 08:34:13 -04:00
DD
1c3d5d72f9 rename style path to style blob and use style path for line tool 2017-10-18 19:21:29 -04:00
DD
d27aa53fca Fix line tool 2017-10-18 14:08:03 -04:00
DD
05d7b806a6 fix a bunch of things around import and export 2017-10-16 19:37:48 -04:00
DD Liu
c49a469eda Merge pull request #67 from fsih/toolButtons
Tool buttons
2017-10-16 16:32:38 -04:00
DD
946b6b0d87 Add back caveat for fully selected shapes, since code to remove handles when a shape is fully selected is in the paper fork we are using 2017-10-16 14:38:05 -04:00
DD
ce53a2c77e Add oval, rect, rounded rect buttons that do nothing 2017-10-16 14:33:11 -04:00
DD
d2881b2d15 Add pen tool that does nothing. Move blob tools to helper folder. 2017-10-16 14:18:04 -04:00
Paul Kaplan
fb11d5dd5e Merge pull request #59 from paulkaplan/color-picker
Color picker
2017-10-16 08:52:09 -04:00
Paul Kaplan
e2e4823642 Fix with feedback from DD 2017-10-13 14:24:07 -04:00
Paul Kaplan
3eaf8047aa Initial prototype of color picker 2017-10-13 13:34:25 -04:00
DD
4077fe828c use scratch fork of paper 2017-10-12 18:35:30 -04:00
DD
ae3c0f1eed Fix lint 2017-10-12 11:28:23 -04:00
DD
64c6ddedaf Fix bugs during select and drag 2017-10-12 11:28:23 -04:00
DD Liu
e79faa79d1 Merge pull request #51 from fsih/fixImport
Fix import
2017-10-12 11:26:14 -04:00
DD
9242faffa6 fix typo 2017-10-12 11:23:35 -04:00
DD
49b197eba2 Revert "remove the default imported costume"
This reverts commit 879297ca95640b41e3e1fbe989a6323912bd7470.
2017-10-12 11:23:35 -04:00
DD
1d0ffef40f Revert "Make unimplemented buttons grey"
This reverts commit c320a0b6416887b916853d6265cc123bca776b57.
2017-10-12 11:23:35 -04:00
DD
affe8463be fix undo removes cursor preview 2017-10-12 11:23:35 -04:00
DD
4d9ecb2a2c fix lint 2017-10-12 11:23:35 -04:00
DD
4d0e2b4c44 remove the default imported costume 2017-10-12 11:23:35 -04:00
DD
01d1ddec9d Make unimplemented buttons grey 2017-10-12 11:23:35 -04:00
DD
87eb78ad49 update stage on undo and redo 2017-10-12 11:23:35 -04:00
DD
7523af09f0 add missing file 2017-10-12 11:23:35 -04:00
DD
345a43e127 merge onUpdateSvg and undoSnapshot 2017-10-12 11:23:35 -04:00
DD
4300924671 clean up unused things in selection so I dont have to add undo to them 2017-10-12 11:23:35 -04:00
DD
28464b237b call undo 2017-10-12 11:23:35 -04:00
DD
8baf731328 add undo reducer 2017-10-12 11:22:40 -04:00
DD
cb34c29db6 Fix some issues with import not centering costume 2017-10-11 17:48:21 -04:00
DD
f7cd7fc54d fix function 2017-10-11 11:58:05 -04:00
DD
ab244a5e4c convert getSelectedItems(recursive) to 2 functions 2017-10-11 11:32:51 -04:00
DD
60a310ae85 remove unused 2017-10-03 18:13:12 -04:00
DD
aa2b70f1e7 Add missing clearSelectedItems function to blob 2017-10-03 17:53:06 -04:00
DD
e4f1a5ad28 clean up and add comment 2017-10-03 15:17:27 -04:00
DD
720f83605d add tests 2017-10-03 15:04:53 -04:00
DD
7a9399d0db fix lint 2017-10-03 13:45:19 -04:00
DD
b87c17523a Selection sets and gets fill/stroke color/width 2017-10-03 12:07:56 -04:00
DD
6bcd59f388 add comments 2017-09-22 14:14:48 -04:00
DD
33236f198d fix hit testing 2017-09-22 14:08:19 -04:00
DD
33d8dd30b5 release things on deactivate 2017-09-22 14:02:43 -04:00
DD
32661dde92 switch to use id instead of hovered item 2017-09-22 13:56:58 -04:00
DD
7e1375d855 Switch state to track hover item ID instead of item itself 2017-09-22 13:48:48 -04:00
DD
3bb606e16a move hit options declaration into function 2017-09-22 12:31:39 -04:00
DD
adbd023551 fix being able to select subgroups again 2017-09-22 12:22:20 -04:00
DD
5db66af0a1 add comments and clean up 2017-09-22 12:12:24 -04:00
DD
dc66283bd2 Fix select tool being able to select sub pieces of groups, fix bounding box showing after delete 2017-09-22 11:12:27 -04:00
DD
340316565b add select tool file 2017-09-21 18:39:18 -04:00
DD
4bc4d92415 Move select tool out of select mode 2017-09-21 18:39:00 -04:00
DD
f15a3dbe02 Add reshape 2017-09-21 10:36:26 -04:00
DD
b8de3dcc3a Add reshape button 2017-09-18 11:28:43 -04:00
DD
9a09c4324d the declarations done to avoid lint errors actually broke hover, so put them back 2017-09-14 17:53:28 -04:00
DD
67ac013edf prune unused function and lint 2017-09-14 14:34:45 -04:00
DD
25478a87fb add tests 2017-09-14 11:56:12 -04:00
DD
6048c9f866 hook into other tools 2017-09-13 17:58:27 -04:00
DD
3fa8073bd1 get scale working 2017-09-13 17:45:06 -04:00
DD
9216098a3f get rotate working 2017-09-13 16:59:37 -04:00
DD
0e91439edd Get move working 2017-09-13 15:17:59 -04:00
DD
3126c2ca7f correct stroke width type" 2017-09-12 17:43:53 -04:00
DD
448ff9bfe4 Add more selection files 2017-09-12 17:39:25 -04:00
DD
ef367646fb Merge branch 'strokeWidth' into select 2017-09-11 14:01:35 -04:00
DD
4e29f31639 convert container to not a component 2017-09-11 13:54:48 -04:00
DD
9f40c633f8 Merge branch 'fillStrokeColor' into strokeWidth 2017-09-11 13:53:12 -04:00
DD
d9b683b42c remove tab index 2017-09-11 13:36:07 -04:00
DD
499635ddf1 convert containers to mysterious non-components 2017-09-11 13:28:35 -04:00