Blender Git Commit Log

Git Commits -> Revision 513ae61

Revision 513ae61 by Ton Roosendaal (master)
October 25, 2003, 00:08 (GMT)
First commit of a new toolbox system.

Aim was to find a simple & easy system, script alike, to add and configure
a toolbox system, so that others can experiment, but also of course Python.

Summary:
- spacebar calls it up. SHIFT+A still does old toolbox
- hold left or rightmouse for 0.4 second, and it pops up as well
this is experimental! Can be tweaked with Userdef var "ThresA"
- it is a little bit complete for Object mode only. Needs still work
at information desing/structure level
- the code works like an engine, interpreting structs like this:

static TBitem addmenu_curve[]= {
{ 0, "Bezier Curve", 0, NULL},
{ 0, "Bezier Circle", 1, NULL},
{ 0, "NURBS Curve", 2, NULL},
{ 0, "NURBS Circle", 3, NULL},
{ 0, "Path", 4, NULL},
{ -1, "", 0, do_info_add_curvemenu}};

- first value is ICON code,
- then name
- return value
- pointer to optional child

last row has -1 to indicate its the last...
plus a callback to event function.

I also built an old toolbox style callback for this:

static TBitem tb_object_select[]= {
{ 0, "Border Select|B", 'b', NULL},
{ 0, "(De)select All|A", 'a', NULL},
{ 0, "Linked...|Shift L", 'L', NULL},
{ 0, "Grouped...|Shift G", 'G', NULL},
{ -1, "", 0, tb_do_hotkey}};

here the return values are put back as hotkeys in mainqueue.

A mainloop can do all context switching, and build menus on the fly.
Meaning, it also allows other designs such as radials...

Commit Details:

Full Hash: 513ae61f2beda17faced737c0b9eae45a0548e18
SVN Revision: 1414
Parent Commit: 5f26e16
Lines Changed: +546, -147

13 Modified Paths:

/source/blender/blenkernel/intern/library.c (+11, -7) (Diff)
/source/blender/include/BIF_interface.h (+13, -5) (Diff)
/source/blender/include/BIF_resources.h (+1, -0) (Diff)
/source/blender/include/BIF_toolbox.h (+2, -0) (Diff)
/source/blender/include/BSE_headerbuttons.h (+7, -0) (Diff)
/source/blender/include/interface.h (+2, -0) (Diff)
/source/blender/src/editobject.c (+9, -2) (Diff)
/source/blender/src/editscreen.c (+7, -5) (Diff)
/source/blender/src/editview.c (+16, -4) (Diff)
/source/blender/src/header_info.c (+11, -6) (Diff)
/source/blender/src/header_view3d.c (+4, -4) (Diff)
/source/blender/src/interface.c (+140, -110) (Diff)
/source/blender/src/toolbox.c (+323, -4) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021