casa
$Rev:20696$
|
00001 //# Copyright (C) 2005 00002 //# Associated Universities, Inc. Washington DC, USA. 00003 //# 00004 //# This library is free software; you can redistribute it and/or modify it 00005 //# under the terms of the GNU Library General Public License as published by 00006 //# the Free Software Foundation; either version 2 of the License, or (at your 00007 //# option) any later version. 00008 //# 00009 //# This library is distributed in the hope that it will be useful, but WITHOUT 00010 //# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00011 //# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public 00012 //# License for more details. 00013 //# 00014 //# You should have received a copy of the GNU Library General Public License 00015 //# along with this library; if not, write to the Free Software Foundation, 00016 //# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA. 00017 //# 00018 //# Correspondence concerning AIPS++ should be addressed as follows: 00019 //# Internet email: aips2-request@nrao.edu. 00020 //# Postal address: AIPS++ Project Office 00021 //# National Radio Astronomy Observatory 00022 //# 520 Edgemont Road 00023 //# Charlottesville, VA 22903-2475 USA 00024 //# 00025 #ifndef SETTINGSWIDGET_QO_H 00026 #define SETTINGSWIDGET_QO_H 00027 00028 #include <QtGui/QWidget> 00029 #include <display/QtPlotter/SettingsWidget.ui.h> 00030 #include <casa/Arrays/Vector.h> 00031 00032 namespace casa { 00033 00034 00035 class QtCanvas; 00036 class LogIO; 00037 class ProfileTaskMonitor; 00038 class ProfileTaskFacilitator; 00039 00040 class SettingsWidget : public QWidget 00041 { 00042 Q_OBJECT 00043 00044 public: 00045 void setCollapseVals(const Vector<Float> &spcVals); 00046 void setCanvas( QtCanvas* pCanvas ); 00047 void setTaskMonitor( ProfileTaskMonitor* fitMonitor ); 00048 void setCurveName( const QString& curveName ); 00049 void addCurveName( const QString& curveName ); 00050 void reset( bool taskChanged = false ); 00051 void setLogger( LogIO* log ); 00052 void setUnits( QString units ); 00053 void setDisplayYUnits( const QString& units ); 00054 void setImageYUnits( const QString& units ); 00055 void setRange( double start, double end ); 00056 static bool isOptical(); 00057 static void setOptical( bool optical ); 00058 void setTaskSpecLineFitting( bool specLineFitting ); 00059 void pixelsChanged(int, int ); 00060 SettingsWidget(QWidget *parent = 0); 00061 ~SettingsWidget(); 00062 00063 00064 00065 private slots: 00066 void clear(); 00067 void setFitRange(double start, double end ); 00068 00069 private: 00070 QtCanvas* pixelCanvas; 00071 ProfileTaskFacilitator* taskHelper; 00072 ProfileTaskFacilitator* taskHelperOptical; 00073 ProfileTaskFacilitator* taskHelperRadio; 00074 LogIO* logger; 00075 ProfileTaskMonitor* taskMonitor; 00076 Ui::SettingsWidget ui; 00077 static bool optical; 00078 bool specLineFitting; 00079 bool newCollapseVals; 00080 00081 }; 00082 } 00083 #endif // SPECFITSETTINGSWIDGET_QO_H