#include "BinPlotWidget.qo.h"
#include <images/Images/ImageInterface.h>
#include <guitools/Histogram/Histogram.h>
#include <guitools/Histogram/FitWidget.qo.h>
#include <guitools/Histogram/HistogramMarkerGaussian.h>
#include <guitools/Histogram/HistogramMarkerPoisson.h>
#include <guitools/Histogram/RangeControlsWidget.qo.h>
#include <guitools/Histogram/RangePicker.h>
#include <guitools/Histogram/ToolTipPicker.h>
#include <guitools/Histogram/BinCountWidget.qo.h>
#include <guitools/Histogram/ChannelRangeWidget.qo.h>
#include <guitools/Histogram/ZoomWidget.qo.h>
#include <casa/Arrays/Vector.h>
#include <msvis/MSVis/UtilJ.h>
#include <QtCore/qmath.h>
#include <qwt/qwt_plot_curve.h>
#include <qwt/qwt_plot_marker.h>
#include <qwt/qwt_text_label.h>
#include <qwt/qwt_scale_div.h>
#include <qwt/qwt_color_map.h>
#include <qwt/qwt_scale_widget.h>
#include <qwt/qwt_scale_engine.h>
#include <casaqt/QwtConfig.h>
#if QWT_VERSION >= 0x060000
#include <qwt/qwt_plot_renderer.h>
#include <qwt/qwt_double_interval.h>
using namespace casacore;
BinPlotWidget::BinPlotWidget( bool fitControls, bool rangeControls,
bool plotModeControls, QWidget* parent ):
curveColor( Qt::blue ), selectionColor( 205, 201, 201, 127 ),
colorMap( NULL ), image( ), binPlot( this ),
NO_DATA( "No Data"), NO_DATA_MESSAGE( "Data is needed in order to zoom."), IMAGE_ID(-1),
dragLine( NULL ), rectMarker( NULL ),
toolTipPicker(NULL), contextMenuZoom(this),
zoomActionContext(NULL), zoomWidgetContext( NULL ),
zoomActionMenu(NULL), zoomWidgetMenu( NULL ),
lambdaAction("Lambda",this), centerPeakAction( "(Center,Peak)",this),
fwhmAction( "Center +/- FWHM/2", this), contextMenu(this),
LOG_COUNT( "Log(Count)"),
stepFunctionNoneAction("Line",this), stepFunctionAction( "Histogram Outline",this), stepFunctionFilledAction( "Filled Histogram",this),
logActionY( LOG_COUNT, this), clearAction( "Clear", this ),
contextMenuDisplay( this ),
binCountActionContext(NULL), channelRangeActionContext(NULL), footPrintActionContext(NULL),
binCountActionMenu(NULL), channelRangeActionMenu(NULL), footPrintActionMenu(NULL),
binCountWidgetContext(NULL), channelRangeWidgetContext(NULL), footPrintWidgetContext(NULL),
binCountWidgetMenu(NULL), channelRangeWidgetMenu(NULL),
contextMenuConfigure( this ){