Commit Graph

308 Commits

Author SHA1 Message Date
3de1458cdf Select more/less tool for mask splines 2013-07-20 10:24:16 +00:00
23c053748d add missing notifiers for mask tools, some wouldn't refresh the compositor. 2013-06-23 15:48:00 +00:00
4863feb956 Changes to mask evaluation
- BKE_mask_update_scene was only used with do_newframe=FALSE,
  removed this argument.

- Made it so BKE_mask_update_scene is able to handle LIB_ID_RECALC_DATA
  case. Namely, if mask ID is tagged for data update it means shapekeys
  will be re-evaluated (as if do_newframe=true).

  If mask id only tagged for LIB_ID_RECALC, then no shapekey evaluation
  happens (same as it used to behave before).

  This means, doing DAG_id_tag_update(&mask->id, OB_RECALC_DATA) will
  lead to shapekeys re-evaluation which is really needed in such
  operators as clearing shapekeys (and cleaning shapekeys which is
  in tomato branch yet).

  This is a bit silly to use OB_RECALC_DATA sine mask is not an OB,
  but could not see better way to do it now.

This fixes missing mask re-evaluation after clearing shapekey,
would expect no other functional changes.
2013-06-10 13:07:02 +00:00
225c5fee6b move BLO_sys_types.h -> BLI_sys_types.h (it had nothing todo with loading)
remove MEM_sys_types.h which was a duplicate.
2013-05-28 19:35:26 +00:00
6de829cb7a code cleanup: split scons includes onto multiple lines, reduce chance of include conflicts later on. 2013-05-20 18:42:28 +00:00
8238cd6992 use unsigned int, for mask rasterizer. 2013-05-08 12:54:47 +00:00
5c4f96af2c code cleanup: use 'const float[2]' where possible. 2013-05-08 12:54:33 +00:00
ac224a64f4 Fix #34941: Space.draw_handler_add now supports PRE_VIEW and POST_VIEW callbacks
for more editors: timeline, graph, action, NLA, sequencer, image, clip.
2013-04-10 16:59:55 +00:00
e7c15beaf6 code cleanup: use booleans for mesh and selection code. 2013-03-19 23:17:44 +00:00
aaa8a13c49 code cleanup: use const events for modal and invoke operators. 2013-03-13 09:03:46 +00:00
fdfa5910b5 Fix #34040: Moving Normal Node with enabled Cycles Material Preview crashes
Issue was caused by couple of circumstances:

- Normal Map node requires tesselated faces to compute tangent space
- All temporary meshes needed for Cycles export were adding to G.main
- Undo pushes would temporary set meshes tessfaces to NULL
- Moving node will cause undo push and tree re-evaluate fr preview

All this leads to threading conflict between preview render and undo
system.

Solved it in  way that all temporary meshes are adding to that exact
Main which was passed to Cycles via BlendData. This required couple
of mechanic changes like adding extra parameter to *_add() functions
and adding some *_ex() functions to make it possible RNA adds objects
to Main passed to new() RNA function.

This was tricky to pass Main to RNA function and IMO that's not so
nice to pass main to function, so ended up with such decision:

- Object.to_mesh() will add temp mesh to G.main
- Added Main.meshes.new_from_object() which does the same as to_mesh,
  but adds temporary mesh to specified Main.

So now all temporary meshes needed for preview render would be added
to preview_main which does not conflict with undo pushes.

Viewport render shall not be an issue because object sync happens from
main thread in this case.

It could be some issues with final render, but that's not so much
likely to happen, so shall be fine.

Thanks to Brecht for review!
2013-02-05 12:46:15 +00:00
Dalai Felinto
236bc27484 Operators name "cleanup"
The operator names all show up in the Search button. As such is nicer if they
can all have the main words capitalized.

e.g. "Snap strips" should be "Snap Strips"
     "Copy to clipboard" should be "Copy to Clipboard"

This was done with a mix of bash tools, regex, and manual work because I'm too rushed into regex :)

+ fix bge stereo eye separation tooltip
2013-01-27 07:23:58 +00:00
d760a86927 code cleanup: minor changes, replace len_v3 with len_squared_v3 for comparison. 2013-01-21 18:45:31 +00:00
ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
9a469b62ca replace strcpy with BLI_strncpy or memcpy when the size is known. 2012-12-16 08:43:05 +00:00
da7ce6a3cc use UI_view2d_getscale() to get the scale for image cursor drawing and ED_mask_pixelspace_factor(). - was getting the image width/height when its not needed before. 2012-12-14 16:51:02 +00:00
4a9c522125 quiet float -> double conversion warnings and do some osl style edits. 2012-12-03 13:58:08 +00:00
582a9d1c45 Fix for [#33378] Grease pencil dopesheet fails on a few operations
Snapping operator in action editor for grease pencil and mask wasn't implemented. We could probably re-enabled/fix/cleanup more things in this area (e.g. use a custom poll func for operators not supporting gp/mask, instead of silently doing nothing), but this is for after 2.65 imho).
2012-12-03 13:07:43 +00:00
1bcaeb3154 Tsss tsss... Copy-pasting! :P 2012-12-03 09:36:22 +00:00
f213ae0b19 style cleanup 2012-11-01 09:54:00 +00:00
fec81d9b56 use min_ max_ functions in more places.
also fix minor error in MOD decimate when the modifier did nothing the reported face count would be wrong.
2012-10-23 16:21:55 +00:00
f70d2c65d8 rename api functions...
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-23 13:28:22 +00:00
82329ba1c3 Fix #32851: Mouse click coordinates when adding and selecting mask vertices on undistorted footage are off 2012-10-18 13:18:11 +00:00
b3c605e139 Mask editor: create new mask when trying to create new vertex without active mask set 2012-10-18 12:29:22 +00:00
27e54f4d37 code cleanup: remove redundant casts. quiet some qualifier warnings. 2012-10-14 07:40:16 +00:00
67e2768570 quiet some -Wshadow warnings 2012-10-12 14:35:10 +00:00
db70bfc206 code cleanup: use functions to initialize selection user data structs, use radius-squared for circle select comparisons.
edge_fully_inside_rect() & edge_inside_rect() args were shorts when all callers were passing ints.
2012-10-05 15:44:11 +00:00
dc8340fa33 correct some include dirs not being included as SYSTEM paths in cmake. 2012-10-02 03:18:48 +00:00
959dc02f96 fix for error in mask drawing, was using glVertex3fv on 2d verts. (buffer overrun) 2012-10-02 01:10:18 +00:00
589ada7f0c code cleanup: correct spelling 2012-09-28 06:45:20 +00:00
06baaeee22 Fix #32658: left mouse button selection did not work well in the graph and mask
editors. Ctrl+Click to add a point and vertex slide now work with right mouse
button in this case, consistent with the 3D view.
2012-09-27 15:30:20 +00:00
a4ff2b9140 code cleanup: warnings 2012-09-18 03:15:12 +00:00
232571c61a code cleanup: replace macro for BLI_rect size/center with inline functions. 2012-09-15 11:48:20 +00:00
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
05755d307a fix [#31946] Masking doesn't respect pixel ratio 2012-09-13 05:29:38 +00:00
c5310521f8 fix for drawing non 1:1 aspect masks, transform and selection still need support. 2012-09-13 02:28:48 +00:00
4cb6d5d214 code cleanup: reduce calls to CTX_ functions inline, add some docs to mask rasterizer. 2012-09-13 01:50:21 +00:00
c68890cb87 ensure there are always the same number of feather points and non feather points when drawing. 2012-08-26 20:22:42 +00:00
6b1582c012 better handle sizes by default for mask mode, now ignore image width/height 2012-08-25 14:18:54 +00:00
90a0cf41d0 use the zoom level to set the size for new mask point handle sizes (artist request - handles were annoyingly bug when zoomed in) 2012-08-24 14:00:39 +00:00
56b28635e7 code cleanup: rename BLI_in_rctf() --> BLI_rctf_isect_pt(), to conform with our naming convention. 2012-08-23 18:25:45 +00:00
869382403a mask: skip self intersection on drawing when fill is disabled, since it was only drawing on one side of an unfilled spline. 2012-08-21 09:20:35 +00:00
77f47799dd code cleanup: use BLI_RCT_SIZE macro 2012-08-20 23:06:17 +00:00
5e0f254afa utility functions for getting/setting rectangles for operators. 2012-08-08 20:38:55 +00:00
e9d73dbba5 use -FLT_MAX where FLT_MIN was misused 2012-08-07 19:49:38 +00:00
719aedaf60 mask - draw both sides of the curve when filled option is disabled. 2012-08-07 13:37:16 +00:00
5c7217da72 fix for crash when mask editing if there is an active point but no active spline. 2012-08-05 18:12:34 +00:00
2044b62370 resolve some issues with curve resolution calculaction
- resolution could become so high that it would wrap around  to a negative number, now check for small numbers before doing float division.
- resolution was being calculated in some cases when it already met the clamp value - now this is skipped.
2012-08-04 20:17:22 +00:00
dd6d788400 mask selection invert wasnt working. 2012-08-01 13:34:20 +00:00
26cc3dd708 misc mask fixes
- image space used wrong notifiers.
- image notifier now checks for mask mode before listening to mask edits.
- mask keyframes now draw in the image space.
2012-08-01 10:50:39 +00:00