Age | Commit message (Collapse) | Author |
|
RNA-Paths + Array Indices for Keying Sets, F-Curves, and Drivers are now editable. We could disable these later if need be, it is useful to be able to edit these (especially for debugging purposes now).
|
|
- I key over a button inserts a keyframe.
- Alt+I removes a keyframe.
- With right mouse button a menu with these options pops up.
- Buttons are colored green if the property is animated, yellow
if it is on a keyframe. I followed the colors from the UI
mockups, but the flicker on keyframes seems too distracting in
practice?
- This only works for properties on the ID itself at the moment,
path callbacks need to be filled in for all structs but mesh
still.
- It doesn't work when you're over a related label, that needs to
be made to work.
- I made it insert keyframes outside of any keyingset. Not sure
how this is supposed to integrate?
|
|
Next part of UI drawing migration coding.
Now all calls go via the new wrapper; apart from some special types
(Colorband, HSV picking, Curve, Normal) they draw OK.
Also added new menu system, nicer shadow, and using same AA code.
Used dark theme suggestion from William btw. Don't get afraid, it'll all
be tweakable. :)
Next steps:
- move over all special button types
- make external calls for AA draw (nodes for example)
- remove old draw code
- make new colors save in theme
I also have to check on how to treat icons in buttons; this is a bit
cumbersome in cases.
Then the layout system comes back on agenda, will go over this with
Brecht tomorrow.
So; all WIP, be patient!
|
|
Added number slider drawing.
Color for dark part will be themeable. :) (optional rgb?)
|
|
Some more work on UI drawing code, added a generic structure
for how widgets will be defined. It's still a wrapper on top
of old buttons. Docs follow still.
Some visual improvements;
- more button types supported (check render buttons)
- pressed state is shown
- better 'panel' triangle AA, and new divider style
Still a lot of work here. I expect the next days/weeks to
be much more coding too, had to catch up with a lot of other
Blender stuff. There's more (excitement) going on than code. :)
|
|
a customdata layer specifically to store weightpaint colors
instead of abusing the vertex colors layers.
|
|
* Fix sometimes non-working close/open button.
* Fix panels being a bit out of the view on startup.
* Fix too large totrct region for view2d.
* Fix wrong panel order when changing vertical <-> horizontal.
* Fix wrong panel positions after switching contexts.
* Fix an access of freed memory when collapsing panels.
* Free align mode works again.
* Animations work again.
|
|
to WM_operator_menu for example, but popping up the redo menu. This is
useful for operators like particles rekey, which makes no sense without
specifying the number of keys.
|
|
- Register python panels
- Added a generic class checking function BPY_class_validate() for panels/operators.
- No button drawing yet
Brecht, Added RNA_enum_value_from_id() and RNA_enum_id_from_value() to rna_access.c to do lookups between identifiers and values of EnumPropertyItem's, Not sure if these should go here.
|
|
When inserting keyframes in the 3D-View (support will be extended to other editors in due course) using the IKEY hotkey, the menu which appears will now consist of 3 parts:
* 'Active Keying Set' - this option allows you to use the user-defined KeyingSet which is active for the current scene (i.e. the one seen in the TimeLine/Outliner headers)
* User defined Keying Sets - a list of all such available KeyingSets is included, and entries can be chosen from there
* Built-In Keying Sets - see later...
To achieve this, several changes needed to be made first:
* Added support for 'relative' in addition to 'absolute' Keying Sets. Relative Keying Sets are Keying Sets which operate on data from the current context (i.e. a 'location' KeyingSet will add location keyframes for selected objects/bones/nodes as opposed to location keyframes for some particular object). The is a tentative 'templates' requirement system here, which still needs to be fully fleshed out.
* Added support for builtin Keying Sets (i.e. 'Location', 'Rotation', 'Scaling', and 'LocRot' as a few initial demonstrations), which replaces the temporary Insert Keyframe operator for the 3D-View (IKEY). These are effectively relative Keying Set definitions which are included in Blender by default and stored in a list separate from user-defined ones. Volunteer help in defining a few more of these for other editors will be welcome soon.
* Removed/replaced much of the crappy temporary Keyframing operator code, though a few tweaks could still be done.
|
|
* Fix ANIM button, didn't work and was leaking memory.
* Transform ops: Edition -> Editing.
|
|
* Added support for RNA pointer buttons. It's like the existing
ID pointer buttons but with an icon, and autocomplete works.
There's some drawing issues currently but don't want to
interfere with the refactoring here. Also todo is support for
things like vertex groups or bones.
|
|
|
|
*******
ported some of the scene buttons to the new system
- added RNA_SceneRenderData struct to rna
- added a warning print to uiItemR when it can't find the property
- what is not there is due to relating entry not being in RNA
- anim button does not work
Im commiting this so we have much more wider test area then text and object buttons
|
|
EditMesh *EM_GetEditMesh(Mesh *me);
void EM_EndEditMesh(Mesh *me, EditMesh *em);
as discussed on the mailling list, this is to facilitate migration to bmesh.
next step is to merge this this to the bmesh branch. this was done in the 2.5
branch to prevent too great a divergance.
also, made makesdna/makesrna work on cygwin/msvc2008/scons.
|
|
since the loop that works around t->data being freed can sometimes shuffle strips that are not being transformed (eg, when extending or with locked strips)
|
|
Rotation, since those are the one ones that support it).
|
|
* Added a PanelType and HeaderType for registering panels
and headers in regions. When the region draws, it will
then automatically draw the ones that were registerd with
poll and draw callbacks.
Used for text header, properties and object buttons now.
|
|
* Added support for soft/hard range in the buttons code. Currently
it works by only allowing to drag or click increment in the soft
range, but typing a number value allows to go outside it.
If the number is outside the soft range, the range will be extended,
rounded to values like:
.., 0.1, 0.2, 0.5, 1.0, 2.0, 5.0, 10.0, 20.0, 50.0, ..
|
|
- TEXT_OT_scroll_bar and TEXT_OT_scroll ops had the lines property default/min/max args swapped around.
|
|
using PyLong_FromSize_t rather than PyLong_FromSsize_t, this messed up the default values in documentation.
- renamed POSE_OT_select_hierarchy "add_to_sel" property to "extend"
- some property names were wrong (giving errors in the console at startup)
|
|
- use select as a suffix eg UV_OT_loop_select -> UV_OT_select_loop
- Each select all operator was using slightly different wording...
select_all, deselect_all, de_select_all, select_de_select_all -> select_all_toggle
- selection -> select
- POSE_OT_select_connected -> POSE_OT_select_linked to match other operators
- NODE_OT_delete_selection -> NODE_OT_delete since its not used in other operators
- ANIM_OT_previewrange_define -> ANIM_OT_previewrange_set to match other operators
- NODE_OT_fit_all -> NODE_OT_view_all to match other operators
- View2D_OT_* -> VIEW2D_OT_* to match VIEW3D
- View2D_OT_view_downscroll -> VIEW2D_OT_scroll_down more logical
- removed MARKER_OT_mouseselect_extend and made extend a boolean property of MARKER_OT_mouseselect
- MARKER_OT_mouseselect -> MARKER_OT_select
- GROUP_OT_group_remove -> GROUP_OT_objects_remove more logical since its removing objects from groups
- MESH_OT_removedoublesflag -> MESH_OT_remove_doubles
- redundant words MESH_OT_split_mesh -> MESH_OT_split, OBJECT_OT_object_delete -> OBJECT_OT_delete
renamed selection operator properties
extend_select -> extend
column_select -> column
select_children_only -> children_only
... Since these are all in the context of selection operators there is no need for the extra 'select' in the property name.
Updated docs
http://www.graphicall.org/ftp/ideasman42/html/bpyoperator-module.html
|
|
|
|
Don't access RegionView3D if region is of the wrong type.
Correctly draw extra transform stuff (like snap and pet circles) in multiple 3d regions.
|
|
Please don't start adding exceptions like that in transform without asking first.
|
|
failsafe.
|
|
- fix spelling mistakes in rna docs (and some comments)
|
|
special_aftertrans_update can use it.
* text header needs a static char* so text is not rendered as gibberish. (until labels own their own strings)
* epy_doc_gen.py - write out a graphviz representation of the data api.
|
|
this can be brought back as a new space if someone decides to
work on it.
This also fixes remaining issues with the outliner tree open
and close buttons not working sometimes.
|
|
This setting means that instead of blindly replacing the existing values, the generator modifier will instead apply its effects on top of any existing modifiers (and/or curve data).
Thus, it is now possible to apply effects such sin/cos-based oscillations on top of keyframed motion.
|
|
* Screen level regions created for menus are now a separate
CTX_wm_menu in the context, so they don't interfere with
existing regions.
* Fix context in popup menus to always come from the area
and region the popup was opened from.
* Removed some unused context stuff: tasks and reports.
The places that were using context reports were using it
wrong anyway.
* Fix F6 closing immediately after editing a button, by
making uiBlockSetFlag not clear existing flags anymore.
* Don't use ":" in boolean X/Y/Z buttons.
|
|
Before everyone starts complaining, yes the arrows on the
number buttons were flipped. :)
|
|
WIP commit for new system to draw widgets and use themes or styles.
Not really interesting stuff to see in code now, the current
structure will change quite a lot, this to make it hook up well
to the existing system.
What works quite well is a new full opengl vector method to draw
scalable and pixel-aligned anti-aliased buttons.
http://download.blender.org/institute/rt3.jpg
http://download.blender.org/institute/rt4.jpg
|
|
* Fix for F6 redo and similar popups closing when moving
mouse outside of the popup while interacting with buttons.
* Simplify F6 redo popup code by using generated layout.
|
|
*******
results of a review of my previous commits by brecht
|
|
*******
- added descriptions to view3d operators
- fixed up the object select menu
- fixed a few typos
|
|
Changes: Gestures are now Shift-ActionMouse (doing it with SelectMouse required a bit of juggling and triggered a display glitch that I'll try to debug later)
Everything else should be as functional as in trunk, apart from the dotted rubber band line which doesn't update while the view is rotated and only the current area getting redrawn while drawing (the later should be easy to fix).
|
|
******
ported object ops to new naming conventions
|
|
*******
added decriptions to object and groups operators
|
|
* Envelope modifier now works correctly. Previously, the mapping was being done in the wrong order.
* Extra controls for modifiers now only draw when the F-Curve is the active one, so the view will be less cluttered in other cases.
|
|
Polyline, selection and a couple of others work. (note that polyline is shift-click because click is taken by 3d cursor. Needs a way to overwrite lower maps).
|
|
Got the basic envelope modifier code working, including primitive drawing of relevant helper info in the graph view. It doesn't work in a very intuitive way yet, so I will recode it soon.
|
|
before the single place that seems to use it.
|
|
it working this week end.
|
|
* Made it based on string lookups rather than fixed enum, to make
it extensible by python scripts.
* Context callbacks now also have to specify RNA type when returning
pointers or collections. For non-RNA wrapped data, UnknownType can
be used.
* RNA wrapped context. The WM entries are fixed, for data context
only main and scene are defined properties. Other data entries have
to be dynamically looked up.
* I've added some special code in python for the dynamic context
lookups. Tried to hide it behind RNA but didn't find a clean way to
do it yet. Still unused/untested.
* Also minor fix for warning about propertional edit property in
transform code, and fix for usage of operator poll with checking if
it was NULL.
|
|
stair-stepped using the sampling code.
|
|
|
|
-r18677:19317
Notes:
* Sequence transform strip uses G.scene global, this is commented
out now, should be fixed.
* Etch-a-ton code was most difficult to merge. The files already in
2.5 got merged, but no new files were added. Calls to these files
are commented out with "XXX etch-a-ton". editarmature.c and
transform_snap.c were complex to merge. Martin, please check?
* Game engine compiles and links again here for scons/make/cmake
(player still fails to link).
|
|
* Added GUI and fixed bugs in the Cycles Modifier. This replaces the old Cyclic Extrapolation settings, giving more fine-grained control over the results. You can now specify whether the keyframes are repeated before and/or after the range independently, also, the maximum number of cycles on either side can be controlled.
* TODO: it would be nice to have the last value held for cyclic+offset.
* Deleting modifiers now works
|
|
cos, etc.)
|