Commit Graph

66 Commits

Author SHA1 Message Date
Campbell Barton
9ca8f40790 Keymap: remove double space in tool-keymap 2018-07-14 09:02:36 +02:00
Campbell Barton
81a23d1f2d Tool System: add operator for introspection
In some cases we want associate use an operator for a tool
for introspection, so we can for eg, automatically
use the same binding for in the popup toolbar.

Space-G/R/S for transform now work as accelerator keys again.

Also Space-E for extrude.
2018-07-03 18:38:08 +02:00
Campbell Barton
c118b852b7 Tool System: move transform into a top-level tool
Also rename move to grab.
2018-07-03 13:52:04 +02:00
Campbell Barton
b01392e9ac Tools: disable fallback drag action for transform
Based on animator feedback, accidentally not clicking on the manipulator
handle had unpredictable behavior.

This functionality will be moved into the manipulator and made optional
(add an invisible fallback manipulator).
2018-06-28 10:34:41 +02:00
Campbell Barton
a997b5d17b Tool System: transform can now toggle loc/rot/scale 2018-06-22 19:23:27 +02:00
Campbell Barton
48e70ab848 Add depth and orientation options to 3D cursor tool 2018-06-22 15:23:56 +02:00
Campbell Barton
b7338463a7 Tool System: workaround click conflicting w/ add brush 2018-06-15 12:29:30 +02:00
Campbell Barton
98e0bd90f4 WM: hide internal operator settings
These are set in the interface and aren't useful to show to users.

Other minor changes

- Rename 'Ruler/Protractor' -> 'Ruler'
- Rename Subdivide 'Quad/Tri Mode' -> 'Create N-Gons' (and invert).
2018-06-12 22:00:22 +02:00
Campbell Barton
7436fb2ef1 Merge branch 'master' into 28 2018-06-05 16:36:13 +02:00
Campbell Barton
98d4d4ce58 Tool System: workaround psys cursor conflict
This needs to be solved properly, for now add cursor-click tool
which can co-exist w/ particle paint.
2018-05-28 18:16:01 +02:00
Campbell Barton
a3a069f493 Tool System: cursor tool now transforms on drag 2018-05-25 19:43:23 +02:00
Campbell Barton
8a78a53e3b Keymap: place cursor on press
Needed for tablet users.
2018-05-25 12:46:52 +02:00
Campbell Barton
96a7ed8a15 Tool System: store operator properties in the tool
This replaces last-used property use which wasn't reliable since
properties were not considered 'set' - causing them to be ignored.
2018-05-22 15:31:06 +02:00
Campbell Barton
b6a2dbbec2 Tool System: set cursors for draw & transform 2018-05-18 11:57:56 +02:00
Campbell Barton
edf6676a77 Tool System: per space/mode tool support
This patch adds support for:

- Per space-type tools (3D view and edit).
- Per mode tools (object, edit, weight-paint .. etc).

The top-bar shows the last activated tools options, this is a design
issue with using a global topbar to show per-space settings.

See D3395
2018-05-17 15:57:33 +02:00
Joshua Leung
13dfa72f26 Add icon placeholders for all the armature ops that got recently added in the toolbar
The icon designers still need to create these, but it's better to have placeholders
so they remember to do it.
2018-05-15 13:50:52 +02:00
Joshua Leung
8021ac986a Pose Toolbar: Added Breakdowner/Push/Relax as separate tools
Currently all are stacked together, but perhaps if we don't get any other
tools in the meantime, it would make sense to have them separate.

Notes:
* No icons for now...
* There are some 2.8 bugs with the underlying operators (notably multi object)
2018-05-15 12:40:50 +02:00
Joshua Leung
95e7559bb6 Edit Armature Toolbar: Added some tools for "Shrink Fatten" (Alt-S) type bone transform tools
For fun, I tried adding some more edit armature tools to the toolbar to
check how this is all working. Icons are missing currently, but it's a
nice test.
2018-05-15 12:08:09 +02:00
Campbell Barton
ddf308b04a EditMesh: Use tweak for extrude tool
Could too easily click to extrude without any offset.
2018-05-13 21:19:22 +02:00
Campbell Barton
dc4f94783d EditMesh: show XYZ axis for extrude
Always show normal axis since this is the most used,
even when another orientation is selected.
2018-05-13 21:15:56 +02:00
Campbell Barton
0a7736a2e9 Tool System: curve draw options 2018-05-11 20:25:01 +02:00
Campbell Barton
f3f309c7f8 Tool System: inset & shrink/fatten options 2018-05-11 20:24:06 +02:00
Campbell Barton
9df6978211 Tool System: mesh rip fill option 2018-05-11 20:22:04 +02:00
Campbell Barton
3f3326af1c EditMesh: add cube interactive tool
Initial add-cube tool which uses the scale cage to resize.

The 3D cursor is currently used to project the cursor onto.

We'll likely have more orientation options in the future.
2018-05-10 20:31:10 +02:00
Campbell Barton
eefaec4114 Extrude Widget: Add orientation to topbar
Add extrude operator that's intended to work on the current selection
and be activated as a tool.
2018-05-07 21:40:51 +02:00
Campbell Barton
50e28092d3 Cleanup: style 2018-05-07 21:40:51 +02:00
Campbell Barton
466125f3d6 EditMesh: initial extrude manipulator
This manipulator is a test for mixing do/redo,
there are still some glitches that need sorting out in
transform & the undo stack.
2018-05-06 10:14:20 +02:00
Campbell Barton
3f4a81232a UI: expose radial gradient as option
Was a separate tool, use option so we can extend more easily.
2018-05-01 12:48:35 +02:00
Campbell Barton
f38fbc9bed UI: add weight paint sample tools
Also use unified weight.
2018-05-01 12:20:53 +02:00
Campbell Barton
b93a76fe75 Add missing tools to vertex paint 2018-04-30 21:58:35 +02:00
Campbell Barton
a44d5b59d3 UI: order edit-mesh tools
See T54885
2018-04-30 20:40:36 +02:00
Campbell Barton
3b9554ce9d UI: share common paint panels between all modes 2018-04-30 16:59:16 +02:00
Campbell Barton
7720525873 UI: add texture paint brushes to toolbar 2018-04-30 16:43:36 +02:00
Campbell Barton
9aef2d961d UI: add weight paint brushes to toolbar 2018-04-30 16:08:15 +02:00
Campbell Barton
d9f395ac39 UI: add vertex paint tools
Generalize logic to show the paintbrush as a tool so
different paint modes can use it.
2018-04-30 15:23:04 +02:00
Campbell Barton
005711ffef Fix sculpt ToolDef generation
With non-default sculpt brushes, tool generation could fail.
2018-04-30 13:46:01 +02:00
Campbell Barton
ea2146c3e1 Correct error in toolbar update 2018-04-30 12:46:23 +02:00
Campbell Barton
f4697b392d Tool System: change internal definitions (again)
Was using classes to define tools, however this makes it awkward to
dynamically generate them (we can do it, but its not very "Pythonic").

Move to a named tuple.
2018-04-30 12:14:46 +02:00
Campbell Barton
60ce3275c1 UI: use sculpt icons in the toolbar 2018-04-29 17:01:10 +02:00
Campbell Barton
695326eb8f UI: remove toolbar separator between categories
Made cursor split from selection tools, giving ugly 2 column layout.
2018-04-29 16:49:24 +02:00
Campbell Barton
65d78f4695 UI: group sculpt brushes in the toolbar
All sculpt brushes are accessible from the toolbar, grouped by type
to keep the toolbar a fixed size.
2018-04-29 16:36:31 +02:00
Campbell Barton
76282a986d UI: initial dynamically generated sculpt tools
Lots more work needed, this just lists sculpt tools in the toolbar.
2018-04-29 14:31:00 +02:00
Campbell Barton
f4ba7667dc UI: support tool generators (no visible change)
This allows toolbar definitions to dynamically generate tools,
needed for generating a tool list from brushes for eg.
2018-04-29 12:28:21 +02:00
Campbell Barton
cfa1700792 UI: add loopcut & edge offset tools
Also fix minor layout bug.
2018-04-27 23:08:25 +02:00
Campbell Barton
c42a47d177 UI: add new transform tool that enables all widgets
Also add bevel tool.
2018-04-27 22:49:52 +02:00
Campbell Barton
e724238457 Tool System: use release_confirm for extrude 2018-04-27 20:43:41 +02:00
Campbell Barton
c4a24a7f5d Tool System: inset tool now completes on release 2018-04-27 20:38:29 +02:00
Campbell Barton
782240636c UI: use new extrude icon and correct keymap 2018-04-27 19:16:00 +02:00
Campbell Barton
eb4c60124c UI: multi-column toolbar support 2018-04-27 18:02:45 +02:00
Campbell Barton
85ea14df2f UI: support for tool settings in the top-bar
This uses the operators last used properties
to store settings to use on the next execution.
2018-04-27 14:17:12 +02:00