Commit Graph

1907 Commits

Author SHA1 Message Date
Campbell Barton
113f2367a0 move polygon intersection out of BLI_lasso into BLI_math_geom since its a generally useful function.
adds:
- isect_point_poly_v2()
- isect_point_poly_v2_int()
2013-03-14 21:44:16 +00:00
Campbell Barton
a2a594fb36 BLI_linklist_free() was incorrectly taking MEM_freeN() as an argument, evidentially this works on x86 - but could cause issues later on.
add BLI_linklist_freeN() which MEM_freeN's each item.
2013-03-14 19:40:42 +00:00
Campbell Barton
0159647ada add BLI_strncpy_rlen(), a clone of BLI_strncpy() that returns the number of bytes copied.
also move doxy comments for BLI_string.h into the C file.
2013-03-14 10:07:05 +00:00
Campbell Barton
4dcd4e1a28 minor change to BLI_strncpy(). replace strlen() with BLI_strnlen(). 2013-03-14 09:49:20 +00:00
Campbell Barton
6a51379bf7 tweaks to clang so blender can build with -Werror 2013-03-14 07:25:54 +00:00
Brecht Van Lommel
dcbfa25bc8 Fix #34551: blender crash rendering with save buffers.
Problem was the new usage of access() on Windows, this doesn't accept X_OK. Also wrapped _waccess so that UTF-8 paths work.
2013-03-13 19:48:07 +00:00
Irie Shinsuke
5792e77239 Patch [#34373] Use i18n monospace font in Text editor and Python console
This patch allows Blender to display i18n monospace font in the text
editor and the Python interactive console. Wide characters that occupy
multiple columns such as CJK characters can be displayed correctly.
Furthermore, wrapping, selection, suggestion, cursor drawing, and
syntax highlighting should work.

Also fixes a bug [#34543]: In Text Editor false color in comment on cyrillic

To estimate how many columns each character occupies, this patch uses
wcwidth.c written by Markus Kuhn and distributed under MIT-style license:

  http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c

wcwidth.c is stored in extern/wcwidth and used as a static library.

This patch adds new API to blenfont, blenlib and blenkernel:

BLF_get_unifont_mono()
BLF_free_unifont_mono()
BLF_draw_mono()
BLI_wcwidth()
BLI_wcswidth()
BLI_str_utf8_char_width()
BLI_str_utf8_char_width_safe()
txt_utf8_offset_to_column()
txt_utf8_column_to_offset()
2013-03-12 07:25:53 +00:00
Campbell Barton
660be3da39 use gcc warning -Wredundant-decls, exposes some odd/duplicate declarations which have been removed. 2013-03-11 20:27:38 +00:00
Campbell Barton
f98fa5ec2d code cleanup: use '%.*d' with string formatting for variable length number. 2013-03-10 11:02:21 +00:00
Campbell Barton
bb6255b829 Improvements to addon-prefs key search suggested by Yang Niren.
- add accent_grave.
- strip the search string.
- add numpad numbers (currently these match regular numbers).

also remove unneeded forward declarations in path_util.c
2013-03-10 07:18:43 +00:00
Campbell Barton
2022567116 patch [#34103] path_util_split_name_num.patch
from Lawrence D'Oliveiro (ldo)

Simplify implementation of BLI_split_name_num

- With some changes of my own to avoid second call to strlen()
2013-03-10 05:11:18 +00:00
Campbell Barton
14bbde0441 patch [#34103] path_util_cleanup_path.patch
from Lawrence D'Oliveiro

Improve implementation of BLI_cleanup_path, including making it behave as documented.

"/../home/me" would become "home/me" rather then "/home/me"

Also remove redundant BLI_strncpy()
2013-03-10 04:43:15 +00:00
Campbell Barton
2433404e4b add inline function mul_project_m4_v3_zfac() to get the z-depth value from a vector & mat4x4 2013-03-09 15:39:24 +00:00
Campbell Barton
7961147a59 code cleanup: was using var named 'in' for output. 2013-03-09 11:55:12 +00:00
Campbell Barton
abd1748e48 code cleanup: move runtime var zfac out of RegionView3D. rename initgrabz() -> ED_view3d_calc_zfac() and have it return the zfac to use. 2013-03-09 11:40:42 +00:00
Campbell Barton
35b9fcb871 comment unused BLI_move() function, also fixed error where it would delete the file even if renaming failed.
- found when testing recursive_operation().
2013-03-09 09:52:38 +00:00
Campbell Barton
edf4855a38 patch [#34103] fileops_recursive_operation.patch
from Lawrence D'Oliveiro (ldo)

Fix potential memory leaks in recursive_operation while simplifying cleanup logic.
2013-03-09 09:38:27 +00:00
Campbell Barton
4b5c8da9ac remove unneeded string formatting for bli_adddirstrings(), noted by Lawrence D'Oliveiro. 2013-03-09 06:26:46 +00:00
Campbell Barton
221a383366 use 'bool' for BLI_/BKE_ functions. 2013-03-09 05:35:49 +00:00
Campbell Barton
ddddb7bab1 code cleanup: favor braces when blocks have mixed brace use. 2013-03-09 03:46:30 +00:00
Sergej Reich
8db7a34167 math: Use len_v3() instead of normalize_v3() for area calculation
We only need the length, avoids unnecessary calculations.
2013-03-07 19:16:02 +00:00
Antony Riakiotakis
53b7bc8f1f Change !BLI_ghashIterator_isDone to BLI_ghashIterator_notDone. It is
always used in that context so we can at least avoid reverting it twice
:p.
2013-03-06 20:55:04 +00:00
Campbell Barton
f2bb536994 code cleanup: also change BKE_blender.h BLENDER_VERSION_CHAR to 'a' so as not to confuse things. 2013-03-05 14:47:49 +00:00
Campbell Barton
dc4be68cb9 fix for building with msvc 2013-03-05 07:39:52 +00:00
Campbell Barton
02caa05764 code cleanup: remove unused argument from bli_builddir 2013-03-05 07:36:30 +00:00
Campbell Barton
47c47ef7a2 fix for building with mingw in since recent changes. 2013-03-05 07:02:59 +00:00
Campbell Barton
fcc807f294 code cleanup: remove unused member of direntry struct, also add include for building on osx. 2013-03-05 06:38:43 +00:00
Campbell Barton
384948908a patch [#34103] path_util_split_dirstring.patch, path_util_split_dirstring_2.patch, path_util_split_dirstring_3.patch
from Lawrence D'Oliveiro (ldo)

Get rid of BLI_splitdirstring, replace with calls to BLI_split_dirfile, BLI_split_dir_part and BLI_split_file_part as appropriate.
2013-03-05 06:26:10 +00:00
Campbell Barton
34233e7fd6 patch [#34103] path_util_cleanups.patch
from Lawrence D'Oliveiro (ldo)

- Better argument name for BLI_cleanup_path and BLI_cleanup_file
- remove redundant BLI_add_slash already done by BLI_cleanup_dir
2013-03-05 04:35:14 +00:00
Campbell Barton
65d6cecd68 patch [#34103] storage_bli_dir_contents.patch
from Lawrence D'Oliveiro (ldo) 

BLI_dir_contents no longer changes current working directory.
2013-03-05 04:24:53 +00:00
Campbell Barton
2fc10e3303 patch [#34103] storage_bli_file_size.patch
from Lawrence D'Oliveiro (ldo)

more efficient implementation of BLI_file_size that doesn't open the file.
2013-03-05 04:11:55 +00:00
Campbell Barton
b8315afeed patch [#34103] fileops_file_is_writable.patch, fileops_file_is_writable_2.patch
from Lawrence D'Oliveiro (ldo)

More efficient implementation of BLI_file_is_writable using access(2) instead of actually opening file.
2013-03-05 03:59:38 +00:00
Campbell Barton
e39f05e5fa patch [#34103] fileops_1.patch
from Lawrence D'Oliveiro (ldo) 

Add comments and use of bool type in fileops.c
2013-03-05 03:53:22 +00:00
Campbell Barton
1a9cde8b99 patch [#34103] dir_contents.patch
from Lawrence D'Oliveiro (ldo)

- storage.c: Simplify BLI_dir_contents and make it and its internal subsidiary routines reentrant
- Moved common code for disposal of a struct direntry to new routine BLI_free_filelist in storage.c, and put calls to it in interface_icons.c and filelist.c
- Took out inclusion of BLI_fileops_types.h from BLI_fileops.h and put it explicitly into .c files that need it (which turned out to be only 7 of the 35 files that were including the former)
2013-03-05 03:44:47 +00:00
Campbell Barton
f44b54d2a7 patch [#34103]
from Lawrence D'Oliveiro (ldo)

More use of bool type, necessitating adding inclusion of BLI_utildefines.h, or moving it up in the inclusion order if it was already included, in various places
- storage.c: make some variables only used in bli_builddir local to that
- storage.c: BLI_file_descriptor_size should allow 0 as a valid file descriptor
- path_util.c: make pointers to non-reentrant storage returned from folder routines const, necessitating making variables holding these returned pointers const elsewhere as well
- path_util.c: BLI_string_to_utf8 closes iconv context in case of conversion error
-  blf_lang.c: fill_locales routine now has its own "languages" local variable to construct paths (was stealing internal storage belonging to BLI_get_folder before)
2013-03-05 03:17:46 +00:00
Campbell Barton
0d5b028d43 patch [#34103] use boolean in path functions and add comments.
path_util_1.patch from Lawrence D'Oliveiro (ldo)
2013-03-04 19:27:51 +00:00
Campbell Barton
013a176c52 patch [#34103] use booleans for extensions testing.
bli_testextensie.patch - from Lawrence D'Oliveiro (ldo)
2013-03-04 18:36:37 +00:00
Campbell Barton
24da4a6032 fix [#34490] Copy and paste floating point number fields losses precision
- copy now gets up to 6 decimal places
- copy and UI float button editing now strip zeros: 1.000 -> 1.0
2013-03-04 04:21:51 +00:00
Campbell Barton
79e80d8322 code cleanup: ~400 duplicate lines for AO form factor math. 2013-03-03 05:07:58 +00:00
Brecht Van Lommel
4f3ca854e1 Fix various warnings with clang build, and adjust cmake clang warnings flags
to include a few more that gcc is using too.
2013-02-26 21:58:06 +00:00
Campbell Barton
4df5b943ed patch [#34103] - listbase.patch, insertlinkbefore.patch
from Lawrence D'Oliveiro (ldo) 


notes from tracker:
use bool for return type from BLI_remlink_safe, necessitating including BLI_utildefines.h in BLI_listbase.h
get rid of duplicate BLI_insertlink, use BLI_insertlinkafter instead.

A few places which were using BLI_insertlinkafter (actually BLI_insertlink), when it would be simpler to use BLI_insertlinkbefore instead.
2013-02-22 14:12:55 +00:00
Campbell Barton
091d86b9cb style cleanup: 'sizeof foo' --> 'sizeof(foo)', add check in style checking script. 2013-02-21 17:18:27 +00:00
Campbell Barton
25fe5c20aa code cleanup: rename ScanFillVert.h --> edge_tot, SF_VERT_UNKNOWN --> SF_VERT_AVAILABLE 2013-02-21 17:15:55 +00:00
Campbell Barton
91a63e347d set unicode conversion errors as UNLIKELY 2013-02-19 15:58:38 +00:00
Campbell Barton
cd3b98c4fa step over unicode characters with autocomplete (correctly this time). 2013-02-19 15:56:49 +00:00
Campbell Barton
f784856906 make asserts that check for unit length vectors into a macro.
this was really not nice logic to try to fit into an assert.
2013-02-19 13:15:34 +00:00
Campbell Barton
c68d5325d0 fix for [#34283] wasn't working in my tests (attached to original report),
made bone roll get compatible angle values with the original roll.
2013-02-19 04:37:28 +00:00
Campbell Barton
d45612aa41 fix [#34279] Python console: Selected region is not highlighted when using white background color 2013-02-18 02:36:36 +00:00
Ton Roosendaal
029686a2fd Bug fix #34281
The RNA path interpretor code was using a function to get the portion between quotes,
this function was not even checking if there *are* quotes at all! Causing bad
memory allocs or crashes.
2013-02-17 18:46:50 +00:00
Campbell Barton
34805a4752 BLI_mempool totalloc was being used un-initialized, normally this would cause bugs but turns out its not used,
ifdef'd it out but keep in the struct in BLI_mempool for now.
2013-02-17 05:16:48 +00:00