All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sencha.gxt.theme.base.client.menu.CheckMenuItemBaseAppearance Maven / Gradle / Ivy

/**
 * Ext GWT 3.0.0-beta3 - Ext for GWT
 * Copyright(c) 2007-2011, Sencha, Inc.
 * [email protected]
 *
 * http://sencha.com/license
 */
package com.sencha.gxt.theme.base.client.menu;

import com.google.gwt.resources.client.CssResource;
import com.google.gwt.resources.client.ImageResource;
import com.sencha.gxt.core.client.dom.XElement;
import com.sencha.gxt.widget.core.client.menu.CheckMenuItem.CheckMenuItemAppearance;

public class CheckMenuItemBaseAppearance extends MenuItemBaseAppearance implements CheckMenuItemAppearance {

  public interface CheckMenuItemResources extends MenuItemResources {

    CheckMenuItemStyle checkStyle();
    
    ImageResource checked();
    
    ImageResource unchecked();
    
    ImageResource groupChecked();

  }

  public interface CheckMenuItemStyle extends CssResource {

    String menuItemChecked();

  }

  private CheckMenuItemResources resources;;
  private CheckMenuItemStyle checkStyle;

  public CheckMenuItemBaseAppearance(CheckMenuItemResources resources, MenuItemTemplate template) {
    super(resources, template);
    this.resources = resources;
    checkStyle = resources.checkStyle();
  }

  @Override
  public void applyChecked(XElement parent, boolean state) {
    parent.setClassName(checkStyle.menuItemChecked(), state);
  }

  @Override
  public ImageResource checked() {
    return resources.checked();
  }

  @Override
  public ImageResource unchecked() {
    return resources.unchecked();
  }

  @Override
  public ImageResource radio() {
    return resources.groupChecked();
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy