Commit Graph

801 Commits

Author SHA1 Message Date
8f825bd460 Fix #21062 and #22175: crash with node previews being calculated while
editing nodes. Now preview jobs are killed before making any node edits.
2010-07-04 19:58:52 +00:00
ca81aa704e Patch [#22339] File/installation paths changes
Patch Tracker: http://projects.blender.org/tracker/?func=detail&aid=22339&group_id=9&atid=127

This patch implements the proposal outlined here:
http://wiki.blender.org/index.php/Dev:2.5/Source/Installation/Proposal

Original patch by Matt Ebb.
Contributions by Nathan Letwory, Damien Plisson and Andrea Weikert

NOTE:
This is a work in progress commit, some work still needs to be done on the SCons and CMake files for this to work properly, but at least should compile and the files should be created in the right directory.

Commit discussed on IRC with Ton and Campbell.
2010-07-04 15:35:23 +00:00
90162cb0cb Fix #21894: backface selection wasn't working correct with < 24 bits colors,
e.g. thousands of colors on OS X, due to use of uninitialized value. Problem
tracked down and patch provided by Shane Ambler, thanks!
2010-07-04 12:24:19 +00:00
80f6102629 better reporting for file i/o failier, use system error message in more places: Permission Denied, No space left, File not found etc.
- blend load/save uses os message.
- image load gives os message. (remove check for slash at end of line, just let the os report an error)
- python api load image/font/text raise errors with message (was just retuning None for image and font)
- minor edits to py api errors.
2010-07-03 17:47:06 +00:00
0b939f9ea7 WM_operator_props_popup was calling ED_undo_push_op() which is also called by wm_operator_finished.
This made new image operator and seperate image sequence call ED_undo_push_op() twice.
Tested with move to layer and python select pattern operators and it works ok.

including backtraces for the double calls just incase.

# first
#2  0x00000000009ff4c4 in ED_undo_push_op (C=0x20e1098, op=0x3ea13a8) at /media/data/blender_ideasman42/blender_trunk/source/blender/editors/util/undo.c:187
#3  0x00000000008b5fa1 in WM_operator_props_popup (C=0x20e1098, op=0x3ea13a8, event=0x3ea0d28) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_operators.c:1032
#4  0x00000000008be6be in wm_operator_invoke (C=0x20e1098, ot=0x2408bd8, event=0x3ea0d28, properties=0x3e943d8, reports=0x0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:613
#5  0x00000000008bfa44 in wm_handler_operator_call (C=0x20e1098, handlers=0x25509a0, handler=0x25cb658, event=0x3ea0d28, properties=0x3e943d8) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:1158

# second
#2  0x00000000009ff4c4 in ED_undo_push_op (C=0x20e1098, op=0x3ea13a8) at /media/data/blender_ideasman42/blender_trunk/source/blender/editors/util/undo.c:187
#3  0x00000000008bde8e in wm_operator_finished (C=0x20e1098, op=0x3ea13a8, repeat=0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:439
#4  0x00000000008be82a in wm_operator_invoke (C=0x20e1098, ot=0x2408bd8, event=0x3ea0d28, properties=0x3e943d8, reports=0x0) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:640
#5  0x00000000008bfa44 in wm_handler_operator_call (C=0x20e1098, handlers=0x25509a0, handler=0x25cb658, event=0x3ea0d28, properties=0x3e943d8) at /media/data/blender_ideasman42/blender_trunk/source/blender/windowmanager/intern/wm_event_system.c:1158
2010-07-03 12:55:03 +00:00
15be7b215f - changes to the sequencer so new strips use the data name.
- removed the name option for the sequence operators.
2010-07-02 20:09:42 +00:00
643ec7a12f Fix #22690: gestures were not working correct after inbetween mousemove
changes, also forgot to update armature sketching operator.
2010-07-02 11:26:12 +00:00
51fd10a1b5 adding image strips wasnt working, use the 'directory' component of the file selector rather then the full 'filepath' to fix this.
added flags for filename/filepath/directory args to WM_operator_properties_filesel().
2010-07-01 19:28:45 +00:00
a52632182c [#22682] some missing keymaps
Added proportional influence up/down to transform modal keymap.

Also fixed a crash in restoring to previous key map item after edits.
2010-06-27 23:57:58 +00:00
ebde8a7ccc new notifier for FRAME_RANGE, use to recalculate the timeline scrollbar range. 2010-06-26 19:17:48 +00:00
aba62b1797 fix for crash running the file load operator in background mode:
bpy.ops.wm.open_mainfile(filepath="some.blend")
2010-06-26 13:24:52 +00:00
892851f787 file operator cleanup
* the default properties of the file operator now only contain the "filepath", which means only the complete path to a file is returned.
* "filename" and "directory" has been added to the link/append operator - the only place it was used.
* sequence operators still work on the "files", which was custom property passed to the file operator anyway.
* have tested sequence loading, image loading and append/link - please report if there are any issues
2010-06-26 08:53:29 +00:00
f507428d11 Fix #22553: dragging number buttons would run update functions more often than
necessary due to the more accurate mouse move events that are useful for
sculpting and painting (at least on Linux/X11, not sure about other platforms).
If the update function takes a while to run, this in turn causes more mouse
move events to be accumulated, making things even slower, .. going into a spiral
of slower and slower redraws.

As a solution I've added a INBETWEEN_MOUSEMOVE event next to MOUSEMOVE. A
MOUSEMOVE event is automatically changed to INBETWEEN_MOUSEMOVE when a
MOUSEMOVE event is added after it. This new event type is only handled by
painting/sculpting operators, everything else can happily ignore it.
2010-06-23 18:47:56 +00:00
4596588fe8 - avoid divide by zero with node progress
- write_crash_blend() was writing to the original path.
2010-06-23 15:07:20 +00:00
16b15961a8 Fix #21470: changing brush settings redraws the 3d view unecessarily,
added ED_region_tag_redraw_overlay to only redo overlay drawing, which
in case of triple buffer is much faster.
2010-06-23 09:58:32 +00:00
eeed68a20f utility function to save blend's from a crash (from gdb run this)
p write_crash_blend()

Which will save the current blend name with _crash prefix.
2010-06-22 08:38:12 +00:00
1d6c2f214b Timeline addition: Display cached frames
This started off doing pointcache debugging but it's also very useful for users too.
Previously it was very hard to see the state of the system when you're working caches
such as physics point cache - is it baked? which frames are cached? is it out of date?

Now, for better feedback, cached frames are drawn for the active object at the bottom 
of the timeline - a semitransparent area shows the entire cache extents, and more 
solid blocks on top show the frames that are cached. Darker versions indicate it's 
using a disk cache.

It can be disabled in general in the timeline View -> Caches menu, or by each individual
system that can be shown.

There's still a bit to do on this, behaviour needs to be clarified still eg. deciding what
shows when it's out of date, or when it's been played back but not cached, etc. etc. 
Part of this is due to a lack of definition in the point cache system itself, so we should
try and clean up/clarify this behaviour and what it means to users, at the same time.

Also would be interested in extending this to other caches such as fluid cache, 
sequencer memory cache etc. in the future, too.
2010-06-22 02:29:52 +00:00
bfd0810beb Notifier cleanup - replaced ND_*_EDIT and ND_*_SELECT data notifiers
with the generic action equivalents (NA_EDITED and new NA_SELECTED)
2010-06-18 04:39:32 +00:00
08c4725a13 workaround for crash when notifiers cause a scene update at the same time rendering starts.
happens when changing frame and pressing render quickly on a slow scene.

for now ignore animation updates while rendering.
2010-06-14 15:02:16 +00:00
6a0365f59c - option for redraw timer to playback the animation
- py utility property group.users_dupli_group
2010-06-14 10:33:26 +00:00
c2f36a4d6a naming changes
path -> filepath (for rna and operators, as agreed on with elubie)
 path -> data_path (for windowmanager context functions, this was alredy used in many places)
2010-06-14 03:52:10 +00:00
6cc6f8495f - added a flag argument to WM_operator_properties_filesel() currently only used for relative path option.
- added relative option to saving external multires data
- renamed multires external functiosn to have save / pack as suffix.
- added TODO's for file select operators that should support relative paths but dont.

- also disable openmp on linux cross compile, mingw currently isnt linking -lgomp
2010-06-09 14:04:34 +00:00
180a9f1a81 fix for crash with the job system progress bar on load, matt you may want to check if this case should be happening at all. 2010-06-07 14:54:42 +00:00
d57ebc4ecc Fix [#22413] drag & drop images don't work untile you move the object 2010-06-07 07:47:27 +00:00
b4f12db4ec Don't report the python code for operators type which don't have the
'REGISTER' flag set.
2010-06-06 08:52:33 +00:00
4da179749e - [#22492] [29159] commit breaks importing of script file that has a reload to self in it
broke when including the blend path in the modules filename.       

- new function BLI_path_basename(), matches pythons os.path.basename().
  replace a number of cases where BLI_split_dirfile was being used to get the filename only.
2010-06-05 21:19:59 +00:00
21d112c36f Reworked the non-blocking reports display in the info header:
* Now it displays the last report from the global list, not just from operators
* Rather than disappearing when a new operator is run, it stays until it times 
out or a new report is added
* Fun animated transitions ;)
http://mke3.net/blender/devel/2.5/reports_header.mov

Now need to investigate report usage with popups. Ideally we can have most
 reports non-blocking, so they're less intrusive, only popping up for dire errors.
Problem is many things in Blender right now are marked as RPT_ERROR 
when probably RPT_WARNING is more appropriate. Should probably keep 
RPT_ERROR for things that demand immediate attention.
2010-06-03 07:27:55 +00:00
9cbbc9d3af rename some rna properties filename --> filepath
* filename == "foo.ext"
 * filepath == "/path/to/and/including/foo.ext"

this was alredy followed in some places not not everywhere.
2010-06-02 17:58:28 +00:00
3f326354b8 Progress indicator in the application icon
Displays a global progress indicator in the application icon reflecting the total progress of all running jobs.

Currently fully implemented on OSX (Cocoa).
On other OSes that do not allow to redraw the app icon, this can be implemented as a [x%] display in the app title, so to appear in the taskbar.

Thanks to Matt for the windowmanager wrapper.
2010-06-01 20:21:40 +00:00
16ca0163d8 passepartout overlay wasnt written into thumbnails 2010-06-01 13:06:13 +00:00
ccda04131a Python Open Link operator.
* Unified some code for Opening an URL to use only one operator: WM_OT_url_open
* Removed the HELP_OT_url operators.
2010-05-31 11:38:13 +00:00
177cffc171 blend file thumbnails
- fix for blend file thumbnails not being immediately visible in an external file manager (was writing the thumb before the blend)
- move overlay function from wm_files.c into thumbs_blend.c
2010-05-30 19:21:28 +00:00
84d3856498 thumbnail passepartout effect, distinguishes blend files from images. 2010-05-30 09:16:50 +00:00
Dalai Felinto
c6bec43330 reverting previous commit from Mitchell. His commit went to the trunk instead of the branch :)
svn merge -r 29067:29066 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2010-05-29 21:31:57 +00:00
9d3157eed0 Reversing the last merge because I botched it. 2010-05-29 21:22:24 +00:00
Dalai Felinto
8a59a45342 Esc as input for Key Buttons (e.g Logic Brick Keyboard Sensor)
After talking with Brecht he agreed on allowing Esc to be used as input for key input butons.
In order to let the user to cancel an input it can cancel it clicking outside the button.

Also replacing manual check by ui_mouse_inside_button in ui_text function
(patch reviewed (and helped) by Matt (but the change on ISHOTKEY, that's on my own risk ;))
2010-05-29 01:42:42 +00:00
40d7eac69e [#21842] Beta patch to restore cmake MinGW compilation
from Riakiotakis Antonis (psy-fi) 

with modifications.

notes:
- needed to remove quotes around filepaths for copying.
- WITH_JACK, doesnt link
- WITH_FFMPEG, doesnt build
- WITH_RAYOPTIMIZATION, gave an error for me. (no mmx support)
2010-05-28 21:25:23 +00:00
6e92ddf8b3 Progress indicators for threaded jobs
Now, rather than the bit-too-alarming stop sign, threaded wmJobs 
display a progress indicator in the header. This is an optional feature
for each job type and still uses the same hardcoded ui template
(could use further work here...).

Currently implemented for:
Render - parts completed, then nodes comped
Compositor - nodes comped
Fluid Sim - frames simulated
Texture Bake - faces baked

Example: http://mke3.net/blender/devel/2.5/progress.mov
2010-05-27 08:22:16 +00:00
37fab4a3e1 bugfix [#22426] New Thumbnail code crashes when saving
patch from Ken Nign (ken9). (modified slightly)
2010-05-26 10:52:39 +00:00
c61e25e6ac blend file thumbnailing
- uses same thumbnail system as image browser
- blend files show thumbnails in ubuntu/gnome (freedesktop spec)
- 128x128 images are embedded into the blend file header, a simple loader avoids reading the entire blend file to extract it when generating thumbnails in the file selector.
  When the image browser reads a directory it loads images and creates thumbnails, blend files embedded images are treated just like loading an image.
- the thumbnail is created from the camera view in solid mode. (no camera == no thumbnal).
- readfile/writefile.c: had to use the 'TEST' code name to save thumbnails, anything else would segfault older blender versions on load. (its not used elsewhere).
2010-05-24 21:52:18 +00:00
008863daec Merge image related changes from the render branch. This includes the image
tile cache code in imbuf, but it is not hooked up to the render engine.


Imbuf module: some small refactoring and removing a lot of unused or old code
(about 6.5k lines).

* Added a ImFileType struct with callbacks to make adding an file format type,
  or making changes to the API easier.
* Move imbuf init/exit code into IMB_init()/IMB_exit() functions.
* Increased mipmap levels from 10 to 20, you run into this limit already with
  a 2k image.
* Removed hamx, amiga, anim5 format support.
* Removed colormap saving, only simple colormap code now for reading tga.
* Removed gen_dynlibtiff.py, editing this is almost as much work as just
  editing the code directly.
* Functions removed that were only used for sequencer plugin API:
  IMB_anim_nextpic, IMB_clever_double, IMB_antialias, IMB_gamwarp,
  IMB_scalefieldImBuf, IMB_scalefastfieldImBuf, IMB_onethird, IMB_halflace,
  IMB_dit0, IMB_dit2, IMB_cspace
* Write metadata info into OpenEXR images. Can be viewed with the command
  line utility 'exrheader'

For the image tile cache code, see this page:
http://wiki.blender.org/index.php/Dev:2.5/Source/Imaging/ImageTileCache
2010-05-07 15:18:04 +00:00
fbb68188df Restrict keyboard sensor stored events to only what's appropriate per property
(normal key, modifier key, etc)
2010-05-07 08:10:20 +00:00
c9ca41c6f1 dont write blender recent file list or save quit.blend when running in background mode. 2010-05-06 18:25:56 +00:00
263cc93006 Make drop images work from external desktop into Blender image window.
Still has work todo, like detecting filetype on drop event itself. Ton will continue...
2010-05-06 17:45:02 +00:00
2016bb77b7 Part 1 of making external drop events work. Have to move work to another system,
that's why this first step. :)
2010-05-06 16:06:57 +00:00
12cf8ac1d6 - split objet group add/link into 2 operators
- link now brings up a search box so when there are 100's of groups its less annoying.
- utility functions for id-enums so only local objects can be displayed in a search list (used for group_link)
- renamed operator properties from typle to scene, group, action etc.
2010-05-05 15:41:38 +00:00
b18d377292 Updated icon set, thanks jendryzch! 2010-05-03 03:33:20 +00:00
5982662e23 add option -Y to enable python script execution. 2010-04-28 08:02:51 +00:00
b757e5c944 Fix #22086 and #22125: crashes due to editmode being set on load/undo, fixes
are simple enough, though may still revert this feature if it turns out there
are more problems.
2010-04-26 10:12:03 +00:00
3f12beb4d0 Fix #22123 and #22124: some problems with mutex locks, also tweak to
how removing opengl textures from outside main thread is done so it
happens as part of the main loop.
2010-04-25 10:49:13 +00:00