Commit Graph

894 Commits

Author SHA1 Message Date
ef0e29269b curve hide keys were still not right, now match mesh editmode. 2010-12-14 11:22:54 +00:00
58f31f8a5d Change set handle types back to menu now menus have key access - V+A, V+V, V+L, V+F
for Graph & Edit Curve view.

Editcurve can be Hkey for hide again.
2010-12-14 10:17:13 +00:00
573b8d0309 Bugfix #25197
Curve follow path: the fcurve modifier got lost after tabbing in out
editmode. Also other non-point related curves would get lost.
2010-12-13 17:10:44 +00:00
9aace59708 IRC report fix:
Text edit mode (3d): brought back the ALT+Backspace mode for
typing accented characters. Works with an operator property,
so the hotkey for it is free to define.

Example: type 'a', alt+backspace and then 'o'
works to combine characters with ' ` ~ o / and ^
2010-12-10 13:31:59 +00:00
3ee53d7b5f Related to previous commit:
I still have to learn more of the recent changes in code :)

Didn't know the handle type options became a menu for Curve edit mode. 
Providing much-used tools non-modal (direct) really should have 
preference. Pull down is not very accessible here though, will
check on it later. :)

This restores H, Shift+H, V and alt+H for handle setting.
2010-12-09 19:06:45 +00:00
afacd18498 use lowercase for cmake builtin names and macros, remove contents in else() and endif() which is no longer needed. 2010-12-08 08:43:06 +00:00
8e8b07cc07 Got rid of old-school searching CVs for index update.
No more infinity loops could happen -- only keyIndex data loose.
But it's smaller harm and actually could be easily fixed and it's more
correct way.
2010-12-06 21:18:08 +00:00
59268ca715 Update curve animation data when loading UndoCurve -- fixes memory corruption
when starting playback after undo-ing topology changes

The simpliest way was to change data at which undoCurve_to_editCurve and
editCurve_to_undoCurve works from curve to object. Maybe it's not very
cool, but still better than moving curve animation handlers outside of
editcurve module.
2010-12-06 17:49:57 +00:00
14ec2d9122 Curves CV animation
===================

Update fcurves RNA pathes after making changes to curve topology, so
animation will no longer lost after edit and wouldn't lead to crash.

Will be very useful for RotoBezier addon.

Also NodeKeyIndex renamed to CVNodeIndex due to node is an entity from
another module and better not used in others.
2010-12-06 17:20:22 +00:00
997338b5cb Curves shape keys:
fixed memory corruption after creating new CVs and switching direction
2010-12-06 13:44:36 +00:00
7613d36b2a bugfix [#25046] Bold and Italics checkboxes for Text objects seem to do nothing
- Part of this report is a misunderstanding, but there was no access to bold/italic fonts. 
- Added rna access and changed the operators to use only rna properties.
2010-12-06 04:05:34 +00:00
b110c7c8f2 Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now it
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.

This should help performance in python and animation editors, by making 
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
2010-12-05 18:59:23 +00:00
d30cd92014 - Fixed dead-lock when subviding curve
- Hard-limit for cuts number is set to INT_MAX, soft limit to 10 (same as for meshes)
2010-12-05 07:08:14 +00:00
c8f80fffba IRC fix:
Curve editmode was missing hotkey for operator "Select Inverse"
Is now added like Mesh, CTRL+I
Thanks lmg!
2010-12-03 18:49:38 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
8934b61739 Fix #25017: Bezier Curve Deform Twisting after adding Shape Keys
- Invalid step was used in curve_applyKeyVertexTilts
- Minor cleanup in editcurve stuff
2010-12-03 14:35:03 +00:00
cd97253502 - added GCC warning -Wstrict-prototypes
- fixed bug in paste material, exposed by stricter warnings.
- removed/renamed various shadowed vars.
- removed BGE lamp.colour, only allow lamp.color attribute.
2010-12-03 12:30:59 +00:00
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
e8397e6193 include headers in cmake source, added a script to check for consistency, reporting missing headers & C files.
this is important so IDE's using CMake integration always get blender headers. - QtCreator & MSVC for eg, probably others too.
2010-11-29 04:35:56 +00:00
34ea1cf0b2 minor changes to the python api.
- pep8 script was giving an error on non utf8 scons source files.
- use PyList_SET_ITEM macro when list type is ensured.
- all mathutils types use subtypes to create new types when available.
- use defines MAT3_UNITY, MAT4_UNITY to initialize unit matrices.
2010-11-28 06:03:30 +00:00
fb42188c18 Update nurb keyindex data when subdividing -- shape key data wouldn't be lost anyway 2010-11-26 17:08:22 +00:00
6c19670d7c Bugfix #24860
On entering editmode Curve/Nurbs, the undo buffer was not
correct; storing old Curve/Nurbs object name. This caused
for example the Operator tool redo options to fail; it added
another curve on first use (with user pref "enter editmode).

Solved with adding good undo push + nicer code for curve and
nurbs naming.
2010-11-23 17:28:41 +00:00
a2dc1fe4b0 Toggle cyclic on when creating segment between first and last points of non-cyclic bezier 2010-11-21 19:29:08 +00:00
18d9f7cbbf Recalc handles after toggling bezier's cyclic flag when deleting segment 2010-11-21 19:01:18 +00:00
e006d187f4 Applying patch #24822: Select linked for curves as for meshes, CTRL + L version
With some own changes:
- Select pick moved to invoke()
- Used editsurfcurve_region_view3d as poll function for this operator
  due to ogl dependency

Thanks to Elia Sarti (vekoon)!
2010-11-21 18:50:53 +00:00
72279e1c92 fix for RNA ranges exceeding the range of the type (INT_MAX used on short's for eg). 2010-11-21 03:45:35 +00:00
35014aa741 - add python/rna function region.tag_redraw()
- removed print which was before NULL check, (possible crash)
- add execute hooks for the python console (not used by any scripts yet)
2010-11-20 05:11:10 +00:00
5a09368957 use 'const char *' for imbuf and file ops. 2010-11-19 02:14:18 +00:00
51dcbdde03 use 'const char *' by default with RNA functions except when the value is flagged as PROP_THICK_WRAP.
Also use const char in many other parts of blenders code.

Currently this gives warnings for setting operator id, label and description since these are an exception and allocated beforehand.
2010-11-17 09:45:45 +00:00
619a8b6952 bugfix [#24357] Font folder can be specified but is not opened
- open operator was incorrectly checking if the font path was set.
- rna ID editable check was also incorrect, checking the ID name rather then the filename.
- use define FO_BUILTIN_NAME rather then "<builtin>".
2010-10-24 07:02:19 +00:00
c6976e7351 use explicit file paths for CMake rather then globing, This is recommended by cmake devs.
globbing vs explicit is discussed here.
http://www.cmake.org/pipermail/cmake/2008-December/025694.html

Practical implications are:
- developers need to keep CMakeLists.txt files up to date.
- Users wont get strange linking errors if they build after a file is added, since CMake detects CMakeLists.txt is modified and automatically reconfigure.
2010-10-23 04:05:55 +00:00
8259321a5f fix warnings 2010-10-21 22:45:54 +00:00
76a0de3a0d Changes to "evaluation time" for Curves:
After discussions with Campbell regarding #24336 and #24309, we've decided to make this property for curves to only get set when an F-Curve explicitly animates it. 

As a consequence...
- ALL OLD FILES using follow-path constraints that depended on this changed behaviour will currently need manual patching to add an appropriate F-Curve
- Ctrl-P (Parenting to Curves -> Follow Path option) will now automatically create such F-Curves mimicking the old behaviour so that creating camera-following-path setups still works smoothly.
- Directly adding a Follow Path constraint bypasses this, so you'll need to manually add such F-Curves if you need them.

The main problem with the old approach was that there were many cases in which curve data could get added but the ctime would be incorrect until a frame change (i.e. on render) flushed this.
2010-10-21 10:28:06 +00:00
1998fa59ae fix for fix [#24336] evaluation time - curve has no effect
committed r32598 to fix [#24309] Reloading file with incorrect path location.

Setting the curves ctime when updating the object data overrode the animated value.
For now just set the ctime on newly added curves with will work as the user expects in most cases.
This is weak design IMHO because the ctime value can be set to anything but is reset on changing frames even if its not keyed.

With curves created via python or linked in this can still result in a bad ctime value.
2010-10-20 13:51:37 +00:00
5999658569 Fix #24280: NURBS default "12x12" UV resolution is not actually "12x12"
When adding new nurb primitive it'll have got the same resolution as curve
2010-10-16 10:14:17 +00:00
f81248265d tag UNUSED() for operator exec() and invoke() functions. 2010-10-15 01:36:14 +00:00
9fa74e5c59 Fix #24215: Bad shorcut indication for Bezier curve handles.
All existing handle type manipulation hotkeys replaced with unified V-menu
where you could directoly set type you need.
2010-10-11 18:53:11 +00:00
8a4fe62843 misc fixes found with clang's static checker. 2010-10-07 10:04:07 +00:00
b01e6fd564 rename makeknots to nurbs_knot_calc_u/v 2010-09-30 06:51:32 +00:00
04adf3ae15 cleanup of nurb spin function, was very confusing. no functional changes. 2010-09-30 05:26:36 +00:00
36c756e754 fix for nurbs spin tool (broken since being moved to 2.5x). 2010-09-29 16:18:39 +00:00
a2f966b8ee bugfix [#24041] Adding NURBS Sphere and NURBS Donut problem 2010-09-29 15:19:16 +00:00
2597377b5c Fix #24054: Shift+A add menu in Surface editmode shows curve items. 2010-09-29 11:48:03 +00:00
6bb0fc3e4f minor changes to text3d editing, skip wchar --> utf-8 conversion on cursor movement. 2010-09-22 15:39:43 +00:00
cf4f9d2c19 bugfix [#23923] extra material slots created 2010-09-21 06:09:14 +00:00
46f0fbcf0a Fix #23742: a NURBS surface created with two joined curves crashes Blender on rendering
Nurb's material number used to be clamped to [0;-1] for case object hasn't got
materials. Forced to keep material number on zero if object hasn't got any materials.
2010-09-10 06:05:18 +00:00
82432d0d99 merge from trunk at r31523 2010-09-07 05:47:34 +00:00
bb7339a7ae merge with trunk at r31523 2010-09-04 05:31:25 +00:00
4e9162cd63 revert own commit which changed weight range, the set weight operator is for the goal weight, not the nurbs weight. 2010-09-02 10:56:50 +00:00
4ddc61643a Renaming of Cylindric objects after a good proposal by Conz:
http://www.vrchannel.de/blender/cylinder_rename.png

Mesh Tube > Mesh Cylinder
NURBS Tube > NURBS Cylinder
Metaball Cylinder > Metaball Capsule

I know that naming is something not everyone agrees on, but these terms look geometrically correct.
2010-09-01 21:11:33 +00:00