mirror of
https://github.com/EiffelSoftware/eiffel-org.git
synced 2025-12-07 15:22:31 +01:00
Author:halw
Date:2011-04-09T14:54:37.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@870 abb3cda0-5349-4a8f-a601-0c33ac3a8c38
This commit is contained in:
@@ -16,6 +16,8 @@ Figure 1: A window with a ribbon.
|
||||
|
||||
The EiffelRibbon library contains the classes that are used to implement the ribbon facilities. The classes in the EiffelRibbon library all have class names beginning "EV_", the default prefix for EiffelVision 2 classes. So the EiffelRibbon classes can be seen as an extension to the EiffelVision 2 library. If you've used EiffelVision 2 to create applications with graphical user interfaces, then the EiffelRibbon class won't look unfamiliar to you. However, unlike other EiffelVision 2 classes, the EiffelRibbon classes only work in applications targeted to Microsoft Windows.
|
||||
|
||||
To gain a detailed understanding of the goals of Microsoft's Ribbon technology including some guidelines on designing effective ribbons, see [http://msdn.microsoft.com/en-us/library/cc872782.aspx the '''Ribbons''' page] on Microsoft's MSDN site.
|
||||
|
||||
The EiffelRibbon design tool helps you configure a ribbon in much the same way that [[EiffelBuild|EiffelBuild]] (ES Builder) helps you layout a GUI application.
|
||||
|
||||
=System requirements=
|
||||
|
||||
@@ -15,7 +15,7 @@ The scenario in the Faneuil Hall example involves a number of immigrants waiting
|
||||
|
||||
The primary actors here are the immigrants, the judge, and the spectators, model by classes <code>IMMIGRANT</code>, <code>JUDGE</code>, and <code>SPECTATOR</code>, respectively. Some of the common behavior of these classes is abstracted into a deferred parent class, <code>ACTOR</code>. In addition to the actor classes, there is a class <code>HALL</code> that represents Faneuil Hall itself, and a root class that sets everything up and starts the processing. There is only one judge, but there will be a maximum combined number of immigrants and spectators. The specific number of immigrants versus spectators varies at random from one execution to the next.
|
||||
|
||||
Although not really considered an actor here (at least not a descendant of class <code>ACTOR</code>) the class <code>HALL</code> plays a critical role in managing the concurrent actions of the immigrants, spectators, and the judge. <code>HALL</code> includes many status queries which, when used in preconditions in features of the other actors, constitute [[Concurrent Eiffel with SCOOP#Preconditions|uncontrolled precondition clauses]] which when false will cause the calling processor to wait until the condition becomes true. For example, consider the following status query from class <code>HALL</code>:
|
||||
Although not really considered an actor here (at least not a descendant of class <code>ACTOR</code>) the class <code>HALL</code> plays a critical role in synchronizing the concurrent actions of the immigrants, spectators, and the judge. <code>HALL</code> includes many status queries which, when used in preconditions in features of the other actors, constitute [[Concurrent Eiffel with SCOOP#Preconditions|uncontrolled precondition clauses]] which when false will cause the calling processor to wait until the condition becomes true. For example, consider the following status query from class <code>HALL</code>:
|
||||
|
||||
<code>
|
||||
immigrants_ready: BOOLEAN
|
||||
|
||||
Reference in New Issue
Block a user