Mac HiDPI support:

With the good help from googling, here's code that compiles for
10.6 natively. Will check on 10.7 and 10.8 right after commit.



git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53678 954f8c5b-7b00-dc11-b283-0030488c597c
fix [#33808] custom property write RNA_pointer_get: xxx.xxxx not found in the console
message was harmless but annoying.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53679 954f8c5b-7b00-dc11-b283-0030488c597c
remove uiPanelClearType(), instead redraw all windows when registering/unregistering.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53680 954f8c5b-7b00-dc11-b283-0030488c597c
partial fix for [#32581] Mesh properties API does not allow for zeros in byte array

bmesh access allows zero bytes, support still needs adding via RNA.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53681 954f8c5b-7b00-dc11-b283-0030488c597c
Remove glibc27 from buildbot scripts

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53682 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #33815: blender internal crash rendering material pass with strands.

Patch from Sergey with modifications.

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

Blender's data link button (typically with menu and searching options)
now has a X icon to clear its contents. 

Before you had to click, delete text, enter.

For example:
- Object Parent
- Modifier objects or vertexgroups

This fix saves each user 100 clicks per day, with 100k users
that's 3 billion clicks per year!




git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53684 954f8c5b-7b00-dc11-b283-0030488c597c
Make the node.parent property editable in RNA, so frame hierarchy can be changed by scripts without resorting to operator hacks.

Performs sanity checks internally to make sure that
a) Only frames are used as parents. In future other nodes may be used for parenting, that will require more sophisticated poll functions.
b) Avoid infinite recursion. If the supposed parent is already attached to a frame node the parent assignment will be ignored.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53685 954f8c5b-7b00-dc11-b283-0030488c597c
Small fix for r53685: Allow setting NULL/None as parent, i.e. detach a node from a frame.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53686 954f8c5b-7b00-dc11-b283-0030488c597c
speedup for editmesh getVert and getEdge, were doing 2x customdata layer lookups for crease and bevel weight, also make use of the existing meshdata array for lookups.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53687 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles: multiple importance sampling for lamps, which helps reduce noise for
big lamps and sharp glossy reflections. This was already supported for mesh
lights and the background, so lamps should do it too.

This is not for free and it's a bit slower than I hoped even though there is
no extra BVH ray intersection. I'll try to optimize it more later.

* Area lights look a bit different now, they had the wrong shape before.
* Also fixes a sampling issue in the non-progressive integrator.
* Only enabled for the CPU, will test on the GPU later.
* An option to disable this will be added for situations where it does not help.

Same time comparison before/after:
http://www.pasteall.org/pic/show.php?id=43313
http://www.pasteall.org/pic/show.php?id=43314

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53688 954f8c5b-7b00-dc11-b283-0030488c597c
Cycles: different fix for perlin noise generating nan values, now check for
the result to be finite afterwards which is a bit faster and works for OSL
too without needing to slow down OSL itself.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53689 954f8c5b-7b00-dc11-b283-0030488c597c
don't store bevel weights or edge crease customdata layers in editmode unless they are needed.

configurable in 'Geometry Data' panel, will be added when running crease edges transform for example.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53690 954f8c5b-7b00-dc11-b283-0030488c597c
fix for editmesh calculating normals twice when using the number-buttons.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53691 954f8c5b-7b00-dc11-b283-0030488c597c
transforming verts was getting the bevel weight for each vertex even if bevel-weight wasnt being transformed.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53692 954f8c5b-7b00-dc11-b283-0030488c597c
don't call BKE_mesh_tessface_ensure() from DM_to_mesh(), caller must do this instead.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53693 954f8c5b-7b00-dc11-b283-0030488c597c
Added new scons target: cudakernels

It's intended to perform compilation of CUDA kernels only,
without doing anything with other sources/resources and
main purpose of this target is to be able to compile cuda
kernels in completely different environment than the rest
of blender was compiled.

This is needed for linux build environment, where sm_13
compilation fails dramatically in 32bit chroot but could
be compiled in 64bit environment.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53694 954f8c5b-7b00-dc11-b283-0030488c597c
Switch linux buildbot to compile all cuda kernels in 64bit environment

Solves memory limit issues when building sm_13 for 32bit platform.

Some further refinement of patch could be needed.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53695 954f8c5b-7b00-dc11-b283-0030488c597c
bmesh todo: uv stretch area draw mode wasn't calculating ngon area - added area_poly_v2().


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53696 954f8c5b-7b00-dc11-b283-0030488c597c
Further tweaks to buildbot

- BF_BITNESS should be passed as a command line argument
- Made it so CUDA binaries and OSL compiled scripts would
  be installed regardless WITH_BF_PYTHON (which seems to
  be quite obvious)
- Disable overwrite install, so CUDA kernels installed by
  it's build target will be preserved when building blender
  itself.

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