Compatibility and robustness:

* Make masking depend on texture mode only if there's an actual texture
present
* New stroke system uses diameter to calculate stroke spacing, while old
texture painting brushes and system used radius. So divide spacing of
brushes in old files to half. Since I expect trunk users to have already
adapted this, I do this for an old subversion of blender.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55911 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34921: cycles rendered a specific scene with a small high poly object
contained in a large low poly object very slow, due to failure case of fast
multithread BVH binning. Tweaked parameter now to avoid this.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55912 954f8c5b-7b00-dc11-b283-0030488c597c
fix for error in recent changes to beautify, clear edge tags before use.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55913 954f8c5b-7b00-dc11-b283-0030488c597c
fix [#34902] Unicode decode error in Python console when completing a method name of text object in edit mode


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55914 954f8c5b-7b00-dc11-b283-0030488c597c
Attempt to fix a potential name conflict between Freestyle and the compositor.

A crash in the Freestyle renderer was reported by Ton on IRC with a stack trace
below.  Note that #2 is in Freestyle, whereas #1 is in the compositor.  The problem
was observed in a debug build on OS X 10.7 (gcc 4.2, openmp disabled, no llvm).

----------------------------------------------------------------------
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: 13 at address: 0x0000000000000000
[Switching to process 72386 thread 0xf303]
0x0000000100c129f3 in NodeBase::~NodeBase (this=0x10e501c80) at COM_NodeBase.cpp:43
43			delete (this->m_outputsockets.back());
Current language:  auto; currently c++
(gdb) where
#0  0x0000000100c129f3 in NodeBase::~NodeBase (this=0x10e501c80) at COM_NodeBase.cpp:43
#1  0x0000000100c29066 in Node::~Node (this=0x10e501c80) at COM_Node.h:49
#2  0x000000010089c273 in NodeShape::~NodeShape (this=0x10e501c80) at NodeShape.cpp:43
#3  0x000000010089910b in NodeGroup::destroy (this=0x10e501da0) at NodeGroup.cpp:61
#4  0x00000001008990cd in NodeGroup::destroy (this=0x10e5014b0) at NodeGroup.cpp:59
#5  0x00000001008990cd in NodeGroup::destroy (this=0x114e18da0) at NodeGroup.cpp:59
#6  0x00000001007e6602 in Controller::ClearRootNode (this=0x114e19640) at Controller.cpp:329
#7  0x00000001007ea52e in Controller::LoadMesh (this=0x114e19640, re=0x10aba4638, srl=0x1140f5258) at Controller.cpp:302
#8  0x00000001008030ad in prepare (re=0x10aba4638, srl=0x1140f5258) at FRS_freestyle.cpp:302
#9  0x000000010080457a in FRS_do_stroke_rendering (re=0x10aba4638, srl=0x1140f5258) at FRS_freestyle.cpp:600
#10 0x00000001006aeb9d in add_freestyle (re=0x10aba4638) at pipeline.c:1584
#11 0x00000001006aceb7 in do_render_3d (re=0x10aba4638) at pipeline.c:1094
#12 0x00000001006ae061 in do_render_fields_blur_3d (re=0x10aba4638) at pipeline.c:1367
#13 0x00000001006afa16 in do_render_composite_fields_blur_3d (re=0x10aba4638) at pipeline.c:1815
#14 0x00000001006b04e4 in do_render_all_options (re=0x10aba4638) at pipeline.c:2021
----------------------------------------------------------------------

Apparently a name conflict between the two Blender modules is taking place.
The present commit hence intends to address it by putting all the Freestyle C++
classes in the namespace 'Freestyle'.  This revision will also prevent potential
name conflicts with other Blender modules in the future.

Special thanks to Lukas Toenne for the help with C++ namespace.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55915 954f8c5b-7b00-dc11-b283-0030488c597c
Pressing Ctrl+R when blender was built without bullet would crash.
- add checks so rigid-body operators only return FINISHED when they make some changes to the scene.
- remove (scene == NULL) checks, poll already catches these.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55916 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: abbreviations ob, con - aren't normally used in global identifiers.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55917 954f8c5b-7b00-dc11-b283-0030488c597c
rigidbody operators poll functions were mixing up CTX_data_active_object/ED_object_active_context.
- replace ED_operator_rigidbody_add_poll with ED_operator_object_active_editable_mesh
- replace ED_operator_rigidbody_active_poll with ED_operator_scene_editable for operators that use the entire selection.
- remove rigid-body from objects that are converted from meshes to curves, while this isnt crashing it is confusing to see in the UI.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55918 954f8c5b-7b00-dc11-b283-0030488c597c
BGE: Non-mesh objects (lamps, empties, group instances, etc.) are now "No Collision" by default.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55919 954f8c5b-7b00-dc11-b283-0030488c597c
Various edits preparing addons' translations tools (not everything yet functionnal/tested, though).

Also workaround a nasty bug, where unregistered py classes remain listed in relevant __subclasses__() calls, which would lead to crash with python addons i18n tools (main translation was not affected, as messages extracting tools are executed in a brand new "factory startup" Blender ;) ).

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55920 954f8c5b-7b00-dc11-b283-0030488c597c
temporary fix for saving custom template files similar to startup .blend file

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55921 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34740: cycles rendering issue mixing glossy/glass BSDF's with zero or very
low roughness and same index of refraction.

Problem was bad float precision due to low roughness, which caused the pdf for
the different closures to not match properly.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55922 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34932: drivers on world nodes not updating on frame changes.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55923 954f8c5b-7b00-dc11-b283-0030488c597c
Fixes for sequencer effects

- Add and subtract effects will now affect on only RGB channels,
  and alpha of first input is used as an alpha for the result.

  Also solved creepyness with straight->premul->straight conversion
  in byte versions of add/subtract.

- Solved issue with multiply modifier, which lead to white*white
  not being white (was off by 1.0/255) due to wrong optimization
  of division by 255 with shr by 8.

  According to Ton this issue goes back to 2000!

This fixes #34811: Wrong result of add/subtract effects

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55924 954f8c5b-7b00-dc11-b283-0030488c597c
Live window resizing on Windows
Custom implementation for resizing (GHOST_SizerWin32)

Some things still don't work:
* esc cancel
* max windows size
* aero (sizing) snap on win7

hbrBackground = 0 to disable clear screen.

Thanks to dfelinto for help in finding of root cause.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55925 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34938: Not freeing dynstr_cstring memory blocks when setting shape keys

In fact almost any rna pointer-to-string had a memory leak.

Patch by Jakub Zolcik (sftd) with minor modification.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55926 954f8c5b-7b00-dc11-b283-0030488c597c
Fix scons compile after GHOST_Sizer commit

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55927 954f8c5b-7b00-dc11-b283-0030488c597c
Fix 34764: cycles issue rendering instanced mesh with NaN coordinates.



git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55928 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for [#34934] Freestyle options are in wrong tab.

Added a label to guide users to line style settings in the Render Layers context
(in line with the similar labels found in the Cloth and Soft Body modifier panels),
so that Freestyle options per render layer can be more easily found.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@55929 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for the subtype of range_min/max parameters in RNA Freestyle settings.
These parameters specify a distance in Blender units, so PROP_DISTANCE is more appropriate.
Suggested by Bastien Montagne through personal communications, thanks!

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