001package gwt.material.design.addins.client.menubar; 002 003/* 004 * #%L 005 * GwtMaterial 006 * %% 007 * Copyright (C) 2015 GwtMaterialDesign 008 * %% 009 * Licensed under the Apache License, Version 2.0 (the "License"); 010 * you may not use this file except in compliance with the License. 011 * You may obtain a copy of the License at 012 * 013 * http://www.apache.org/licenses/LICENSE-2.0 014 * 015 * Unless required by applicable law or agreed to in writing, software 016 * distributed under the License is distributed on an "AS IS" BASIS, 017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 018 * See the License for the specific language governing permissions and 019 * limitations under the License. 020 * #L% 021 */ 022 023import com.google.gwt.dom.client.Document; 024import gwt.material.design.addins.client.MaterialAddins; 025import gwt.material.design.client.MaterialDesignBase; 026import gwt.material.design.client.base.MaterialWidget; 027 028//@formatter:off 029/** 030 * Menu bar is a component that bring a good UI UX navigation for Desktop or tablet interface. 031 * It may require to have a dropdown components inside menu bar. 032 * 033 * <h3>XML Namespace Declaration</h3> 034 * <pre> 035 * {@code 036 * xmlns:ma='urn:import:gwt.material.design.addins.client' 037 * } 038 * </pre> 039 * 040 * <h3>UiBinder Usage:</h3> 041 * <pre> 042 *{@code 043 * <ma:menubar.MaterialMenuBar> 044 * <!-- Menu Bar link --> 045 * <m:MateriaLink text="File" activates="dp-edit"/> 046 * 047 * <!-- Edit Drop Down --> 048 * <m:MaterialDropDown activator="dp-edit" belowOrigin="true"> 049 * <m:MaterialLink text="Undo" iconType="UNDO" textColor="black"> 050 * <m:MaterialLabel text="Ctrl + Z" float="RIGHT"/> 051 * </m:MaterialLink> 052 * <m:MaterialLink text="Redo" iconType="REDO" textColor="black"> 053 * <m:MaterialLabel text="Ctrl + Y" float="RIGHT"/> 054 * </m:MaterialLink> 055 * </m:MaterialDropDown> 056 * </ma:menubar.MaterialMenuBar> 057 * } 058 * </pre> 059 * 060 * @author kevzlou7979 061 * @see <a href="http://gwtmaterialdesign.github.io/gwt-material-demo/#menubar">MenuBar</a> 062 */ 063//@formatter:on 064public class MaterialMenuBar extends MaterialWidget { 065 066 static { 067 if(MaterialAddins.isDebug()) { 068 MaterialDesignBase.injectCss(MaterialMenuBarDebugClientBundle.INSTANCE.menubarCssDebug()); 069 } else { 070 MaterialDesignBase.injectCss(MaterialMenuBarClientBundle.INSTANCE.menubarCss()); 071 } 072 } 073 074 public MaterialMenuBar() { 075 super(Document.get().createDivElement(), "menu-bar"); 076 } 077 078}