* Remove some non used *_button_register functions, panels are done in python.
* Remove do_node_region_buttons, was not used anymore.
Fix:
* Only show Grease Pencil panel in the Node editor, when there is a valid nodetree.
Currently copies behavior of clip and image editors:
- On file load, all strip will reference clip they're using
- On adding new strip, clip would be referenced only if it've got zero user
- On removing strip clip wouldn't be de-referenced to prevent clip editors
pointing to zero-counted datablocks.
Not actually ideal from human beings point of view, but referencing/dereferencing
clip on each strip add/delete is getting crappy because of current logic of how
clip datablocks are referenced from clip editor (which is designed to work fine with
loading files without loading UI).
After discussion with Campbell we found much nicer solution which
keeps operation with data much more clear:
- Refresh Sequencer is totally harmless, do not touch actual data
and just removes everything from cache
- Reload Strip will reload data and adjust it's length for all
selected strips without affecting on length of strip itself
- Reload Strip and Adjust length will do the same but will also
adjust length of strip itself.
(also fixes special request from Ian for Mango)
Added operator to update actual content length of all selected strips.
Can be useful for scenes and movies as well after doing making changes to
scene/movie.
Can be improved further to deal better with cases when strip has got effect
and it's get reshuffled because of overlapping after changing it's length.
This adds movieclip input support to the sequencer, thereby making
undistorted and stabilized footage available without a seperate render step.
Also: removes some old cruft code from the sequencer:
* new_tstripdata wasn't used anymore
* StripElems were allocated for SCENE strips on full length, wasting memory
Added a comment, that hopefully makes things a little bit clearer:
StripElems are *only* usefull for MOVIE + IMAGE strips for all other strip
types one can set this pointer to NULL. (If that should cause otherwise
problems, then the code that doesn't check for NULL is to blame!)
Applied the keymaps hack which is used for other animation editors to allow
markers to be added and renamed anywhere from within the sequencer strips
region, instead of just when the cursor is over the scrollbar.
Other operations where the hotkeys conflict though (delete, move) can still be
done only from the scrollbar, or better still, from the Timeline.
- spelling - turns out we had tessellation spelt wrong all over.
- use \directive for doxy (not @directive)
- remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
added some missing functions too - which are not used yep but should be there for api completeness.
* CDDM_set_mloop
* CDDM_set_mpoly
* BLI_mempool_count
Split proxy build operator into three parts:
- Prepare context (IMB_anim_index_rebuild_context) which prepares all
needed data and stores it in an anonymous structure used by specific
builder lately.
- Build proxies/timecodes into temporary files (IMB_anim_index_rebuild)
This function will build all selected proxies/timecodes into a temporary
files so old proxies will be still available during building.
- Finish building proxies (IMB_anim_index_rebuild_finish) which copies
temporary files over old proxies filed and releases all resources used
by a context.
Context creation and finishing building happens in a main thread so
it's easy and safe to close all opened handles of proxies files and
refresh cache after rebuilding is finished.
This should finally fix#30315: Temporary proxy files are not erased and old proxys are not updated if the proxy is built more then once (windows)
Problem was in how file selector is called by the effect_strip_add operator invoke. WM_operator_filesel() is not suited, as it directly calls exec if filepath is already set, and sequencer_generic_invoke_xy__internal() will set that path unless otherwise told. So using rather the same way to do as the one used by the other "strip_add" operators...
Crash was caused by attempting to create strip text from a missed sound datablock.
Actual error happened when this sound datablock was missed, but crash isn't nice
anyway and there were no way to repair scene.
Added option display_type to WM_operator_properties_filesel which defines which file
display type (short/list/icons/default) should be used for file browser.
All current operators are using FILE_DEFAULTDISPLAY display type which means display
type will still be calculated based on type of opening file and user preferences
settings. Recover Auto Save operator is now using long display type so file date can
easily be checked now.
Reviewed by Andrea, thanks!