Plot Widget -- intuitive?

Hi all,

I’ve added some interactive slots and signals to the plot widget in
the last couple of days. These should make the plots much more usable.
The following signals and slots are explained in the header, but
here’s a list:

signals:
void PlotWidget::pointClicked(double x, double y);
void PlotWidget::pointClicked(const QList<PlotPoint*> & pl);
void PlotWidget::pointClicked(PlotPoint* p);
void PlotWidget::mouseOverPoint(double x, double y);

slots:
void PlotWidget::selectPoint(PlotPoint* point);
void PlotWidget::selectPoints(const QList<PlotPoint*> & points);
void PlotWidget::clearAndSelectPoint(PlotPoint* point);
void PlotWidget::clearAndSelectPoints(const QList<PlotPoint*> & points);
void PlotWidget::clearSelection();
void PlotWidget::setPointFollowMouse(bool b);

It is now possible to say, plot a reaction curve and select a
transition state via the plot, animate vibrations from the spectra
plot, etc. Well, not possible yet, but the PlotWidget supports such
interaction.

The main reason I’m writing the list is to get some feedback about the
navigation in the PlotWidget. I’ve tried to mimick the glwidget’s
controls as much as possible. As it stands:

left click: select point
double left click: restore axes to “default” settings
middle click and drag: zoom to box
scroll events: zoom
right click and drag: translate plot

Are these controls intuitive enough for new users? I think the only
"surprise" may be the double left click, but I’m not sure what else to
use there. I’d just like to make sure the control works as expected
before the upcoming feature freeze. Any suggestions?

Dave

I’ve added some interactive slots and signals to the plot widget in
the last couple of days. These should make the plots much more usable.

I think the new signals and slots are great.

The main reason I’m writing the list is to get some feedback about the
navigation in the PlotWidget. I’ve tried to mimick the glwidget’s
controls as much as possible. As it stands:

double left click: restore axes to “default” settings

This may or may not be a surprise. I have certainly seen a number of
programs that use double-clicks for such purposes.

For the case of a plot widget, you could also easily consider a small
contextual menu with a right-click. I don’t think that’s unusual,
although you’d need to figure out another mapping for translate.

Just my $0.02,
-Geoff