Age | Commit message (Collapse) | Author |
|
This makes code closer to id_override/assent-engine ones, which
introduce a new type of linked data, and hence reserve
ID_IS_LINKED_DATABLOCK to real linked datablocks.
|
|
linked scene in this blend is currently open/active.
Inner DAG code would not check against NULL pointer, and in case of an
active linked scene, scene pointer will be NULL here, so we have to
check it ourself. ;)
|
|
|
|
|
|
Move draw calls into UI_menutype_draw
|
|
Means we can have a version of this function that returns the button
and avoids returning a struct that often isn't used.
|
|
Forgot to update splashscreen links when we switched API doc naming
scheme...
|
|
Caused by own change 137586a13c
|
|
|
|
Practically all access to enum data is read-only.
|
|
`wm_operators.c` is near 5k LOC with lots of mixed functionality,
extract gesture callbacks since they aren't closely related.
|
|
Convention was only followed loosely,
apply to DNA where changes aren't likely to conflict.
(Skipped ModifierType for eg).
|
|
Matches border-gesture behavior,
needed for binding bisect to tweak event.
|
|
Border and circle select wait for input by default.
This commit uses bool properties on the operators instead of
magic number (called "gesture_mode").
Keymaps that define 'deselect' for border/circle select
begin immediately, exiting when on button release.
|
|
Use same convention as all others.
Remove 'select' since these are used for zoom as well.
|
|
Avoids modal operators needing to explicitly store them.
|
|
In preparation for modal operators storing their properties,
no need to keep mouse-paths around.
Also use generic function for lasso properties.
|
|
Replace with operator type 'last_properties'.
Also use generic function for circle gesture properties.
|
|
Don't convert mouse button events to click if they include dragging.
Double-click events already checked for this.
|
|
Remove unneeded define, double allocations when increasing.
|
|
Wasn't obvious what this did at a glance.
|
|
|
|
Note that our library path handling is still rather dodgy on this
regards, shall take some time at some point to seriously sanitize it...
|
|
or empty screen on windows.
Reviewed By: @brecht , @sergey
Differential Revision: http://developer.blender.org/D2866
|
|
Having gesture automatic free memory isn't practical if this
has it's own allocations.
Add option not to free userdata.
|
|
Replace iroundf with round_fl_to_int, add other types
|
|
It has been deprecated since at least macOS 10.9 and fully removed in 10.12.
I am unsure if we should remove it only in 2.8. But you cannot build blender with it supported when using a modern xcode version anyway so I would tend towards just removing it also for 2.79 if that ever happens.
Reviewers: mont29, dfelinto, juicyfruit, brecht
Reviewed By: mont29, brecht
Subscribers: Blendify, brecht
Maniphest Tasks: T52807
Differential Revision: https://developer.blender.org/D2333
|
|
Use triple buffer by default now on all platforms, remaing ones where:
* Mesa: seems to have been working well for a long time now, and not using
it gives issues with the latest Mesa 17.2.0.
* Windows software OpenGL: no longer supported since OpenGL 2.1 requirement
was introduced.
* OS X with thousands of colors: this option was removed in OS X 10.6, and
that's our minimum requirement.
|
|
Previously it was returning short, which was really easy to (a) compare against
non-ID type value (b) forget to handle some specific value in switch statement.
Both issues happened in the nearest past, so it's time to tighten some nuts
here.
Most of the change related on silencing strict compiler warning now, but there
is also one tricky aspect: ID_NLA is not in the IDType enum. So there is still
cast to short to handle that switch. If someone has better ideas how to deal
with this please go ahead :)
|
|
This avoids obscure bugs where operators could run from
events that happen before the UI and depsgraph have been initialized.
See: D2809 for details.
|
|
|
|
Also sanity check macro-operator ID's.
|
|
Loading startup file always loads the UI now.
|
|
Recent changes meant structs that were registered without a name
wouldn't get added to the map.
Now assigning identifiers manages the struct-map.
|
|
User preferences are now only loaded on...
- Initial startup.
- Factory-settings.
- Setting app-templates.
|
|
Adds thin/default/thick modes to add -1/0/1 to the auto detected line width,
while leaving the overall UI scale unchanged.
Also tweaks the default line width threshold, so thicker lines start from
slightly high UI scales.
Differential Revision: https://developer.blender.org/D2778
|
|
This will allow much finer controll over how we copy data-blocks, from
full copy in Main database, to "lighter" ones (out of Main, inside an
already allocated datablock, etc.).
This commit also transfers a llot of what was previously handled by
per-ID-type custom code to generic ID handling code in BKE_library.
Hopefully will avoid in future inconsistencies and missing bits we had
all over the codebase in the past.
It also adds missing copying handling for a few types, most notably
Scene (which where using a fully customized handling previously).
Note that the type of allocation used during copying (regular in Main,
allocated but outside of Main, or not allocated by ID handling code at
all) is stored in ID's, which allows to handle them correctly when
freeing. This needs to be taken care of with caution when doing 'weird'
unusual things with ID copying and/or allocation!
As a final note, while rather noisy, this commit will hopefully not
break too much existing branches, old 'API' has been kept for the main
part, as a wrapper around new code. Cleaning it up will happen later.
Design task : T51804
Phab Diff: D2714
|
|
Own error in 7398b3b7
|
|
|
|
Calling an operator with EXEC_* context would still set the invoke flag.
|
|
|
|
|
|
minimum 96.
Since we added auto DPI on Linux, on some systems the UI draws smaller than before
due to the monitor reporting DPI values like 88. Blender font drawing gives quite
blurry results for such slightly smaller DPI, apparently because the builtin font
isn't really designed for such small font sizes. As a workaround this clamps the
auto DPI to minimum 96, since the main case we are interested in supporting is
high DPI displays anyway.
Differential Revision: https://developer.blender.org/D2740
|
|
|
|
The loop running with no events didn't sleep.
Now wait for events when paused.
|
|
|
|
Fix some cases that still assumed there to be a global DPI, instead of a per
window DPI that needs to be set before reading U.dpi.
|
|
BLO_update_defaults_userpref_blend() was being run when no user preferences
were loaded from memory.
|
|
Fix is a bit ugly, but cannot think of another solution for now, at
least this **should** not break anything else.
And now I go find myself a very remote, high and lonely mountain, climb
to its top, roar "I hate proxies!" a few times, and relax hearing the echos...
|
|
|