Commit Graph

226 Commits

Author SHA1 Message Date
9c7adcfd8b Fix T60388: Warning entering text edit mode 2019-01-14 14:16:08 +11:00
bb9c9d0eaa GP: New Cutter, Constraints and Segment selection
This commit groups a set of new tools that were tested in grease pencil object branch before moving to master. We decide to do all the development in a separated branch because it could break master during days or weeks before the new tools were ready to deploy.

The commit includes:

- New Cutter tool to trim strokes and help cleaning up drawings.

- New set of constraints and guides to draw different types of shapes. All the credits for this development goes to Charlie Jolly (@charlie), thanks for your help!

- Segment selection mode to select strokes between intersections.

- New operator to change strokes cap mode.

- New option to display only keyframed frames. This option is very important when fill strokes with color.

- Multiple small fixes and tweaks.

Thanks to @pepeland and @mendio for their ideas, tests, reviews and support.

Note: Still pending the final icons for Cutter in Toolbar and Segment Selection in Topbar. @billreynish could help us here?
2019-01-11 19:21:56 +01:00
1e00f91760 Fix gizmo orientation w/ shear tool 2019-01-10 12:25:09 +11:00
df8e8e5b6b UI: use keymap introspection for tooltip creation
Also support non existing keymap items which gave an error, see: T60335
2019-01-09 12:27:58 +11:00
24a84c4742 Fix T60314: Missing strength w/ weight gradient 2019-01-08 23:49:58 +11:00
f9cefc4d17 Fix T60291: Wrong tooltip in for Add Cube tool 2019-01-08 12:24:51 +01:00
a0d456daf8 Vertex Paint: support vertex masking
Working in 2.7x, was just disabled in 2.8x.

Fixes T60256
2019-01-08 15:18:28 +11:00
63fcbfc3a7 RNA: naming, user-preferences -> preferences 2018-12-21 12:55:02 +11:00
e71d489254 Cleanup: style 2018-12-20 13:11:04 +11:00
1ce9a142b6 UI: expose gizmo orientation as a single enum
Avoids awkward logic from the popover,
by faking an extra item in the enum.
2018-12-20 07:46:06 +11:00
2af0ec9457 UI: move gizmo orientation settings into popover
Instead of link toggle with enum, use a single popover that contains
both settings. The code for this isn't nice - needing 3x panels for now.

See D4075
2018-12-19 22:45:36 +11:00
f7dc6a63fb Gizmo: optional custom orientations for transform
This aims to resolve a conflict where some users want to keep keyboard
axis setting global, even when the orientation is set to something else.

Move/rotate/scale can optionally each have a separate orientation.

Some UI changes will be made next.
2018-12-19 20:57:51 +11:00
08e6948da5 GP: Change order of primitive buttons
Group them in a more logic way.
2018-12-17 19:03:46 +01:00
3e311fdcd1 Cleanup: style 2018-12-16 09:30:05 +11:00
351f537fa8 GP: New Curve primitive and other primitive improvements
This commit adds support for new curve tool and adds more functionalities to the existing primitives, including new handles, editing, stroke thickness curve, noise, preview of the real stroke, etc.

Thanks to @charlie for his great contribution to this improvement.
2018-12-15 17:21:47 +01:00
780f0f646d GP: Rename CTX and OB modes
Part of T59335.
2018-12-14 16:52:12 +01:00
fb685c01c3 Correct error in last commit 2018-12-14 13:23:02 +11:00
be0c8ed734 Keymap: correct keymap names
Generated names include the current context mode
which is irrelevant for generic 3D view tools.
2018-12-14 12:17:00 +11:00
c0b7bdd38b Revert "Tweak UI message of Ruler tool."
This reverts commit 1bf0a4f4d0.

This is a bug, clicks shouldn't remove rulers since it's too easy
to accidentally click instead of dragging.
2018-12-12 09:52:52 +11:00
1bf0a4f4d0 Tweak UI message of Ruler tool.
It's much simpler to just click on one end, than dragging it outside of
view. ;)

Related to T59084.
2018-12-10 15:53:53 +01:00
2c19c9b2f6 GP: Draw Mode: Add Arc Primitive
This adds an elliptical arc primitive.
Press CKEY for toggling closed/open arc.
Press FKEY key for flipping arc.

Additional changes to gpencil primitives.
Increases default edges of circle to 64.
Keymap changes to allow primitives to be drawn with Shift or Alt key.
Allow Plus/Minus key to adjust number of edges.

Missing: Toolbar icon

Differential Revision: https://developer.blender.org/D4024
2018-12-03 22:11:38 +00:00
8c9d632128 Cleanup: de-duplicate default object tools 2018-11-30 09:06:36 +11:00
bb4e53faf2 Tool System: add tools for edit-mode surface 2018-11-30 09:02:11 +11:00
1a8d998868 Tool System: support for dynamic tooltips
Tools can define a function that generates the tooltip using a function,
this takes the tools keymap as an argument which can be used
to extract keys to include in the tip.
2018-11-28 23:53:27 +11:00
b1d67e6aab Tool System: add node links cut tool 2018-11-28 17:37:40 +11:00
1944bca49a Tool System: use tools for node editor 2018-11-27 18:43:08 +11:00
1f8360171c Keymap: share annotation tool keymaps between spaces
Not sharing caused duplication in the keymap and
required a factory class generator.

Simplify tool & keymap definitions by sharing them.

It's highly unlikely we will ever want these to use different keys
once they're set as the active tool.
2018-11-27 17:52:15 +11:00
09f97f937d Cleanup: move non-toolbar panels out of the toolbar 2018-11-27 15:25:52 +11:00
43325e98da Tools: add Select tool, with transform tweak on drag and no click delay.
For users that want the 2.7 LMB keymap behavior, this provides a way of
working without tools interfering. For RMB select this operator is quite
redundant with the Cursor tool, we may have to find a solution for that.

Note that we also might later add transform tweak to the transform tools,
when nothing is selected. But this is important for existing users who
preferred the existing workflow.
2018-11-25 20:09:43 +01:00
a6eb9a3e21 Tool System: uv lasso/box select options
These tools now support (new, add, subtract),
(xor, and) could be supported but are complicated by UV's sticky
selection modes.
2018-11-23 17:52:52 +11:00
e85aa8b8da GP: Change cursor for primitves 2018-11-21 10:52:46 +01:00
7de712e1e5 Fix uv-sculpt use w/ tool-system 2018-11-21 17:56:10 +11:00
6aa7cea3c2 Cleanup: rename extrude gizmo 2018-11-21 09:25:55 +11:00
34b9bd3a9b Gizmo: initial extrude support for non mesh types 2018-11-21 09:09:34 +11:00
a19ee4e926 Tool System: define tools for lattice editmode 2018-11-20 21:41:39 +11:00
640eb00670 Tool System: define tools for meta-ball editmode 2018-11-20 18:52:56 +11:00
bf7af31e9f Keymaps: left click select keymap changes
Both the active tools and selection are now on LMB, which leads to
various conflicts.

For that reason the LMB keymap now has a couple of differences
compared to before. These changes do not affect the RMB keymap.

* Context Menu: W -> RMB
* Select Tool activate: None -> W
* Set Cursor: RMB -> Shift+RMB
* Loop Select: Alt+LMB -> double click LMB
* Mask Feather Vertex Slide: Shift+RMB -> Ctrl+Shift+RMB
* Node Select: only with LMB now, no RMB

The idea behind the W key Select Tool shortcut is that various
tools can't be combined with selection, unlike the RMB keymap.
So this works as a quick shortcut to drop a tool
and go back to selection.

Tools: set Select Box tool as default, rather than Cursor.

This goes along with coming LMB select keymap changes,
where we want the user to be able to LMB click to select by default,
rather than set the cursor.
The cursor will still be directly setabble with shift+RMB.
2018-11-16 09:54:50 +11:00
5215c42e3c Revert "Keymap: remove 3D cursor keymap"
This reverts commit 8ecc51e87f.

This is needed for keymaps that dont include cursor placement by
default.
2018-11-16 09:44:19 +11:00
8ecc51e87f Keymap: remove 3D cursor keymap
Rely on 3D view keymap, fixes T57843
2018-11-16 07:59:00 +11:00
William Reynish
165c447691 Tool System: add curve tilt tool 2018-11-15 22:31:47 +11:00
349d85eb9e Missed when moving tool keymaps 2018-11-15 13:34:47 +11:00
27eba3867a Keymap: move tool system keymaps into the default keymap
Note that tools can still define their keymaps,
since it's useful for add-ons.
2018-11-15 12:45:45 +11:00
f91b797b2b Tool System: remove duplicate gpencil draw UI
Tool properties showed options twice.
2018-11-14 19:19:04 +11:00
f4d4f50212 UI: move gpencil paint into topbar only layout
Tool properties were duplicating UI elements.
2018-11-13 20:59:25 +11:00
4503c96a17 Cleanup: remove redundant checks 2018-11-13 17:04:57 +11:00
b657e9875c Tool System: use enum for gp sculpt/weight paint
Fixes T57525
2018-11-13 16:52:39 +11:00
ab2fa6d3f4 Keymap: more more standard keys for select tools
This uses shift to extend, ctrl to de-select, both to intersect.
2018-11-13 14:05:20 +11:00
473465aae2 GP: Add brush parameter to Shapes tools
Need the brush to define thickness and color of the primitive (line, box, circle)
2018-11-10 20:33:37 +01:00
2618d0e8e2 GP: Make Sculpt and Edit Toolbar consistent 2018-11-09 22:20:39 +01:00
80a7c57e5e Tool System: add grease pencil primitive tool 2018-11-09 17:12:07 +11:00