Refactorization of the management of the actions in menus, button, shortcuts
[scilab.git] / scilab / modules / scinotes / src / java / org / scilab / modules / scinotes / actions / ActivateHelpOnTypingAction.java
1 /*
2  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3  * Copyright (C) 2010 - Calixte DENIZET
4  *
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-en.txt
10  *
11  */
12 package org.scilab.modules.scinotes.actions;
13
14 import javax.swing.KeyStroke;
15
16 import org.scilab.modules.gui.checkboxmenuitem.CheckBoxMenuItem;
17 import org.scilab.modules.scinotes.SciNotes;
18 import org.scilab.modules.scinotes.utils.ConfigSciNotesManager;
19
20 /**
21  * ActivateHelpOnTypingAction Class
22  * @author Calixte DENIZET
23  *
24  */
25 public final class ActivateHelpOnTypingAction extends DefaultCheckAction {
26
27     /**
28      * Constructor
29      * @param name the name of the action
30      * @param editor SciNotes
31      */
32     public ActivateHelpOnTypingAction(String name, SciNotes editor) {
33         super(name, editor);
34     }
35
36     /**
37      * doAction
38      */
39     public void doAction() {
40         getEditor().setHelpOnTyping(this.getState());
41         ConfigSciNotesManager.saveHelpOnTypingState(this.getState());
42     }
43
44     /**
45      * createCheckBoxMenu
46      * @param label label of the menu
47      * @param editor SciNotes
48      * @param key KeyStroke
49      * @return CheckBoxMenuItem
50      */
51     public static CheckBoxMenuItem createMenu(String label, SciNotes editor, KeyStroke key) {
52         CheckBoxMenuItem cb = createCheckBoxMenu(label, null, new ActivateHelpOnTypingAction(label, editor), key);
53         boolean b = ConfigSciNotesManager.getHelpOnTypingState();
54         cb.setChecked(b);
55         return cb;
56     }
57 }