[Bf-funboard] toolbox
The Fallen Weeble
bf-funboard@blender.org
Fri, 24 Oct 2003 11:16:59 -0400
Oooh... nice. It kind of reminds me of the structure for the text files
that generate the menus in the Enlightenment window manager. I can't
wait to play with this one.
Great job, Ton!
Later.
Groo
On Fri, Oct 24, 2003 at 12:51:13PM +0200, Ton Roosendaal wrote:
> Hi,
>
> Off topic, but first check this for fun:
> http://www.blender.org/docs/ton/subsurf.html
> I've been working on display of Meshes, in 'object mode' or editmode.
> Works all a lot better! Please restrict feedback on improvements for
> this until after the 2.30 (pre) release of next week conference time.
> Not because I dont want feedback, but just because I cant handle it now!
>
> The topic:
> http://www.blender.org/bf/tb.jpg
>
> I worked at a generic and very easy menu 'script' system, that can be
> completely constructed by a non-coder as well. Plus of course
> dynamically by Python. In the end of this mail you can find the full
> code for the entire Add menu. It includes support for icons and
> mentioning hotkeys as well.
>
> I coded a little engine that interprets the data, and feeds that to the
> current Blender UI system. The sample code below actually creates
> *working* menus.
>
> Three things:
>
> 1. The current UI system only has standard pulldowns and buttons menus
> possible. I will restrict my work now in creating a basic working
> structure, which still will have its limitations. But it can
> efficiently replace the old toolbox, will do the context switching, and
> dynamically build a structure as the 'script' indicates.
> 2. Anyone now - OK you have to compile code :) - can design menu
> structures at 'information design' level. Documentation how the system
> works will become available soon.
> 3. Anyone now, but that will take some coding experience, can write
> their own engine to feed the data with. This can be a complete radial
> menu, or something based at designs as Thorsten proposed. Thorsten's
> concepts have nice features I'd like to work at as well... but cant do
> that now.
>
> Please consider this a first step. It is an experiment, we to see more
> experiments like this in coming period, and gradually will improve it
> all.
>
> I'll make sure binaries with this are available today or tomorrow.
>
> -Ton-
>
> static TBitem addmenu_mesh[]= {
> { 0, "Plane", 0, NULL},
> { 0, "Cube", 1, NULL},
> { 0, "Circle", 2, NULL},
> { 0, "UVsphere", 3, NULL},
> { 0, "Icosphere", 4, NULL},
> { 0, "Cylinder", 5, NULL},
> { 0, "Tube", 6, NULL},
> { 0, "Cone", 7, NULL},
> { 0, "Grid", 8, NULL},
> { 0, "Monkey", 9, NULL},
> { -1, "", UI_RIGHT|UI_CENTRE, do_info_add_meshmenu}};
>
> 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, "", UI_LEFT|UI_CENTRE, do_info_add_curvemenu}};
>
> static TBitem addmenu_surf[]= {
> { 0, "NURBS Curve", 0, NULL},
> { 0, "NURBS Circle", 1, NULL},
> { 0, "NURBS Surface", 2, NULL},
> { 0, "NURBS Tube", 3, NULL},
> { 0, "NURBS Sphere", 4, NULL},
> { 0, "NURBS Donut", 5, NULL},
> { -1, "", UI_RIGHT|UI_CENTRE,
> do_info_add_surfacemenu}};
>
> static TBitem addmenu_meta[]= {
> { 0, "Meta Ball", 0, NULL},
> { 0, "Meta Tube", 1, NULL},
> { 0, "Meta Plane", 2, NULL},
> { 0, "Meta Ellipsoid", 3, NULL},
> { 0, "Meta Cube", 4, NULL},
> { -1, "", UI_RIGHT|UI_CENTRE, do_info_add_metamenu}};
>
>
> static TBitem addmenu_ob[]= {
> { 0, "Lattice", 9, NULL},
> { 0, "Armature", 8, NULL},
> { 0, "Lamp", 7, NULL},
> { 0, "Text", 4, NULL},
> { 0, "Camera", 6, NULL},
> { 0, "Empty", 5, NULL},
> { 0, "SEPR", 0, NULL},
> { 0, "MBall", 3, addmenu_meta},
> { 0, "Surface", 2, addmenu_surf},
> { 0, "Curve", 1, addmenu_curve},
> { 0, "Mesh", 0, addmenu_mesh},
> { -1, "end", UI_TOP, do_info_addmenu}};
>
>
>
> ------------------------------------------------------------------------
> --
> Ton Roosendaal Blender Foundation ton@blender.org
> http://www.blender.org
>
> _______________________________________________
> Bf-funboard mailing list
> Bf-funboard@blender.org
> http://www.blender.org/mailman/listinfo/bf-funboard