Cascading Menus (2024)

Menus can be accessed during runtime with a special Cascading Menu block. This type of block mimics the menu structure set up in the Menu Information section of the Xephr Studio to display all of the menus and their menu entries starting with the defined menu root in a single block. Cascading menu blocks are often created on screen templates.

You can only have one cascading menu displayed per screen.

See Also

Menu Objects

Xephr Menu Service for Standard Blocks

Menu Examples

Requirements for Cascading Menus

Cascading Menu Operation

Creating Cascading Menus

Modifying Cascading Menus

Requirements for Cascading Menus

In order to use cascading menus, you must have:

  • Styles and link styles. The only style that is used in the cascading menu is the link style assigned to the block.

  • Uploaded image named arrowimagemain.gif. This arrow is displayed when a menu is displayed on the top level of your cascading menu. For vertical menus, this could be an arrow pointing to the right. For horizontal menus, this could be an arrow pointing down.

  • Uploaded image named arrowimagesub.gif. This arrow is displayed when a menu is displayed on a sub level of your cascading menu. For vertical menus, this could be an arrow pointing down. For horizontal menus, this could be an arrow pointing to the right.

  • Menus defined in the Menu Information section of the Xephr Studio.

  • You can only have one cascading menu displayed per screen.

If you are planning on displaying different menus based on a global value assigned to users, you will need to create one cascading menu block per global value. Then, use the hide if/show if properties for the block to indicate when it's displayed.

  • For example, if you are using the global value MAINMENU, and you have two types of menus to be displayed - ADMIN and USER, you would add the global variable to each user with either ADMIN or USER assigned as the global's value.

    Then you would create two cascading menu blocks. One you would assign the menu root of ADMIN and the other you would assign the menu root USER.

    For the ADMIN cascading menu, in the Show If property, you would enter $$MAINMENU$$='ADMIN'.
    For the USER cascading menu, in the Show if property, you would enter $$MAINMENU$$='USER'.

Cascading Menu Operation

You can only have one cascading menu displayed per screen.

Once you have set up a cascading menu block, the first set of menus/menu entries below the menu root will be displayed in the block, either vertically or horizontally, depending on the block set up. When you move your mouse over the menus, the entries on the menu will be displayed. When you click on a menu entry, the entity for that menu entry will be run.

Cascading menus can be set up as floating so that when you scroll in the browser screen, the menu will remain in the same general place in the browser. For example, if you were scrolling down, the menu would remain at the top of the browser screen by jumping downward every time you scroll.

In the following examples, the menu set up looks as follows. The menu root is MM.

Cascading Menus (1)

Horizontal Cascading Menu

Cascading Menus (2)

In this example, the arrowimagemain.gif is the arrow pointing down that is displayed at the top level, and the arrowimagesub.gif is the arrow pointing to the right on the submenu.

This cascading menu block is set up with the Vertical Cascade property set to false, and the Floating Menus property set to false.

Vertical Cascading Menu

Cascading Menus (3)

In this example, the arrowimagemain.gif is the arrow pointing to the right that is displayed at the top level, and the arrowimagesub.gif is the arrow pointing down on the submenu.

This cascading menu block is set up with the Vertical Cascade property set to true, and the Floating Menus property set to false.

Creating Cascading Menu Blocks

  1. Create a screen or locate an existing screen to which you wish to add a cascading menu block in the Explorer Tree.

  1. There are options in adding the block to the screen at this point.

  • Right-click on the screen or template screen, hold your cursor over the Create option, and when the sub-menu is displayed, drag your cursor over the Wizard option. The final sub-menu will be displayed. Left-click on the Block option.

  • Left-click on the [New Block] Cascading Menus (4) button in the Main Toolbar.

  • Left-click on the File Menu. Left-click on the New option. Left-click on the Block option.

  • Press Alt+B on the keyboard.

  1. The Adding New Block screen will be displayed.

  2. In the Create block similar to pop-list, select (none).

  3. In the Block Name property, enter the name of the cascading menu block.

  4. In the Block Type pop-list, select Cascading Menu.

  5. Select the mode(s) in which this block will be displayed for this screen. There are four flags here, one for each mode - QBE, List, Edit, New. For each mode in which you wish the block to be displayed, set the flag to on. For each mode in which you do not wish the block to be displayed, set the flag to off.

  6. Click on the Next button to continue.

  7. Click on the Next button at the bottom right of the screen to continue.

  8. At this point a new screen is displayed. If you wish to add another block, set the Add Block or Labels flag to on and press the Next button.

  • A new screen will be displayed to allow you to select whether you want to add another block to an existing block or the entity. Click on the desired object and press the Add Block button to continue to add blocks as described above.

  • The screen also allows you to add labels to a block. Click on the desired block and press the Add Labels button to add labels to the block as described for the Not From Query query type.

  1. Otherwise, press the Finish button in the bottom right of the screen.

Additional modifications need to be made to the block before the cascading menu block will work.

Modifying Cascading Menu Blocks

  1. In the Explorer Tree, locate the object for which you wish to modify a block.

  • Expand the Template Information object and select the template screen for which you wish to modify a block.

  • Expand the Group Information object and any sub-groups until you can select the screen for which you wish to modify a block.

  1. Expand the screen and select the block that you wish to modify.

  2. Display the block properties. These will either be displayed in Alphabetical or Logically, depending on the setting of the [Sort Alphabetically/Logically] Cascading Menus (5) button. The following instructions are assuming that the properties are sorted logically.

  3. In the Name property, the name entered during block creation is displayed, and can be changed, if desired.

  4. In the Description property, enter the user-defined description for the block.

  5. In the Parent pop-list, if the parent of this block is another block, the parent block is displayed, grayed out. Otherwise, this pop-list is set to (entity root).

  6. In the Type pop-list, the original setting from the block creation will be displayed, and should be set to Cascading Menu.

  7. In the Mutability pop-list, select whether this block can be modified on screens that are created from this template. This option is ONLY available for template screens.

  • When set to Fully Mutable, the block is placed on all screens that inherit from this template and can be modified or deleted.

  • When set to Positionally Mutable, the block is placed on all screens that inherit from this template and can only be moved.

  • When set the Not Mutable, the block is placed on all screens that inherit from this template and cannot be modified in anyway.

  1. In the Menu Root pop-list, select the menu name for the top level menu that will be displayed on this cascading menu block. You can only select from menus that already exist in the Menu Information section of the Xephr Studio.

  2. Set the Vertical Cascade pop-list to the desired setting. When set to false, the menus and menu entries below the menu root will be displayed horizontally from left to right on the screen. When set to true, the menus and menu entries below the menu root will be displayed vertically from top to bottom on the screen.

  3. Set the Floating Menus pop-list to the desired setting. When set to false, the cascading menu will remain in the same place on the screen. When set to true, the cascading menu will 'float' in the same place in the browser when you are scrolling within the browser. For example, if the cascading menu were at the top of the screen, and you scrolled down, the cascading menu block would jump down to remain at the top of the browser while you scroll.

  4. Set the Body Style pop-list to the style to be applied to the body for this block. If set to (from parent), the style used will be the Body Style from the screen properties.

  5. Set the Editable Field Style pop-list to the style to be applied by default to the editable fields for this block. If set to (from parent), the style used will be the Editable Field Style from the screen properties.

  6. Set the Non- Editable Field Style pop-list to the style to be applied by default to the display only and label fields for this block. If set to (from parent), the style used will be the Non- Editable Field Style from the screen properties.

  7. Set the Link Style pop-list to the style to be applied to hyperlinks for this block. If set to (from parent), the style used will be the Link Style from the screen properties.

  8. In the X property, the location in pixels is displayed for the top left corner of this block or field on the X-axis (horizontal) of the layout screen. You can change this number manually, or it will be changed when you are altering the layout with the Designer Tool.

  9. In the Y property, the location in pixels is displayed for the top left corner of this block or field on the Y-axis (vertical) of the layout screen. This value is used in conjunction with the Y Anchor Type setting. You can change this number manually, or it will be changed when you are altering the layout with the Designer Tool.

  10. In the Y Anchor Type pop-list, select the anchor type for this block. Choices are Fixed and Relative to Block..

  • When set to Fixed, the upper left corner of this block will be placed a fixed number of pixels in relation to the upper left corner of the block's parent. The number of pixels is defined in the Y field for the block.

  • When set to Relative to Block, the upper left corner of this block will be placed a fixed number of pixels from the bottom edge of the specified block defined in the Y Anchor field. Example: if you want a particular block to appear immediately after another block which happens to be an Expandable block (and therefore you don't know where it will end on the entity).

  1. In the Y Anchor property, select the block or field that will be used to determine the location of the block on the Y-axis. The property is only displayed when the Y Anchor Type pop-list is set to Block.

  2. In the Width property, enter the width for the block in pixels.

  3. In the Height property, enter the height for the block in pixels.

  4. In the Expand Type pop-list, define the size of the block. Choices are Expandable, Fixed No Scroll Bars, and Fixed with Scroll Bars.

  • When set to Expandable, the block will be at least the size of the Width and Height values, but it can be larger.

  • When set to Fixed No Scroll Bars, the block will be the exact size defined using the Width and Height values.

  • When set to Fixed with Scroll Bars, the block will be the exact sized defined using the Width and Height values, but there will be a scroll bar that allows you to scroll up or down within the block or field.

  • Example: an address block on a report may be fixed size, while the block for the line items on an invoice will be expandable so that all line items will be visible when the report is generated.

  1. In the Hide If property, enter the conditions under which this block will be hidden. The field will be visible on the block when the conditions are met. When an entry is made in this property, the Show If property will be hidden.

  • Expressions are entered in this field using formulas and are evaluated on the server side.

  • When the expression entered in this property evaluates to true, the field will be hidden. The evaluation of the expression occurs when the entity is generated, and not when the user is making modifications to fields on the block. (i.e. This does not "watch" user input in a field and dynamically show a block; everything is locked in when the block is first output).

  • Example: $$VENDOR.ACTIVE$$ = 'Y'
    Hide the block if the value of the active field on the vendor block is set to Y when the block is generated.

  • Example: starts-with( $$CUST_NO$$, 'NDS')
    Hide the block only if the customer number starts with NDS.

  • The code entered in this field can also include and/or expressions:
    And is indicated by two ampersands &&
    Or is indicated by two vertical lines ||

    Example: ($$XEPHR_ENTITY_NAME$$='MENU')&&($$NEXTMENU$$='MM')
    Hide this block if the current entity is the MENU entity and the NEXTMENU global value is set to MM.

    Example: ($$CUST_NO$$='NDS')||($$CUST_NO$$='')
    Hide this block if the customer number global is set to NDS, or the customer number global is null or doesn't exist.

  1. In the Show If property, enter the conditions under which this block will be displayed. The block will be hidden when the conditions are met. When an entry is made in this property, the Hide If property will be hidden.

  • Expressions are entered in this field using formulas and are evaluated on the server side.

  • When the expression entered in this property evaluates to true, the field will be displayed. The evaluation of the expression occurs when the entity is generated, and not when the user is making modifications to fields on the block. (i.e. This does not "watch" user input in a field and dynamically hide a block; everything is locked in when the block is first output).

  • Example: $$VENDOR.ACTIVE$$ = 'N'
    The block will be displayed when the value of the active field on the vendor block is N when the entity is generated.

  • Example: number( $$ORDER.TOTAL$$) = 0
    Displays the block if the value of the total field on the order block is zero.

  • The code entered in this field can also include and/or expressions:
    And is indicated by two ampersands &&
    Or is indicated by two vertical lines ||

    Example: ($$XEPHR_ENTITY_NAME$$='MENU')&&($$NEXTMENU$$='MM')
    Show this block if the current entity is the MENU entity and the NEXTMENU global value is set to MM.

    Example: ($$CUST_NO$$='NDS')||($$CUST_NO$$='')
    Show this block if the customer number global is set to NDS, or the customer number global is null or doesn't exist.

  1. In the Show if Empty pop-list, determine whether the block will be displayed when it is empty. When set to true, the block will be displayed on the screen even when it contains no data. When set to false, the block will be hidden when it contains no data.

  2. In the Z Order property, enter a number to define the order in which the block will be generated on the entity. The higher the number, the later the block will be generated. The Z order is specific to the indention level in the entity tree, and is affected by the Y Anchor and Anchor Type properties.

    For blocks with a Tab Block as the parent block, this number determines in which order the tabs will be displayed within the tab block.

  3. The Created on property displays the date and time on which this block was created and cannot be changed.

  4. The Modified on property displays the date and time on which this block was last changed and cannot be modified.

  5. When all changes have been made, press the [Save] Cascading Menus (6) button in the Main Toolbar.

Cascading Menus (2024)

FAQs

Cascading Menus? ›

Cascading menus allow users to choose from a large variety of choices, by displaying menus with multiple levels of hierarchy. They are organized into menus of parent list items that contain child list items.

What is cascading menu in HCI? ›

A cascading menu is a computer menu system in which a selected option in one menu is used to determine what options are available in the next. Developers divide the list of possible values ​​into two or more logical levels, and each of those levels is represented in a menu.

What are the different types of drop down menus? ›

There are two types of dropdowns – single button and split button. Both types can optionally have a leading icon. Dropdowns can have one of five action styles applied — primary, secondary, info, contrast, and destructive. Dropdowns can have bold, subtle, or minimal emphasis.

What type of menu is commonly used when designing for smaller screens and devices? ›

The hamburger menu is typically used for mobile apps as it is very accommodating to smaller screens and mobile devices. However, it can also be helpful on desktop websites—for instance if there are too many pages you need to link to in your navigation bar.

Which of the following menu types is also called a drop down menu? ›

Pull-down is also called drop-down menu. Q.

What is a cascading menu and give two examples? ›

A menu system that displays submenus off to the side when selected. In Windows XP, the Programs submenu in the Start menu is cascaded to the right side when selected (see below).

What is cascading used for? ›

Cascading use is the efficient utilisation of resources by using residues and recycled materials for material use to extend total biomass availability within a given system.

What is the difference between a menu and a dropdown? ›

Menus allow users to make a selection from multiple options. They are less prominent and take up less space than selection controls, such as a set of radio buttons. Dropdown menus display a list of options, triggered by an icon, button, or action. Their placement varies based on the element that opens them.

Are drop-down menus good or bad? ›

From a design standpoint, however, drop-down menus are an excellent feature because they help clean up a busy layout. If structured correctly, drop-down menus can be a great navigation tool, while still being a usable and attractive design feature. Yes, that's right: drop-down navigation menus can be user-friendly.

What is the difference between dropdown and popover menu? ›

Popover menu is a touch design. Fly-out menu is a desktop dropdown menu sub-menu. Dropdown is the original description given to expanding text menus on desktop. Dropdown refers to the visual effect of the menu opening.

What is the most popular menu size? ›

Most menus are built to accommodate the standard paper sizes of 8.5” x 11”. If your menu exceeds 12” x 18”, consider having separate menus for wine, dessert, and kids in order to keep the size manageable. You don't want to overwhelm your guests.

What is the best color for a digital menu? ›

Contrast your menu colors.

Dark text on a light background is best for menus with lots of content to read. Most consumers experience less eye strain with this combination, which makes it easier to read all the information. Light text on a dark background is best for scanning menus.

What is the cascading menu also called? ›

Definitions of cascading menu. a secondary menu that appears while you are holding the cursor over an item on the primary menu. synonyms: hierarchical menu, submenu.

What is dynamic drop-down menus? ›

Dynamic dropdowns, also known as dependent or cascading dropdowns, are two interconnected connection fields within a Form view. They enable the display of values in the second dropdown field based on the selection made in the first dropdown field.

What is the drop-down menu on a phone called? ›

To find the Android Quick Settings menu, just drag your finger from the top of your screen downward. If your phone is unlocked, you'll see an abbreviated menu (the screen to the left) that you can either use as-is or drag down to see an expanded quick settings tray (the screen to the right) for more options.

What is meaning of cascading in computer? ›

Cascading is a software abstraction layer for Apache Hadoop and Apache Flink. Cascading is used to create and execute complex data processing workflows on a Hadoop cluster using any JVM-based language (Java, JRuby, Clojure, etc.), hiding the underlying complexity of MapReduce jobs.

What is a cascading in computer terms? ›

Cascading is a platform for developing big data applications on Hadoop. It offers a computation engine, systems integration framework, data processing and scheduling capabilities.

What is cascading dropdown menu? ›

A cascading drop-down list is a series of dependent DropDownList controls in which one DropDownList control depends on the parent or previous DropDownList controls. The items in the DropDownList control are populated based on an item that is selected by the user from another DropDownList control.

What is cascading in IC? ›

In electronics when two stages are cascaded means connecting output of first stage to input of next stage so output now will be taken from second stage for input at first stage. This cascading connects two stage back to back.

Top Articles
Latest Posts
Article information

Author: Velia Krajcik

Last Updated:

Views: 6355

Rating: 4.3 / 5 (54 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Velia Krajcik

Birthday: 1996-07-27

Address: 520 Balistreri Mount, South Armand, OR 60528

Phone: +466880739437

Job: Future Retail Associate

Hobby: Polo, Scouting, Worldbuilding, Cosplaying, Photography, Rowing, Nordic skating

Introduction: My name is Velia Krajcik, I am a handsome, clean, lucky, gleaming, magnificent, proud, glorious person who loves writing and wants to share my knowledge and understanding with you.