00001 /*************************************************************************** 00002 *cr 00003 *cr (C) Copyright 1995-2019 The Board of Trustees of the 00004 *cr University of Illinois 00005 *cr All Rights Reserved 00006 *cr 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * RCS INFORMATION: 00011 * 00012 * $RCSfile: VMDMenu.h,v $ 00013 * $Author: johns $ $Locker: $ $State: Exp $ 00014 * $Revision: 1.16 $ $Date: 2019/01/17 21:21:02 $ 00015 * 00016 *************************************************************************** 00017 * DESCRIPTION: 00018 * VMD menu base class. 00019 ***************************************************************************/ 00020 #ifndef VMDMENU_H 00021 #define VMDMENU_H 00022 00023 #include "UIObject.h" 00024 #include "utilities.h" 00025 00027 class VMDMenu: public UIObject { 00028 private: 00029 char *name; 00030 00031 protected: 00032 // virtual routines to handle toolkit-specific actions 00033 virtual void freeze() {} 00034 virtual void unfreeze() {} 00035 00036 public: 00037 VMDMenu(const char *, VMDApp *); 00038 virtual ~VMDMenu(); 00039 00040 const char *get_name() { return name; } 00041 00043 virtual void move(int, int) = 0; 00044 00046 virtual void where(int &, int &) = 0; 00047 00051 virtual int selectmol(int molno) {return FALSE;}; 00052 }; 00053 00054 #endif 00055