Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-02-06Outliner: Add object(s) to new collectionDalai Felinto
Suggested by Pablo Vazquez (venomgfx). The idea here is that it should be easy to work in the outliner by picking a bunch of objects and adding them to a new collection. Where is the new collection? In the same level as the "outliner active" object. Note, since the outliner has no pure concept of an active object, I'm using the highlight tag for this. Hopefully it works fine. It should work in "Collections", "View Layer", and "Groups". Only when collections are not filtered out.
2018-02-06Rename OUTLINER_OT_collection_object_remove > _object_remove_from_collectionDalai Felinto
Better make it clear it is different than OUTLINER_OT_collection_objects_remove.
2018-02-06Outliner: Operator to delete outliner selected elements from collectionDalai Felinto
Suggested by Pablo Vazquez (venomgfx).
2018-02-02Collections: Operator to duplicate a collectionDalai Felinto
When duplicating a layer collection directly linked to the view layer we copy the collection and link it. For all the not directly linked layer collectionns, we try to sync the layer collection flags, overrides, ... Also we make sure the new collection is right after the original collection. We also expose this in RNA, via collection.duplicate().
2018-02-02Collections: Operator to select collection objectsDalai Felinto
This is only supported by layer collections (the ones accessible in the outliner when you see "View Layer").
2018-01-26Outliner: If a collection is empty and you drag something inside it, it ↵Dalai Felinto
opens up. Idea by Pablo Vazquez.
2018-01-26Outliner tooltips: Small refactor, future proof changeDalai Felinto
In the future we may have siblings to collections (like overrides) that are not collections. This change make sure tooltips will keep working. Note: This was originally wrongly committed together with a Collada fix, re-committing separately now. See bd7060a87fd9.
2018-01-26Revert "Fix crash on Collada exporter"Dalai Felinto
This reverts commit bd7060a87fd9f46c2bdd141e26934e8573c6e3f8. I mixed two commits together (a fixup for outliner tooltips and a collada fix). Re-committing them individually.
2018-01-26Fix crash on Collada exporterDalai Felinto
2018-01-26Outliner: Tooltips for reorder operatorsDalai Felinto
I really would prefer if we were to use the dropbox API for this. That said, we now have some tooltips that work. I'm using the new draw callback draw API for outliner tooltips. Reviewers: mont29 Subscribers: venomgfx, mano-wii, Severin Differential Revision: https://developer.blender.org/D3020
2018-01-26Outliner: Implement Add (Ctrl) when moving objects inside collectionDalai Felinto
Note there is no "text" explaining to users what is going on. I will address this shortly in an upcoming commit.
2018-01-22Collections/Layer cleanup: Remove placeholder for de/select objectsDalai Felinto
No need for placeholders bloating the source code. They can come back once we decide to implement them.
2018-01-22Collections/Layer cleanup: Remove TODO_LAYER_OVERRIDE from most placesDalai Felinto
This was originally a good idea. However we will need to pay special attention to this when doing the dynamic overrides anyways. The placeholders won't be enough to spare us that job. That said I left the ones on layer.c because we are actually calling these BKE_override_*_add() functions from doversion, yet they don't do anything.
2018-01-18Outliner: Rename "Active View Layer" > "View Layer"Dalai Felinto
The original name came from a cheap conversion of the "active layer" option to "active render layer" and then "active view layer".
2018-01-05Outliner: Support multiple-objects drag'n'drop into collectionsDalai Felinto
We now can drag multiple objects at once in the outliner. You we restricted to working within a single outliner. Be sure to drag from the objects name, not from its icon (otherwise it will try to parent it). We don't use the same drag'n'drop system as IDs here. Which although I dislike allowed for this solution to be local, and not dependent on the entire drag'n'drop system of Blender. This is a feature Andy Goralczyk has requested a long time ago. Kudos for him for his request.
2018-01-03Outliner/Collections: Remove selected objects operatorDalai Felinto
This is part of T53495.
2018-01-03Outliner/Collections: Add selected objects operatorDalai Felinto
This is part of T53495.
2017-12-29Outliner/Collection: Operator to delete selected collectionsDalai Felinto
This is part of T53495. This operator is actually using existing code. The only new thing about it is that it has a shortcut. It will be exposed in the UI soon together with the nested collection operator.
2017-12-29Outliner/Collection: Operator to create (nested) collectionsDalai Felinto
This is part of T53495. This operator is intended for the outliner when viewing Collections (at the moment, Master Collection Tree). It has a shortcut "C", and will be added to a menu shortly.
2017-12-01Groups and collection: initial integrationDalai Felinto
Since we are ditching layers from Blender (2.8) we need a replacement to control groups visibility. This commit introduces collections as the building blocks for groups, allowing users to control visibility as well as overrides for groups. Features ======== * Groups now have collections This way you can change the visibility of a collection inside a group, and add overrides which are part of the group and are prioritized over other overrides. * Outliner Groups can inspect their collections, change visibility, and add/remove members. To change an override of a group collection, you need to select an instance of the group, and then you can choose "group" in the collection properties editor to edit this group active collection instead of the view layer one. * Dupli groups overrides We can now have multiple instances of the same group with an original "override" and different overrides depending on the collection the instanced object is part of. Technical ========= * Layers We use the same api for groups and scene as much as possible. Reviewers: sergey (depsgraph), mont29 (read/write and user count) Differential Revision: https://developer.blender.org/D2892
2017-11-20Cleanup: BLI headers firstCampbell Barton
Also move descriptions into doxy header
2017-09-20Layer collection enable flagDalai Felinto
Right now this is exposed in the outliner, though all this (visible/selectable/enable) should be moved to a new panel soon. This removes objects from the depsgraph when the collection is disabled. It allows you to "hide" lamps but still having them lighting the scene. Same for light probes and other support objects. Pending tasks: * Have depsgraph to include invisible objects in the DEG_OBJECTS_ITER, and then have Eevee and other engines to make a distinction between an invisible and a visible object. (for example, we probably want invisible objects to not show in the viewport, but cast shadows and show up in light probes). * Change how we evaluate collection settings so that an invisible collection can force an object to be invisible. Reviewers: campbellbarton Subscribers: sergey Differential Revision: https://developer.blender.org/D2848
2017-04-25Outliner: Re-build depsgraph when reordering collectionsDalai Felinto
Otherwise if we create a new collection, and drag a collection into it we either get a crash, or at the very least we dont get the visibility flags correct.
2017-03-10Ouliner drag&drop: Correct/increase margin for triggering insert intoJulian Eisel
2017-03-10Outliner drag&drop: Do generic check if no custom poll callback is definedJulian Eisel
And quite some cleanup.
2017-03-10Improve outliner drag&drop feedback by using drop poll callbacksJulian Eisel
This way we can ensure the overlay to indicate where the item would be placed if it was dropped now is always at the correct place and doesn't mislead the user.
2017-03-10Fix incorrect positioning of collection when dropping it after expanded oneJulian Eisel
2017-03-10Support drag & drop of collections across multiple hierarchy levelsJulian Eisel
Two issues are remaining, they'll be fixed separately: * Graphical feedback when dragging within the master collection is wrong * There's some bug where collections swap places instead, Dalai will investigate
2017-03-02Get UI ready for using drag & drop to nest a collection into another oneJulian Eisel
Nothing happen yet when it's supposed to insert the collection into another one, that part will be handled by @dfelinto. See gif for demo of how it works UI wise: {F500337} Also fixed off-by-one error in utility function.
2017-02-28Outliner: Delete all selected collections, not just active oneJulian Eisel
There were some issues with how we store outliner tree elements: Apparently the only removable elements have been data-blocks so far. When recreating the TreeElements, their TreeStoreElem instances were mainly identified by their ID pointer. However non-data-blocks mostly depend on an index. For collections, such an index isn't a reliable measure though if we want to allow removing items. Depending on it for identifying the TreeStoreElem instance would cause some quite noticeable glitches (wrong highlights, two elements sharing highlight, etc). For now I've solved that by actually removing the TreeStoreElem that represents the removed element. A little limitation of this is that after undoing the removal, some information might get lost, like flags to store selection, or opened/closed state. A better solution that would also fix this issue would be having a real unique identifier for each non-data-block element, like an idname or even its data-pointer. Not sure if we can get those to work reliable with file read/write though, would have to investigate... Also added a general Outliner tree traversal utility.
2017-02-28Outliner: "All Collections" mode showing the master collection hierarchyJulian Eisel
Reordering is disabled for now. Link, unlink and override operators are only available while in "Active Layer" mode, not in "All Collections".
2017-02-27Outliner: Rename "Collections" display mode to "Active Render Layer"Julian Eisel
2017-02-27Outliner: Don't use alphabetical sorting for collectionsJulian Eisel
Order of collections matters, so sorting the outliner entries to be alphabetical is misleading.
2017-02-22UI: Support drag & drop reordering of collectionsJulian Eisel
This adds initial support for reordering collections from the Outliner using drag & drop. Although drag & drop support is limited to collections for now, this lays most foundations for general drag & drop reordering support in the Outliner. There are some design questions to be answered though: * Would reordering of other data types (like objects) be a purely visual change or would it affect the order in which they are stored? (Would that make a difference for the user?) * Should/can we allow mixing of different data types? (e.g. mixing render layers with objects) * How could we realize this technically? Notes: * "Sort Alphabetically" has to be disabled to use this ("View" menu). * Reordering only works with collections on the same hierarchy level. * Added some visual feedback that should work quite well, it's by far not a final design though: {F493806} * Modified collection orders are stored in .blends. * Reordering can be undone. * Did minor cleanups here and there.
2017-02-17Layer/Outliner: add a few operators that I need for the video demoDalai Felinto
2017-02-16Outliner collection operators, all but collection linkDalai Felinto
Note: It may be missing a notifier to prevent Outliner from crashing when deleting collections.
2017-02-15Revert "Collection Editor based on patch by Julian Eisel"Dalai Felinto
This reverts commit 3da834e83ce9d7056c033148dab04885a6d3b1b7. We will use the outliner for this now. I'm also moving the collections_ops.c to outliner_collections.c
2017-02-07Render Layers and Collections (merge from render-layers)Dalai Felinto
Design Documents ---------------- * https://wiki.blender.org/index.php/Dev:2.8/Source/Layers * https://wiki.blender.org/index.php/Dev:2.8/Source/DataDesignRevised User Commit Log --------------- * New Layer and Collection system to replace render layers and viewport layers. * A layer is a set of collections of objects (and their drawing options) required for specific tasks. * A collection is a set of objects, equivalent of the old layers in Blender. A collection can be shared across multiple layers. * All Scenes have a master collection that all other collections are children of. * New collection "context" tab (in Properties Editor) * New temporary viewport "collections" panel to control per-collection visibility Missing User Features --------------------- * Collection "Filter" Option to add objects based on their names * Collection Manager operators The existing buttons are placeholders * Collection Manager drawing The editor main region is empty * Collection Override * Per-Collection engine settings This will come as a separate commit, as part of the clay-engine branch Dev Commit Log -------------- * New DNA file (DNA_layer_types.h) with the new structs We are replacing Base by a new extended Base while keeping it backward compatible with some legacy settings (i.e., lay, flag_legacy). Renamed all Base to BaseLegacy to make it clear the areas of code that still need to be converted Note: manual changes were required on - deg_builder_nodes.h, rna_object.c, KX_Light.cpp * Unittesting for main syncronization requirements - read, write, add/copy/remove objects, copy scene, collection link/unlinking, context) * New Editor: Collection Manager Based on patch by Julian Eisel This is extracted from the layer-manager branch. With the following changes: - Renamed references of layer manager to collections manager - I doesn't include the editors/space_collections/ draw and util files - The drawing code itself will be implemented separately by Julian * Base / Object: A little note about them. Original Blender code would try to keep them in sync through the code, juggling flags back and forth. This will now be handled by Depsgraph, keeping Object and Bases more separated throughout the non-rendering code. Scene.base is being cleared in doversion, and the old viewport drawing code was poorly converted to use the new bases while the new viewport code doesn't get merged and replace the old one. Python API Changes ------------------ ``` - scene.layers + # no longer exists - scene.objects + scene.scene_layers.active.objects - scene.objects.active + scene.render_layers.active.objects.active - bpy.context.scene.objects.link() + bpy.context.scene_collection.objects.link() - bpy_extras.object_utils.object_data_add(context, obdata, operator=None, use_active_layer=True, name=None) + bpy_extras.object_utils.object_data_add(context, obdata, operator=None, name=None) - bpy.context.object.select + bpy.context.object.select = True + bpy.context.object.select = False + bpy.context.object.select_get() + bpy.context.object.select_set(action='SELECT') + bpy.context.object.select_set(action='DESELECT') -AddObjectHelper.layers + # no longer exists ```
2016-10-15Outliner: Element mouse hover feedbackJulian Eisel
Some little UI polish to get familiar with outliner code (but also because it's a useful feature). Committing to blender2.8 branch but can also port to master (2.7) if wanted. This basically causes the mouse hovered element to be highlighted. Contrast of the highlight should be fine, even with a non-default theme. Also did some minor cleanup.
2016-06-22ID-Remap, step two: add some user-level tools.Bastien Montagne
This commit adds operators and Outliner menu entries to reload or relocate a library, and to delete or replace a datablock. RNA ID API is also extended to allow ID deletion and remapping from python. Review task: D2027 (https://developer.blender.org/D2027). Reviewed by campbellbarton, thanks a bunch.
2016-01-08Fix T47138: Page Down key pages up, instead of down, in Outliner.Bastien Montagne
Usual operator properties 'saving' after first execution... Double fix here, since being explicit in keymap is good practice too.
2015-12-01Outliner: add an option to "delete" libraries.Bastien Montagne
Caminandes team request. In current master it's not possible to do this in a total clean way, so we are simply setting all user counts of given lib's datablocks to zero (similar to rna_ID_user_clear()'s doing). This is a bit crappy because it still lets datablocks floating around (with invalid user count values), and requires a save & reload cycle to be finalized. But for now it should be good enough. Propper implementation will be added to id-remap.
2015-08-14Outliner: Context menu for scenesPhilipp Oeser
Adds context menu for scenes in the outliner, for now, with only a 'Delete' entry. D1448 by @lichtwerk, review by @aligorith and @Severin
2015-04-07Revert Sticky Keys (and everything related to that)Julian Eisel
Our current keymap doesn't give us enough room to make such changes in the event system. To fix small issues caused by this, we would need to do drastic changes in Blender's keymaps and internal handling. It was worth a try, but it didn't work. I can write down a more descriptive statement in a few days, but for now I need a break of this stuff.
2015-04-03Sticky Keys backendJulian Eisel
Design task: T42339 Differential Revision: D840 Initial implementation proposal: T41867 Short description: With this we can distinguish between holding and tabbing a key. Useful is this if we want to assign to operators to a single shortcut. If two operators are assigned to one shortcut, we call this a sticky key. More info is accessible through the design task and the diff. A few people that were involved with this: * Sean Olson for stressing me with this burden ;) - It is his enthusiasm that pushed me forward to get this done * Campbell and Antony for the code and design review * Ton for the design review * All the other people that gave feedback on the patch and helped to make this possible A big "Thank You" for you all!
2015-02-15Outliner: "Purge All" function for Outliner in "Orphaned Datablocks" modeJoshua Leung
Many users have been requesting a way to remove unused datablocks from the file/session "without closing and reopening" Blender (or at least that's the impression I'm getting). This commit adds a new operator (exposed as the "Purge All" button in the header of the "Orphaned Datablocks" mode in the Outliner, which seems to be the logical place for this) for doing so. It does so by wrapping up the save and "revert" (i.e. reload the saved file from disk, without needing to quit Blender) operators along with a confirmation prompt for good measure. Caveats: * Ultimately, we still cannot really cleanly delete any datablocks from the current session outright without reloading the file/data at some point. Thus, we do need to reload the file again before it can be used. * This does mean that this operation is irreversible. Notably, Undo history is lost is doing this operation. Hence the warnings... (Then again, undo/redo actually reloads the entire scene DB from memory, so it's not anything uncommon ;) Other Notes: * The addition of this operator brings this mode more into line with being a kind of "Trashcan" place, with this new operator being the manual "Empty Trash" button. If the "Orphaned Datablocks" name is too obscure, maybe we could rename this mode to "Trash" or something similar?
2015-02-11Outliner: ContextMenus for constraints/modifiersCampbell Barton
Context menu to toggle render, visibility & delete D996 by @lichtwerk
2015-02-06Outliner: DragDrop objects to groupsCampbell Barton
Support drag&drop objects to groups in the outliner. D989 by @lichtwerk
2014-11-28Cleanup: unused headersCampbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton