Dev Luv: Processing Text in Visio

There are two ways to process the text in shape text. You can use Shape.Text, which returns a string that contains placeholders for fields. I would use Shape.Text if I just wanted to read or write a string that did not contain any fields.   If you think or know that your shapes contain fields,…


Visual Effects: Easy Elegance with Visio Shape Gradients

Visio shape gradients provide a fast way to give your shapes a professional-looking polish, especially for flowcharts and other diagrams that will be seen by a wide audience. You can set the gradient by selecting the shape, right-clicking, choosing Format, and then Fill. Gradients are set by selecting from the Pattern options on the shape’s…


Dev Luv: “Managed” Visio VSL Add-ons?

Visio solutions comes in three forms: Visio add-on, COM add-in, and VBA code stored in the document. This article on MSDN describes the differences between add-ons and add-ins. Most of the new solution development that I’ve seen use COM add-ins, which were introduced to Visio in Visio 2002. COM add-ins are easier to write, work…


Dev Luv: Using the Double-click Event in Visio

The double-click event in Visio is driven by the Shapesheet. To prototype how this works, drop a shape onto a Visio page and go into that shape’s Shapesheet. Scroll down to the Event section in the Shapesheet (it’s towards the bottom) and look for the EventDblClick cell. By default, shapes have the OPENTEXTWIN() formula, which…


My Favorite Visio HotKeys

Visio hotkey combinations save you time and wrist flexibility. Here are the top hotkey combinations that I use every time I use Visio. Zoom in (Ctrl + mouse left-click) and zoom out (Ctrl + mouse right-click) Zoom so that a selection box fills the screen (Ctrl+Shift + Drag a box with your mouse)   Zoom the…


Dev Luv: Finding the Shape That Generated the Click Event in Visio

Visio 2003 introduced mouse and keyboard events into the Visio object model. These events are not shape-specific. The events return the x and y co-ordinates (in internal Visio units) for where the event occurred on the window or drawing page. The implementation lets you respond to mouse events for any part of the drawing window…


Dev Luv: Programmability for the Visio Engine Versus Visio Solutions

A common question that I’ve seen on the Visio developer newsgroups asks for more information on automating the UML or Database Modeling functionality. There is no published automation model for UML or Database Modeling, which tends to puzzle most developers since there’s quite a bit of programmability support for other aspects of the Visio application….


Storing and Re-using Your Favorite Visio Shapes

I’m back after a week out with a cold that has now visited each family member. Thanks to blog commenters for their well wishes, that was nice of you all!   I wanted to talk about a handy way to store and re-use your favorite shapes in Visio. Most of the time, I find that…


Applying Formatting to Multiple Visio Shapes At One Time

I’ve got a nasty cold right now. That first few weeks after school starts is one big sick-fest with kids happily swapping bugs and then bringing them home. So this will be a short blog.   I promise to spend more time on developer topics next week, I know I’ve been neglecting you.   In…


Troubleshooting Jagged Lines in Visio Flowcharts

As one user posted in blog feedback, it can be utterly aggravating when your flowchart acquires jagged lines. It’s remarkably easy to get into this state. I don’t know about you, but I end up with jagged lines when I start to resize shapes while maintaining connections. Let’s say that I’m using the Basic Flowcharts…