001package org.vishia.gral.example;
002
003import org.vishia.gral.base.GralMenu;
004import org.vishia.gral.base.GralMng;
005
006public class ExampleContextMenu extends ExampleSimpleButton
007{
008
009  /**Version, history and license.
010   * <ul>
011   * <li>2011-06-00 Hartmut created
012   * </ul>
013   * 
014   * <b>Copyright/Copyleft</b>:<br>
015   * For this source the LGPL Lesser General Public License,
016   * published by the Free Software Foundation is valid.
017   * It means:
018   * <ol>
019   * <li> You can use this source without any restriction for any desired purpose.
020   * <li> You can redistribute copies of this source to everybody.
021   * <li> Every user of this source, also the user of redistribute copies
022   *    with or without payment, must accept this license for further using.
023   * <li> But the LPGL is not appropriate for a whole software product,
024   *    if this source is only a part of them. It means, the user
025   *    must publish this part of source,
026   *    but doesn't need to publish the whole source of the own product.
027   * <li> You can study and modify (improve) this source
028   *    for own using or for redistribution, but you have to license the
029   *    modified sources likewise under this LGPL Lesser General Public License.
030   *    You mustn't delete this Copyright/Copyleft inscription in this source file.
031   * </ol>
032   * If you intent to use this source without publishing its usage, you can get
033   * a second license subscribing a special contract with the author. 
034   * 
035   * @author Hartmut Schorrig = hartmut.schorrig@vishia.de
036   */
037  public static final int version = 20120303;
038
039  ExampleContextMenu(GralMng gralMng)
040  {
041    super(gralMng);
042  }
043  
044  
045  /**The main routine. It creates the factory of this class
046   * and then calls {@link #main(String[], Factory)}.
047   * With that pattern a derived class may have a simple main routine too.
048   * @param args command line arguments.
049   */
050  public static void main(String[] args)
051  {
052    main(args, new Factory());
053  
054  }  
055
056
057 
058  protected class InitGuiCodeContextMenu extends ExampleSimpleButton.InitGuiCodeSimpleButton{
059    @Override public void executeOrder(){
060      super.executeOrder();
061      //GralMenu menuInput = gui.gralMng.createContextMenu("menu-test", gui.widgInput);
062      GralMenu menuInput = gui.widgInput.getContextMenu();
063    }
064
065  }
066  
067  
068  
069  /**This inner class creates this class with given parameter.
070   */
071  static class Factory extends ExampleSimpleButton.Factory{
072    ExampleSimpleButton create(GralMng gralMng){
073      ExampleContextMenu obj = new ExampleContextMenu(gralMng);
074      obj.setInitGuiCode(obj.new InitGuiCodeContextMenu());
075      return obj;
076    }
077  }
078  
079
080  
081  
082}