Fix #35372: sculpting/painting long brush strokes with small brush size would
take up a lot of memory.

The operator was recording an array with all stroke points. However this was not
particularly useful, only sculpt mode had exec() implemented to redo the stroke,
but it was not registering the operator anyway so there was no way to access the
data after the operator was done. So no one was using this anyway.

I did now implement exec for the paint modes so you can call the operator with
stroke points from a script.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56834 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #35368:
* Editing number of segments for particle hair did not update the viewport.
* Hidden particles were confusing, the paths were drawn but without the points.
  Now it draws the path faded to indicate that they are hidden/locked.
* Select tips/roots operators now have options to select/deselect/toggle/invert.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56835 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for [#35352] Freestyle + Geometry Spatial Noise freezes on render.

SpatialNoiseShader, as well as SmoothingShader were not updating stroke length after
geometry modification, causing an infinite loop in Stroke::Resample(int iNPoints) due to
incorrect length-based resampling of stroke vertices.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56836 954f8c5b-7b00-dc11-b283-0030488c597c
quiet warnings from r56825
- using vars before checking they are defined
- /* within comment


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56837 954f8c5b-7b00-dc11-b283-0030488c597c
bmesh grid fill: interpolate vertex customdata (useful for vertex weights and shapekeys)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56838 954f8c5b-7b00-dc11-b283-0030488c597c
fix [#35385] freestyle rendering crash blender


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56839 954f8c5b-7b00-dc11-b283-0030488c597c
Fix compile error on VS2012.
Unused variables (for debug only) give an error.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56848 954f8c5b-7b00-dc11-b283-0030488c597c
CMakeLists.txt changes to use new static Jack libs with VC2012

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56850 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #35384: animation to enable/disable render layers was applied one frame too
late when rendering animations.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56851 954f8c5b-7b00-dc11-b283-0030488c597c
grid-fill: fix error in detecting face flipping.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56856 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #35388, grouped nodes not editable in properties ui.

The issue here was that the "active" material node depends on the editor context. Previously (< 2.67) there was only 1 edited node group possible globally throughout Blender, so the active material in the context could be resolved more easily. The solution now involves the active_viewer_key variable (first introduced for compositor viewer nodes in r56271, naming is a bit awkward but hard to change in DNA). This key defines the "last modified" node tree to resolve ambiguity of active context items. For single editors the result is the same as in 2.66, if multiple editors are used with different node groups the last modified tree is used.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56857 954f8c5b-7b00-dc11-b283-0030488c597c
fix for crash in grid-fill where it was possible for rail edges to overlap.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56858 954f8c5b-7b00-dc11-b283-0030488c597c
correction to last commit. used one more loop then needed. 


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56859 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles:
* Revert part of r56832, if code gets more complicated, it's better to keep it more logical here. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56860 954f8c5b-7b00-dc11-b283-0030488c597c
* This is embarrassing...

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


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56862 954f8c5b-7b00-dc11-b283-0030488c597c
workaround for loopselect-slide (with multicut enabled) changing from vertex-select to edge-select.
this is needed to slide, but wasn't so nice for users, now restore the original mode.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56863 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles / BSSRDF:
* Avoid one max() call for the bssrdf radius, the if condition already checks for values < BSSRDF_MIN_RADIUS. 

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56864 954f8c5b-7b00-dc11-b283-0030488c597c
partial revert of commit 54126 - (BGE UI: removing " use_occlusion_culling" from the ui)
bug reported by Eloy Felix over email

Apparently there are some files that will perform better with "use_occlusion_culling" off.
For now the UI option can return.

Technically this could make into 2.67a, but the string is not localized (it'll be in English).
Not sure what is more important here:

- consistent UI OR to expose in the UI an option some people need


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@56865 954f8c5b-7b00-dc11-b283-0030488c597c
Code cleanup / Cycles:
* Put render resolution x/y into a function.

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