Commit Graph

872 Commits

Author SHA1 Message Date
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
bd79d80b8a Internal Code Renaming:
Donut > Torus
2010-09-01 20:18:31 +00:00
de2e58ca49 fix for the weight range for curve set weight operator 2010-08-29 15:53:37 +00:00
c412c5d634 patch [#23316] Fix bug that doesn't show "X:" "Y:" "Z:" for vectors with length
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-26 00:06:10 +00:00
d1759639dc - remove unused includes IMB_*, BIF_* & MEM_*
- remove MEM_guardedalloc.h from header files (include directly)
2010-08-16 05:46:10 +00:00
95aa8cfa4a Update address in license block. 2010-08-10 21:22:26 +00:00
c0e39df6ac - Enable shape key switching in edit mode for curves, surfaces and latticies
- Disable changing of lattice size if there are shape keys
2010-08-10 06:36:42 +00:00
8c455e1da8 remove unused includes 2010-08-08 08:33:47 +00:00
44d51f3f64 Missed keyIndex data existment check when the whole nurb is deleting 2010-08-03 23:04:45 +00:00
5fa7d1c1b4 2.5: code changes to reduce the usage of G.main and pass it along
or get it from the context instead.
2010-08-01 12:47:49 +00:00
327b4d588b Separate proportional edit setting between edit and object mode. They are now used and toggled independently. 2010-07-31 19:26:21 +00:00
cc9dbc7ac2 Curve shape keys:
- Fixed incorrect working of "from mix" insert keyblock operator property
  shapekey coordinated are applying on curve's data when creating displist,
  so curve's nurbs can't be used as unchanged data -- use basis keyblock data instead

- Fixed tilt damaging when loading editcurve -- made a typo in array indexes
2010-07-26 19:07:33 +00:00
cc0f3146e7 Shapekeys for curves/surfeces
Fix #21498: Edit curve Shape key /252_r 27318

Added full support of shape keys for curves and nurbs surfaces including
topology changing in edit mode, undo stuff, updating relative keys when
working under basis and so on.
2010-07-25 11:57:36 +00:00
1fdb880cf4 bugfix [#22990] Crash rendering joined curves
- dont render invalid material indicies (like mesh faces)
- clamp the material index values when joining, TODO: merge material lists properly.
2010-07-24 02:27:43 +00:00
ee6be64a2c Fix #22897: text insert operator only worked for one character,
now inserts the whole string.
2010-07-21 14:11:19 +00:00
c11c196efa part 1 of merge from trunk at r30358; it compiles, but doesn't link quite yet :) 2010-07-19 04:44:37 +00:00
e25393a098 reverting commit r28693. Making backspace a 3rd delete key.
We already have 2 keys for delete, no need to add a 3rd, better use backspace only when it makes sense or allow users to hook it up to something.
2010-07-17 18:02:10 +00:00
02da5ecfed Apply first pass of edits to rna values from rna_booleans.txt.
These are not animated and are best not change names like this too late in the release.

ActionGroup.selected -> select:    boolean    Action Group is selected
BezierSplinePoint.hidden -> hide:    boolean    Visibility status
BezierSplinePoint.selected_control_point -> select_control_point:    boolean    Control point selection status
BezierSplinePoint.selected_handle1 -> select_left_handle:    boolean    Handle 1 selection status
BezierSplinePoint.selected_handle2 -> select_right_handle:    boolean    Handle 2 selection status
Bone.restrict_select -> hide_select:    boolean    Bone is able to be selected
Bone.selected -> select:    boolean
CurveMapPoint.selected -> select:    boolean    Selection state of the curve point
EditBone.restrict_select -> hide_select:    boolean    Bone is able to be selected
EditBone.selected -> select:    boolean
EditBone.selected_head -> select_head:    boolean
EditBone.selected_tail -> select_tail:    boolean
EditBone.locked -> lock:    boolean    Bone is not able to be transformed when in Edit Mode
EditBone.hidden -> hide:    boolean    Bone is not visible when in Edit Mode
NEGATE * FCurve.disabled -> enabled:    boolean    F-Curve could not be evaluated in past, so should be skipped when evaluating
FCurve.locked -> lock:    boolean    F-Curve's settings cannot be edited
FCurve.muted -> mute:    boolean    F-Curve is not evaluated
FCurve.selected -> select:    boolean    F-Curve is selected for editing
NEGATE * FCurve.visible -> hide:    boolean    F-Curve and its keyframes are shown in the Graph Editor graphs
FCurveSample.selected -> select:    boolean    Selection status
GPencilFrame.selected -> select:    boolean    Frame is selected for editing in the DopeSheet
GPencilLayer.locked -> lock:    boolean    Protect layer from further editing and/or frame changes
GPencilLayer.selected -> select:    boolean    Layer is selected for editing in the DopeSheet
Keyframe.selected -> select:    boolean    Control point selection status
Keyframe.selected_handle1 -> select_left_handle:    boolean    Handle 1 selection status
Keyframe.selected_handle2 -> select_right_handle:    boolean    Handle 2 selection status
MeshEdge.selected -> select:    boolean
MeshEdge.hidden -> hide:    boolean
MeshFace.hidden -> hide:    boolean
MeshFace.selected -> select:    boolean
MeshVertex.hidden -> hide:    boolean
MeshVertex.selected -> select:    boolean
MotionPathVert.selected -> select:    boolean    Path point is selected for editing
NlaStrip.selected -> select:    boolean    NLA Strip is selected
NlaTrack.locked -> lock:    boolean    NLA Track is locked
NlaTrack.muted -> mute:    boolean    NLA Track is not evaluated
NlaTrack.selected -> select:    boolean    NLA Track is selected
Object.restrict_render -> hide_render:    boolean    Restrict renderability
Object.restrict_select -> hide_select:    boolean    Restrict selection in the viewport
Object.restrict_view -> hide:    boolean    Restrict visibility in the viewport
Object.selected -> select:    boolean    Object selection state
ObjectBase.selected -> select:    boolean    Object base selection state
PoseBone.selected -> select:    boolean
Sequence.right_handle_selected -> select_right_handle:    boolean
Sequence.selected -> select:    boolean
SplinePoint.selected -> select_control_point:    boolean    Selection status
TimelineMarker.selected -> select:    boolean    Marker selection state
Sequence.left_handle_selected -> select_left_handle:    boolean
ActionGroup.locked -> lock:    boolean    Action Group is locked
Bone.hidden -> hide:    boolean    Bone is not visible when it is not in Edit Mode (i.e. in Object or Pose Modes)
SplinePoint.hidden -> hide:    boolean    Visibility status
FModifier.muted -> mute:    boolean    F-Curve Modifier will not be evaluated

 note: rebaned uv_select to select_uv
2010-07-15 16:56:04 +00:00
3580d6229a - text3d was missing menu items for toggling bold/underline/italic/smallcaps.
- made smallcaps use a temp flag so caps can still have the smallcaps flag.
- utility function for getting the char from a font. find_vfont_char(), was inline in ~5 places.
- removed CU_STYLE mix of flags only used in one place, not needed. removed 'style' from rna too.
- fix for some warnings.
2010-07-13 23:51:21 +00:00
51fd10a1b5 adding image strips wasnt working, use the 'directory' component of the file selector rather then the full 'filepath' to fix this.
added flags for filename/filepath/directory args to WM_operator_properties_filesel().
2010-07-01 19:28:45 +00:00
e86c5cf9ea Fix [#22564] Object name by object type
Restored auto-naming newly created objects by type, for Mesh, Lamp, Meta
2010-06-27 07:45:57 +00:00
e10bf2bc09 Fix #22642: NURBS surfaces doesnt display
Fix #22587: Invisible Nurbs Suface

There was a small bug with determinating if new object should be created
and for surfeces new OB_CURVE object had been created (instead of OB_SURF).

Removed unused function and enum, which were used by nurbs surface
create old oprator
2010-06-22 21:11:13 +00:00
91deffc429 Added ability to add and remove text boxes back from Blender 2.4x. One on those small things missing. 2010-06-21 23:20:44 +00:00