package org.geogebra.web.web.gui.menubar; import org.geogebra.common.GeoGebraConstants; import org.geogebra.common.main.App; import org.geogebra.common.main.Localization; import org.geogebra.common.move.views.BooleanRenderable; import org.geogebra.web.html5.main.AppW; import org.geogebra.web.web.css.GuiResources; import org.geogebra.web.web.gui.images.AppResources; import com.google.gwt.user.client.ui.MenuItem; /** * Help menu */ public class HelpMenuW extends GMenuBar implements BooleanRenderable{ private MenuItem tutorials, forum, manual, about, bug; /** * @param app * application */ public HelpMenuW(final App app) { super(true, "help"); addStyleName("GeoGebraMenuBar"); Localization loc = app.getLocalization(); // TODO: This item has no localization entry yet. //addItem("Version", new Command() { // public void execute() { // Window.alert("GeoGebra " + GeoGebraConstants.VERSION_STRING + "\n" // + GeoGebraConstants.BUILD_DATE); // } //}); // Tutorials tutorials = addItem(MainMenu.getMenuBarHtml(AppResources.INSTANCE.empty().getSafeUri().asString(), loc.getMenu("Tutorials"), true), true, new MenuCommand((AppW) app) { @Override public void doExecute() { app.getGuiManager().openHelp(App.WIKI_TUTORIAL); } }); // Help manual = addItem(MainMenu.getMenuBarHtml(GuiResources.INSTANCE.menu_icon_help().getSafeUri().asString(), loc.getMenu("Manual"), true), true, new MenuCommand((AppW) app) { @Override public void doExecute() { app.getGuiManager().openHelp(App.WIKI_MANUAL); } }); forum = addItem(MainMenu.getMenuBarHtml(AppResources.INSTANCE.empty().getSafeUri().asString(), loc.getMenu("GeoGebraForum"), true), true, new MenuCommand((AppW) app) { @Override public void doExecute() { ((AppW) app).getFileManager().open(GeoGebraConstants.FORUM_URL, "_blank", ""); } }); addSeparator(); // Report Bug bug = addItem(MainMenu.getMenuBarHtml(AppResources.INSTANCE.empty().getSafeUri().asString(), loc.getMenu("ReportBug"), true), true, new MenuCommand((AppW) app) { @Override public void doExecute() { ((AppW) app).getFileManager().open(GeoGebraConstants.GEOGEBRA_REPORT_BUG_WEB + "&lang="+app.getLocalization().getLanguage(), "_blank",""); } }); addSeparator(); about = addItem(MainMenu.getMenuBarHtml(GuiResources.INSTANCE.menu_icon_help_about().getSafeUri().asString(), loc.getMenu("AboutLicense"), true), true, new MenuCommand((AppW) app) { @Override public void doExecute() { ((AppW) app).getFileManager().open(GeoGebraConstants.GGW_ABOUT_LICENSE_URL + "&version=" + app.getVersionString() + "&date=" + GeoGebraConstants.BUILD_DATE, "_blank", "width=720,height=600,scrollbars=yes,toolbar=no,location=no,directories=no,menubar=no,status=no,copyhistory=no"); } }); if(!((AppW)app).getNetworkOperation().isOnline()){ render(false); } ((AppW)app).getNetworkOperation().getView().add(this); // TODO: This item has no localization entry yet. //addItem("About / Team", new Command() { // public void execute() { // Window.open(GeoGebraConstants.GGW_ABOUT_TEAM_URL, "_blank", ""); // } //}); } @Override public void render(boolean b) { about.setEnabled(b); manual.setEnabled(b); tutorials.setEnabled(b); bug.setEnabled(b); forum.setEnabled(b); } }