The Visio Shapesheet has been a core part of Visio almost from the beginning. Though, over the years, it has undergone some revisions to handle new cells, it is basically unchanged. Now, it is long overdue for a major overhaul.
(and give shape developers some love)
To line up with the Office 365, Visio will need an online version. So that would mean writing two changes, a desktop and a online version.
So, I would suggest ripping the shapesheet out of the desktop version and make it a standalone app. When working on the shapesheet the focus is inwards toward the shape, so a standalone application would be sufficient. As a standalone app, it would not have to be redone for the online version of Visio.
Since the new file format uses XML, it should be relatively easy for the standalone app to extract a shape from a file to work on.
I can see several ways the shapesheeet can be enhanced.
The AutoCAD converter creates terrible shapes, I have had a few that have ended up being more than a thousand Geometry shapes with hundreds of rows and totally unworkable. It is not the conversion’s fault, it is basically gIgO. AutoCAD users have different criteria than Visio users. What is needed is a good set of tools.
- Sorting? Not necessarily sorting, but the developer should be able to change the order of the rows in the shape data, user data and connection sections. Rather than using a menu item, an up/down toggle button would be preferred. Using a menu item, is not a big deal, but do it a hundred times and it becomes tedious.
- In addition to rows, Geometry sections should also be able to be reordered, so that one section ends at the point the next section starts. Which would allow …
- Join two sections. If the order of the Geometry sections can be changed, joining adjacent Geometry sections should be relatively easy. Each Geometry section has a start and end point, so joining would mean there would be a common end and start row in the middle of the new section.
- Of course, not all Geometry sections have a convenient start and end point. So it would be useful to be able to reverse a Geometry Section so the section ends where the adjacent section starts. The row should be replaced by three rows, move to beginning, the reverse row and move to the end. Let the user decide if th moves are necessary.
- A preview window so you can see what the shapesheet generates. This can be down with the drawing page, but you have to switch windows to change focus. A dedicated preview window would keep up with where the designer is in the shapesheet and keep the preview focused.
- Remove the shapesheet window from within the Visio window, so it can be moved to a separate monitor. Actually being able to tear any window off and place it outside the window on a separate monitor would be useful.
- Highlight the current geometry section in the preview window. Use a gradient so the direction of the geometry section is obvious. Let the designer have an idea of where the geometry section starts and where it ends. As before, keep the content of the preview window centered on the current work.
- Allow the user to set the highlight colours.
- A few versions back, Visio added relative positioning in the Geometry section. Another useful feature would be a toggle button to switch between absolute to relative.Sometimes it is easier to enter absolute positions, other times it is easier to use relative. Currently we can use a menu item, but that involves selecting the Change Item type and remembering the appropriate alternate type.
- Add a command to turn a shape with many geometry sections into individual shapes.
- Add a command to split a Geometry sections in two, based on what row is selected.
- Replace Shot gun editing with fully automatic editing. Shot gun editing should remain, but full auto will speed up repetitive editing. What am I talking about? To delete a row, you have to select the right click menu and then choose delete row. It is like pumping a shot gun before pulling the trigger. Once or twice, not bad, but when you have to delete hundreds of rows it gets tedious. Being able to click a button is faster, being able to hold down the button and continuously delete is even faster. (and very dangerous)
- An alternate to the bounding box is needed. Rather than just a box, the shape involved should change color. The bounding box just shows that something in that area was selected.
- A bonus would be to use gradient colors that show the direction of lines.
- One of the first things that bites first time shape developers is the ungroup command. For some applications Group and Ungroup are complements and you can ungroup and then group to get back to where you were. In most cases this is true, but with Visio, grouping creates a new shape to control the other shapes and ungroup deletes that shape. This group shape, like any other shape can be enhanced, but ungrouping will also remove these enhancements. So, if you add user data, shape data, actions or connection points, these will be lost. Another nicety for shape developers would be the ability to copy these sections from other shapes. So, never ungroup should be the rule? No, during shape development, grouping and ungrouping is a very useful tool. You can align a set of shapes on their centers, group them and then align or distribute this group with other shapes/groups without destroying the group on center the shapes have in the original group.
- If the shapesheet is like a spreadsheet, why can we not copy and paste cells, rows and sections between shapesheets like Excel? What about copying from a shapesheet to Excel and back.
- When you are working on a Geometry section, the row you are working on is highlighted in the drawing to let the designer know where that point is. Also for reference, if the PinX or PinY cells are selected, a cross should be placed over that point so the designer can see where the point is.
- So, where do these new buttons go? When the shapesheet is open, a dialog box with edit buttons should open for the full session. Far faster than using right click events.
- The dialog should have hooks for third party developers.
- Make the points on the pencil tool more visible. Currently they disappear as the scale gets bigger. A small blue dot buried inside a black line is tricky to see, let alone be able to determine if it is a dot or shape.
- There should be a tool to select a connection point and nudge it. The current Connection tool is not the easiest way to correctly place a Connection Point. There is also no way to easily move the Connection Point.
I know that the shapesheet is not just about the shape, but it could be about the page or the doc, but these last two cases can be easily addressed. Of course, these shapesheets shoud receive a similar upgrade.
Outside the Shapsheet
Of course, before even getting into the shapesheet, the ability to sort the shapes in the stencil would be very useful. Yes, this can be done with VBA, but this should be a standard feature.
Add an option to the UnGroup command to preserve the shape that was created by the Group command, but free the sub shapes from their servitude to it. Later on, the shape can be converted to a group and the sub shapes re-added to the group.
While we are at it, the team should be working with the other Office teams to create a standardized shape and how it is handled. Word, Excel, PowerPoint and Publisher have their own shapes, MSOshapes and can easily transfer between each other, but Visio has its’ own way. You can copy one of these diagrams into Visio and all is fine, but it has lost all its’ smarts and is just a collection of objects. Even what was a red text block in Word or Excel goes from a single object to multiple objects, one for the text, one for the red background and another for the border. They also have WordArt. This is not a new suggestion, we have discussed it at previous summits in the early 2000s.
John Marshall… Visio MVP Visio.MVPs.org