home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / win95 / sieciowe / hotja32.lzh / hotjava / classsrc / awt / menuitem.java < prev    next >
Text File  |  1995-08-11  |  3KB  |  102 lines

  1. /*
  2.  * @(#)MenuItem.java    1.14 95/01/31 Sami Shaio
  3.  *
  4.  * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19. package awt;
  20.  
  21. /**
  22.  * A string item that represents a choice in a menu.
  23.  *
  24.  * @version 1.14 31 Jan 1995
  25.  * @author Sami Shaio
  26.  */
  27. public class MenuItem {
  28.     int            pData;
  29.  
  30.     public int      index;
  31.     public Menu        menu;
  32.     public String    label;
  33.  
  34.  
  35.     protected MenuItem() {
  36.     }
  37.  
  38.     /** Constructs a MenuItem.
  39.      * @param l is the label for this menu item.
  40.      * @param m is the menu to add this item to.
  41.      */
  42.     public MenuItem(String l, Menu m) {
  43.     label = l;
  44.     menu = m;
  45.     index = menu.nItems();
  46.     menu.wServer.menuItemCreate(this, label, menu, false);
  47.     menu.addMenuItem(this);
  48.     }
  49.  
  50.     /**
  51.      * Constructs a MenuItem that has a checkmark associated with it.
  52.      */
  53.     public MenuItem(String l, Menu m, boolean isToggle) {
  54.     label = l;
  55.     menu = m;
  56.     index = menu.nItems();
  57.     menu.wServer.menuItemCreate(this, label, menu, isToggle);
  58.     menu.addMenuItem(this);
  59.     }
  60.  
  61.     /**
  62.      * Sets the state of this MenuItem if it is a toggle.
  63.      */
  64.     public void setMark(boolean t) {
  65.     menu.wServer.menuItemSetMark(this, t);
  66.     }
  67.  
  68.     /**
  69.      * Returns the state of this MenuItem. Only valid for a toggle.
  70.      */
  71.     public boolean getMarkState() {
  72.     return menu.wServer.menuItemGetMark(this);
  73.     }
  74.  
  75.     /**
  76.      * Makes this menu item selectable by the user.
  77.      */
  78.     public void enable() {
  79.     menu.wServer.menuItemEnable(this);
  80.     }
  81.  
  82.     
  83.     /**
  84.      * Makes this menu item unselectable by the user.
  85.      */
  86.     public void disable() {
  87.     menu.wServer.menuItemDisable(this);
  88.     }
  89.  
  90.     /**
  91.      * Dispose of this menu item. This removes it from the menu which
  92.      * contains it.
  93.      */
  94.     public void dispose() {
  95.     menu.wServer.menuItemDispose(this);
  96.     }
  97.  
  98.     public void selected() {
  99.     menu.selected(index);
  100.     }
  101. }
  102.