LassoFusebox Nested Layouts Example

original modification 8/2003
last modified 05/31/2008 by tami@asktami.com
works with Lasso Professional 6.0.4 to 8.5.5
Lasso Version running: Mac OS X 8.5.6

Family:
Grandpa
   Homer
      Bart
   Marge
      Lisa
      Maggie
      Maggie NotNested

Switch to FRAMES
The following example was originally written by Steve Nelson of Secretagents.com and is an open source sample available at Fusebox.org. It was ported to LassoFusebox by Rich Tretola, the lastest version (last modified 05/23/2008) by Tami Williams.

Fusebox 3.0 offers the very powerful ability to "nest" circuits. What this means is that when you call one circuit it can obtain both variables an layouts from it's parent circuits. In this example code we're going to look at how to nest layouts using the Simpson Family as our metaphor. We'll look at how variables are affected by nesting in another example.

I have attempted to simplify this example as much as possible. There are a LOT of directories in this example. Don't get overwhelmed, each one is basically the same thing with a different Simpson family member.

Each directory also has it's own "/images" directory This is a very powerful concept of Fusebox 3.0. <img> tags will remain in tact when dragging and dropping one circuit under another. Be sure to look at how images are called in this example.

When going through this code, start at the top circuit and look at the fbx_circuits.lasso file. fbx_circuits.lasso will give you a map of all the circuits in the application. Next, walk through each circuit and look at the fbx_switch.lasso file. fbx_switch.lasso will give you a map of all the fuseactions in that circuit.

Next, look at the fbx_layouts.lasso file in each circuit. fbx_layouts.lasso gives you a map of all the layouts in that circuit.

Finally, there are two user defined fuses in each circuit:
lay_[name].lasso
and
dsp_[name].lasso

Look at those two files to see how the nesting works. The important variable to understand is the [Output: $layout, -EncodeNone] variable. It is in each of the lay_[name].lasso

This Layout File: _lay/lay_noframes.lasso