Commit Graph

1297 Commits

Author SHA1 Message Date
Campbell Barton
0c7a25cd0e patch [#28993] wm_window_match_do(): Fix crash on null pointer dereference
from Ola Jeppsson (olajep)

also some cleanup edits
2011-11-15 16:38:48 +00:00
Campbell Barton
8623935aa8 pass a pointer to IDP_New's IDPropertyTemplate rather then a copy. 2011-11-15 09:22:52 +00:00
Campbell Barton
9e6860d864 fix [#29242] menus have no keyboard shortcuts 2011-11-14 14:42:47 +00:00
Campbell Barton
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
Campbell Barton
1d225c6696 use macro for access to library filepath 2011-11-07 15:55:03 +00:00
Sergey Sharybin
27d42c63d9 Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.
2011-11-07 12:55:18 +00:00
Campbell Barton
bb8fe0bf4a minor edits
- remove unneeded type check from convert grease pencil operator.
- correct some error prints & use __func__.
- make copy_libblock take an ID* argument rather than void*.
2011-11-07 04:36:37 +00:00
Brecht Van Lommel
21d188a70f Depsgraph: add "Dependency Relations" operator to print the dependency graph to
the console, useful for debugging and understanding the relations.
2011-11-04 13:17:35 +00:00
Campbell Barton
2d787e6e01 utility function to find the biggest area: BKE_screen_find_big_area(...), was being done with static functions that were copied about. 2011-11-04 01:15:04 +00:00
Campbell Barton
e2393d1109 ability to have permanent callbacks that stay active when new blend files are loaded.
this works by tagging functions, eg:

  def my_func(scene):
      pass

  bpy.app.handlers.permanent_tag(my_func, True)  # <-- important bit
  bpy.app.handlers.frame_change_pre.append(my_func)
2011-11-03 06:53:52 +00:00
Campbell Barton
1f291a69c1 correct spelling mistakes 2011-11-03 03:00:45 +00:00
Brecht Van Lommel
723e129252 Depsgraph/Python: callbacks and properties to detect datablock changes
* Adds two new python handlers: scene_update_pre() and scene_update_post()
  These run before and after Blender does a scene update on making modifications
  to the scene.
* Datablocks now have an is_updated property. This will be set to true in the
  above callbacks if the datablock was tagged to be updated. This works for the
  most common datablocks used for rendering: object, material, world, lamsp,
  texture, mesh, curve.
* Datablock collections also have an is_updated property. If this is set, it
  means one datablock of this type was added, removed or modified. It's also
  useful as a quick check to avoid looping over all datablocks.
* RenderEngine.view_update() can also check these properties, for interactive
  viewport rendering.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI
2011-11-02 20:56:52 +00:00
Brecht Van Lommel
97a0ae3e1b RenderEngine api: support for viewport rendering, details here:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI

* This adds a Rendered draw type in the 3D view, only available when
  the render engine implements the view_draw callback.
* 3D view now stores a pointer to a RenderEngine.

* view_draw() callback will do OpenGL drawing instead of the viewport.
* view_update() callback is called after depsgraph updates.
2011-11-02 18:20:53 +00:00
Campbell Barton
dc1b3d88b8 fix [#29098] File save dialog cannot handle extra periods in file name 2011-10-31 00:23:42 +00:00
Campbell Barton
4b635d1631 use generic path remapping when making all library data local, previously only image paths were getting corrected, now all paths will (scene image seq strips, pointcache etc) 2011-10-28 04:44:59 +00:00
Campbell Barton
6aaccb69cc utf8 buffer wasn't being initialized in ghost_event_proc 2011-10-27 06:05:55 +00:00
Campbell Barton
fa6e6e7fc0 pass image description to image loading functions for more useful error than 'Unknown fileformat'. 2011-10-27 04:24:34 +00:00
Campbell Barton
92fe279fe6 quiet -Wempty-body and unused warnings 2011-10-26 21:30:08 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Campbell Barton
67e744ccf0 fix some typo's 2011-10-23 15:27:36 +00:00
Campbell Barton
e89107927b - fix for error with utf8 textinput for buttons
- ensure input is valid utf8 from ghost and NULL then complain if its not.
- added function to get utf8 size BLI_str_utf8_size()
2011-10-23 13:52:51 +00:00
Campbell Barton
8e2bc6cdbc Context menu 'Edit Source' operator no longer needs to be enabled as a build option, improved this so the python file:line lookups are only done when the operator runs (previously this was done for every button, every draw when the build option was enabled).
Perhaps this should be hidden when not running with --debug, easy to change.
2011-10-23 04:13:56 +00:00
Campbell Barton
29417887d7 fix for own mistake r41192 2011-10-23 01:06:38 +00:00
Brecht Van Lommel
1bdf652b89 Code refactoring: move external engine functions into own file. 2011-10-22 16:24:28 +00:00
Brecht Van Lommel
e417e011d5 Code cleanup: file operations merged into single header, some function names
made less cryptic and changed to indicate if they work on files or directories.
2011-10-22 15:35:49 +00:00
Campbell Barton
c1de5cc838 - use defines for wmKeyMapItem & wmEvent alt/shift/ctrl/oskey
- clear utf8_buf on key up & complain if its set (should never happen)
2011-10-22 11:34:01 +00:00
Alexander Kuznetsov
8f4a015684 Fix for alt-tab in Windows.
utf8_buf can be not null terminated, plus not init as in this case. (I need to investigate more)
2011-10-22 04:36:58 +00:00
Campbell Barton
74017cb020 header cleanup and typo's 2011-10-22 01:53:35 +00:00
Brecht Van Lommel
00735ed9e4 Code cleanup: don't use btempdir/bprogdir/bprogname globals anymore, but wrap
in BLI_ functions.
2011-10-21 17:37:38 +00:00
Campbell Barton
04db8ad282 misc cleanup
- remove redundant casts
- replace strcmp's with "" to just check first char.
- added WM_event_print(), debug mode only to print events since the structs values are not that meaningful.
- added warnings if locale/font dirs cant be found.
2011-10-21 08:16:15 +00:00
Bastien Montagne
874c96a2b9 Cleaning i18n code.
Previous state:
Right now, there are "memories" of the "old" (less than a month!) translation way:
* A few remaining calls to BLF_gettext() (only UI_translate_do_iface and UI_translate_do_tooltip should be used).
* The _() macro still also calls BLF_gettext()!

New state:
Here are the changes made by the patch:
* Removing the no more needed _() macro.
* Removing most N_() and _() calls, only keeping the few needed ones (i.e. strings that are in no other way findable by xgettext and/or update_msg script).
* Defining in UI_interface.h IFACE_() and TIP_() macros (resp. for UI_translate_do_iface and UI_translate_do_tooltip).
* Replacing all calls to BLF_gettext by relevant IFACE_ or TIP_ one.
* Replacing all calls to UI_translate_do_iface by IFACE_.
* Replacing all calls to UI_translate_do_tooltip by TIP_.

All this somewhat clarifies and simplifies the code.
On the bf-translations scripts side, this only implies adding IFACE_ and TIP_ as detection markers for xgettext.
It also allows to reduce POTFILES.in quite notably (only 20 files remaining in it).

Please also have a look at those pages:
* Coder POV: http://wiki.blender.org/index.php/Dev:2.5/Source/Interface/Internationalization
* Translator POV: http://wiki.blender.org/index.php/Dev:2.5/Doc/How_to/Translate_Blender
2011-10-20 20:38:26 +00:00
Campbell Barton
2f92b5bc3f fixes for unicode input, should work for operator textinput now. 2011-10-20 11:18:57 +00:00
Campbell Barton
8d6a554d75 - add BLI_string_utf8.h for unicode functions.
- move font.c unicode functions into string_utf8.c and rename to fit with other BLI_string funcs.
2011-10-20 09:47:05 +00:00
Campbell Barton
9bbec84e7e initial support for unicode keyboard input for ghost & blenders WM.
- currently X11 only, depends on Xinput (but should not break other os's).
- ghost stores utf8 buffer, copies to wmEvent's
- UI text input is currently the only area that uses this - not console or text editor.
- no rna access yet.
2011-10-20 05:30:26 +00:00
Campbell Barton
445279524a debug build option WITH_PYTHON_UI_INFO, so you can right click and edit the python source for UI layout directly. 2011-10-20 00:48:00 +00:00
Campbell Barton
61389bba41 fix spelling mistakes in comments (and in some python error messages), nothing to effect translations. 2011-10-17 06:39:13 +00:00
Andrew Wiggin
309721c2e4 Other part of the MSVC build fix (need definition for "finite" macro from BLI_math.h) 2011-10-14 08:06:59 +00:00
Andrew Wiggin
eaff9a1c1b Reverting my windows build fix because it breaks the bug fix committed in r40995 2011-10-14 07:41:45 +00:00
Andrew Wiggin
13490b1ac3 Fix MSVC build ( .0f/.0f fires a compiler error ) 2011-10-14 05:07:53 +00:00
Joerg Mueller
9e17ecf010 Fixing [#28907] Frozen playback.
Also fixing two more crashes when audio files don't exist/cannot be read and apply a changed file path of a sound, reported by Jens Verwiebe in IRC.
2011-10-13 22:19:29 +00:00
Campbell Barton
15bf56c696 changes to relative path option
- initialize the relative_path option in ED_fileselect_get_params(), saves initializing within every operators own init functions, some even trying to initialize a non existing property.
- don't set the operator default from the user preferece, operator property defaults should be static else python scripts for eg can get different defaults depending on user settings, this also wont get updated when user-defaults are edited so generally confusing & not good practice.
2011-10-12 00:15:19 +00:00
Bastien Montagne
1c0ff6109d Now append/link will start at current blend file directory, if available (lastest used lib keeps priority). 2011-10-10 08:25:28 +00:00
Campbell Barton
b001eeb10d Change struct alignment for structs which are intended to be aligned but aren't.
remove uiIconImage too since its unused.
2011-10-03 01:36:25 +00:00
Campbell Barton
4a0c3e2a12 fix [#28784] CRASHER on load with load_post handler
also fix pacman package build spec.
2011-10-02 21:21:14 +00:00
Sergey Sharybin
ca5871c26f reverting part of rev40594.
Pardoon, looks like i've forgot to revert current work before
commiting actual patch i wanted to send to the svn.
2011-10-01 13:46:20 +00:00
Thomas Dinges
fdcfb9a4a0 * Updating readme.html and link to release logs for 2.60, now that we approach the RC state. 2011-10-01 11:21:47 +00:00
Campbell Barton
265c113820 fix for crash generating messages.txt, I wasn't getting this crash because I had 'WITH_PYTHON_SAFETY' enabled which was using different iterators (which dont crash), now there on by default.
made headless and no-python configurations work again and added --factory-startup to doc building command.
2011-09-30 07:47:45 +00:00
Brecht Van Lommel
e276855e60 Fix #28769 & #28768: problem with duplicated keymap items after fix yesterday. 2011-09-29 13:52:58 +00:00
Brecht Van Lommel
e54bfda0f3 Fix autosave trying to write to / if no userpref temp directory was set,
like other code in blender it should write to the one actually verified
to exist.

Also fixes wrong temp directory when loading user preferences with no
temp directory from a state where one was specified.
2011-09-28 19:11:59 +00:00
Brecht Van Lommel
a52ac47305 Fix #28726: maya key configuration lost after file > new. 2011-09-28 19:05:47 +00:00