Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

panda/src/tform/mouseWatcherGroup.h

Go to the documentation of this file.
00001 // Filename: mouseWatcherGroup.h
00002 // Created by:  drose (02Jul01)
00003 //
00004 ////////////////////////////////////////////////////////////////////
00005 //
00006 // PANDA 3D SOFTWARE
00007 // Copyright (c) 2001, Disney Enterprises, Inc.  All rights reserved
00008 //
00009 // All use of this software is subject to the terms of the Panda 3d
00010 // Software license.  You should have received a copy of this license
00011 // along with this source code; you will also find a current copy of
00012 // the license at http://www.panda3d.org/license.txt .
00013 //
00014 // To contact the maintainers of this program write to
00015 // panda3d@yahoogroups.com .
00016 //
00017 ////////////////////////////////////////////////////////////////////
00018 
00019 #ifndef MOUSEWATCHERGROUP_H
00020 #define MOUSEWATCHERGROUP_H
00021 
00022 #include "pandabase.h"
00023 #include "mouseWatcherRegion.h"
00024 
00025 #include "pointerTo.h"
00026 #include "referenceCount.h"
00027 #include "pvector.h"
00028 
00029 ////////////////////////////////////////////////////////////////////
00030 //       Class : MouseWatcherGroup
00031 // Description : This represents a collection of MouseWatcherRegions
00032 //               that may be managed as a group.
00033 ////////////////////////////////////////////////////////////////////
00034 class EXPCL_PANDA MouseWatcherGroup : virtual public ReferenceCount {
00035 public:
00036   virtual ~MouseWatcherGroup();
00037 
00038 PUBLISHED:
00039   bool add_region(MouseWatcherRegion *region);
00040   bool has_region(MouseWatcherRegion *region) const;
00041   bool remove_region(MouseWatcherRegion *region);
00042   MouseWatcherRegion *find_region(const string &name) const;
00043   void clear_regions();
00044 
00045 protected:
00046   typedef pvector< PT(MouseWatcherRegion) > Regions;
00047   Regions _regions;
00048 
00049 public:
00050   static TypeHandle get_class_type() {
00051     return _type_handle;
00052   }
00053   static void init_type() {
00054     register_type(_type_handle, "MouseWatcherGroup");
00055   }
00056 
00057 private:
00058   static TypeHandle _type_handle;
00059 
00060   friend class MouseWatcher;
00061   friend class BlobWatcher;
00062 };
00063 
00064 #endif

Generated on Fri May 2 00:44:29 2003 for Panda by doxygen1.3