[Bf-taskforce25] Updated TODO's

Brecht Van Lommel brecht at blender.org
Thu Aug 13 05:15:47 CEST 2009


Hi,

I accidentally sent this e-mail while I was still writing it.. So 
here's the proper version, please ignore my last mail.

Here's an overview of TODO's for 2.5. It's biased towards the areas 
I've worked on, in particular I'm not too familiar with the state of 
the animation system, sequence editor, sound and game engine. 
Partially it's a reminder to myself for what the current state is, but 
it's also an invitation for help of course :).

Brecht.


2.5 PROJECTS

Animato
-------

* Properties not directly at ID block level are not always keyable,
need RNA _path() callback implemented.
* Still not happy about RNA string lookup speed for f-curves.
* Preserve f-curves on renames, remove, adding data (how? unique
identifiers for modifiers etc?).
* Dependency graph ...

Operators, Keymaps, Menus
-------------------------

* Make keymaps saveable.
* Organize keymap categories?
* Reorganize default keymap.
* Operator ui() callback to do own button layout for special cases.
* Make menus more consistent, complete.
* More work needed on macros.

UI
--

* List template still needs work:
    * Popup menu to quickly search through many items.
    * In place name editing of items.
    * Preview render icons in material/texture lists.
* Add Divider widget.
* Remember last clicked item in menus.
* Improve sensitivity for number button dragging (but how?).
* Hide scrollbar if not needed?
* Interactive updates while button dragging should not block things in 
slow scenes. Need some sort of threaded system for this?

Notifiers
---------

* This system needs review, it's not really clear which notifiers 
cause which results. This leads to various notifiers being abused for 
different purposes, also because there isn't a notifier for everything.
* Hook preview render and GLSL into notifiers.
* Hook scripts into notifiers.

EDITORS

Buttons Window
--------------

* Image texture panel not entirely working.
* Preview render for icons in menus should become threaded, otherwise
opening a menu with many materials can block.
* Search menu should move above button when there is no space, instead
of overlapping.
* Context pinning not reliable yet.
* Most buttons are back, can use some reorganization in places.

Modifiers
---------

* Modifier menu should become organized/multi column.
* Operators for specific modifiers like hooks or uv projectors.

Image Window
------------

* Button panels need touching up.
* Compositor preview region not working yet.
* Image pinning state is not displayed.

Timeline
--------

* Menus not working completely.
* Put some options from old Timeline header menu here.
* Menus and header could be ported to python.

3D view
-------

* Draw normal, draw edges, normal size, etc option in panel here?
* Various operators missing: align view, camera, .. see menus.
* Lamp specials operators.
* Convert menus, header, properties more to python layouts.
* Toolbar region operator add/remove is prototype only still.
* Last operator needs touching up.

Outliner
--------

* RNA views don't remember state yet.
* RNA views need some system to display e.g. a large number of
vertices where not all entries are created.
* Button drawing would be nice to have table-like without borders again.
* Header and menus could be ported to python.

Render
------

* Baking is not restored yet. Does this become an operator, or do we
keep it as a panel in the scene buttons?
* Render in a separate thread is not safe yet.
* 3D view preview render is not restored yet.
* Set render border operator.

Physics
-------

* Fluid bake cannot be interrupted.
* Point cache interface needs to become more user friendly, the
current panels looks too complicated.

Paint & Sculpt
--------------

* Return to paint/sculpt mode after editmode, now goes to object mode.
* UI and functionality could be more consistent between modes.
* Move G_* mode flags local into Object like editmode.

Object
------

* Fill menus: mirror, transform, .. .
* Add missing operators ... compare the 2.4 menu to the 2.5 menu.

Transform
---------

* Make manipulators operational.
* Further split up TFM_transform operator into smaller ones?

Mesh
----

* Loop cut, knife cut, slide edge, crease subsurf, bevel weight, .. 
interactive operators.
* Check for missing operators in the menus.
* Complete Mesh menu.
* Mesh texture face panel missing.

Text/Curve/Surface
------------------

* Operators that run from the buttons window still missing:
    * Convert poly/bezier/nurb/set weight
    * Load font, text frames
    * ...
* Text panels incomplete.

Game Engine
-----------

* Scene buttons needs to get options from 2.4 game menu.
* Property editing.
* ..?

User Preferences
----------------

* Make this a separate space instead of using info space.
* Review the options to keep and test if they work.
* Could be organized better.
* Editing themes, styles, needs various operators.
* What goes here, what is outliner?

Info Space
----------

* Complete menus.
* Bring back statistics like #verts.
* Show non-blocking info/reports of last operator.
* Add screen, add scene operators.
* Save opens file browser if not saved yet.

WM
--

* Emulate numpad and 3 mouse button.
* Buffer swapping systems needs further improvement and testing.
* Region editing review.
* Side panel review, floating panels, docking, ..?

File Browser
------------

* Bring back library append/link.

Text Editor
-----------

* Operator for opening properties panel.
* Activate find text button on Alt+F.

Node Editor
-----------

* ID browse buttons in header.
* Some missing operators.

Animation Editors, Sequence Editor
----------------------------------

* Did not go over these yet.

SCRIPTING AND EXTENSIONS

Function API
------------

* A lot still missing here, too much to mention.
* Improve WM api, adding access to all event data, timers, keymaps.
* Registering operators in existing menus and headers.
* UI api for things like popups, or buttons with python function 
callbacks.

Py* Extensions
--------------

* Restore PyConstraints.
* Restore PyNodes.
* Ideally using RNA extension system.
* Some time in the future, spaces and regions.

RNA
---

* Dynamic size (and multidimensional?) arrays for the python api.
* Buffer access could use more testing, getting it working well for 
e.g. images.
* Update C++ API to python level.



More information about the Bf-taskforce25 mailing list