Package org.openfaces.component.command

Examples of org.openfaces.component.command.MenuItem


                popupMenu.setStandalone(true);

                popupMenu.getAttributes().put(summaryFunctionsAttribute, applicableFunctions);
                for (int i = 0, count = applicableFunctions.size(); i < count; i++) {
                    SummaryFunction function = applicableFunctions.get(i);
                    MenuItem menuItem = Components.createComponent(context, MenuItem.COMPONENT_TYPE, MenuItem.class, popupMenu, "item" + i);
                    String functionName = function.getName();
                    menuItem.setValue(functionName);
                    menuItem.setOnclick(new ScriptBuilder().functionCall(
                            "O$.Summary._setFunction", functionName.toLowerCase()
                    ).toString());
                    menuItem.setIconUrl(Resources.internalURL(context, null,
                            SelectBooleanCheckboxImageManager.DEFAULT_UNSELECTED_IMAGE, false));
                    menuItem.getAttributes().put(ATTR_FUNCTION_NAME, functionName);
                    popupMenu.getChildren().add(menuItem);
                }

                popupMenuContainer.getChildren().add(popupMenu);
            }
View Full Code Here


        public void encodeAfterCalculation(FacesContext context) throws IOException {
            UsageContext usageContext = getUsageContext();
            if (!usageContext.isApplicableInThisContext()) return;

            MenuItem selectedMenuItem = null;
            PopupMenu popupMenu;
            if (getSummary().getFunctionEditable()) {
                List<SummaryFunction> applicableFunctions = usageContext.getApplicableFunctions();
                popupMenu = getMenuWithFunctions(context, applicableFunctions);
                encodePopupMenu(context, popupMenu);

                SummaryFunction currentFunction = usageContext.getFunction();
                String currentFunctionName = currentFunction.getName();
                List<UIComponent> children = popupMenu.getChildren();
                for (UIComponent child : children) {
                    if (!(child instanceof MenuItem)) continue;
                    MenuItem menuItem = (MenuItem) child;
                    String functionName = (String) child.getAttributes().get(ATTR_FUNCTION_NAME);
                    if (functionName.equals(currentFunctionName)) {
                        selectedMenuItem = menuItem;
                        break;
                    }
View Full Code Here

        List<BaseColumn> visibleColumns = table.getRenderedColumns();
        List<BaseColumn> allColumns = table.getAllColumns();
        for (int i = 0, count = allColumns.size(); i < count; i++) {
            BaseColumn column = allColumns.get(i);
            MenuItem menuItem = Components.createComponent(context, MenuItem.COMPONENT_TYPE, MenuItem.class, cvm, "col" + i);
            menuItem.setValue(column.getColumnHeader());
            boolean columnVisible = visibleColumns.contains(column);
            menuItem.setIconUrl(Resources.internalURL(context, null,
                    columnVisible
                            ? SelectBooleanCheckboxImageManager.DEFAULT_SELECTED_IMAGE
                            : SelectBooleanCheckboxImageManager.DEFAULT_UNSELECTED_IMAGE,
                    false));
            menuChildren.add(menuItem);
View Full Code Here

import java.io.IOException;

public class RemoveFromGroupingMenuItemRenderer extends ColumnMenuItemRenderer {
    @Override
    public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
        MenuItem menuItem = (MenuItem) component;
        if (menuItem.getValue() == null)
            menuItem.setValue("Remove from Grouping");
        menuItem.setOnclick(new ScriptBuilder().functionCall("O$.ColumnMenu._removeFromGrouping",
                getTable("<o:sortDescendingMenuItem>", menuItem)).toString());
        if (menuItem.getIconUrl() == null)
            menuItem.setIconUrl(Resources.internalURL(
                    context, null, "table/removeFromGrouping.png", false));
        super.encodeBegin(context, component);
    }
View Full Code Here

import java.io.IOException;

public class HideColumnMenuItemRenderer extends ColumnMenuItemRenderer {
    @Override
    public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
        MenuItem menuItem = (MenuItem) component;
        if (menuItem.getValue() == null)
            menuItem.setValue("Hide");
        menuItem.setOnclick(new ScriptBuilder().functionCall("O$.ColumnMenu._hideColumn",
                getTable("<o:hideColumnMenuItem>", menuItem)).getScript());
        super.encodeBegin(context, component);
    }
View Full Code Here

        PopupMenu columnMenu = (PopupMenu) component;
        columnMenu.setStandalone(true);
        columnMenu.encodeAll(context);

        // todo: move item identification responsibility to the items themselves
        MenuItem sortAscMenuItem = null, sortDescMenuItem = null, hideColumnMenuItem = null,
                groupByColumnMenuItem = null, removeFromGroupingMenuItem = null, cancelGroupingMenuItem = null,
                resetSortingMenuItem = null;
        for (UIComponent child : columnMenu.getChildren()) {
            if (child instanceof SortAscendingMenuItem)
                sortAscMenuItem = (MenuItem) child;
View Full Code Here

import java.io.IOException;

public class GroupByColumnMenuItemRenderer extends ColumnMenuItemRenderer {
    @Override
    public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
        MenuItem menuItem = (MenuItem) component;
        if (menuItem.getValue() == null)
            menuItem.setValue("Group by This Column");
        menuItem.setOnclick(new ScriptBuilder().functionCall("O$.ColumnMenu._groupByColumn",
                getTable("<o:sortDescendingMenuItem>", menuItem)).toString());
        if (menuItem.getIconUrl() == null)
            menuItem.setIconUrl(Resources.internalURL(
                    context, null, "table/groupByColumn.png", false));
        super.encodeBegin(context, component);
    }
View Full Code Here

    private JSONArray getMenuItemParameters(PopupMenu popupMenu) {
        JSONArray menuItemParameters = new JSONArray();
        List<UIComponent> components = popupMenu.getChildren();
        for (UIComponent component : components) {
            if (component instanceof MenuItem) {
                MenuItem menuItem = (MenuItem) component;
                Map parameters = (Map) menuItem.getAttributes().get(MenuItemRenderer.MENU_ITEMS_PARAMETERS_KEY);
                if (parameters == null) {
                    parameters = new HashMap();
                }
                JSONObject obj = new JSONObject(parameters);
                menuItemParameters.put(obj);
View Full Code Here

    private static final String ARROW_FAKE_SPAN_SUFIX = "::arrowfakespan";

    @Override
    public void encodeBegin(FacesContext context, UIComponent component) throws IOException {

        MenuItem menuItem = (MenuItem) component;
        ResponseWriter writer = context.getResponseWriter();
        PopupMenu popupMenu = (PopupMenu) menuItem.getParent();

        writer.startElement("li", menuItem);
        writeAttribute(writer, "class", DEFAULT_LIST_ITEM_CLASS);
        writeAttribute(writer, "id", menuItem.getClientId(context));

        renderStartMenuItemSpan(context, menuItem, writer);

        renderStyleClass(context, menuItem, writer);

        addSelectedStyleClass(context, menuItem);

        renderMenuItemImage(context, menuItem, writer, popupMenu);
        //content span
        writer.startElement("span", menuItem);
        writeAttribute(writer, "id", menuItem.getClientId(context) + SPAN_SUFIX);

        String contentClass = Styles.getCSSClass(context, menuItem, menuItem.getContentAreaStyle(), StyleGroup.regularStyleGroup(),
                menuItem.getContentAreaClass(), Styles.getCSSClass(context, popupMenu, popupMenu.getItemContentStyle(), StyleGroup.regularStyleGroup(),
                        popupMenu.getItemContentClass(), DEFAULT_CONTENT_CLASS));

        writeAttribute(writer, "class", contentClass);

        renderContentStyleClass(context, menuItem, writer);


        renderMenuItemChildren(context, menuItem, writer);

        writer.endElement("span");

        UIComponent popupMenuChild = getChildPopupMenu(menuItem);

        Styles.renderStyleClasses(context, menuItem);


        addSubmenuImage(context, menuItem, writer, popupMenu, popupMenuChild);
        if (popupMenuChild != null) {
            popupMenuChild.encodeAll(context);
        }

        Styles.renderStyleClasses(context, menuItem);

        writer.endElement("span");

        boolean disabled = menuItem.isDisabled();
        addMenuItemParameter(menuItem, "disabled", disabled ? true : null);
    }
View Full Code Here

//            menuItems.add(Components.createComponent(context, CancelGroupingMenuItem.COMPONENT_TYPE, CancelGroupingMenuItem.class, menu, "cancelGrouping");
            menuItems.add(Components.createComponent(context, HideColumnMenuItem.COMPONENT_TYPE, HideColumnMenuItem.class, menu, "hideColumn"));
            menuItems.add(Components.createComponent(context, MenuSeparator.COMPONENT_TYPE, MenuSeparator.class, menu, "separator"));
            ColumnVisibilityMenu columnVisibilityMenu = Components.createComponent(context,
                    ColumnVisibilityMenu.COMPONENT_TYPE, ColumnVisibilityMenu.class, menu, "columnVisibilityMenu");
            MenuItem columns = Components.createComponent(context, MenuItem.COMPONENT_TYPE, MenuItem.class, menu, "columnsSubmenu");
            columns.setValue("Columns");
            columns.getChildren().add(columnVisibilityMenu);
            menuItems.add(columns);
        }

        super.encodeBegin(context, component);
    }
View Full Code Here

TOP

Related Classes of org.openfaces.component.command.MenuItem

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.