marquee select with shape tool

When a curve is selected with the shape tool we can marquee select several nodes. Would be nice if we could use the shape tool to marquee select a number of shapes and/or select anything touched whether or not a curve is selected or not.

using the shape tool, right-click on the desktop to run such a macro

I've already created a way to deselect all shapes while using the shape tool and added the macro to the right-click options.

Another would be a way to deselect shapes while using the shape tool. i.e. right-click run a macro that allows a getclick, choose the shape to deselect and done.

Thoughts

  • hmmm. this works pretty good. Now just need to figure out how to add another that will unselect a shape by click.

    Sub ShapeMarueeSelect()
    Dim doc As Document, retval As Long, shift As Long
    Dim x1 As Double, y1 As Double, x2 As Double, y2 As Double
    Set doc = ActiveDocument
    doc.Unit = cdrInch
    retval = doc.GetUserArea(x1, y1, x2, y2, shift, 10, True, cdrCursorExtPick)
    ActivePage.SelectShapesFromRectangle x1, y1, x2, y2, True
    Application.ActiveTool = cdrToolNodeEdit
    End Sub

    Ideally, I'd like to just marquee select without having to right-click and run the macro. Should be able to grab the shape tool and marquee select shapes from the get go. I don't know how to implement a trigger when you click and drag on the desktop with the shape tool it would then run the code.

    • Here's my next one. 

      Sub ShapeClickDeselect()
        Dim doc As Document, retval As Long, shift As Long
        Dim x1 As Double, y1 As Double
        Set doc = ActiveDocument
        doc.Unit = cdrInch
        retval = doc.GetUserClick(x1, y1, shift, 10, True, cdrCursorPickOvertarget)
        ActiveSelection.Shapes.First.RemoveFromSelection
        Application.ActiveTool = cdrToolNodeEdit
      End Sub

      This would be great if you could just hold the control key and select a shape to deselect it. 

    • CorelDraw has a standard feature for selecting multiple shapes. Just press Alt and draw a rectangle to select touched shapes.