00001 //# MWCEvents.h: various small MWCTool Event classes. 00002 //# Copyright (C) 1993,1994,1995,1996,1998,1999,2000,2002 00003 //# Associated Universities, Inc. Washington DC, USA. 00004 //# 00005 //# This library is free software; you can redistribute it and/or modify it 00006 //# under the terms of the GNU Library General Public License as published by 00007 //# the Free Software Foundation; either version 2 of the License, or (at your 00008 //# option) any later version. 00009 //# 00010 //# This library is distributed in the hope that it will be useful, but WITHOUT 00011 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00012 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public 00013 //# License for more details. 00014 //# 00015 //# You should have received a copy of the GNU Library General Public License 00016 //# along with this library; if not, write to the Free Software Foundation, 00017 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA. 00018 //# 00019 //# Correspondence concerning AIPS++ should be addressed as follows: 00020 //# Internet email: aips2-request@nrao.edu. 00021 //# Postal address: AIPS++ Project Office 00022 //# National Radio Astronomy Observatory 00023 //# 520 Edgemont Road 00024 //# Charlottesville, VA 22903-2475 USA 00025 //# 00026 //# $Id$ 00027 00028 #ifndef TRIALDISPLAY_MWCEVENTS_H 00029 #define TRIALDISPLAY_MWCEVENTS_H 00030 00031 #include <casa/aips.h> 00032 #include <display/DisplayEvents/DisplayEvent.h> 00033 00034 namespace casa { //# NAMESPACE CASA - BEGIN 00035 00036 // <summary> 00037 // Event sent to tell MWCCrosshairTool to reset. 00038 // </summary> 00039 00040 // <synopsis> 00041 // ResetCrosshairEvent is created and sent to MWCCrosshairTool 00042 // (via WorldCanvas::handleEvent()) to tell the crosshair to reset itself. 00043 // </synopsis> 00044 00045 // <motivation> 00046 // This allows display library objects (e.g. MSAsRaster) to remove the 00047 // crosshair from the screen when appropriate (e.g. when it has received 00048 // a selection event from it). 00049 // </motivation> 00050 00051 class ResetCrosshairEvent : public DisplayEvent { 00052 00053 public: 00054 // caller sets skipRefresh=True iff it is handling refresh itself. 00055 ResetCrosshairEvent(Bool skipRefresh=False): 00056 DisplayEvent(), skipRefresh_(skipRefresh) { } 00057 virtual Bool skipRefresh() const { 00058 return skipRefresh_; 00059 } 00060 00061 private: 00062 Bool skipRefresh_; 00063 }; 00064 00065 00066 // <summary> 00067 // Event sent to tell MWCRTRegionTool to reset. 00068 // </summary> 00069 00070 // <synopsis> 00071 // ResetRTRegionEvent is created and sent to MWCRTRegionTool 00072 // (via WorldCanvas::handleEvent()) to tell the RTRegion to reset itself. 00073 // </synopsis> 00074 00075 // <motivation> 00076 // This allows display library objects (e.g. MSAsRaster) to remove the 00077 // rectangle from the screen when appropriate (e.g. when it has received 00078 // a selection event from it). 00079 // </motivation> 00080 00081 class ResetRTRegionEvent : public DisplayEvent { 00082 00083 public: 00084 // caller sets skipRefresh=True iff it is handling refresh itself. 00085 ResetRTRegionEvent(Bool skipRefresh=False): 00086 DisplayEvent(), skipRefresh_(skipRefresh) { } 00087 virtual Bool skipRefresh() const { 00088 return skipRefresh_; 00089 } 00090 00091 private: 00092 Bool skipRefresh_; 00093 }; 00094 00095 00096 } //# NAMESPACE CASA - END 00097 00098 #endif 00099 00100