The 2.5 focus
To prevent this project from growing completely out of control - or never even happening - let's try to Keep It Simple, Stupid!
So, here's the KISS description:
Upgrade our window/event system and unify access to tools.
In the course of the past 2 years, more (sub)targets have been added, but mostly related to the above:
- Replace the old IrisGL window wrapper ('94), which was wrapped with Glut ('98), and got wrapped to Ghost ('01)
- Create a new and decent Window Manager, with better area-subdivision support, allowing multiple windows.
- Create an event system based on dynamic lists of event-handlers
- Make sure the event system has proper support for more advanced events, for external devices, drag&drop, etc.
- Make a tools system that allows uniform usage for hotkeys, menus, buttons, python, macros
- Implement a library for uniform access to editable data (RNA): for buttons, lists, drivers, Ipos, expressions and Python.
- Enable UIs to be more flexibly designed and customized, preferably via Python.
- Make it simpler to add new options without breaking or polluting UI designs.
- Have large parts of the Blender Python API to be generated automatically, revise Python API itself.
- Allow custom sets of hotkeys, editable inside the UI
- Have more freedom in defining hotkeys, including (modifier)key-order, and any-key-modifers.
- Enable tools to be combined into Macros
- Tools should be able to redo (with different properties) or to be repeated.
- Allow any user-accessible option to be animated
- Allow the UI to be more flexible to optimize for specific workflows or creation targets.
- Provide improved navigation in the UI, a well designed consistency to find options and tools.
Not targets (yet)
- Improved Dependency system. Parts of this might be part of the RNA, parts of it are for later.
- Construction history (tool stacks). Problem here is that selection in Blender remains OpenGL based for a while, so they won't be included in history.
- A complete new and glorious UI! Although there will be work done on improving the UI and presentation, the project focus will enable it, not result in it. Much of that work will be done later too.
Not targets (at all)
- Redesign Blender's internal DataBase or data handling.
- A complete new updated animation system
- The Render-export API
- Making everything Nodes, Node-tool trees, or Node-Modifier trees.
- Allowing Blender to become configured like Maya, 3D Max, etc. You can try of course, but our focus remains on Blender artists, and giving them the best 3D tool possible.