/** * Copyright (C) 2010 Asterios Raptis * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package de.alpharogroup.wicket.base.examples; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import de.alpharogroup.io.annotations.ImportResource; import de.alpharogroup.io.annotations.ImportResources; import de.alpharogroup.wicket.base.components.labeled.examples.LabeledHomePage; import de.alpharogroup.wicket.base.components.viewmode.examples.ViewOrEditPage; import de.alpharogroup.wicket.base.examples.sitemap.SiteMapPage; import de.alpharogroup.wicket.base.examples.urls.WicketUrlPage; import de.alpharogroup.wicket.base.examples.velocity.DynamicPage; import de.alpharogroup.wicket.base.mainbase.ApplicationBasePanel; import de.alpharogroup.wicket.components.menu.suckerfish.MenuItem; import de.alpharogroup.wicket.components.menu.suckerfish.MenuItemFactory; import de.alpharogroup.wicket.components.menu.suckerfish.MenuPanel; @ImportResources(resources = { // This css file is currently loaded... @ImportResource(resourceName = "MenubarPanel.css", resourceType = "css") }) public class MenubarPanel extends ApplicationBasePanel<Object> { private static final long serialVersionUID = 1L; public MenubarPanel(final String id) { this(id, null); } public MenubarPanel(final String id, final IModel<Object> model) { super(id, model); // Another way to load your css file is to override the renderHead method... final MenuPanel menuBar = new MenuPanel("menuBar"); add(menuBar); initializeMenu(menuBar); } private void initializeMenu(final MenuPanel menuBar) { final MenuItem miHome = MenuItemFactory.newMenuItem(HomePage.class, "top.menu.home", this); menuBar.addMenu(miHome); final MenuItem miAnother = MenuItemFactory.newMenuItem(AnotherPage.class, "top.menu.another", this); menuBar.addMenu(miAnother); final MenuItem subMenuFromMiAnother = MenuItemFactory.newMenuItem(SubmenuPage.class, "top.menu.sub.another.overview", this); miAnother.addMenu(subMenuFromMiAnother); final MenuItem subMenuDynamic = MenuItemFactory.newMenuItem(DynamicPage.class, "top.menu.sub.dynamic.overview", this); miAnother.addMenu(subMenuDynamic); final MenuItem textMenu = MenuItemFactory.newMenuItem(Model.of("Only text")); miAnother.addMenu(textMenu); final MenuItem miViewOrEdit = MenuItemFactory.newMenuItem(ViewOrEditPage.class, "top.menu.viewmode", this); menuBar.addMenu(miViewOrEdit); final MenuItem miUrls = MenuItemFactory.newMenuItem(WicketUrlPage.class, "top.menu.urls", this); menuBar.addMenu(miUrls); final MenuItem miLabeled = MenuItemFactory.newMenuItem(LabeledHomePage.class, "top.menu.labeled", this); menuBar.addMenu(miLabeled); final MenuItem miSitemap = MenuItemFactory.newMenuItem(SiteMapPage.class, "top.menu.sitemap", this); menuBar.addMenu(miSitemap); final MenuItem miModel = MenuItemFactory.newMenuItem(ModelPage.class, "top.menu.model", this); menuBar.addMenu(miModel); } }