Storyboard designer

The storyboard designer (http://www.codeplex.com/storyboarddesigner) is a great example of how DSL Tools can be used in conjunction with the Visual Studio Shell to create a useful and flexible stand-alone tool.  It says the target audience is VSX developers, VS Shell developers and Visual Studio enthusiasts, but I’d say the target audience is anybody who wants to…

1

Your feedback needed

Aaron Ruckman is looking for feedback on your experience of installing and deploying Visual Studio.

1

DSL Tools Roadmap

Stuart has blogged a roadmap of future plans for DSL Tools.

2

Barcelona

Tomorrow morning I’m off to Barcelona, where TechEd is happening.  I’ll be there until Sunday.  I expect to be at the Visual Studio Extensibility booth tomorrow afternoon.

1

Containment and deletion

An old chestnut came up recently: the relationship between “containment” and “cascade delete”.  Somebody said that this is something inherent in real things and trotted out an old example: a Car has Wheels and when the Car is deleted, so are the Wheels. The UML specification is full of this kind of nonsense.  The verb “delete” does not…

4

Using LINQ to write constraints in OCL style v4

Based on much appreciated feedback from my earlier posts, here is my latest version.  This one is more compact and expressive, and the Duplicates function scales roughly linearly so I don’t think that any performance has been sacrificed for expressive power. [ValidationState(ValidationState.Enabled)] public partial class ExampleElement {   [ValidationMethod(ValidationCategories.Menu | ValidationCategories.Save)]   private void TestExampleElement(ValidationContext…

5

Using LINQ to write constraints in OCL style v3

In a comment to my last post, Keith Short challenged me to write a version of this constraint with good error reporting, i.e. to post an error to the task list that gives the names of the duplicate properties, and supports navigation to the element that is in error.  After a bit of head-scratching, I…

8

Using LINQ to write constraints in OCL style v2

Based on Michael Giagnocavo’s feedback, here’s a cleaner version of my last post. Thanks Michael. [ValidationState(ValidationState.Enabled)] public partial class ExampleElement {     [ValidationMethod(ValidationCategories.Menu | ValidationCategories.Save)]     private void TestExampleElement(ValidationContext context)     {         var propnames = this.Properties.Select( p => p.Name );         var distinctnames = propnames.Distinct();         if (propnames.Count() != distinctnames.Count())         {             context.LogError(“Non-unique…

3