Commit Graph

364 Commits

Author SHA1 Message Date
d485a54b59 crash fix for Normalize All VGroups on a lattice without vgroups (probably other tools too - bug was in ED_vgroup_give_parray).
Also fix for crashes running operators in bg mode by using setting poll functions: WM_OT_search_menu, MESH_OT_extrude_repeat, SCREEN_OT_new
2011-03-22 10:13:42 +00:00
6031744c35 fix for use of un-initialized pointers in file_sfile_to_operator(...) & remove unused vars. 2011-03-21 03:22:33 +00:00
ef9356043e == file browser ==
Patch from Alexander Kuznetsov: Real-time File Selection, thanks for the contribution.

Still made a few minor changes from latest patch:
1. Rename SELECTEDFILE to HILITED_FILE, since we are not actually selecting the file, but previewing/highliting the possible selection.
2. Also made this clearer by not drawing the files as selected, but just highlight them.
3. Removed the Select/Deselect toggle when clicking on file, will be committed separately soon.
2011-03-20 00:34:08 +00:00
b65a56ccb5 fix [#26494] Auto run Python scripts option in User Preferences problem
- opening a file with blender by passing it as an argument would and loading it once in blender left script auto execute flag in a different state.
- command line args --enable/disable-autoexec were being overridden by the user prefs.
2011-03-15 08:04:11 +00:00
8c526e79e3 library loading api.
this is not well suited to RNA so this is a native python api.

This uses:
  bpy.data.libraries.load(filepath, link=False, relative=False)

however the return value needs to use pythons context manager, this means the library loading is confined to a block of code and python cant leave a half loaded library state.


eg, load a single scene we know the name of:
  with bpy.data.libraries.load(filepath) as (data_from, data_to):
      data_to.scenes = ["Scene"]


eg, load all scenes:
  with bpy.data.libraries.load(filepath) as (data_from, data_to):
      data_to.scenes = data_from.scenes


eg, load all objects starting with 'A'
  with bpy.data.libraries.load(filepath) as (data_from, data_to):
      data_to.objects = [name for name in data_from.objects if name.startswith("A")]

As you can see gives 2 objects like 'bpy.data', but containing lists of strings which can be moved from one into another.
2011-03-12 16:06:37 +00:00
a5e59ede6e pass report list along to BLO_blendhandle_from_file(), avoid unlikely crash in the append operator. 2011-03-12 15:15:40 +00:00
ef8aa6cc6a fix [#26436] Operator.draw(): UI redraw; UI trimmed 2011-03-10 22:22:47 +00:00
3c184def72 use NULL instead of 0 for pointers, (editors) 2011-03-03 17:59:04 +00:00
4ed5cd6cef == UI icons ==
* Change ICON_NULL --> ICON_NONE to avoid two #defines with the same meaning.
2011-02-27 18:03:19 +00:00
Nathan Letwory
60b22c5d12 doxygen: blender/windowmanager tagged. 2011-02-25 14:04:21 +00:00
8a1cff54ce internal operator/wm/macro function: dont crash if operators are not found (warning will be printed). 2011-02-25 04:15:45 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
d17df68c24 - clear some warnings
- rename layout.operator_enums -> operator_enum (since we have operator_menu_enum, only called in 4 places)
2011-02-18 06:07:41 +00:00
4124804b4e many functions in blender are not marked static but should be.
most local modifier,GPU,ImBuf and Interface functions are now static.

also fixed an error were the fluid modifier definition and the header didnt have the same number of args.
2011-02-13 14:16:36 +00:00
626de1f3a2 Bugfix, own todo
Saving a file for the first time (after opening blender) didn't
use the last directory as saved/loaded from in a previous session.
2011-02-05 15:05:17 +00:00
0d3cf5c8a6 Script to test import operators, so a single command can execute an operator on all files in a directory and optionally save out blend files for inspection.
This comes in handy for testing importers against 100's of files, quickly showing breakages and easier to setup then unit tests.

Example usage:

  blender.bin --background --python source/tests/batch_import.py -- \
              --operator="bpy.ops.import_scene.obj" \
              --path="/data/testfiles/obj" \
              --match="*.obj" \
              --start=0 --end=50 \
              --save_path="/tmp/test"


Also found my name was spelt wrong in some places :)
2011-02-01 12:47:50 +00:00
b17bbf9d95 fix for 2 segfaults running in background mode.
- operators which reload G.main would crash blender if called from python and then accessed bpy.data.*
- WM_read_homefile_exec was setting the contexts Scene to NULL as a signal for the event system, this didnt work in background mode, crashing when property update functions expected scene to be set.
2011-02-01 02:54:29 +00:00
f49d7d59dc Bugfix #25652
Report was that move-to-layer menu failed. The real cause was
more complex; had to dive deep in the dungeons of the interface
code that handled undos and operators. Found several issues:

- popup menus (like redo operator, color picker) executed again
  on a mouse-exit
- far too many buttons were sending undo pushes; even worse, in
  the operator redo-panel each button action was pushed twice
- in case operator redo-buttons have own callbacks (like layer
  buttons) the redo wasn't working
- layerbutton menu was called without creating a proper undo/redo
  case

Things should all work smoother now!

On todo:
- better definition and handling of all versions for operator menus
  (four types now, not fun)
  also: make operator "do" menu, which on first action does operator
  and then switches to redo-ing
- bring back Undo menu, to list the undo stack and jump in it.
2011-01-19 14:19:20 +00:00
161cbed9b5 new command line option '--factory-startup' to skip reading startup.blend. useful for testing with a predictable environment.
also commented python benchmark prints on exit, can enable when profiling later.
2011-01-19 09:13:24 +00:00
604d029ddf Bugfix #25570
The tool-redo depends on a working undo system, so it can rewind
a step and then redo operator with new settings. When a user
disables undo, this won't work.

Now the properties for redo operator (toolbar, F6) will grey out
when a redo isn't possible.
2011-01-12 18:00:23 +00:00
89c9aaaa25 remove references to BKE_utildefines where its not needed.
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.
2011-01-07 19:18:31 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
8200e44c39 Removed a call to glPopMatrix that had no corresponding glPushMatrix. 2011-01-05 02:08:27 +00:00
f09d7912f8 Porting URL fixes for Release Logs from Tag to Trunk. 2010-12-30 13:02:48 +00:00
86b89af5dd use ICON_NULL define rather then 0, makes UI calls less confusing. (no functional change)
eg: uiItemR(row, &dvar_ptr, "type", 0, "", 0); -> uiItemR(row, &dvar_ptr, "type", 0, "", ICON_NULL);
2010-12-23 02:43:40 +00:00
b0f87a1746 rename addlisttolist() to BLI_movelisttolist()
name was misleading because the list items were removed from the source list.
(no functional changes)
2010-12-21 14:49:34 +00:00
3d1896bc6d Macro Operators now pass on reports to the Mother Op!
(errors for macros were not shown)
2010-12-21 14:08:58 +00:00
46ce8cdf58 replace debug popup function with call to generic function WM_operator_props_dialog_popup(). 2010-12-15 06:12:16 +00:00
eb8458b064 Centralized operator UI drawing into a new function uiLayoutOperatorButs(),
Operator drawing calls were duplicated in file selector panel, redo panels, redo & dialog popups.

note, uiDefAutoButsRNA's column's argument was misleading, renamed to label_align.
2010-12-15 05:42:23 +00:00
acd7b81c2d bugfix [#25230] Quick extrude Ctrl-LMB : wrong behaviour of 'RotateSource' option.
Problem is is with operator redo which click-extrude exposed.

Check if redo operator can run, otherwise lock the UI and add a label that the operator doesn't support redo.
This is clunky but IMHO better then failing silently and leaving the user confused.

- Merged redo functions into ED_undo_operator_repeat(), code was duplicated in a few places.
- added WM_operator_repeat_check to check if WM_operator_repeat() can run, avoids an undo call when redo work.

Unrelated changes
- GHOST_SystemWin32.cpp set to utf8 encoding.
- cmake_consistency_check.py now checks source files are utf8.
2010-12-15 04:06:19 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
cd97253502 - added GCC warning -Wstrict-prototypes
- fixed bug in paste material, exposed by stricter warnings.
- removed/renamed various shadowed vars.
- removed BGE lamp.colour, only allow lamp.color attribute.
2010-12-03 12:30:59 +00:00
236a11ca63 misc small changes.
- commented unused View3D->flag's
- popup dialog now centers over the mouse
- only overwrite image alpha with render settings on save if saving the render result.
2010-11-30 18:07:44 +00:00
c5f7207948 fix for crash introduced r33257, also tag some vars as unused. 2010-11-24 20:13:37 +00:00
ee1d2adc16 partial fix for [#23532]
- Python calling operators didn't run WM_operator_properties_sanitize() so enum functions called from python were given a NULL context.
- PROP_ENUM_NO_CONTEXT and PROP_NEVER_NULL used the same value in the enum (possible conflict).
2010-11-23 12:05:35 +00:00
ce2295999e use zero initializers instead of memset(), also change PointerRNA_NULL from an extern into a define. 2010-11-23 08:44:21 +00:00
e76074da0b Feature fix
When using Material Nodes, there was no indication in Material
Property window which node was active. The context/channel widget
now shows this.

Better would be to be able to browse nodes in this list, and
to have option to preview only this material (not node tree
result). Enough todo for future :)
2010-11-18 16:38:32 +00:00
51dcbdde03 use 'const char *' by default with RNA functions except when the value is flagged as PROP_THICK_WRAP.
Also use const char in many other parts of blenders code.

Currently this gives warnings for setting operator id, label and description since these are an exception and allocated beforehand.
2010-11-17 09:45:45 +00:00
Nathan Letwory
44e36b5156 Revert the reversal :) 2010-11-11 22:12:49 +00:00
bc3ea2cb66 Revert r33023
Was causing compile troubles with MSVC:
wm_operators.c
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\io.h(322) : error C3163: '_write': attribute
s inconsistent with previous declaration
        C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\io.h(224) : see declaration of '_wri
te'
scons: *** [C:\blenderdev\b250\buildvc\source\blender\windowmanager\intern\wm_operators.obj] Error 2
2010-11-11 22:05:17 +00:00
0d488e00c8 System console toggling for MinGW
Define WINVER=0x0501 for MinGW due to some stuff requres this winver, but
MinGW's default is 0x0400 (thanks AlexKu for point)

Better to replace all #include <windows.h> with #include "BLI_winstuff.h" to
avoid possibility of different functions prototypes in different modules.
2010-11-11 20:32:28 +00:00
b96bd0a732 Fix for definitions checking. Now it should work with MinGW. 2010-11-11 19:28:10 +00:00
Nathan Letwory
3e01338094 Also !defined(FREE_WINDOWS) on appending operator. 2010-11-11 19:04:57 +00:00
c0da754d8d == filebrowser ==
When loading .blend file (F1) open the filebrowser with the most recently used .blend file. Another lost feature from 2.49 back ;)
2010-11-11 18:53:10 +00:00
Nathan Letwory
df487be82f wrong language :° 2010-11-11 18:24:03 +00:00
Nathan Letwory
fc667fdb8e For now have console toggling only when compiled with MSVC.
Need to find out how to enable for MingW too.
2010-11-11 18:21:57 +00:00
Nathan Letwory
a583ea5096 Apply patch [#24579] Fix for Win; Show/hide console
Submitted by Alexander Kuznetsov
2010-11-11 13:44:51 +00:00
43f396218f move report/operator view out of the 'Console' into the 'Info' space (file menu).
Ton will work on moving the File menu out of the Info space before release.

notes.
- reply Operator isn't working anymore.
- UI for reports is commented out so its not mixed with the file menu.
2010-11-11 13:36:57 +00:00
fe18f517a1 bugfix [#24635] "Add Shortcut" 2010-11-10 11:19:52 +00:00
6753882e42 bugfix [#24009] Crash when switching area types and performing ops 2010-11-04 15:59:09 +00:00