Added 2019-09-28: If you want to find the macro discussed in this thread, you can find it in Eskimo's blog: #14 - Macro - "Zoom to Selection Plus".
In a recent thread in the X7 section - zOOM TO SELECTION FOR TO THE NODES SELECTION - FEATURE REQUEST - there was some discussion about having the ability to zoom to selected nodes. Some VBA approaches to that were posted, and the discussion expanded to include other types of "zoom to selection" that might be useful. I've tried to address some of those with a macro.
"Zoom to Selection Plus" can, depending on the situation:
From a user standpoint, ZTSP is only one command. What happens when it is run depends on what the current selection is - or, if nothing is selected, what visible objects are present on the page.
For each of those types of zoom, to the rectangular area that bounds the selection, some "padding" can be added to the height and width. How much padding? That can be set by the user, as a percentage of the bounding dimension, with independent values for each of the types of zoom listed above. In addition to that padding, there is a user-settable "minimum view dimension" - because one might not wish to zoom "all the way in" on very small selections.
In addition to the core "Zoom to Selection Plus" capability, a "Zoom to Page Plus" capability is made available as a second command. Again, the padding for that is user-settable, so the amount of white space around the page border can be smaller (or larger) than what CorelDRAW produces with its standard "zoom to page".
Here's the .GMS file: JQ_Zoom_to_Selection_Plus_2018_09_10_0855.
With the .GMS file in place, ZTSP looks like this in the Macro Manager:
The top four subs seen there are associated with the user form that is used to access the settings. At this point, we're interested in the bottom two subs.
In this video, I've assigned F4 to "Zoom to Selection Plus" and Shift+F4 to "Zoom to Page Plus".VIDEO: Zoom To Selection Plus - Demo 01
A later post will get into the user form.
There is another feature associated with the user form that hasn't been covered yet: the ability to show a red bounding rectangle to indicate the area that is being used as the basis for figuring out the view area. This is the rectangle before adding anything for padding or minimum view size. The layer that the red rectangle lives on is a layer created by the macro, and is deleted automatically when the user form is closed.
In addition to being useful as a tool for understanding what's going on with ZTSP, I've also included the ability to have the bounding box copied to the Active Layer (the copy will be a green rectangle).
When zooming to selected objects, those bounding boxes include the object outlines, not just wireframe geometry. I don't know if CorelDRAW has a built-in ability to create such bounding boxes without going through additional steps of converting the outlines to objects. If it does have such a capability, then I would like to know about it. In any case, that capability is there in the macro.
VIDEO: Zoom to Selection Plus - Demo 03
.
I didn't create that flowchart as part of the design process, but afterwards, as an aid for prospective users.
If you know how the macro thinks, then it's easy to make it do what you want!
Hm, a very useful bonus feature.I like.
Ronny, are you aware of any shortcut in CorelDRAW to produce a bounding rectangle that includes object outlines? I know that Shift+double-clicking on the Rectangle tool in the Toolbox will produce one that bounds the wireframe geometry of the selection.
It would be very easy to write a simple, no-userform macro to do that, because the capability is right there in the API. I wouldn't do that, though, if it's already available!
John.There is no ability to include outlines when displaying object properties, or adding a rectangle as described, as far as I know (but I know it has been requested many times).The new Block Shadow tool and also Align and Distribute can now include the outline, as you know, and the zoom tools (including your macros) also include outlines so the code is definitely in there.I also have an old wOxxOm macro to adjust page size to objects and it includes the outlines too.