Feature Request: "Show Errors" Filter for Anim Editors now works for
F-Curves/Animation as well as Drivers

This is useful for tracking down invalid F-Curves which might need to have their
paths fixed, or perhaps to remove F-Curves for controls which no longer exist in
a new rig.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55068 954f8c5b-7b00-dc11-b283-0030488c597c
Experimental Feature: Ctrl-Click on the "name" of a broken F-Curve now allows
you to fix the RNA Path in-place

For F-Curves that are disabled or marked as having errors because their paths
are invalid (indicated with a red line underneath their names), it is now
possible to use the Ctrl-Click renaming functionality to bring up a textbox for
fixing the offending RNA Path "in place" (i.e. in the channels list) without
having to bring up the properties region first.

This makes it easier to fix the paths if you know what you're doing. However,
caution is still advised for most people. In particular, be aware that this uses
a separate "RNA Array Index" for indexing into array properties (i.e. location,
rotation, color) which will not be shown here, and can only be edited from the
panel (or datablocks editor/scripts).


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55069 954f8c5b-7b00-dc11-b283-0030488c597c
Bugfix [#32492] - Part 3: Error filter now includes drivers where there are
errors with the variables/targets, even if those errors are for variables which
aren't used (and are hence "harmless" errors)

This means that the filter can be truly useful for helping locate things that
need "cleaning up". For example, previously, there could still have been drivers
where there were some of these "harmless" errors would emit warnings, but would
otherwise appear perfectly functional.

The implementation here uses a slightly slower method of checking any errors in
these driver vars. However, it's no slower than what's done when these are
evaluated, and should be less error prone than introducing yet another type of
error tagging for this one case. The problem here is that the "driver invalid"
flag, which is usually set when a target has errors, gets cleared by the
pydrivers code if nothing went wrong when evaluating the expression. Removing
this clearing step will probably open a can of worms, so unless this method
proves to be far too slow, this simpler fix will do.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55070 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: quiet float/double conversion warnings.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55071 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: quiet warnings for recent weight paint theme addition.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55072 954f8c5b-7b00-dc11-b283-0030488c597c
Woops! Fix for previous F-Curve path fix commit

Trying to rename a valid F-Curve would crash as no RNA property was set, but
*prop still had an uninitialised value.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55073 954f8c5b-7b00-dc11-b283-0030488c597c
Alternate fix for bug [#34369], where invalid polygon normals could be saved in the mesh data and in the file.

This was from initial BMesh merge, but should not have been added in since face normals are calculated and stored in the DerivedMesh.

Toggling editmode would remove poly-normals so its unlikely anything relies on this custom-data.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55074 954f8c5b-7b00-dc11-b283-0030488c597c
add asserts for passing negative index values to RNA functions which don't support them.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55075 954f8c5b-7b00-dc11-b283-0030488c597c
fix for bug where array buttons would use -1 index, causing an out-of-bounds check on an array.
added assert so this wont happen again.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55076 954f8c5b-7b00-dc11-b283-0030488c597c
fix for error building on big-endian.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55078 954f8c5b-7b00-dc11-b283-0030488c597c
Tracking dopesheet fixes:

- Dopesheet need to be updated when adding or switching
  between objects.
- After removing object it shall also be tagged for update,
  otherwise crash will likely happen.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55079 954f8c5b-7b00-dc11-b283-0030488c597c
Texture paint refactoring commit

Adding new file paint_image_proj.c which includes the projective texture painting part of texture
painting, using the stroke system. To access the new code path use Shift-LClick.
The new code path still is problematic with tablet pressure and I will be looking
into ways to unify this across paint systems next.

The old code is still present and can be accessed by regular Lclick as usual.

Also removed 3D (non-projective) painting from 3D viewport.

TODO:
* Add pressure influence code to stroke, remove from every other paint
system code, including texpaint.
* Put UnifiedPaintSettings update in PaintStroke code.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55081 954f8c5b-7b00-dc11-b283-0030488c597c
Typo fix to fix global delete with Shift-X as it was before r43416


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55082 954f8c5b-7b00-dc11-b283-0030488c597c
Change !BLI_ghashIterator_isDone to BLI_ghashIterator_notDone. It is
always used in that context so we can at least avoid reverting it twice
:p.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55083 954f8c5b-7b00-dc11-b283-0030488c597c
Support position jittering on new texpaint code using the stroke system.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55084 954f8c5b-7b00-dc11-b283-0030488c597c
Collada: Added option for how rot,loc,trans data is exported (improves flexibility for support of other 3D tools)

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55085 954f8c5b-7b00-dc11-b283-0030488c597c