UNPKG

jqwidgets-framework

Version:

jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.

86 lines (79 loc) 3.27 kB
/// <reference path="../../../jqwidgets-ts/jqwidgets.d.ts" /> function createMenu(selector, disabledSelector, openSelector, hoverSelector, topLevelArrowsSelector, animationSelector) { // initialization options - validated in typescript // jqwidgets.MenuOptions has generated TS definition let options: jqwidgets.MenuOptions = { width: '670', height: '30px', showTopLevelArrows: false }; // creates an instance let myMenu: jqwidgets.jqxMenu = jqwidgets.createInstance(selector, 'jqxMenu', options); let optionsCheckBoxes: jqwidgets.CheckBoxOptions = { width: '150px', height: '20px' }; let disabled: jqwidgets.jqxCheckBox = jqwidgets.createInstance(disabledSelector, 'jqxCheckBox', optionsCheckBoxes); let open: jqwidgets.jqxCheckBox = jqwidgets.createInstance(openSelector, 'jqxCheckBox', optionsCheckBoxes); let hover: jqwidgets.jqxCheckBox = jqwidgets.createInstance(hoverSelector, 'jqxCheckBox', optionsCheckBoxes); let topLevelArrows: jqwidgets.jqxCheckBox = jqwidgets.createInstance(topLevelArrowsSelector, 'jqxCheckBox', optionsCheckBoxes); let animation: jqwidgets.jqxCheckBox = jqwidgets.createInstance(animationSelector, 'jqxCheckBox', optionsCheckBoxes); animation.addEventHandler('change', function (event) { let value = event.args.checked; // enable or disable the menu's animation. if (!value) { options.animationShowDuration = 0; options.animationHideDuration = 0; options.animationShowDelay = 0; myMenu.setOptions(options); } else { options.animationShowDuration = 300; options.animationHideDuration = 200; options.animationShowDelay = 200; myMenu.setOptions(options); } }); disabled.addEventHandler('change', function (event) { let value = event.args.checked; // enable or disable the menu if (!value) { myMenu.disabled = false; } else { myMenu.disabled = true; } }); hover.addEventHandler('change', function (event) { let value = event.args.checked; // enable or disable the menu's hover effect. if (!value) { myMenu.enableHover = false; } else { myMenu.enableHover = true; } }); open.addEventHandler('change', function (event) { let value = event.args.checked; // enable or disable the opening of the top level menu items when the user hovers them. if (!value) { myMenu.autoOpen = false; } else { myMenu.autoOpen = true; } }); topLevelArrows.addEventHandler('change', function (event) { let value = event.args.checked; // enable or disable the opening of the top level menu items when the user hovers them. if (!value) { options.showTopLevelArrows = false; myMenu.setOptions(options); } else { options.showTopLevelArrows = true; myMenu.setOptions(options); } }); }