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
2011-02-13warning cleanup.Campbell Barton
- fix mistake with grease pencil UI (&& was intended but & used). - use (void) rather then () across _all_ blenders code. - a few minor edits, don't shadow stack variables in roll calculation & avoid running memset() for VBO vertex map.
2011-01-16defining types via python gave confusing errors because DefRNA.laststruct ↵Campbell Barton
was being used for errors when the new property wasn't on the last struct. added CONTAINER_RNA_ID() define to get the ID from the ContainerRNA type.
2011-01-13bugfix [#25588] Not work fcurve.keyframe_points.addCampbell Barton
The problem was flag-enums were being treated as regular enums, a default value of 0 was using the first enum item, whereas with flag enums we want to be able to use 0 as a default value to specify all flags are off.
2011-01-10comment/remove various unused vars,Campbell Barton
also make rna function for new images require width and hight args.
2011-01-07split BKE_utildefines.h, now it only has blender specific defines like GS() ↵Campbell Barton
MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h. no functional changes.
2010-12-31Continue from my commit r33952, which disallowed floats to be wrapped as ints.Campbell Barton
this missed some cases, now also disallow ints to be wrapped as floats. This commit also exposed a number of cases where ints/floats were incorrectly wrapped. Bugs like [#25416] wont slip through the cracks anymore.
2010-12-14- revert own recent change after discussion, default set hard minimum of ↵Campbell Barton
colors to 0 but now don't set a hard min, each property needs to define. - use_old_bump setting only applies to material texture slots.
2010-12-14disallow RNA color values to be set to negative values. Material colors ↵Campbell Barton
could be set to -100.0 if typed in manually, this is sure to cause bad/unpredictable behavior.
2010-12-03Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for ↵Campbell Barton
'const char's,. Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-11-15- 'matrix_basis' for objects and pose bones, this is an alternative access ↵Campbell Barton
to directly adjusting the loc/scale/rot. - pose bone 'matrix_local' wasn't well named since it didn't work like object or regular bones. - pose bone matrix values for rna had array access rather then 4x4 matrix access. note: for pose bones update scripts by renaming 'matrix_local' --> 'matrix_basis'
2010-11-02fix for compiling with the c90 standard, support for non-static variable ↵Campbell Barton
initializers is a c99 feature.
2010-11-01bugfix [#24462] UV Layouts saved as PNG results in two files (one is 0 KB, ↵Campbell Barton
other has corrupted filename)
2010-10-13python api:Campbell Barton
- bpy.app.debug can now be set, removed bpy.data.debug (since this is not blendfile data) - added bpy.app.tempdir, this is needed because the userpref temp dir isn't always set, $TEMP may be used instead and scripts need temp dir access.
2010-09-06bugfix [#23656] Problems retrieving properties from inside runtime-created ↵Campbell Barton
PointerProperties cant test if this fix solves the problem matt is having but it at least fixes an error caused by classes created in exec(), when the properties pointers were copied the hash key still referred to the python object which could be freed. in most cases this wouldnt happen (would be kept in bytecode) but with exec() the property string is freed immediately.
2010-09-03rna api Campbell Barton
- move: material.add_texture(tex, coords, mapto) --> material.texture_slots.add() - added material.texture_slots.create(index), material.texture_slots.clear(index) - texture slot functions also work for lamp and world now. Other minor changes - allow rna functions to set FUNC_NO_SELF and FUNC_USE_SELF_ID at once. - [#23317] Changed some operators' RNA to accept lengths, a modification I made to this patch made it not work as intended, removed this edit so unit buttons appier in the UI for certain operators. - Sphinx doc gen, 2 columns rather then 3, didnt quite fit in some cases.
2010-08-31rna support for passing dynamic sized arrays to rna functionsCampbell Barton
using this for object.vertex_groups.assign([index list ...], group, weight, mode)
2010-08-26patch [#23316] Fix bug that doesn't show "X:" "Y:" "Z:" for vectors with lengthCampbell Barton
patch [#23317] Changed some operators' RNA to accept lengths by Lorenzo Tozzi (oni_niubbo) with the minor change to use XYZ subtype rather then LENGTH.
2010-08-19- Properties from base classes are now registered too, this allows class ↵Campbell Barton
mix-in's to define properties. An example of how this is useful - an importer mixin could define the filepath properties and a generic invoke function which can run the subclasses exec for each selected file. - Panels and Menus now skip the property check when registering. - renamed _idproperties_ to _idprops_ in function names, function names were getting very long.
2010-08-14fix for referencing freed memory when freeing an rna property.Campbell Barton
2010-08-04Brush/Paint internal changesCampbell Barton
- remove brush array for each Paint struct, just use a single brush pointer. - removed rna function based template filtering. - filter brushes using a flag on the brush and the pointer poll function. - set the brushes using a new operator WM_OT_context_set_id(). TODO - remake startup.blend, currently brush groupings are lost. - rewrite WM_OT_context_set_id() to use rna introspection.
2010-08-03remove commented scons lines from cmake files, fixed use of pointer poll ↵Campbell Barton
function for ID drobdowns (currently unused)
2010-08-03rna pointer poll function, not used yet.Campbell Barton
2010-05-09py/rna: defining new properties now replaces the old onces and raises an ↵Campbell Barton
error if they collide with dynamic props.
2010-05-09function to remove propertyCampbell Barton
eg: bpy.types.Scene.IntProperty(attr="myprop") # adds bpy.types.Scene.RemoveProperty(attr="myprop") # removes
2010-03-29Tweak to set default ui range for color/color_gamma propertiesMatt Ebb
2010-03-24remove unused rna includesCampbell Barton
2010-02-12correct fsf addressCampbell Barton
2010-02-11batch remove .'s used with RNA_def_struct_ui_textCampbell Barton
2010-02-09bugfix [#21057] Python: accessing DriverVariable targets causes segmentation ↵Campbell Barton
violation collections were detected as arrays.
2010-02-05BGE fix: KX_Lamp using strcmp wrongly + typo in rna_defineDalai Felinto
2010-02-02PROP_ANIMATEABLE -> PROP_ANIMATABLE (more common spelling)Campbell Barton
2010-01-24RNA functionsElia Sarti
Fixed and completed support for returning multiple values. This includes support for returning arrays, both fixed and dynamically sized. The way this is achieved is by storing an additional int value next to the dynamic parameter in the ParameterList stack which gets passed to the C function as an additional parameter. In the case of return parameters it is duty of the C function to set this int to the correct length value for the dynamic parameter (which makes sense). Note that for the dynamic output/return parameter it is assumed the function has allocated that memory (which gets freed automatically). Also, I cleaned the makesrna's bridge function generation code a bit and renamed PROP_RETURN to PROP_OUTPUT, which represents better the reality now that there are multiple returns. The function now to mark multiple returns (outputs) is RNA_def_function_output. For an example, look at Action.get_frame_range in rna_action_api.c, by the way Aligorith I removed the #ifdef for this function now that there's support for returning arrays, feel free to modify (the function seems to work).
2010-01-08- RNA support for returning copied strings from functions, flagging strings ↵Campbell Barton
as PROP_THICK_WRAP does this. - scene.render_data.frame_path(frame=num), returns the output path for rending images of video. - scene.render_data.file_extension, readonly attribute, gives the extension ".jpg", ".mov" etc - player support was guessing names, use the above functions to get the actual names used, accounting for #'s replacing numbers.
2010-01-05patch from Benoit Bolsee (ben2610) for 4 bugs in report [#20527] Several ↵Campbell Barton
bugs in RNA from the report... # bug 1. UV properties are not raw editable but are reported # as RAW_TYPE_INT by RNA causing wrong conversion # internally (bpy_rna.c line 2205) # bug 2. raw update of UV coordinates crash blender (rna_access.c line 252) mtfaces.foreach_set("uv", rawuvs) # workaround: #for i in range(int(len(faces)/4)): # mtfaces[i].uv = uvs[i] # bug 3. raw update of non-array property fails (rna_access.c line 2270) mfaces.foreach_set("material_index", mats) # workaround: # for i in range(int(len(mfaces))): # mfaces[i].material_index = mats[i] # bug 4. It is not possible to add a vertex color layer using mesh API. me.add_vertex_color() # no workaround...
2010-01-02support for multiple return values from rna functions & support for ↵Campbell Barton
returning arrays, (no functions are using this yet). patch from Elia Sarti, (vekoon) with some modifications mainly for the python api. - multiple values are returned as a typle in the order that are defined. - added support for registered types returning multiple arguments (untested). - renamed func->ret --> func->c_ret, since this only defines what the C function returns.
2009-11-25AnimSys - Transform Locks + RNA:Joshua Leung
The Animation System now respects the Transform Locks too (i.e. lock x-location, etc.) when writing settings. This means that it is no longer necessary to set up "constant drivers" to make sure some values don't get accidentally animated. Internally, added a new callback for properties in RNA, which is responsible for checking if the item at some array-index is editable. This needs to be manually called for each place which uses rna to set settings for arrays (see the code changes in anim_sys.c for changes how to do this; the same thing needs to be done in the UI code too, and probably in py-api too)
2009-11-13arbitrary property and function support for rna properties (arrays and ↵Campbell Barton
collections), this means functions can be easily added. eg. scene.objects.link() object.constraints.new() mesh.verts.transform(...) mesh.faces.active PropertyRNA stores an StructRNA pointer where these can be defined.
2009-11-03active property for collections for things like scene.objects.activeCampbell Barton
will add more properties later
2009-10-14RNA:Brecht Van Lommel
* Enums with an _itemf callback now never get context NULL passed in, rather a fixed list of enum items are defined which should contain all items (if possible), from which the _itemf callback can then use a subset.
2009-10-08Key ConfigurationBrecht Van Lommel
Keymaps are now saveable and configurable from the user preferences, note that editing one item in a keymap means the whole keymap is now defined by the user and will not be updated by Blender, an option for syncing might be added later. The outliner interface is still there, but I will probably remove it. There's actually 3 levels now: * Default builtin key configuration. * Key configuration loaded from .py file, for configs like Blender 2.4x or other 3D applications. * Keymaps edited by the user and saved in .B.blend. These can be saved to .py files as well to make creating distributable configurations easier. Also, user preferences sections were reorganized a bit, now there is: Interface, Editing, Input, Files and System. Implementation notes: * wmKeyConfig was added which represents a key configuration containing keymaps. * wmKeymapItem was renamed to wmKeyMapItem for consistency with wmKeyMap. * Modal maps are not wrapped yet. * User preferences DNA file reading did not support newdataadr() yet, added this now for reading keymaps. * Key configuration related settings are now RNA wrapped. * is_property_set and is_property_hidden python methods were added.
2009-09-22RNA: added a "factor" subtype next to "percentage", and only displayBrecht Van Lommel
% sign for percentage assuming it is between 0-100, while factor is for values 0-1. Move collision setting absorption from modifier to collision settings, was inconsistent to have it there as the only one, and made it have range 0.0-1.0 instead of 0-100.
2009-09-16RNABrecht Van Lommel
* PROP_NEVER_NULL is now a flag instead of a subtype. * It works for function parameters too now, so setting this flag can help avoid NULL checks in the function. * Renamed LocalLamp to PointLamp, making it consistent with the UI name. * Set icons for the different lamp struct types.
2009-09-14use static functions where possible for some local functions.Campbell Barton
2009-09-122.5 filebrowserAndrea Weikert
Appending and Linking * Linking Operator, invokes filebrowser for Append/Link * Separated the append/link function into three parts: ** BLO_library_append_begin finds main for appending ** BLO_library_append_named_part appends one Object,Group, Material, ... ** BLO_library_append_end actually reads and expands the libraries NOTE 1: I also changed the returned properties for the filebrowser operators to the following convention: "path" - the full path to a file or directory, means what is in directory + filename buttons in filebrowser "directory" - the content of the directory button in filebrowser "filename" - the content of the filename button in filebrowser Usually only path should be required, but in some cases it might be more convenient to retrieve the parts separately. Ton, Brecht: If you have time to take a look, let me know if anything needs to be fixed.
2009-09-09RNA: multidimensional & dyanmic array changesBrecht Van Lommel
* Disable setting array length of dynamic array for now, this was not implemented correct, and it's not really needed now. * Allow all dimensions to be dynamic size, not just the first. * Change storage of multidimensional to be simpler. * Rename API functions to be more compact. * Fix some bugs in the implementation. * RenderLayer.rect and RenderPass.rect use a multidimensional dynamic array now.
2009-09-092.5: Layer ButtonsBrecht Van Lommel
* Added RNA subtype for layers. * Shift-click works again. * uiItemR can now also handle armature/bone layers. * Also makes Move to Layer popup work as expected.
2009-09-06Python part of multidim. array support for RNA complete.Arystanbek Dyussenov
Multidim. arrays can now be modified at any level, for example: struc.arrayprop = x struc.arrayprop[i] = x struc.arrayprop[i][j] = x struc.arrayprop[i][j][k] = x etc... Approriate rvalue type/length checking is done. To ensure all works correctly, I wrote automated tests in release/test/rna_array.py. These tests cover: array/item access, assignment on different levels, tests that proper exceptions are thrown on invalid item access/assignment. The tests use properties of the RNA Test struct defined in rna_test.c. This struct is only compiled when building with BF_UNIT_TEST=1 scons arg. Currently unit tests are run manually by loading the script in the Text Editor. Here's the output I have: http://www.pasteall.org/7644 Things to improve here: - better exception messages when multidim. array assignment fails. Those we have currently are not very useful for multidim. - add tests for slice assignment
2009-09-052.5Brecht Van Lommel
Notifiers --------- Various fixes for wrong use of notifiers, and some new notifiers to make things a bit more clear and consistent, with two notable changes: * Geometry changes are now done with NC_GEOM, rather than NC_OBJECT|ND_GEOM_, so an object does need to be available. * Space data now use NC_SPACE|ND_SPACE_*, instead of data notifiers or even NC_WINDOW in some cases. Note that NC_SPACE should only be used for notifying about changes in space data, we don't want to go back to allqueue(REDRAW..). Depsgraph --------- The dependency graph now has a different flush call: DAG_object_flush_update(scene, ob, flag) is replaced by: DAG_id_flush_update(id, flag) It still works basically the same, one difference is that it now also accepts object data (e.g. Mesh), again to avoid requiring an Object to be available. Other ID types will simply do nothing at the moment. Docs ---- I made some guidelines for how/when to do which kinds of updates and notifiers. I can't specify totally exact how to make these decisions, but these are basically the guidelines I use. So, new and updated docs are here: http://wiki.blender.org/index.php/BlenderDev/Blender2.5/NotifiersUpdates http://wiki.blender.org/index.php/BlenderDev/Blender2.5/DataNotifiers
2009-08-25Implemented dynamic and multidimensional array support in RNA.Arystanbek Dyussenov
Example code: http://www.pasteall.org/7332/c. New API functions: http://www.pasteall.org/7330/c. Maximum number of dimensions is currently limited to 3, but can be increased arbitrarily if needed. What this means for ID property access: * MeshFace.verts - dynamic array, size 3 or 4 depending on MFace.v4 * MeshTextureFace.uv - dynamic, 2-dimensional array, size depends on MFace.v4 * Object.matrix - 2-dimensional array What this means for functions: * more intuitive API possibility, for example: Mesh.add_vertices([(x, y, z), (x, y, z), ...]) Mesh.add_faces([(1, 2, 3), (4, 5, 6), ...]) Python part is not complete yet, e.g. it is possible to: MeshFace.verts = (1, 2, 3) # even if Mesh.verts is (1, 2, 3, 4) and vice-versa MeshTextureFace.uv = [(0.0, 0.0)] * 4 # only if a corresponding MFace is a quad but the following won't work: MeshTextureFace.uv[3] = (0.0, 0.0) # setting uv[3] modifies MTFace.uv[1][0] instead of MTFace.uv[3]
2009-08-212.5: Modifiers & MenusBrecht Van Lommel
* Popup menus now remember the last clicked item again. * Modifier and File Format menus are now organized in multiple columns with categories. * Hook, explode, uv project modifiers have all their buttons again with the relevant operators implemented. * Modifiers that can't be added by the user, or don't work on curves for example, are not in the menu anymore. * Fix search menu overlapping buttons when near the bottom of the screen. * Fix uv layers search menu not working in some modifiers. * Cleanup popup menu code a bit, layout engine is used in more cases now instead of ugly position calculation code.