Commit Graph

884 Commits

Author SHA1 Message Date
ffe13aeb23 the user interface could access invalid RNA on deleting objects since checking the button ran after freeing the data. 2009-12-26 01:04:46 +00:00
266271d65a - closing the user prefs accessed the temp screen after removing it.
- colorband drawing could use un-initialized vars (probably wouldnt crash)
2009-12-26 00:17:45 +00:00
980e97923b Key map related things:
* Moved 'change shortcut' (previously directly RMB on menu items) to a context-menu item, and added Remove Shortcut and Add Shortcut. This is all available now in a RMB context menu for operator buttons and menu entries.
* Renamed a bunch of key maps to be consistent with UI names, and human-readable. Since these key map names are now being directly used in the UI for people to find things, they should be understandable and in plain language.

This renaming may break some older saved key map setups - though previously saved .b25.blends should convert over ok. Exported .py files may need some find/replacing - in this commit check the changes in resources.c to see what's changed.
2009-12-24 09:26:06 +00:00
0606dbe291 Fix #20433: make single user doesn't work from menu. Popup menus for
operators were not passing along properties.
2009-12-22 11:59:30 +00:00
5c3879f8fb zoom to mouse for 2D view
note: this works in all views except for nodes which seem to use the view bounds differently
2009-12-22 08:39:59 +00:00
959e0486cf SVN maintenance. 2009-12-17 19:23:25 +00:00
0af48c227b Copy To Selected
Until we have proper multi-object editing, this adds a Copy To Selected
option to the right mouse button menu for Object and Bone properties, to
copy the value from the active object to the selected objects.

Also includes some implementation changes to reset to default operator.
2009-12-17 17:15:38 +00:00
e3a1d044d6 RNA/UI - Reset Settings to Default Values
Added a new operator for properties which resets RNA-based settings to their 'default' values, as defined in RNA. This currently only works for floats, ints, enums, and booleans (strings and pointers still need to be implemented). 

The current extensions to the RNA API that I've made here seem a bit excessive, and can be toned down if necessary. In short, I've just added accessor functions for the default-values of the property definitions.

For this to be really useful, many properties in RNA will need to get defaults defined, since the current defaults for quite a few properties tested were less than ideal.
2009-12-17 10:47:55 +00:00
8d996df7ce Adding POINTER_GRAB flag to view 2d pan operator, to make it use continuous grab. 2009-12-17 01:19:50 +00:00
3455261e17 First version of updated key map editor UI (in User Preferences)
Now the key maps are displayed in a hierarchical list which you can 
browse through. As well as in the main list, modal key maps are also 
available in context, for example, if you unfold out a Transform key 
map item, you'll be able to fold out and access its modal key map underneath.

More work to do, including search, better operator browsing, etc.
Still need to revise the ordering/hierarchy and clean up naming to be 
consistent too, it's a bit of an 'evolved' mess right now.

Thanks to theeth for some initial work here too.
2009-12-16 10:13:26 +00:00
91215df5c2 Bugfix: clicking outside of color picker could reset color in some cases. 2009-12-14 14:34:57 +00:00
b1a39375e5 Keyframing Bugfixes and Feature Requests:
* Added a User-Pref option for the "XYZ to RGB" colour-mode setting for new F-Curves to compliment the one used for Keying Sets. With this option enabled, the builtin Keying Sets also can obey this option.

* Made all places that were previously manually checking the flags for keyframing to use a standard API function to do this now.

* Fixed bug introduced earlier today in commit 25353 by reverting the changes to keyingsets.c. Forgot that delete_keyframe doesn't handle do the "entire array" hack with array_index = -1

* Fixed bug with the insert-keyframe code for the array_index = -1 case, where too many channels were being keyed (i.e. an imaginary channel was often keyed in addition to the valid ones)
2009-12-14 12:09:20 +00:00
3f612b6ea5 Description and more presets for animation players (rv / framecycler).
Also put a bit more logic for guessing player paths based on my system. 
If anyone can make this a bit more clever/bulletproof, please feel free to 
get involved in it, it's all python!
2009-12-13 23:30:18 +00:00
d6bee7da75 use rna buttons for color ramps colors so keyframes can be added/deleted. 2009-12-11 02:14:10 +00:00
2576268fb8 missed a header last commit, added custom exceptions to rigify so they can be caught and converted into reports and have normal errors display the stack trace as useual. 2009-12-10 18:28:22 +00:00
0779f2c425 Double Click event value.
Timeout between both clicks is user configurable, should be taken from the OS when possible.
2009-12-10 17:41:03 +00:00
959ac68914 align option for split 2009-12-10 14:47:07 +00:00
b5740b0e77 remove ICON prefix from the enum, for python this is redundant eg.
layout.prop("setting", icon='ICON_BLAH_BLAH')

Also reverted previous commit, the cursor subtype just needed to be added to the switch statement.
2009-12-10 10:23:53 +00:00
653593b574 Fix for [#20216] Search List is unordered
This sorts RNA collection (bones, vgroups, etc) search lists alphabetically like ID data search lists are already.
2009-12-10 01:29:43 +00:00
ee12451463 Revert bunch of changes I should have committed before. 2009-12-10 00:41:03 +00:00
456c11c822 textedit string needs to be one byte longer than maxlen, for terminator. 2009-12-10 00:28:18 +00:00
1601f297c9 Fix #20245: datablock names allowed entering 22 characters but can
only accept 21.
2009-12-09 18:03:44 +00:00
0151be0210 UI: fix trailing tooltips when deactivating window, and when opening
right click menu. Added window deactivate event for this.
2009-12-08 13:02:03 +00:00
16ec4cc186 Sound system should only default to OpenAL if it is built (SDL if built otherwise). 2009-12-07 20:38:09 +00:00
fc69c54c4c Particles: bugfixes
* Don't show Apply as Shape for particle modifiers.
* Fix particles disappearing after exiting particle mode.
* Fix free edit not redrawing the 3d view.
* Fix use of uninitialized variable in layers template.
2009-12-07 18:17:39 +00:00
c1c5acae14 Porting of Graph Editor's UI to python, just header done for now.
Brecht, I added a Layout template function, template_dopesheet_filter -> uiTemplateDopeSheetFilter, this creates the group of buttons for filtering ID type (and some other options) for animation editors (Graph, NLA and Dopesheet). I hope this is all right, if not, we can move this maybe to a .py file as a function for reuse.
2009-12-07 11:50:05 +00:00
f3201f0853 UI: curve widget tweaks
* Make snap ctrl instead of shift
* Only enable snapping after moving a few pixels,
  otherwise too easy to do enable this by accident.
* Deselecting points with shift did not work.
2009-12-04 15:32:26 +00:00
bce687ef36 Menu handlers need to return OUT when clicking outside, not OK
Caused crashes with window type selector and a slew of other unwanted behaviors.
2009-12-02 19:32:21 +00:00
d56324b254 UI: remove unnecessary colon on toggle array buttons. 2009-12-02 13:21:22 +00:00
b89138564e Changes to Color Management
After testing and feedback, I've decided to slightly modify the way color 
management works internally. While the previous method worked well for 
rendering, was a smaller transition and had some advantages over this
new method, it was a bit more ambiguous, and was making things difficult 
for other areas such as compositing.

This implementation now considers all color data (with only a couple of 
exceptions such as brush colors) to be stored in linear RGB color space, 
rather than sRGB as previously. This brings it in line with Nuke, which also 
operates this way, quite successfully. Color swatches, pickers, color ramp 
display are now gamma corrected to display gamma so you can see what 
you're doing, but the numbers themselves are considered linear. This 
makes understanding blending modes more clear (a 0.5 value on overlay 
will not change the result now) as well as making color swatches act more 
predictably in the compositor, however bringing over color values from 
applications like photoshop or gimp, that operate in a gamma space, 
will give identical results.

This commit will convert over existing files saved by earlier 2.5 versions to 
work generally the same, though there may be some slight differences with 
things like textures. Now that we're set on changing other areas of shading, 
this won't be too disruptive overall.

I've made a diagram explaining the pipeline here:
http://mke3.net/blender/devel/2.5/25_linear_workflow_pipeline.png

and some docs here:
http://www.blender.org/development/release-logs/blender-250/color-management/
2009-12-02 07:56:34 +00:00
b911d83091 better not process events early, could cause troubles later.
added a function - wm_window_get_size_ghost(), which looks into the ghost window directly so events dont need processing first.
2009-11-30 14:10:46 +00:00
46e1abeda7 UI:
* Finished fixing the layer UI template. It's now used in the 3dview header rather than the custom layer grid.
2009-11-29 06:04:39 +00:00
65edb6e55f UI:
* Moved more of 3dview header to python
* Fixed the layout of the ui layers template to show the correct number of buttons
* Added support for layer icons (active layer, used layers)
2009-11-29 02:42:47 +00:00
9e6d1705a4 bugfix [#20050] Hex color value fields capped to 2 characters on first paste.
also use memmove rather then a loop for deleting the selected text
2009-11-28 21:45:34 +00:00
cd574f32e6 experemental UI introspection added for mindrones,
in python this gives a map of the ui...
 ui_dict = eval(layout.introspect())
2009-11-28 17:45:23 +00:00
510c0facdf operator renaming for more consistent word ordering (_add/_remmove shold be last, ACT_OT_* --> ACTION_OT_*)
ACT_OT_clean --> ACTION_OT_clean
ACT_OT_clickselect --> ACTION_OT_clickselect
ACT_OT_copy --> ACTION_OT_copy
ACT_OT_delete --> ACTION_OT_delete
ACT_OT_duplicate --> ACTION_OT_duplicate
ACT_OT_extrapolation_type --> ACTION_OT_extrapolation_type
ACT_OT_frame_jump --> ACTION_OT_frame_jump
ACT_OT_handle_type --> ACTION_OT_handle_type
ACT_OT_insert_keyframe --> ACTION_OT_insert_keyframe
ACT_OT_insert_keyframe --> ACT_OT_keyframe_insert
ACT_OT_interpolation_type --> ACTION_OT_interpolation_type
ACT_OT_keyframe_type --> ACTION_OT_keyframe_type
ACT_OT_mirror --> ACTION_OT_mirror
ACT_OT_new --> ACTION_OT_new
ACT_OT_paste --> ACTION_OT_paste
ACT_OT_previewrange_set --> ACTION_OT_previewrange_set
ACT_OT_properties --> ACTION_OT_properties
ACT_OT_sample --> ACTION_OT_sample
ACT_OT_select_all_toggle --> ACTION_OT_select_all_toggle
ACT_OT_select_border --> ACTION_OT_select_border
ACT_OT_select_column --> ACTION_OT_select_column
ACT_OT_snap --> ACTION_OT_snap
ACT_OT_test --> ACTION_OT_test
ACT_OT_unlink --> ACTION_OT_unlink
ACT_OT_view_all --> ACTION_OT_view_all
ANIM_OT_add_driver_button --> ANIM_OT_driver_button_add
ANIM_OT_add_keyingset_button --> ANIM_OT_keyingset_button_add
ANIM_OT_delete_keyframe --> ANIM_OT_keyframe_delete
ANIM_OT_delete_keyframe_button --> ANIM_OT_keyframe_delete_button
ANIM_OT_delete_keyframe_v3d --> ANIM_OT_keyframe_delete_v3d
ANIM_OT_insert_keyframe --> ANIM_OT_keyframe_insert
ANIM_OT_insert_keyframe_button --> ANIM_OT_keyframe_insert_button
ANIM_OT_insert_keyframe_menu --> ANIM_OT_keyframe_insert_menu
ANIM_OT_remove_driver_button --> ANIM_OT_driver_button_remove
ANIM_OT_remove_keyingset_button --> ANIM_OT_keyingset_button_remove
FILE_OT_add_bookmark --> FILE_OT_bookmark_add
GRAPH_OT_insert_keyframe --> GRAPH_OT_keyframe_insert
NLA_OT_add_actionclip --> NLA_OT_actionclip_add
NLA_OT_add_meta --> NLA_OT_meta_add
NLA_OT_add_tracks --> NLA_OT_tracks_add
NLA_OT_add_transition --> NLA_OT_transition_add
NLA_OT_remove_meta --> NLA_OT_meta_remove
PARTICLE_OT_remove_target --> PARTICLE_OT_target_remove
PTCACHE_OT_add_new --> PTCACHE_OT_add
2009-11-28 14:37:21 +00:00
802779eb2d Assorted fixes - compile + drivers:
* Fixed a few compile warnings for scons+mingw
* Driver variables are now added with the ID-type set to ID_OB (objects) by default since this is more convenient
2009-11-25 09:25:58 +00:00
ce4b63aa3f Fix for [#20008] In the Graph Editor, clicking on the eye doesn't update the GUI
As part of this, fixed a typo in rna flags which was causing some strange behaviour with icons earlier. Reverted the workaround for this, too.
2009-11-25 08:28:57 +00:00
f28975dbc4 avoid operator type lookups when its known 2009-11-24 16:19:15 +00:00
4c03ce9100 fix for crashes displaying long strings in menu's 2009-11-23 17:55:52 +00:00
7b036e1dcb Splash screen, implemented by Matt.
* Now has documentation links and recent files.
* Click on image or outside splash to make it go away.
* Still has old image, new one will be committed later.
2009-11-23 13:58:55 +00:00
f8d40d2da0 2.5 internal bugfix: remove modal handlers before exiting the screen,
since these may be using it.
2009-11-23 11:49:23 +00:00
c6dbbde16b Various bugfixes:
* Tweaked the code for operator buttons so that only those operator buttons in the toolbar have their text left-aligned. This is done at layout-block level

* Silenced "file_init" print when opening the file browser

* Disabled animateability of the "active_shape_key_index" for Objects, since this property behaves in a very unpredictable manner, leading to problems with users trying to keyframe shapekey values and ending up keying the list. 

* Remove some unnecessary RNA wrapping code
2009-11-23 09:47:56 +00:00
8e09171d5b temp hack to make the popup show wider when running the edit description operator 2009-11-23 00:56:19 +00:00
8be7b757e3 * New option on modifiers that don't change topology: Apply as Shape
Rather than applying the modifier to the object data, it will create a new shape 
with the deformed vertices in there. Only mesh at the moment, other object 
types on the todo.
2009-11-22 13:44:09 +00:00
088c6d6666 Bugfix #19923: UVImage editor gets stuck in move/zoom mode 2009-11-20 10:21:31 +00:00
38e1590fa7 * Removed tablet pressure sensitive number field widget scrubbing, wasn't that useful and I suspect it was the cause of a few bugs
* Added tablet pressure support (size/strength) for weight paint and vertex paint

* Added tablet eraser support for weight paint and vertex paint (inverts the effect of the current tool)

* Removed the old 'soft' option, now weight paint and vertex paint use the influence curve

* Made the default brush use a smooth influence curve, rather than sharp
2009-11-20 01:39:27 +00:00
040c2affa6 Revert toolbar shading commit. 2009-11-19 09:57:04 +00:00
bf575a1c16 * Changed scroll bar scale handles back to scaling from either side, rather than to the center (ctrl-drag or mouse wheel works fine for that) 2009-11-19 04:13:18 +00:00
a1b39ac06c * Fix for RMB keyframe/data path/etc operators not working in sub-regions, was getting the wrong region context to operate on. 2009-11-19 04:11:24 +00:00