Event Priority / Sequence

What do you want to achieve?

Multiple events can be executed based on its priority or pre-defined sequence.

For instance, for complex-menu design, I designed a component which contains 4 buttons and each button can trigger a corresponding panel. It is painful to design the button click and panel switching logic using SLS.

Currently, I am designing the events of this kind of complex menu using following steps:

  1. If Button A is clicked, make Button A unclickable,
  2. Remove “Hidden” Flag of Panel A
  3. Add “Hidden” Flag of Panel B, Panel C and Panel D.
  4. Make Button B, Button C, Button D clickable
  5. Repeat Step 1~Step 4 for all other Buttons.

However, if I can define the event sequence, I can turn Button A, Button B, Button C and Button D (including corresponding panels) into components (Button Component and Panel Component), then the steps can be simplified.

  1. If Button A is clicked, add “Clickable” Flag to Button Component, and remove “Clickable” Flag of Button A.
  2. Add “Hidden” Flag of Panel Component, and remove “Hidden” Flag of Panel A.
  3. Repeat Step 1~Step 2 for all other buttons.

Edit:
Currently, since the “Component” does not support “Sequential Event Execution” function, even if you add “Hidden” flag of a component, and remove “Hidden” flag of its member, the component member will still be hidden.

Do you see alternative options and workaround to achieve it?

It is described above in a painful way. :neutral_face:

Mention some use cases

So many imaginable convenience in Complex UI design.

Latest ver add Tabview , isnt yur idea?

1 Like

Hello Bro,

Tabview is good indeed, but it doesn’t support icons, what’s more, the number of tabs is retricted to the screen size.

What I really want is “Complex Menu” with “Infinite” option (like the “Roller” widget), oh, maybe it is a mixed widget: “Complex Menu” + “Tab View” + “Infinite” Option.

Something like this:

    | /\ | ---- Up arrow button
    |  A |
    |  B |
    |  C |
    | \/ | ----- Down arrow button

With this kind of widget, the number of menu items will not be limited by the screen, and each menu button can be designed either via icon or text. Meanwhile it supports “Infinite” mode, which means if you press “Up arrow button”, the menu will display “D”, “A”, “B”…