Package com.volantis.mcs.protocols.menu.model

Examples of com.volantis.mcs.protocols.menu.model.Menu


     */
    public void testGetMenuBufferBothMainMenuAndSubMenuAuto() throws Exception {
        MenuBufferLocator locator = createMenuBufferLocator();

        MenuModelBuilder builder = new ConcreteMenuModelBuilder();
        Menu menu;

        builder.startMenu();

        // Make the menu automatic allocate and ensure that the pane is
        // incompletely specified to ensure automatic iteration allocation
View Full Code Here


     */
    public void testGetMenuBufferConsistent() throws Exception {
        final MenuBufferLocator locator = createMenuBufferLocator();

        MenuModelBuilder builder = new ConcreteMenuModelBuilder();
        Menu menu;

        builder.startMenu();

        // Make the menu automatic allocate and ensure that the pane is
        // incompletely specified to ensure automatic iteration allocation
        builder.setElementDetails("menu", null,
                StylesBuilder.getCompleteStyles(
                        "mcs-menu-item-iterator-allocation: automatic"));

        builder.setPane(new FormatReference("pane",
                                            new NDimensionalIndex(
                                                    new int[]{1, 2, 0},
                                                    2)));

        createMenuItem(builder, "item1");

        builder.startMenu();

        createMenuItem(builder, "item2.1");
        createMenuItem(builder, "item2.2");

        builder.endMenu();

        menu = builder.endMenu();

        final Map buffers = new HashMap();

        MenuModelVisitor setupMapVisitor = new AbstractMenuModelHandler() {
            // javadoc inherited
            protected boolean handle(MenuItem item) {
                buffers.put(item, locator.getMenuBuffer(item));

                return false;
            }

            // javadoc inherited
            protected boolean handle(MenuItemGroup group) {
                buffers.put(group, locator.getMenuBuffer(group));

                return true;
            }

            // javadoc inherited
            protected boolean handle(Menu menu) {
                buffers.put(menu, locator.getMenuBuffer(menu));

                return true;
            }
        };

        setupMapVisitor.visit(menu);

        MenuModelVisitor checkVisitor = new AbstractMenuModelHandler() {
            // javadoc inherited
            protected boolean handle(MenuItem item) {
                assertSame("item's buffer not as",
                           buffers.get(item),
                           locator.getMenuBuffer(item));

                return true;
            }

            // javadoc inherited
            protected boolean handle(MenuItemGroup group) {
                assertSame("group's buffer not as",
                           buffers.get(group),
                           locator.getMenuBuffer(group));

                return true;
            }

            // javadoc inherited
            protected boolean handle(Menu menu) {
                assertSame("menu's buffer not as",
                           buffers.get(menu),
                           locator.getMenuBuffer(menu));

                return false;
            }
        };

        checkVisitor.visit(menu);

        assertSame("menu and first child should share same buffer",
                   buffers.get(menu),
                   buffers.get(menu.get(0)));

        assertNotSame("menu and second child should not share same buffer",
                      buffers.get(menu),
                      buffers.get(menu.get(1)));

        assertSame("sub-menu and its first child should share same buffer",
                   buffers.get(menu.get(1)),
                   buffers.get(((Menu)menu.get(1)).get(0)));

        assertSame("sub-menu and its second child should share same buffer",
                   buffers.get(menu.get(1)),
                   buffers.get(((Menu)menu.get(1)).get(1)));
    }
View Full Code Here

                assertNotSame("a new output buffer should have been pushed",
                              originalBuffer,
                              pageContext.getCurrentOutputBuffer());

                Menu menu = pageContext.getMenuBuilder().endMenu();

                assertNotNull("the menu model should be complete",
                              menu);

                MenuLabel label = menu.getLabel();

                assertNotNull("the menu label should exist",
                              label);

                assertEquals("pane not as",
                             PANE,
                             label.getPane().getStem());

                assertSame("output buffers not same",
                           pageContext.getCurrentOutputBuffer(),
                           label.getText().getText());

                assertEquals("title not as",
                             TITLE,
                             label.getTitle());

                assertEquals("onclick not as",
                             ON_CLICK,
                             label.getEventHandler(EventType.ON_CLICK).getScript());

                ElementDetails menuElementDetails = menu.getElementDetails();
                // if element details are not null, styles should be non null
                assertNotNull("Menu ElementDetails should not be null",
                        menuElementDetails);
                assertNotNull("Menu Styles should not be null",
                        menuElementDetails.getStyles());
View Full Code Here

     * type of horizontal menu separator.
     */
    public void testSelectMenuSeparatorHorizontal() throws Exception {
        for (int index = 0; index < horizontalSeparatorTypes.length; index++) {
            MenuSeparatorRendererSelector selector = createSelector();
            Menu menu;

            StyleKeyword type = horizontalSeparatorTypes[index];

            menu = createMenu(StylesBuilder.getCompleteStyles(
                    "mcs-menu-orientation: horizontal; " +
View Full Code Here

     * Checks that the correct class of separator renderer is returned for the
     * vertical menu separator.
     */
    public void testSelectMenuSeparatorVertical() throws Exception {
        MenuSeparatorRendererSelector selector = createSelector();
        Menu menu;

        menu = createMenu(StylesBuilder.getCompleteStyles(
                "mcs-menu-orientation: vertical"), null);

        checkSeparator("selectMenuSeparator(vertical)",
View Full Code Here

     * Checks that the correct class of separator renderer is returned for the
     * "none" type of menu item group separator.
     */
    public void testSelectMenuItemGroupSeparatorNone() throws Exception {
        MenuSeparatorRendererSelector selector = createSelector();
        Menu menu;

        menu = createMenu(null, StylesBuilder.getCompleteStyles(
                "mcs-menu-separator-type: none"));

        checkSeparator("selectMenuItemGroupSeparator(none)",
                       null,
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               true));
    }
View Full Code Here

     * Checks that the correct class of separator renderer is returned for the
     * "characters" type of menu item group separator.
     */
    public void testSelectMenuItemGroupSeparatorCharacters() throws Exception {
        MenuSeparatorRendererSelector selector = createSelector();
        Menu menu;

        menu = createMenu(null, StylesBuilder.getCompleteStyles(
                "mcs-menu-separator-characters: \"-\"; " +
                "mcs-menu-separator-position: before; " +
                "mcs-menu-separator-repeat: 2; " +
                "mcs-menu-separator-type: characters"));

        checkSeparator("selectMenuItemGroupSeparator(characters before match)",
                       getMenuItemGroupSeparatorCharactersClass(),
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               true));

        checkSeparator("selectMenuItemGroupSeparator(characters before mismatch)",
                       null,
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               false));
    }
View Full Code Here

     * Checks that the correct class of separator renderer is returned for the
     * "image" type of menu item group separator.
     */
    public void testSelectMenuItemGroupSeparatorImage() throws Exception {
        MenuSeparatorRendererSelector selector = createSelector();
        Menu menu;

        menu = createMenu(null, StylesBuilder.getCompleteStyles(
                "mcs-menu-separator-image: url(uri); " +
                "mcs-menu-separator-position: after; " +
                "mcs-menu-separator-type: image"));

        checkSeparator("selectMenuItemGroupSeparator(image after match)",
                       getMenuItemGroupSeparatorImageClass(),
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               false));

        checkSeparator("selectMenuItemGroupSeparator(image after mismatch)",
                       null,
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               true));
    }
View Full Code Here

            throws Exception {
        MenuSeparatorRendererSelector selector = createSelector();
        FormatReference pane = new FormatReference("pane",
                                                   NDimensionalIndex.
                                                   ZERO_DIMENSIONS);
        Menu menu;

        menu = createMenu(null, StylesBuilder.getCompleteStyles(
                "mcs-menu-separator-type: image; " +
                "mcs-menu-separator-image: url(uri); " +
                "mcs-menu-separator-position: after"), pane);

        checkSeparator("selectMenuItemGroupSeparator(image after match)",
                       null,
                       selector.selectMenuItemGroupSeparator(
                               (MenuItemGroup)menu.get(0),
                               false));
    }
View Full Code Here

     * type of horizontal menu item separator.
     */
    public void testSelectMenuItemSeparatorHorizontal() throws Exception {
        for (int index = 0; index < horizontalSeparatorTypes.length; index++) {
            MenuSeparatorRendererSelector selector = createSelector();
            Menu menu;

            StyleKeyword type = horizontalSeparatorTypes[index];

            menu = createMenu(StylesBuilder.getCompleteStyles(
                    "mcs-menu-item-orientation: horizontal; " +
View Full Code Here

TOP

Related Classes of com.volantis.mcs.protocols.menu.model.Menu

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.