Age | Commit message (Collapse) | Author |
|
In preparation for view navigation gizmos.
|
|
Simplifies future changes to dragging checks and avoids
each check for drag using slightly different logic.
|
|
Operator flags to wrap on a single axis.
D4865 by @Gvgeo with updates.
Resolves T64585
|
|
Check the current events modifiers against the gizmo keymap,
only highlighting when keymap items match.
Needed to resolve T63996
|
|
|
|
|
|
Useful to have a generic user data with an optional custom free function,
use for wmGesture.
|
|
This adds a new dialog that is shown whenever a file is closed.
So, either when a new file is opened, or when Blender quits.
The dialog allows to save unsaved changes. Furthermore it also
allows saving images that have been modified in Blender, but are
not saved yet.
Known limitations:
* Images that have no file path and have not been packed before,
are not saved.
* On MacOS the old dialog is shown when Blender quits.
Reviewers: brecht, billreynish
Differential Revision: https://developer.blender.org/D4860
|
|
We need to make those paths validation async, since some infamous OS is
unable to provide a quick way to check whether a path is valid or not...
Not much to say here, this is basic wmJob stuff really... We don’t even
need complex threaded coordination locks or atomics, given how simple
the changes are here.
Fake-tested with some `sleep()` calls to add atificial delay, seems to
work as expected.
|
|
The complexity in this patch comes from the fact
that the current operator system does not support
multi-step user interactions well.
More specifically, for this to work, we need to show
a confirm dialog and a file browser afterwards.
We decided that it is easier to keep everything in
a single operator, instead of creating separate
operators that invoke each other.
So, now the `WM_OT_open_mainfile` operator invokes
itself in different states. It implements a simple
finite state machine to manage the states.
The dialog itself is expected to be improved in
a future commit. See D4829 for more details.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4829
|
|
Previously only a fixed bounding box could be used.
This was not flexible enough.
T63193 will benefit from this refactor.
Reviewers: brecht, campbellbarton
|
|
|
|
Apply clang format as proposed in T53211.
For details on usage and instructions for migrating branches
without conflicts, see:
https://wiki.blender.org/wiki/Tools/ClangFormat
|
|
Add back the ability to choose the select operation for random select.
Now we allow the operator to specify if the select operation should be
visible in the GUI or not.
Reviewed By: Brecht
Differential Revision: http://developer.blender.org/D4665
|
|
Re-create gizmos when changing theme colors, since
theme colors don't change often this allows gizmos to setup their
colors on initialization.
|
|
|
|
This applies changes from the 3D view circle select to other operators.
|
|
Quiet undeclared variable warning.
|
|
Now there are two callbacks, the name 'keymap_callback' is too vague.
|
|
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.
|
|
|
|
Illuminate dead code, using wmEventHandler_KeymapFn from gizmo handler
type where it was never set.
|
|
While \file doesn't need an argument, it can't have another doxy
command after it.
|
|
Part of D4323 by @DragMZ
|
|
Move \ingroup onto same line to be more compact and
make it clear the file is in the group.
|
|
This feature is intended only for testing,
to automate simulating user input.
- Enabled by '--enable-event-simulate'.
- Disables handling all real input events.
- Access by calling `Window.event_simulate(..)`
- Disabling `bpy.app.use_event_simulate`
to allow handling real events (can only disable).
Currently only mouse & keyboard events work well,
NDOF, IME... etc could be added as needed.
See D4286 for example usage.
|
|
BF-admins agree to remove header information that isn't useful,
to reduce noise.
- BEGIN/END license blocks
Developers should add non license comments as separate comment blocks.
No need for separator text.
- Contributors
This is often invalid, outdated or misleading
especially when splitting files.
It's more useful to git-blame to find out who has developed the code.
See P901 for script to perform these edits.
|
|
Done using:
source/tools/utils_maintenance/c_sort_blocks.py
|
|
This allows operators to distinguish between redo and executing
repeat last operator, needed for T60777 fix.
|
|
This reverts commit 1d908bffddb4c9815a986305ad4588032b81deee.
Enough uses of repeat last expect skip-save properties to be set,
transform being the most obvious example T60777#605681.
I wanted to avoid operators having account for two kinds of 'skip-save'
but this may be unavoidable.
|
|
PROP_SKIP_SAVE is often used as a way to detect the difference between
adjusting options from the redo panel and initial execution.
Repeat last operator was executing with skip-save properties set,
preventing operators from initializing them based on the context.
Fixes 60777.
|
|
Without this clang-format may wrap them onto a single line.
|
|
Before this Blender always needed the Wintab driver. This adds support for the
native pressure API in Windows 8+, making it possible to get pressure sensitivity
on e.g. Microsoft Surface hardware without any extra drivers.
By default Blender will automatically use Wintab if available, and if not use
Windows Ink instead. There is also a new user preference to explicitly specify
which API to use if automatic detection fails.
Fixes T57869: no pressure sensitivity with Surface pen or laptop.
Code by Christopher Peerman with some tweaks by Brecht Van Lommel.
Differential Revision: https://developer.blender.org/D4165
|
|
These tools now support (new, add, subtract),
(xor, and) could be supported but are complicated by UV's sticky
selection modes.
|
|
Only use confirmation w/ X-key since this is more likely to be pressed
by accident. Delete-key delete doesn't confirm.
Part of D3953 by @Zachman w/ edits
|
|
Was using the handlers custom-data which crashes
when Blender frees the screen data before Python removes the handler.
|
|
Avoids calling poll on mouse-move for unrelated space/region types.
|
|
|
|
|
|
See: T56648
|
|
|
|
This is useful to run OpenGL tests while continuing to do other tasks
without windows constantly popping up in the foreground.
|
|
This means dragging the cursor over the tools will show all labels
immediately, but only once a single label is displayed.
|
|
Displaying the labels tip immediately feels too intrusive,
make this work more like regular tooltips, displaying more quickly.
Tooltips can now uses multiple passes, each pass with it's own delay
for the next pass to show.
|
|
Instead of showing the full tip immediately when hovering over a tool,
show only the (label, shortcut), without suppressing the regular tip.
|
|
Use these for the toolbar, since they're non-overlapping the interface,
showing them quickly isn't a problem.
|
|
|
|
|
|
|
|
Without this, there was no simple way to have
launchers for different app-templates.
Also allows force-disabling the app-template stored in the preferences.
|