Although AFW (Application Framework) is based on a simple console user interface (CUI), it demonstrates how several important patterns can be combined. All versions are implemented in C++.
AFW is extracted from Chapter 6 of Pattern-Oriented Programming in C++.
A Java version can be found in Chapter 7 of Pattern-Oriented Programming in Java.
A simplified CUI framework is provided at my Java utilities site.
All four versions are based on the Model-View-Controller pattern.
Version 2.0 uses the View Handler pattern (a variation of the Resource Manager pattern) to manage and notify views.
Version 3.0 introduces a Command Processor.
Version 4.0 is a slight enhancement of version 3.0 that uses Mementos.