Disable OpenMP with dyntopo in paint_mesh_restore_co()

Otherwise, new entries might be inserted by sculpt_undo_push_node()
into the GHash used internally by BM_log_original_vert_co() by a
different thread.

Fixes bug [#33787]
http://projects.blender.org/tracker/?func=detail&aid=33787&group_id=9&atid=498

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53913 954f8c5b-7b00-dc11-b283-0030488c597c
Update object bounding box during sculpt

Fixes the sculpt object being incorrectly clipped during drawing due
to an out-of-date bounding box making it seem that the object had gone
outside the view.

Added a BKE_pbvh function to get the top-level bounding box. In
sculpt_flush_update(), where the PBVH bounds are updated, the result
is copied to the object's bounding box.

Fixes bug [#33790]
projects.blender.org/tracker/?func=detail&aid=33790&group_id=9&atid=498

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53914 954f8c5b-7b00-dc11-b283-0030488c597c
Delete loose edges left behind by sculpting with collapse-short-edges

After deleting a face, check for unused edges and delete them.

Fixes bug [#33891]
projects.blender.org/tracker/?func=detail&aid=33891&group_id=9&atid=498

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53915 954f8c5b-7b00-dc11-b283-0030488c597c
Use KKEY in sculpt mode to activate the snake hook brush

This brush is more useful now with dynamic topology, deserves its own
key binding.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53916 954f8c5b-7b00-dc11-b283-0030488c597c
fix own bug with uninitialized arrays in subdivide (from recent BLI_array.h update)

also quiet warning.


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


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53918 954f8c5b-7b00-dc11-b283-0030488c597c
edited wmSubWindowScissorSet for readability

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53919 954f8c5b-7b00-dc11-b283-0030488c597c
removed extraneous glEnable(GL_BLEND)/glDisable(GL_BLEND) in ui_draw_aligned_panel

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53920 954f8c5b-7b00-dc11-b283-0030488c597c
removed incorrect comment in draw_nla_channel_list_gl

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53921 954f8c5b-7b00-dc11-b283-0030488c597c
minor change r53918 was supposed to resolve.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53922 954f8c5b-7b00-dc11-b283-0030488c597c
Add multimon support to GHOST_DisplayManagerWin32.cpp (It seemed to work before, but recent changes to GHOST_ASSERT caused it to abort if WITH_ASSERT_ABORT was configured).

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53923 954f8c5b-7b00-dc11-b283-0030488c597c
fix for possible null pointer dereference in PE_create_particle_edit


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53924 954f8c5b-7b00-dc11-b283-0030488c597c
More win32 multimon (r53923).  Changed getNumDisplays so that it will actually succeed.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53925 954f8c5b-7b00-dc11-b283-0030488c597c
code cleanup: remove some paranoid checks which would have crashed anyway earlier on.
Also some minor formatting.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53926 954f8c5b-7b00-dc11-b283-0030488c597c
Add missing virtual destructor for VirtualMemoryAllocator

Fixes a warning from GCC 4.7.2.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53927 954f8c5b-7b00-dc11-b283-0030488c597c
fix for own error in recent BLI_array commit


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53928 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #33941. We need to free the image editor ibuf too if no image is
found for cloning.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53929 954f8c5b-7b00-dc11-b283-0030488c597c
Python i18n API. Many thanks to Campbell and Brecht for the reviews and suggestions!

This commit adds:
* A new bpy.app.translations module giving some info about locales/translation stuff (current active locale, all locales currently known by blender, all translation contexts currently defined, etc.).

* The ability for addons to feature translations, using the (un)register functions of above module.

* Also cleans up "translate py string when storing into RNA prop" by removing "PROP_TRANSLATE" string's subtype, and adding a PROP_STRING_PY_TRANSLATE flag instead (this way it is no more exposed to python...).

Addon translations work with py dictionaries: each addon features a dict {lang: {(context, message): translation, ...}, ...}, which is registered when the addon is enabled (and unregistered when disabled). 

Then, when a key (context, message) is not found in regular mo catalog, a cache dict for current locale is built from all registered addon translations, and key is searched in it.

Note: currently addons writers have to do all the work by hand, will add something (probably extend "edit translation" addon) to automate messages extraction from addons soon(ish)! To get a look to expected behavior from addons, have a look at render_copy_settings/__init__.py and render_copy_settings/translations.py (rather stupid example currently, but...). Once we have a complete process, I'll also update relevant wiki pages.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53930 954f8c5b-7b00-dc11-b283-0030488c597c
Fix for usual bplayer issue (own fault)...

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk/blender@53931 954f8c5b-7b00-dc11-b283-0030488c597c
3D mapping for projective texture painting (only for draw brush). Useful
to draw with procedural textures on surface of object. 2D painting will
still paint as if tiled.

When we unify the paint systems, the texture sampling functions will
need to be changed. Sculpt uses a slightly different system that passes
both screen and 3d coordinates to the sampling function. This commit
however is not too disrupting for that however so it can go in now.

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