Age | Commit message (Collapse) | Author |
|
|
|
|
|
In previous optimization in outliner I assumed that order in treehash was not important.
But testing outliner in datablocks mode revealed a problem: when user expands multiple recursive levels and then closes any element, it always closed the top level of recursion.
Now it should work fine with recursive trees.
Now treehash contains groups of elements indexed by (id,nr,type). Adding an element with the same (id,nr,type) results in appending it to existing group. No duplicates are possible in treehash.
This commit should also make lookups a little bit faster, because searching in small arrays by "used" is faster than searching in hashtable with duplicates by "id,nr,type,used".
|
|
- performance of outliner was low because of unoptimal data structures.
- now it uses BLI_mempool instead of custom mempool and GHash to make searches for duplicates faster.
- also fix undesired behaviour of BLI_mempool_as_arrayN
thanks to Campbell Barton and Lukas Tönne for helping me get a better fix put together.
|
|
- incorrect NULL check in logic UI drawing
- incorrect NULL check in octree quad test
|
|
indent.
also indent case's within the switch (we already did both of these almost everywhere)
|
|
ED_object_editmode_load/enter/exit
|
|
|
|
- move recursive bone/parent check into ED_armature.h
- remove unused vars
- use const for paint vector args.
|
|
|
|
from Lawrence D'Oliveiro (ldo)
- more comments
- more uses of bool type
- define symbol for length of in_use array in check_for_dupid
|
|
|
|
|
|
- linking groups into a scene now uses the objects original layers (some users have the layers set to useful values, so overwriting isnt so nice).
- dropping objects into the 3d view would make them active but not selected, a valid but confusing state, since most tools activate and select now objects.
|
|
besides performance in some cases.
* DAG_scene_sort is now removed and replaced by DAG_relations_tag_update in
most cases. This will clear the dependency graph, and only rebuild it right
before it's needed again when the scene is re-evaluated.
This is done because DAG_scene_sort is slow when called many times from
python operators. Further the scene argument is not needed because most
operations can potentially affect more than the current scene.
* DAG_scene_relations_update will now rebuild the dependency graph if it's not
there yet, and DAG_scene_relations_rebuild will force a rebuild for the rare
cases that need it.
* Remove various places where ob->recalc was set manually. This should go
through DAG_id_tag_update() in nearly all cases instead since this is now
a fast operation. Also removed DAG_ids_flush_update that goes along with
such manual tagging of ob->recalc.
|
|
- use DummyRNA_NULL_items to replace empty enums.
- replace calloc with malloc in copy_dverts since its copied over after.
- add wmGesture->userdata, so operators that use gestures have somewhere to store their own data (not used yet).
|
|
hair_velocity_smoothing()
and a unlikely NULL pointer dereference in unlink_material_cb().
|
|
few others), and another bunch of UI messages tweaks/fixes, as well as some BKE_report()<->BKE_reportf()...
|
|
Using "outliner data operation" on vertexgroup suggested it should work, but this is not
supported yet. Similar to all the other cases it throws a Report warning now.
|
|
|
|
|
|
|
|
|
|
Supports selecting using object data, material and library.
Would be nice to hide this menu item from menus appearing for
datablocks which does not support such a selection, but that
could be done separately.
|
|
|
|
|
|
|
|
|
|
use needed it.
|
|
|
|
also stop numpy from being found in /usr/include with cmake.
|
|
|
|
|
|
|
|
|
|
|
|
header cleanup.
|
|
|
|
parsers that done expand macros.
|
|
else if's
|
|
|
|
|
|
also remove large, duplicate comments from sunsky.h
|
|
from Dan Eicher (dna)
--- from the tracker
Setting Screen.scene only uses the active screen through a call to CTX_wm_screen(C) instead of the actual referenced scene.
The attached py-op demonstrates this behavior, assuming at least two separate scenes in the VSE.
|
|
already used a lot and part of proposed style guide).
|
|
was an error with make-local refactor & path updating.
|
|
bugfix for #28467, it deleted outliner tree while still traversing it.
|
|
RenderLayers and RenderPasses don't show the generic Hide/Unhide/Select/Deselect
popup which is irrelevant for this use case. I've included a commented-out call
here that can be replaced when we have some operations which can be performed on
this data (*)
(*) For new devs looking to get into blender dev, this could be a nice little
project to work on.
|
|
This commit implements the Unlink and Make Single User capabilities for World
datablocks in the Outliner
|
|
http://markmail.org/message/fp7ozcywxum3ar7n
|