2 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 * Copyright (C) 2010 - DIGITEO - Vincent COUVERT
5 * This file must be used under the terms of the CeCILL.
6 * This source file is licensed as described in the file COPYING, which
7 * you should have received as part of this distribution. The terms
8 * are also available at
9 * http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
13 package org.scilab.modules.history_browser.actions;
15 import java.lang.reflect.InvocationTargetException;
17 import javax.swing.ImageIcon;
19 import org.scilab.modules.gui.bridge.CallScilabBridge;
20 import org.scilab.modules.gui.bridge.menuitem.SwingScilabMenuItem;
21 import org.scilab.modules.gui.events.callback.CommonCallBack;
22 import org.scilab.modules.gui.menuitem.MenuItem;
23 import org.scilab.modules.gui.menuitem.ScilabMenuItem;
24 import org.scilab.modules.gui.pushbutton.PushButton;
25 import org.scilab.modules.gui.pushbutton.ScilabPushButton;
26 import org.scilab.modules.gui.utils.ScilabSwingUtilities;
27 import org.scilab.modules.history_browser.CommandHistoryMessages;
31 * @author Vincent COUVERT
33 public final class HelpAction extends CommonCallBack {
35 private static final long serialVersionUID = 1L;
37 private static final String LABEL = CommandHistoryMessages.SCILAB_HELP;
38 private static final String ICON = ScilabSwingUtilities.findIcon("help-browser");
39 private static final char MNEMONIC = 'S';
49 * Create the associated menu
52 public static MenuItem createMenuItem() {
53 MenuItem menuItem = ScilabMenuItem.createMenuItem();
54 menuItem.setText(LABEL);
55 menuItem.setMnemonic(MNEMONIC);
56 menuItem.setCallback(getCallBack());
57 ((SwingScilabMenuItem) menuItem.getAsSimpleMenuItem()).setIcon(new ImageIcon(ICON));
62 * Create the associated button
65 public static PushButton createPushButton() {
66 PushButton pushButton = ScilabPushButton.createPushButton();
67 pushButton.setIcon(ICON);
68 pushButton.setToolTipText(LABEL);
69 pushButton.setCallback(getCallBack());
74 * Create a new class instance
75 * @return the instance
77 private static CommonCallBack getCallBack() {
78 CommonCallBack callback = null;
80 callback = HelpAction.class.getConstructor().newInstance();
81 } catch (IllegalArgumentException e) {
83 } catch (SecurityException e) {
85 } catch (InstantiationException e) {
87 } catch (IllegalAccessException e) {
89 } catch (InvocationTargetException e) {
91 } catch (NoSuchMethodException e) {
99 * @see org.scilab.modules.gui.events.callback.CallBack#callBack()
102 public void callBack() {
103 CallScilabBridge.openHelp("browsehistory");