Archive for the ‘StoryTeller’ Category

Diving into the StoryTeller trunk, Part 11.3: Commands strike back (2010-2-15)

One of the things that can hit you really hard when writing blog posts about open source software (like StoryTeller is), is the fact that your posts tend to get very fast outdated, especially when you don’t pay that much attention to the detail (like I did, sigh). If you’re not aware of what I’m [...]

Diving into the StoryTeller trunk, Part 11.2: More on Commands (2010-1-9)

!!! Updated to current StoryTeller trunk on 15.02.2010 !!!
Let’s take a look at some of the questions I left unanswered in the last post.
Is the basic GoF Command pattern sufficient for a modern composite application?
The basic GoF Command pattern has no notion of visual state of a Command, such as (Is)Enabled or (Is)Visible. Its original [...]

Diving into the StoryTeller trunk, Part 11.1: Commands (2009-12-23)

Welcome back to the “Diving into the StoryTeller trunk” series. The main topic for the last couple of posts about StoryTeller is its Command handling or to be a bit more specific the reoccurring problem of how Screen related Commands are managed in the app infrastructure. Couple of posts? Yeah, right. Today’s post is going [...]

Diving into the StoryTeller trunk, Part 10: Coordination Baby! (2009-11-30)

So far in this series I’ve talked extensively about what I consider the most of the important parts in the StoryTeller UI design. This includes Screens, the ScreenCollection, ScreenSubject, ScreenFactory, EventAggregation and the application of Convention of Configuration in general.
You could say that we mostly talked about ingredients. Today I would like to take some [...]

Diving into the StoryTeller trunk, Part 9: ScreenSubject & ScreenFactory (2009-9-7)

Hello back again on my little exploration of the UserInterface implementation of Jeremy Millers StoryTeller. I’d like to start today with a little excuse (oh my). Although I said last time that the current post would be focused on the ScreenConductor, I decided to delay that at least for one post in the series in [...]

Diving into the StoryTeller trunk, Part 8: The ScreenCollection (2009-8-21)

Welcome back again to the “Diving into the StoryTeller trunk” series. Got your diving suit on? If so, good. If not: Suit-up! (Sorry, the HIMYM fanboy in me was too strong )

Last time we spend some time with the concept of Screens. Screens more or less provide the content of an application. Content needs [...]

Diving into the StoryTeller trunk, Part 7: Screens (2009-8-14)

In the previous post I gave a short overview over the players that are involved in the so called
Screen Activation Lifecycle. Today I would like to take a closer look at, guess what, the Screen.

For me personally, the design ‘around’ a Screen is one of the crutial elements for success in
developing a composite UI layer. [...]

Diving into the StoryTeller trunk, Part 6: The main players in the screen activation lifecycle (2009-8-7)

It has been an interesting time with the StoryTeller codebase so far. I’ve learned a lot about advanced StructureMap usage by scanning through the code, trying to understand the unit tests, debugging StoryTeller and writing some smaller programs based on the newly discovered patterns & features.
However, my initial motivation for spending time with that codebase [...]

Diving into the StoryTeller trunk, Part 5: The EventAggregator (2009-7-20)

I’ve spend some time with the Pub / Sub topic on my own in the past. Although I still like my own implementation, even a year after I’ve originally written it (yes, rare but sometimes that happens), I really like how Jeremy implemented it. The EventAggregator in StoryTeller is one of those examples of how [...]

Diving into the StoryTeller trunk, Part 4: Registration of Generics (2009-7-17)

I really like the way StructureMap automates the container registration. Part 1 already showed a lot of the convention based container registration mechanism. Today I would like to touch an aspect of registration which doesn’t really fit under the term "convention over configuration", but is a really cool functionality non the less. For this post [...]