00001 /* 00002 * The information in this file is 00003 * Copyright(c) 2007 Ball Aerospace & Technologies Corporation 00004 * and is subject to the terms and conditions of the 00005 * GNU Lesser General Public License Version 2.1 00006 * The license text is available from 00007 * http://www.gnu.org/licenses/lgpl.html 00008 */ 00009 00010 #ifndef VIEWOBJECT_H 00011 #define VIEWOBJECT_H 00012 00013 #include "GraphicObject.h" 00014 00015 /** 00016 * This class provides access to the display properties for a view object. 00017 * 00018 * Possible GraphicObjectTypes: VIEW_OBJECT. 00019 * 00020 * This subclass of Subject will notify upon the following conditions: 00021 * - A view is created to display in the object. This may occur when calling 00022 * setObjectView(). 00023 * - The displayed view is deleted. This may occur when calling 00024 * setObjectView(). 00025 * - All notifications documented in GraphicObject. 00026 */ 00027 class ViewObject : public GraphicObject 00028 { 00029 public: 00030 /** 00031 * Emitted with any<View*> when a view is created to display in the object. 00032 */ 00033 SIGNAL_METHOD(ViewObject, ViewCreated) 00034 00035 /** 00036 * Emitted with any<View*> when the displayed view is deleted. 00037 */ 00038 SIGNAL_METHOD(ViewObject, ViewDeleted) 00039 00040 protected: 00041 /** 00042 * This should be destroyed by calling GraphicLayer::removeObject. 00043 */ 00044 virtual ~ViewObject() {} 00045 }; 00046 00047 #endif