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-07-02Cleanup: use bool for poll functionsCampbell Barton
2018-06-13Cleanup: get rid of last G.main in BMesh code.Bastien Montagne
2018-06-13Cleanup: moar ugly G.main removal...Bastien Montagne
Note that due to RNA get/setters issue, that one may actually add some G.main usages to the total... But at least it's not hidden anymore in a very low-level, dark corner of BKE pointcache code!
2018-06-12Cleanup: moar G.main removal from BKE area.Bastien Montagne
2018-06-11Cleanup: remove some G.main usages...Bastien Montagne
2018-06-07Cleanup: Nuke moar G.main usages...Bastien Montagne
2018-06-04Cleanup: strip trailing space in editorsCampbell Barton
2018-06-01Cleanup: trailing whitespace (comment blocks)Campbell Barton
Strip unindented comment blocks - mainly headers to avoid conflicts.
2018-06-01Cleanup: some more G.main removal from editor code.Bastien Montagne
2018-05-30Edit Mode: add success return valueCampbell Barton
Also remove fix for T6614, since BKE_object_obdata_is_libdata no longer checks proxy.
2018-05-15Undo System: remove nested edit-mode undo callsCampbell Barton
Regression in recent undo system changes, This caused T55048. When each mode had its own undo stack it was important to initialize it when entering edit-mode.
2018-04-11Pose Mode: pass object to mode enter/exitCampbell Barton
Also add lower level mode exit function
2018-04-11Cleanup: minor changes to pose-mode switching APICampbell Barton
Prepare for multi-object pose mode
2018-04-10Cleanup: remove unused flagCampbell Barton
2018-04-02Cleanup: move undo into it's own directoryCampbell Barton
Split out undo API from ED_util.h into ED_undo.h
2018-03-31Undo: unified undo system w/ linear historyCampbell Barton
- Use a single undo history for all operations. - UndoType's are registered and poll the context to check if they should be used when performing an undo push. - Mode switching is used to ensure the state is correct before undo data is restored. - Some undo types accumulate changes (image & text editing) others store the state multiple times (with de-duplication). This is supported by checking UndoStack.mode `ACCUMULATE` / `STORE`. - Each undo step stores ID datablocks they use with utilities to help manage restoring correct ID's. Needed since global undo is now mixed with other modes undo. - Currently performs each undo step when going up/down history Previously this wasn't done, making history fail in some cases. This can be optimized to skip some combinations of undo steps. grease-pencil is an exception which has not been updated since it integrates undo into the draw-session. See D3113
2018-03-19Cleanup: split lattice into own libraryCampbell Barton
Was mixed with object functionality.
2018-03-13Cleanup: pass selectmode directlyCampbell Barton
Pass instead of editmesh or toolsettings. Needed for multi edit-mode
2018-03-08Cleanup: Use BKE_ prefix for all public functions exposed by the NLA moduleJoshua Leung
2018-03-02Object Mode: move logic to 'object_modes.c'Campbell Barton
Was mixed with edit-mode, centralize mode switching in a single file. No functional changes.
2018-02-13Add ED_object_editmode_exit_exCampbell Barton
Allow exiting editmode from non-active scene.
2018-02-08Fail gracefully when editmode data doesn't existCampbell Barton
Sync changes from 2.8
2018-02-07Cleanup: add _types.h suffix to DNA headersCampbell Barton
2018-02-06DNA: move eObjectMode into own headerCampbell Barton
Add a enum headers to DNA, to be included in other headers so function signatures can use enums for better type safety. Add DNA_*_enums.h matching DNA_*.types.h as needed.
2018-01-30Fix T52520: Metaballs in edit mode causes infinite Cycles viewport resetSergey Sharybin
The issue was introduced by eb016eb as a fix for T41258, which added depsgraph tagging with zero flag. The comment was saying that it's to make derived caches to be updated, however bot sure how that could possibly work: tagging ID for update with 0 flag only sets updated tags in bmain in old dependency graph. In the new depsgraph, where object data is a part of depsgraph, doing such a tag forces object to be updated, which re-triggers viewport rendering, which is causing such an infinite viewport render rest. Can not reproduce any crashes here, so maybe it's fine to move on with this change.
2017-11-19Option not to select with un-hideCampbell Barton
D1518 from @mba105 w/ edits
2017-11-06Rename ID_IS_LINKED_DATABLOCK to ID_IS_LINKED.Bastien Montagne
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.
2017-10-18Cleanup: Use const for RNA EnumPropertyItem argsCampbell Barton
Practically all access to enum data is read-only.
2017-10-17Cleanup: use 'e' prefix for enum typedefsCampbell Barton
Convention was only followed loosely, apply to DNA where changes aren't likely to conflict. (Skipped ModifierType for eg).
2017-08-27Fix T52498: Deleting force field doesn't remove "Surface" from modifier stack.Bastien Montagne
Logic in `ED_object_check_force_modifiers` was inconsistent between add and remove modifier cases. Should be safe enough for 2.79.
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
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
2017-01-16Cleanup/refactor: Add new BLI_string_util.Bastien Montagne
Things like `BLI_uniquename` had nothing, but really nothing to do in BLI_path_util files! Also, got rid of length limitation in `BLI_uniquename_cb`, we can use alloca here to avoid overhead of malloc while keeping free size (within reasonable limits of course).
2016-09-03Fix T49229: ID user decrement error when deleting group instance twice.Bastien Montagne
Another great example of inconsistency in usercount handling - dupli_group was considered as refcounted by readfile.c code (and hence by library_query.c one, which is based on it), but not by editor/BKE_object code, which never increased group's usercount when creating an instance of it etc. To be backported to 2.78.
2016-07-06Replace of (id->lib != NULL) check by meaningful macro.Bastien Montagne
Idea is to replace hard-to-track (id->lib != NULL) 'is linked datablock' check everywhere in Blender by a macro doing the same thing. This will allow to easily spot those checks in future, and more importantly, to easily change it (see work done in asset-engine branch). Note: did not touch to readfile.c, since there most of the time 'id->lib' check actually concerns the pointer, and not a check whether ID is linked or not. Will have a closer look at it later. Reviewers: campbellbarton, brecht, sergey Differential Revision: https://developer.blender.org/D2082
2016-06-21Text Object: Vertical AlignmentDalai Felinto
A new option for Font/Text objects vertical alignment: * Top Base-Line (current mode) * Top * Center * Bottom The Top is the equivalent as the Top-Baseline with an empty line at the begin of the text. It's nice to have this option too though, since if we are driving the alignment via Python we don't want to add extra lines to the text only to accomodate to the desired vertical alignment. The Center and Bottom are as intuitive as their name suggest. When working with text boxes, the vertical alignment only work for paragraphs that are not vertically full. Many thanks to Campbell Barton (ideasman42 / @campbellbarton) for the code review, code comments, and overall suggestions and changes :) Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D2061
2016-04-29Fix T48290: Hook fails after deleting geometryCampbell Barton
Now CD_SHAPEKEY_INDEX customdata is stored in edit-mode when hooks and vertex parents are used. This also fixes a bug where undo would loose key-index data. Move to structs for BM_mesh_bm_to/from_me to avoid passing many argument, which mostly aren't used.
2016-04-29Remove redundant selection flush callCampbell Barton
2016-02-27Fix T47593: 'Move to layer' will be crash in blender 2.77rc1.Bastien Montagne
To be backported to 2.77.
2016-02-26Restore ability to clear motionpaths from selected objects/bones onlyJoshua Leung
In response to user feedback, this commit brings back the ability to limit motionpath clearing to only happening for those on selected objects/bones. By default, the "Clear" operator will clear from all objects/bones, unless the Shift key is held.
2016-02-07Motion Paths: Use custom poll functions for "Update" operatorJoshua Leung
2016-02-07Clear motionpaths for all objects and bones instead of only selected onesJoshua Leung
With the old behaviour, it was too easy to get old paths hanging around because you forgot to go through and select a few bones that still had them.
2016-01-04Fix T47038: Particles in Particle Edit Mode get added in completely wrong ↵Bastien Montagne
location. It also fixes another issue (crash) related to symmetric editing. Quite involved, we (try to!) fix complete broken logic of parts of particle code, which would use poly index as tessface one (or vice-versa). Issue most probably goes back to BMesh integration time... This patch mostly fixes particle editing mode: - Adding/removing particles when using generative modifiers (like subsurf) should now work. - Adding/removing particles with a non-tessellated mesh (i.e. one having ngons) should also mostly work. - X-axis-mirror-editing particles over ngons does not really work, not sure why currently. - All this in both 'modes' (with or without using modifier stack for particles). Tech side: - Store a deformed-only DM in particle modifier data. - Rename existing DM to make it clear it's a final one. - Use deformed-only DM's tessface2poly mapping to 'solve' poly/tessface mismatches. - Make (part of) mirror-editing code able to use a DM instead of raw mesh, so that we can mirror based on final DM when editing particles using modifier stack (mandatory, since there is no way currently to find orig tessface from an final DM tessface index). Note that this patch is not really nice and clean (current particles are beyond hope on this side anyway), it's more like some urgency bandage. Whole crap needs complete rewrite anyway, BMesh's polygons make it really hard to work with current system (and looptri would not help much here). Also, did not test everything possibly affected by those changes, so it needs some users' testing & validation too. Reviewers: psy-fi Subscribers: dfelinto, eyecandy Maniphest Tasks: T47038 Differential Revision: https://developer.blender.org/D1685
2015-12-13Grease Pencil: Merge GPencil_Editing_Stage3 branch into masterJoshua Leung
This commit merges all the work done in the GPencil_Editing_Stage3 branch as of ef2aecf2db981b5344e0d14e7f074f1742b0b2f7 into master. For more details about the changes that this brings, see the WIP release notes: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.77/GPencil
2015-11-23Cleanup: use `rna_enum_` prefix for RNA enumsCampbell Barton
Definitions could shadow local vars.
2015-11-18Cleanup: editor api namingCampbell Barton
- use ED_ prefix for api calls - use ED_*_select_pick for mouse selection (was already done in parts)
2015-11-09Cleanup: avoid incrementing/decrementing id->us outside of BKE_library.Bastien Montagne
We have callbacks for that, they also do some checks and help ensure things are done correctly. Only place where this is assumed not true is blenloader (since here we may affect refcount of library IDs as well...).
2015-08-31Fix T45258, impossible to select brush when removing it from 2dAntony Riakiotakis
painting. Also system added a brush every time it found no paint brush in the system which is not what we would want. Solution: * Brush panel stays visible always, regardless of whether there is a brush or not. * We search for first available brush when we find no brush in paint struct instead of always generating a new one. * Generating and searching for a brush take a mode argument now. Needed some refactoring to users of BKE_paint_init as well. * Did some style cleanups for paint mode enums. Patch is big but it's mostly argument refactoring.
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-06-28BGE: added clamping of angular velocity.Sybren A. Stüvel
Angular velocity clamping was missing from the BGE. It is implemented similarly to the linear velocity clamping. It is needed to be able to drive physical simulations of systems that have a limited rotational speed. Reviewed by: campbellbarton, panzergame, ton Differential Revision: https://developer.blender.org/D1365
2015-05-24Fix RNA type accessCampbell Barton