Commit Graph

5108 Commits

Author SHA1 Message Date
6d33308a8d Cleanup: use API to reset cursor rotation 2019-03-07 12:58:11 +11:00
d43ce78114 3D View: view selected/all use empty object center
Empty object skipping now only skips the bounds, since you can select
the empty by it's center point and want to navigate to it.

Also share object skipping check between view all/selected.
2019-03-07 12:40:43 +11:00
a6f7d64ce6 Fix "View All" potential min/max use when all objects were skipped 2019-03-07 12:32:22 +11:00
951c8e53f4 Fix 3D "View Selected" skip camera option 2019-03-07 12:22:56 +11:00
d21809dd72 3D View: skip hidden image empties when viewing all
D4463 by @pablodp606
2019-03-07 11:41:33 +11:00
a3d647558e DRW: show image empty frame when the 'side' is hidden
This behavior matches back-face culled mesh objects,
where the wire outline doesn't depend on the viewing angle.

Applying this before empty visibility check for view framing,
since it's strange if viewing all gives different results
depending on back-face culling.
2019-03-07 11:41:33 +11:00
ee099d5624 UI: Name changes
In accordance with T56648.
- Render Border -> Render Region
- Clipping Border -> Clipping Region
- Instancing 'Scale' -> 'Scale to Face Size'
- Instancing 'Rotation' -> 'Align to Vertex Normal'

Python API is left as-is, for now.

DIfferential revision: D4435
2019-03-06 16:43:37 +01:00
5e999c249c Fix T62202: circle select does not work on hair points 2019-03-05 23:16:30 +11:00
8d8d113b73 Tool System: use set/add/subtract for all circle select operators
This applies changes from the 3D view circle select to other operators.
2019-03-05 22:26:45 +11:00
34daf527f3 Cleanup: rename RENDER_OVERRIDE -> HIDE_OVERLAYS
Match the UI naming (changed since 2.7x).
2019-03-05 15:09:25 +11:00
21e379b733 3D View: move pre-select mesh element access into gizmo API 2019-03-05 14:40:33 +11:00
647c26c5ce DNA: rename BezTriple alfa to tilt 2019-03-04 01:18:06 +11:00
2d468fc072 UI: subtle outline for negative 3D view gizmo axes
Without this they can blend in visually with the backdrop of the gizmo.
2019-03-04 00:51:03 +11:00
301494f94a UI: use grey for 3D view axis gizmo highlight
Using white with low alpha made it hard to use on a white background.
Since the axes themselves highlight to white.
2019-03-04 00:13:25 +11:00
bd1ba2f7a9 UI: increase 3D view icon contrast over light colors
- Avoid using white with low alpha to make grey.
  Note that this is the second time we've run into this problem: T59626.

- Use a light backdrop when the icons are dark
  so they're visible over a black background.
2019-03-03 12:15:03 +11:00
d0e245647c Cleanup: use unsigned types in 3D view editor 2019-03-01 23:43:34 +11:00
053c3bd48a Tool System: add a mode option to 3D view circle select
Support only basic operations: new/add/subtract.
2019-03-01 23:21:24 +11:00
3c10de2c9b 3D View: avoid redundant circle select updates
This refreshes on cursor motion so it's worth avoiding redundant
updates, especially for multi-object edit-modes where many objects
aren't even near the object being selected.

This commit also moves to passing eSelectOp to circle select functions
in preparation for adding a select mode tool option.
2019-03-01 23:09:22 +11:00
cbbdb5249f 3D View: move particle circle select out of object mode loop
This doesn't support multi-object editing, no reason to check others.
2019-03-01 22:27:44 +11:00
98bb22a207 Fix object mode lasso de-selection
Lasso actions that only de-selected were handled as if nothing changed.
2019-03-01 14:08:05 +11:00
69665bc7f0 RNA: move cursor into own struct
Without this it's impractical to subscribe to any change to the cursor.

Fixes T61969 by having gizmos update on any change to the cursor.
2019-03-01 12:41:40 +11:00
5938fd4ccc Fix T61994: crash when box selecting instances
Reviewers: brecht

Differential Revision: https://developer.blender.org/D4427
2019-02-28 15:53:01 +01:00
4b916612e1 Fix T61878: Selection does not allways work in wireframe mode
This draw surfaces if the xray option is disabled even in wireframe mode.
2019-02-28 12:10:04 +01:00
dd9cedddae 3D View: only calculate view center when needed
When orbit around selection was enabled the selection center was being
calculated even when it wasn't needed.
2019-02-28 15:40:28 +11:00
168d3fd528 Cleanup: file rename lamp -> light 2019-02-27 12:36:32 +11:00
1079742db9 Cleanup: rename lamp -> light 2019-02-27 12:26:49 +11:00
3051e2f4ae DNA: rename Lamp -> Light
- BKE_lamp -> BKE_light
- Main.lamp -> light
2019-02-27 11:03:16 +11:00
cb8614e398 Fix (unreported): Snap to grid not considering Focal Length. 2019-02-26 11:38:46 -03:00
86c0ee8020 3D View: support for editing cursor rotation
Add buttons for editing the cursor rotation as well as rotation modes,
similar to object and pose bones.
2019-02-26 01:37:49 +11:00
Harley Acheson
1de1cedf4c UI: better widget drawing with thick line width.
When the line width was larger than the UI scale, there was not enough
space for thicker widget outlines to draw properly. Now widgets are made
a little larger to accommodate the thicker outlines.

Differential Revision: https://developer.blender.org/D4368
2019-02-21 18:03:34 +01:00
d542c6a5f3 Fix T61786: local view not exiting correctly after recent changes. 2019-02-21 12:08:01 +01:00
5df82b60d1 Local view: add operator property to disable framing selected objects.
Default behavior is unchanged still, but can be changed in the keymap.
From testing I think this needs better visual feedback to indicate that
you are in local view, if the view does not move it's not as clear.
2019-02-20 19:06:18 +01:00
c4f961a54c Local view: don't restore selection when exiting local view.
Losing the selection can be inconvenient, and it's easy to select all local
objects before exiting local view if needed.
2019-02-20 19:06:18 +01:00
f62371e6ea Measure Tool: delete now removes protractor when it's active 2019-02-20 17:16:22 +11:00
4d085c9bae Measure Tool: use x/del key to remove the active ruler
Dragging outside the view was only meant to be a temporary workaround.
2019-02-20 16:44:54 +11:00
effe750ec1 WM: support dynamic keymap handlers
Add getter callback support for 'WM_HANDLER_TYPE_KEYMAP' type handlers
this is needed for key-maps which change based on the active tool.

Replaces 'sneaky_handler' hack which temporarily inserted a handler.
2019-02-20 14:37:15 +11:00
38f0d5f75a Fix T61714, T61712: crash reloading images after recent changes.
Now that we are looping over all image users that were previously ignored,
it shows some scene pointers are invalid. Always clear them on load, and
don't keep scene permanently in the image user except for the image editor.
Otherwise the pointer can go out of date.
2019-02-19 15:40:04 +01:00
53b484d081 DNA: rename select_color -> select_id
The term color is misleading, it's an integer id that happens to be
written to a color in some cases, then converted back to an integer.
2019-02-19 09:45:48 +11:00
28901820a4 Wireframe: Fix selection broken since recent wireframe refactor 2019-02-18 17:03:10 +01:00
cc10d86535 DNA: rename Object.size -> scale
Resolves a common cause of confusion.
2019-02-18 15:43:55 +11:00
de13d0a80c doxygen: add newline after \file
While \file doesn't need an argument, it can't have another doxy
command after it.
2019-02-18 08:22:12 +11:00
e0e6229176 Cleanup: rename Mesh.edit_btmesh -> edit_mesh
When bmesh was in a branch we had both edit_mesh and edit_btmesh,
now there is no reason to use this odd name.
2019-02-17 18:05:18 +11:00
ae2b677dcb Cleanup: move object bounding-box into runtime struct 2019-02-17 12:52:53 +11:00
2f737c4f47 DNA: rename near/far -> clip_start/clip_end
Rename for Camera, View3D (also CameraParams & Render not DNA)
2019-02-16 12:26:07 +11:00
8d421f3d9b Fix T56665: Assert when selecting object
Selecting object w/ a different mode missed refreshing the screen
areas current tool.
2019-02-14 23:34:32 +11:00
16d7967c2b Cleanup: use shorter name for shader config
The struct name is descriptive,
this isn't going to be confused with other variables.
2019-02-10 11:02:06 +11:00
2855feb2ae Fix T61196: Mesh select ignores clipping (part 2)
Need to use local clipping planes in this case
2019-02-08 21:52:01 +11:00
b294600ddc Fix T61051: crash with multi-object mixed mode snapping
rBec3357e03ab1 introduced multi-object snapping.
Seems like this was done without mixed-mode selections in mind.

So code assumed that all selected objects are actually armatures [which
can fail].
In 2.7 this was not a problem, because code only took active object into
account, 2.8 was iterating over all selected_editable_objects.

Now just iterate over objects in posemode instead

Reviewers: brecht, dfelinto

Maniphest Tasks: T61051

Differential Revision: https://developer.blender.org/D4287
2019-02-06 09:46:20 +01:00
eef4077f18 Cleanup: remove redundant doxygen \file argument
Move \ingroup onto same line to be more compact and
make it clear the file is in the group.
2019-02-06 15:45:22 +11:00
8996e26116 Fix T61196: Mesh select ignores clipping
Select clipping now works when x-ray is disabled.
2019-02-06 10:34:09 +11:00