Bug List

Member hippodraw::BinnerAxisLinear::setRange (const Range &, bool hold_width=true)
the cpp macro MATH_DEFECT is used in this method but configure doesn't define it.`

Class BinnerAxisLog
Resolve this issue. Is plotting the log(x) on linear scale the same as binning x on log scale?

Member hippodraw::BinningProjector::normalizeTo (const ProjectorBase *target)
Only works if target projector is binning projector

Class BinToBeach
@@ This color map doesn't look the same as in IDL.

Class BinToMacStyle
@@ This color map doesn't look the same as in IDL.

Member hippodraw::BoxTextRep::drawProjectedValues (ProjectorBase &projector, ViewBase &view)
Should split the line if
is in the string.

Class CanvasView
@@@ When creating jpg file, the selection rectangle is on.

Class CanvasView
@@@ The following sequence causes a crash: Run histogram.py, edit->copy, edit->paste, select with mouse, and edit->paste again.

Class CanvasView
@@@ A copy followed by past of GroupView cause crash. Other crashes are related to this one.

Class CanvasView
@@@ Only text rep box tracks the target plot when it is moved.

Class CanvasView
Canvas size doesn't automatically enlarge when size of a view is dragged to be larger than canvas.

Member hippodraw::FigureEditor::calcPrinterMetrics (QPaintDevice *)
@@@ Talking the default printer at start-up causes large delays if printer is not available on the network.

Member hippodraw::CanvasView::contentsMouseMoveEvent (QMouseEvent *)
@@@ Cuts for functions are not controlled by the mouse events.

Member hippodraw::CanvasView::copySelectedToPasteboard ()
If plot being copied is target of a cut, then cut should also be copied.

Member hippodraw::FigureEditor::paste (QCanvasItem *item)
If item is pasted second time, it should display even more.

Member hippodraw::CanvasView::pasteViews (const std::list< ViewBase * > &views)
When pasting from selectionboard, should not displace like when pasting from pasteboard.

Member hippodraw::CanvasView::removeDisplay (PlotterBase *plotter)
Need to also remove any views observing this plotter as cutSelectedToPasteboard does.

Member hippodraw::CanvasView::removeSelected ()
Need to remove any text displays that are observing this view as cutSelectedToPasteboard does. ( To remove: Text displays are removed together with plot display. But not through this function. )

Member hippodraw::FigureEditor::setZoomMode (bool flag)
Mouse tracking is not working.

Member hippodraw::FigureEditor::viewZoomOut ()
Zooming out from the initial canvas, leave area where plots can be dragged, but they disappear.

Class CanvasWindow
@ After using edit->paste, trying to selected the pasted plot leads to selecting the original.

Class CanvasWindow
@@@ It appears that if one cuts a cut from the canvas, then the target doesn't get its cut removed.

Class CanvasWindow
If a document could not be opened, error messages displays, but one get a new empty canvas window. It is not throwing an exception which is read to be caught.

Class CanvasWindow
The View/Cut empty pages button doesn't work and is not enabled.

Class CanvasWindow
@@ Opening a document that references a ROOT array variable doesn't work.

Member hippodraw::CanvasWindow::helpAbout ()
Mac only. About menu when launch with .app does not have the same case as the application claims to be.

Member hippodraw::CanvasWindow::initFromFile (const std::string &filename)
@@@ After initializing from file, the Window appears and responds like it has been changed.

Member hippodraw::FunctionRep::setCutRange (bool yes=true)
@@@ This needs fixing for two dimension functions.

Member hippodraw::CompositePlotter::setRangePrivate (hippodraw::Axes::Type axis, const Range &range, bool scaled=false, bool adjust_width=true)
Parameter adjust_width is not used

Class ContourPointRep
@ Contours should be smoother. Try function2d.py to see contours of double Gaussian.

Class CutPlotter
If one removes a cut by cutting it from the canvas, the cut does not get removed from its target.

Class CutPlotter
If cut range is set from python outside the display range, the cut range color is displayed outside the axis representation. Try function_empty.py.

Class CutPlotter
Fitting a function seems to fit only the data under the cut.

Class DataRep
@@@ Function cut does not get restored from document.

Member hippodraw::DataSource::fillRange (unsigned int column, Range &) const
HUGE_VAL doesn't pass gcc on the Mac if -pedantic is used.

Member hippodraw::DisplayController::addDataRep (PlotterBase *, hippodraw::DataRep *) const
Shouldn't need to call checkAxisScaling here since the CompositePlotter has already done it. Remove call and test.

Member hippodraw::DisplayController::createDisplay (const std::string &name, const DataSource &tuple, const std::vector< std::string > &bindings) const
If Image DataRep comes from file other than FITS file, then it is not being handled.

Member hippodraw::DisplayController::getRMS (const PlotterBase *plotter, Axes::Type axis, int index=0) const
Only works for the X axis.

Member hippodraw::DisplayController::getRMS (const PlotterBase *plotter, const std::string &axis, int index=0) const
Only works for the X axis.

Member hippodraw::DisplayController::isCompatible (const PlotterBase *plotter, const std::string &type) const
Part of being compatible is same aspect ratio or none.

Member hippodraw::DyHist1DProjector::execute ()
When restoring and refitting a function, it appears that this member function is called. Should only be called once.

Member hippodraw::EpsView::draw_Text (const std::string &s, float x, float y, float fontsize, float angle, char xp, char yp, const FontBase *)
Text size doesn't come out the same as on screen.

Member hippodraw::EpsView::drawText (const std::string &s, float x, float y, float fontsize, float angle, char xp, char yp, bool resize, const FontBase *font, const Color *color)
@@@ Does not use color value.

Does not use the resize parameter.

Member hippodraw::EpsView::drawViewLines (const std::vector< double > &x, const std::vector< double > &y, hippodraw::Line::Style style, bool color, float size)
Does not use the color parameter

Class FigureEditor
@@@ Mac OS X only, printer margins not showing in correct place on the Canvas, however printing is working fine.

Member hippodraw::FigureEditor::contentsMousePressEvent (QMouseEvent *)
Ctrl and shift click do not select plots like Windows selects files.

Member hippodraw::FigureEditor::print ()
If user selects page range, it is ignored.

Class FitsController
@@@ Writing to file under cuts doesn't seem to work on Windows with cfitsio 2.5.

Member hippodraw::FitsController::writeImageToFile (unsigned int x, unsigned int y, const std::vector< double > &data, const std::string &filename)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::FitsController::writeNTupleToFile (const DataSource *source, const std::string &filename, const std::string &name, const std::vector< std::string > &column_list, const std::vector< const TupleCut * > &cut_list)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::FitsController::writeNTupleToFile (const std::string &name, const std::string &filename)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::FitsController::writeNTupleToFile (const DataSource *ntuple, const std::string &filename)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::FitsController::writeNTupleToFile (const DataSource *ntuple, const std::string &filename)
Needs to avoid duplicated code.

Member hippodraw::FunctionBase::derivByParm (int i, double x) const
Make this function pure when problem compiling python/FunctionWrap under Windows is solved.

Member hippodraw::FunctionBase::operator() (double x) const
Make this member pure when problem compiling python/FunctionWrap is solved.

Member hippodraw::FunctionController::getFunctionRep (const PlotterBase *plotter, const DataRep *data) const
@@@ When multiple independent functions are allowed, this method will fail.

Member hippodraw::FunctionController::getFunctionRep (const PlotterBase *plotter) const
If multiple DataRep exists, each with its own functions, then this function will probably not return the right one. Use datareps.py to demonstrate this. The only use of this function is Inspector itself, thus should be possible to remove this function altogether.

Class FunctionRep
@@ The function should be drawn in blue so it can be see on filled histogram.

Member hippodraw::FunctionWrap::derivByParm (int, double) const
Should attempt to call derivByParm to implement hasDerivatives()

Class HammerAito
@@ The right hand side of the axis box is not drawn. ( To remove: probably not a bug, since -180 and +180 is the same edge and should not be drawn twice. )

Class HammerAito2
@@@ The projection near the poles has incorrect white space. ( To remove: color box size changed when transformation applied )

Class HammerAito2
@@ The right hand side of the axis box is not drawn. ( To remove: probably not a bug, since -180 and +180 is the same edge and should not be drawn twice. )

Class Image
@@ Z axis is not autoscaling like problem with mesh used to be.

Class Image
@@ Labels of Z values, and perhaps others if range is under two orders of magnitude and values are very small. Try sip/z_label.py to see it. Might convert this script to one that can be put in testsuite

Class Inspector
@@@ Can not change DataSource of plot if function has been applied.

Class Inspector
@@@ Editing font of title crashes on Linux, and second edit on Mac OS X.

Class Inspector
@@@ When Applying all cuts to DataRep that comes from different Ntuple, should raise Dialog to ask whether to not do it, or do it with same set of cut names and values, but from different datasource.

Class Inspector
@@@ When adding DataRep to another and first has cuts applied, then raise dialog to ask user if he wants same cuts applied or not.

Class Inspector
@@@ When color map is changed on plot with multiple DataReps objects, it should be changed on all on them.

Class Inspector
@@@ When plot has a function cut, trying to add and existing data cut causes crash.

Class Inspector
@@@ For test_FitsWriting.py, the time cut doesn't show up in Cuts panel when selecting the color plot.

Class Inspector
@@@ On axis tabbed panel, changing the high range via text box doesn't set the right bin width. So the range appears set in the box, but it is wrong. Use ConstantModelFit.py, autoscale, then set range.

Class Inspector
@@@ In axis tabbed panel, changng Y bin width on color plot increases range excessively.

Class Inspector
@@@ One can not change label of histogram on X or Y axis.

Class Inspector
@@ On axis tabbed panel, zoom pan doesn't work for static histograms.

Class Inspector
@@ When changing DataSource on multiple plots, and some could not be changed, one gets no warning.

Class Inspector
@@ stats panel documentation image needs updating.

Class Inspector
@ In Stats tabbed panel, the STD button is disabled.

Class Inspector
@ GUI On the Axis tabbed panel, the low and high sliders have large slider handle rectangle than the width and offset ones.

Class Inspector
@@ On cuts tabbed panel, switching to zoom pan doesn't work if one end of cut range is at full range.

Class Inspector
@@@ On the Axis tabbed panel, when in zoom / pan mode, the position slider is hard to control when X axis is in log scale.

Class Inspector
In Data tabbed panel, the title doesn't get set if there are multiple data reps on plot. Probably should take title of first one. What if the data reps comes from two different data sources, then what title is used?

Class Inspector
On empty DataSource, the axis tabbed panel doesn't show the ranges etc. Use empty.py to see it.

Class Inspector
@ Access to adjustment of fitting cut is not available from the inspector if other cuts have been applied to the same display.

Class Inspector
@ Adjusting other cuts also affects the fitting cut.

Class Inspector
@ Can not compile with gcc 2.96 because of use of ostringstream.

Class Inspector
@ On data tabbed panel, the Add and Remove buttons should be disabled when not appropriate, or info dialog should pop up when used in correctly.

Class Inspector
@@@ Trying to change color on display that uses color does nothing. Should bring up an information dialog.

Class Inspector
When changing the DataSource on a plot which has a cut, the DataSoruce of the cut and all its targets is also changed without warning.

Class Inspector
On Plot tabbed panel, show box edges should be disabled if no boxes.

Class Inspector
After saving and loading a variable 3 color scale, it is different from the original one. ( Looks like variable rainbow ).

Class Inspector
@ Have inspector notice that a DataSource have been added via the Python interface without having to click on the CanvasView.

Class Inspector
Only first page is showed on Windows platform. Can't scroll down to see other plots. Have to maximize the canvas window.

Member hippodraw::Inspector::functionAdd ()
@@@ If the fitter setting is set to one that needs integration and target DataRep is one that is not binned, then adding a function causes a crash.

Member hippodraw::Inspector::updateAxisTab ()
When bin widths are the same, enables the width text box initially, but not after one toggles each data rep and returns to all active. Try it on datareps.py

Class LinePointRep
Qt 4 Only. The extra colored lines do not show up in axisBug.py

Member hippodraw::MapMatrixProjector::fillProjectedValues (DataSource *ntuple, bool in_range=false) const
Should be able to uncomment the commented out code now that things got fixed in implemnting MeshProjector.

Member hippodraw::MapMatrixProjector::getAverage (hippodraw::Axes::Type axis) const
Averge value might be wrong, or data is bad. In test_FitsImage.py, the left had EGRET plot gets overage x and y of 0.0, while the right hand plot is 0.25 (TO REMOVE: not a bug)

Member hippodraw::MapMatrixProjector::getZValue (double x, double y) const
Not sure we're picking up the right bin. This might be cause of last two plots in test_FitsImage.py not having the same average value.

Class Mercator
@@ This transform draws outside of drawing rectangle. Use useBinner.py to see it.

Class Mercator2
@@ This transform draws outside of drawing rectangle. Use useBinner.py to see it.

Class MinuitMigrad
@ when fixxing a parameter, and doing a fit the tixed parameter doesn't show up as fixed in GUI, because the selected parameter changes.

Member hippodraw::NTupleFCN::calcAlphaBeta (std::vector< std::vector< double > > &alpha, std::vector< double > &beta)
Following only works for 1 dimension coordinate.

Member hippodraw::NTupleFCN::setFitCut (TupleCut *cut)
Works only for one dimensional coordinate.

Member hippodraw::StatedFCN::setFunction (FunctionBase *function)
@@ Should be able to display a function without fitting. Use examples/fuction_rep.py to see the problem.

Member hippodraw::NTupleController::saveNTuples (const std::string &prefix, const std::string &suffix)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::NTupleController::saveNTuples (const std::string &prefix, const std::string &suffix)
If writing the DataSource to a file fails, no error is reported.

Member hippodraw::NTupleController::writeNTupleToFile (const std::string &name, const std::string &filename)
Should throw exception if couldn't write to file, for example if the path is invalid.

Member hippodraw::NTupleController::writeNTupleToFile (DataSource *source, const std::string &filename)
Should throw exception if couldn't write to file, for example if the path is invalid.

Class NumArrayTuple
@@@ Currently the config/m4/pfkeb_have_numarray passes its test when Numeric is found instead of numarray.

Class PickTable
When entering a new entry, density should be calculated from entries/bin.

Member hippodraw::PlotterBase::setRepresentation (RepBase *pointrep)=0
This method is confusing because programmer may not know if it means PointRep or DataRep.

Member hippodraw::PlotterBaseXML::handleCutPlotter (const XmlElement *element, CutPlotter *plotter)
Old documents, before intro of function cuts, can not be read as they will be missing the cut representation.

Class ProfileProjector
The total number of entries doesn't add up to the correct value. Try displays.py and look at stats panel.

Member hippodraw::PyCanvas::addDisplay (QtDisplay *display_wrap)
@ why is variable yes ignored?

Member hippodraw::PyCanvas::clear ()
Even thou clear() passes, it is possible that the window has already been closed, like when the application has terminated.

Member hippodraw::PyCanvas::getDisplays () const
@@ The displays do not seem to come out in same order that they were inserted.

Member hippodraw::PyCanvas::PyCanvas ()
@@@ Can not use this method from Python, needs to be added so one can run in batch. Try running batchmode.py

Member hippodraw::PyDataRep::addCut ()
@ Only works on X axis.

Member hippodraw::PyDataRep::setBinWidth (const std::string &axis, double width)
Doesn't always work if display hasn't drawn yet.

Member hippodraw::PyDataRep::setPointRep (RepBase *pointRep)
@@ A particular DataRep can only accept a subset of all RepBase objects. Thus, this class should return the names of that subset which is already available to the Inspector and this argument should be replaced by a string.

Member hippodraw::PyDataSource::saveColumnFromNumArray (unsigned int index, boost::python::numeric::array array)
@@@ Should allow any type of DataSource if rank is acceptable.

Member hippodraw::PyFunctionRep::objectiveValue ()
This function only works correctly if there is only one DataRep contained by the plotter. The constructor of this class should remember which DataRep object the function is attached to.

Member hippodraw::PyFunctionRep::setFitRangeEnabled (bool yes=true)
@@@ when fit Range is disabled should not display it.

Member hippodraw::QtDisplay::update ()
@@ For the script, autontuple.py, this method behaves strangely.

Class QtFileDialog
The dialog should remember the suffix of the last file selected.

Class QtFileDialog
@@ Mac OS X only. Doesn't show the available file types and odesn't open SVAC ROOT file with Qt 4.3, ok with Qt 3.

Member hippodraw::QtViewImp::drawViewLines (const std::vector< double > &x, const std::vector< double > &y, hippodraw::Line::Style style, bool color, float size)
bool argument is not used.

Member hippodraw::RootNTuple::fillShape (std::vector< int > &v, unsigned int column) const
If a column is an added one, shape is assumed to be rank 1. Need to add support for rank > 1 added columns.

Member hippodraw::QtView::draw (QPainter &)
Updating the Inspector from this method is disabled. However, not updating allow changes from Python to not be seen from the Inspector. Enabling it makes too many updates to the inspector when changes are made from the GUI. This problem needs to be resolved.

Member hippodraw::QtView::drawMethod (const std::vector< double > &x, const std::vector< double > &y, int opt1, int opt2)
Style and color arguments are not used.

Member hippodraw::QtView::drawViewMethod (const std::vector< double > &x, const std::vector< double > &y, int opt1, int opt2)
Style and color arguments are not used.

Member hippodraw::QtView::drawWithPixmap (QPainter &painter)
The plotting region for Color Plots is too small.

Member hippodraw::QtViewImp::drawMethod (const std::vector< double > &x, const std::vector< double > &y, int opt1, int opt2)
Should style and color arguments be used?

Class QtViewWidget
@@@ Displaying an empty DataSource leads to QFont error messages. See jira bug report.

Member hippodraw::QtViewWidget::drawMethod (const std::vector< double > &x, const std::vector< double > &y, int opt1, int opt2)
Style and color arguments are not used.

Member hippodraw::QtViewWidget::drawViewMethod (const std::vector< double > &x, const std::vector< double > &y, int opt1, int opt2)
style and color arguments are not used.

Class RootController
@@@ testsuite/towercut.py needs fixing.

Member hippodraw::RootController::getNTupleNames (const std::string &)
Returns all top level names instead of only the ones that could be a DataSource.

Member hippodraw::RootController::getNTupleNames (const std::string &)
@@@ If can not open file, should thrown an exception. When fixing this bug, check also the FitsController for same bug.

Class RootNTuple
@@ Unsigned short is not supported.

Member hippodraw::RootNTuple::getRow (unsigned int i) const
@@@ If a column has an array varible, then get seg fault.

Class St2DHistogram
This class is not save and restored to document file.

Member hippodraw::StatedFCN::degreesOfFreedom () const =0
@@@ Does not respect any cut range that is applied.

Member hippodraw::StripChartProjector::fillProjectedValues (DataSource *ntuple, bool in_range=false) const
bool Parameter is not used

Class SymbolPointRep
The triangle is upside down, or should have both types.

Class SymbolPointRep
A symbol can be drawn outside the drawing rectangle if for example, it is located at 0,0.

Class TextRepBase
@@@ On Mac OS X, he bounding box is not big enough.

Member hippodraw::TupleCutXML::setAxisAttributes (TupleCut *cut, hippodraw::Axes::Type axis, const XmlElement *element) const
The axis argument is not used.

Member hippodraw::WindowController::aboutToClose (CanvasWindow *window)
Mac only. Should not quit application on last window close. That is not the Mac OS X standard.

Class XyPlotter
@@ Removing stacked DataRep causes crash.

Class XyPlotter
Need a way to show invalid range for static histograms.

File DisplayController.cxx
how come HAVE_CFITSIO but no HAVE_ROOT

Member export_CircularBuffer
@@ Probably needs wrapper for application lock

Member export_StatedFCN
@@@ Can export objective value but not degrees of freedom.

File QtDisplay.cxx
Why do we have HAVE_ROOT but not HAVE_CFITSIO?

Generated for HippoDraw Class Library by doxygen