Commit Graph

3351 Commits

Author SHA1 Message Date
aaae90af33 fix [#28751] Item in Enum propertie is grayed out
was infact a very old bug where an empty title took the following word for the title, eg: "%t|First Item|Second Item"
the first item would be evaluated as a title.
2011-09-27 16:23:40 +00:00
768806adc0 bpy.app.handlers.frame_change_pre/post handlers. 2011-09-27 10:43:45 +00:00
928e2784c6 py api
- use Py_ssize_t when dealing with python sequence sizes
- dont call PySequence_Size(py_b) in a loop (its slow).
- use faster sequence/float parsing in aud.Factory.filter
2011-09-27 05:28:06 +00:00
d98bcb8a77 fix for py/rna api bug:
PyC_UnicodeAsByte(), used for getting python strings as bytes wasnt clearning utf-8 conversion errors.
  this would raise an error when getting an operators filepath.
2011-09-27 04:07:48 +00:00
58587a3881 replace strncpy with BLI_strncpy, in some cases strncpy was being misused since it doesnt ensure \0 termination.
also dont call CTX_data_scene() twice when checking for function arguments.
2011-09-26 18:51:10 +00:00
573ed73be8 change define INTERNATIONAL --> WITH_INTERNATIONAL
also rename backface_culling --> use_backface_culling (which is used elsewhere in rna)
2011-09-26 10:35:47 +00:00
0bc5fef976 correct fix for armature selection, also remove international define from generic python C funcs. 2011-09-22 02:33:58 +00:00
ad1d1bd818 Added misses INTERNATIONAL definition in scons rules. 2011-09-21 18:05:01 +00:00
280684c35d remove blf.gettext, add blf.unload(font) 2011-09-21 16:06:47 +00:00
943a026c60 py/rna string subtypes for strings which should be automatically translated:
layout.prop("blah", text="Translate Me!")
2011-09-21 13:53:35 +00:00
8cf8fd7326 - translation scripts now run with py3.x
- added convenience make target 'make translations'
- some MEM_malloc strings were not unique enough, expanded them.
2011-09-20 17:07:33 +00:00
73bb1be1b7 SVN maintenance. 2011-09-20 15:30:18 +00:00
da88486c0b 2011-09-20 15:17:24 +00:00
f5bb22d088 have blf.gettext even when internationalization is disabled (just passes through). 2011-09-20 15:11:17 +00:00
f0aac81466 Improved Internationalization and Localization
==============================================

Commiting GSoC project by Xiangquan Xiao trunk.

Applied as separated patch, because svn merge produces to much false
conflicts and worked really slow.

Details for usage would be published on code.blender.org soon.

Thanks to Xiao for implementation of project, Campbell to code review,
Dalai and Gez for pointing to nice font and everybody else who took
part in improving i18n support.
2011-09-20 13:41:43 +00:00
1657cbe61a fix [#28672] Blender segfault after exiting a game that was opened with
autoplay on (Blender, not blenderplayer)

blender now stops the sound system and free's its self on Pythons
sys.exit().
2011-09-20 12:22:19 +00:00
bba54a051a i18n: fake_gettext is no longer needed for python 2011-09-20 08:38:16 +00:00
6d125e159d i18n: code clean-up
- Move all translation-related declarations to BLF_translation.h
- Reverted some changes to match trunk svn rev40365
2011-09-20 07:39:25 +00:00
0e421f429a modify the python gettext function to pass through the original string when no translation is done, this means the cached info such as byte representation and hash will be kept. 2011-09-20 02:25:57 +00:00
8dbc7a3ba3 Merging r40345 through r40365 from trunk into soc-2011-garlic 2011-09-19 15:47:05 +00:00
05683f8e52 edits to argument parsing for Euler.rotate_axis, also corrected some exception messages and minor style edits. 2011-09-19 15:13:16 +00:00
706a2c80f0 i18n: code cleanup and fixing unneeded translation (when partial translation is used only) 2011-09-19 15:10:38 +00:00
0f5d3a3ddb add back mathutils Matrix() * Vector(), this is row_vector multiplication.
some minor changes to exception messages.
2011-09-19 14:29:21 +00:00
9d3b1f708f Move function out of mathutils to: BLI_math_rotation --- single_axis_angle_to_mat3(mat3, axis, angle), copied out from mathutils, axis arg is a char 'X/Y/Z' rather then a vector like axis_angle_to_mat3(). 2011-09-19 13:08:01 +00:00
9478167493 remove Buffer.list, deprecated before 2.59 release. 2011-09-19 11:55:45 +00:00
1c0bdad835 svn merge -r40222:40344 ^/trunk/blender 2011-09-19 10:48:15 +00:00
2222f536f8 use replace 0 with NULL for pointers, set some functions static
also fixed own errors in recent static check commit.
2011-09-16 08:20:21 +00:00
0eda51f2ea Fixing issues with i18n stuff:
- Make gettext stuff draw-time. so switching between languages
  can happens without restart now.
- Added option to translate visible interface (menus, buttons, labels)
  and tooltips. Now it's possible to have english UI and localized tooltips.
- Clean-up sources, do not use gettext stuff for things which can be
  collected with RNA.
- Fix issues with windows 64bit and ru_RU locale on my desktop
  (it was codepage issue).
- Added operator "Get Messages" which generates new text block with
  with all strings collected from RNA.
- Changed script for updating blender.pot so now it appends
  messages collected from rna to automatically gathered messages.
  To update .pot you have to re-generate messages.txt using "Get Messages"
  operator and then run update_pot script.
- Clean up old translation stuff which wasn't used and most probably
  wouldn't be used.
- Return back "International Fonts" option, so if it's disabled, no
  gettext lookups happens on draw.
- Merged read_homefile function back. No need in splitting it.

TODO:
- Custom fonts and font size.
  Current font isn't nice at least for russian locale, it's
  difficult to read it.
- Put references to messages.txt so gettext can merge translation when
  name/description of some property changes.
2011-09-15 13:20:18 +00:00
30293dc2ca svn merge -r39834:40222 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-15 13:02:37 +00:00
264c63ef03 New C/Py api utility function PyC_Err_Format_Prefix() which raises an error with the existing error as a suffix.
Use this to raise errors when assigning a string property fails even though the value to assign *is* a string.


Before:
  TypeError: bpy_struct: item.attr= val: Object.name expected a string type, not str


After:
  TypeError: bpy_struct: item.attr= val: Object.name error assigning string, UnicodeEncodeError('utf-8' codec can't encode character '\udce9' in position 23: surrogates not allowed)
2011-09-15 10:43:55 +00:00
0128218254 recast and detour patch now builds again with GCC
- rearrange structs to work for 64bit
- define all vars before goto's
- ifdefs for qsort_r/qsort_s
- dont cast pointers to int only for NULL checks
- dont printf STR_String directly, get the char pointer from it

also minor change to gpu py module, no need to pass empty tuple to PyObject_CallObject, can just be NULL
2011-09-10 03:07:26 +00:00
5fc9baa962 warning fixes 2011-09-09 13:46:47 +00:00
01744abd81 GPU: add gpu python module with export_shader() function to export GLSL shader.
shader = gpu.export_shader(scene,material) 

Returns the GLSL shader that blender generates to produce the visual effect
of material in scene for the purpose of reusing the shader in an external engine.
This function is meant to be used in a material exporter so that the GLSL
shader can be exported entirely. The return value is a dictionary containing the
shader source code and all associated data. 

The full documentation is under sphinx.

Warning: there has been an API between the patch and this commit:
uniform['lamp'] and uniform['image'] now return python reference to 
ID block instead of ID name as before. The X3D exporter that uses this
function must be adapted.
2011-09-09 11:55:38 +00:00
a59ba9a519 - turn RNA_warning into a macro which includes the function name (was being written in manually but had incorrect func names in places).
- add __func__ define to BLI_utildefines.h for MSVC.
2011-09-09 01:29:53 +00:00
5a900be4d6 attempt to have a threadsafe version of PyC_ExceptionBuffer didnt work with UI script errors, reverting r39886. 2011-09-08 02:14:24 +00:00
9161d3ce4b use Py_ssize_t rather than int when dealing with list sizes (original patch from Fedora but applied changes elsewhere too), also replace PyList_Size with PyList_GET_SIZE where typechecking is already done. 2011-09-06 23:46:20 +00:00
3b09c331fa Adding noise module by default in driver_namespace
http://www.pasteall.org/blend/8677
2011-09-05 05:42:49 +00:00
8cc307b4f2 PyC_ExceptionBuffer is now threadsafe, used for converting exceptions into reports. 2011-09-03 06:46:31 +00:00
0cd5dce245 whitespace edits 2011-09-03 02:15:49 +00:00
Xiao Xiangquan
981f7fcd0d merge with trunk r39834 2011-09-01 15:08:32 +00:00
a8e49cd55a use a fixed 32byte buffer for getting an rna string from python. gives a slight speedup when drawing heavy UI's 2011-09-01 09:47:21 +00:00
00143a3d55 spaces -> tabs (configure you're editors right!) 2011-09-01 01:48:50 +00:00
fde215025e patch [#28218] During-render callback functionality
from Jesse Kaukonen (gekko) 

--- text from the patch.

Recently Campbell Barton added callback functionality for Python's usage, but this only includes pre- and post-render callbacks. There are no callbacks for the duration of the render. This patch adds the few lines required for executing a callback while Blender Render is working. The callback resides in the rendering pipeline stats function, so whenever statistics are printed, the callback is executed. This functionality is required if one wants to:

1) Observe what is happening while Blender is rendering via the command line
2) Add custom statistics that Blender prints while the renderer works
3) The user wants to continue executing his Python script without the code halting at bpy.ops.render.render()

Personally I'm currently using this for printing out more detailed progress reports at Renderfarm.fi (such as CPU time, time spent rendering, total progress in regards to the entire rendering process). Tested on Windows, Linux and OS X.

Example on how to use the callback:

  def statscall(context): print("Thanks for calling!")
  bpy.app.handlers.render_stats.append(statscall)
  bpy.ops.render.render(animation=False, write_still=True)
2011-08-31 10:43:22 +00:00
Xiao Xiangquan
5b91a783cf fix for windows locale setting 2011-08-31 07:31:02 +00:00
471c005137 typo fix: end of lines ;; --> ; 2011-08-31 01:07:55 +00:00
b3704f45c4 Fixes for snprintf usage:
* replace by BLI_snprintf in various places, note _snprintf on windows
  does not properly null terminate the string.
* fix overflow in sequencer proxy code due to buffer being smaller than
  specified size.
* fix some usage of snprintf as strcpy, this is will go wrong if the
  string contains % characters.
* remove BLI_dynstr_printf function in gpu module, use BLI_dynstr_appendf
2011-08-30 10:07:50 +00:00
fa2ba5fbf5 - use static vars and functions where possible.
- use NULL rather than 0 when used as pointers.
2011-08-28 05:06:30 +00:00
a9dea3afe9 correct missing bpy doc references. 2011-08-26 18:48:48 +00:00
8a619a3eee fix for crash when running a python script in a non utf8 blend path, inspecting the exception for the path assumed utf8. 2011-08-26 17:55:03 +00:00
566da26173 file-selector: when converting operator arguments to the file selector, wasnt making paths absolute (abs paths are made relative when converting the other way). 2011-08-26 01:32:07 +00:00