The biggest changes are to fix scroll bar handling.
Also corrected is the desired position when zooming, previously if you did a zoom then a size the graph would jump to the wrong place.
Also adds support for millisecond time in mpScaleX. Not overly happy with the way I've done this, it might be more efficient/flexible to provide a virtual function to return the required text for a given x value. Then derived classes can format the text as needed.
When m_drawOutsideMargins is false axis lines are not drawn in the margins.
Also added option to allow plotting of layers in reverse order (MP_REVERSE_PLOT). In my case I have some special layers that are always present in an mpWindow and these are at the start of the list but I want them drawn on top of the 'user' added layers. Without this option I'd have to Insert rather than Add user layers (which there isn't a method for currently) or re-add my special layers after any 'user' layers.
Also just noticed in mpWindow::OnMouseWheel(), that:
if (event.m_shiftDown)
{
m_posX += changeUnitsX;
m_desiredXmax += changeUnitsX;
m_desiredXmin += changeUnitsX;
}
else
{
m_posY -= changeUnitsY;
m_desiredYmax -= changeUnitsY;
m_desiredYmax -= changeUnitsY;
}
UpdateAll();
needs to be changed to:
if (event.m_shiftDown)
{
SetPosX(m_posX + changeUnitsX);
}
else
{
SetPosY(m_posY - changeUnitsY);
}