void
Zoom3D::StartLeftButtonAction()
{
    DisableSpinMode();

    //
    // If ctrl or shift is pushed, pan, otherwise zoom.  Save which one we
    // did so we can issue the proper "End.." statement when the button is
    // released.
    //
    if (Interactor->GetControlKey() || Interactor->GetShiftKey())
    {
        StartBoundingBox();
        StartPan();
        ctrlOrShiftPushed = true;
    }
    else
    {
        int x, y;
        Interactor->GetEventPosition(x, y);
        StartZoom();
        StartRubberBand(x, y);
        ctrlOrShiftPushed = false;
    }
}
Esempio n. 2
0
void
Zoom3D::StartLeftButtonAction()
{
    DisableSpinMode();

    // If shift is pressed, pan, otherwise rubber band zoom.  The pan
    // action matches the Navigate2D/3D modes. Save which one we did so
    // we can issue the proper "End.." statement when the button is
    // released.
    if (Interactor->GetShiftKey())
    {
        StartBoundingBox();
        StartPan();
        shiftPressed = true;
    }

    // NOTE: the shift and ctrl go into the rubberband zoom and affect
    // whether one gets a rectangle (shift) or zooms out (ctrl). At
    // this point the shift is intercepted above to pan which matches
    // the Navigate2D/3D modes.
    else
    {
        int x, y;
        Interactor->GetEventPosition(x, y);
        StartZoom();
        StartRubberBand(x, y);
    }
}
void
ZoomCurve::StartLeftButtonAction()
{
    int x, y;
    Interactor->GetEventPosition(x, y);
    StartZoom();
    StartRubberBand(x, y);
}
void
Lineout2D::StartLeftButtonAction()
{
    //
    //  We need to set the state variable in vtkInteractorStyle,
    //  but currently there is no 'UserDefined' or such.  Using
    //  timer as it seems the most innocuous.
    // 
    int x, y;
    Interactor->GetEventPosition(x, y);
    doAlign = Interactor->GetShiftKey();
    StartTimer();
    StartRubberBand(x, y);
}