UI-Coordinates: define basic design
This commit is contained in:
parent
feb8414016
commit
78cbf0f57e
3 changed files with 386 additions and 13 deletions
|
|
@ -67,22 +67,78 @@ namespace test {
|
|||
virtual void
|
||||
run (Arg)
|
||||
{
|
||||
verify_basicProperties();
|
||||
verify_queryFunctions();
|
||||
verify_basics();
|
||||
verify_builder();
|
||||
verify_comparisons();
|
||||
verify_queryAnchor();
|
||||
verify_queryCoverage();
|
||||
verify_mutateAnchor();
|
||||
verify_mutateCover();
|
||||
verify_mutateExtend();
|
||||
verify_mutateCreate();
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_basicProperties()
|
||||
verify_basics()
|
||||
{
|
||||
UNIMPLEMENTED ("define basic properties of UI coordinates");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_queryFunctions()
|
||||
verify_builder()
|
||||
{
|
||||
UNIMPLEMENTED ("query components and parts of the path");
|
||||
UNIMPLEMENTED ("verify the UI coordinate builder DSL");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_comparisons()
|
||||
{
|
||||
UNIMPLEMENTED ("verify comparison of UI coordinates");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_queryAnchor()
|
||||
{
|
||||
UNIMPLEMENTED ("query anchorage of given UI coordinates");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_queryCoverage()
|
||||
{
|
||||
UNIMPLEMENTED ("query coverage of given UI coordinates with respect to actual UI");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_mutateAnchor()
|
||||
{
|
||||
UNIMPLEMENTED ("mutate given UI coordinates by anchoring them");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_mutateCover()
|
||||
{
|
||||
UNIMPLEMENTED ("mutate given UI coordinates by reducing to covered part");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_mutateExtend()
|
||||
{
|
||||
UNIMPLEMENTED ("mutate given UI coordinates by uncovered extension");
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
verify_mutateCreate()
|
||||
{
|
||||
UNIMPLEMENTED ("mutate given UI coordinates by creating new components");
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -9615,7 +9615,7 @@ The dispatch of //diff messages// is directly integrated into the UI-Bus -- whic
|
|||
|
||||
The Graphical User interface, the upper layer in this hierarchy, embodies everything of tangible relevance to the user working with the application. The interplay with Proc-Layer, the middle layer below the UI, is organised along the distinction between two realms of equal importance: on one side, there is the immediate //mechanics of the interface,// which is implemented directly within the ~UI-Layer, based on the Graphical User Interface Toolkit. And, on the other side, there are those //core concerns of working with media,// which are cast into the HighLevelModel at the heart of the middle layer.</pre>
|
||||
</div>
|
||||
<div title="UICoord" creator="Ichthyostega" modifier="Ichthyostega" created="201709222300" tags="def draft spec GuiPattern" changecount="1">
|
||||
<div title="UICoord" creator="Ichthyostega" modifier="Ichthyostega" created="201709222300" modified="201709231547" tags="def draft spec GuiPattern" changecount="5">
|
||||
<pre>//A topological addressing scheme to designate structural locations within the UI.//
|
||||
Contrary to conventional screen pixel coordinates, here we aim at a topological description of the UI structure. Such a framework of structural reference allows us
|
||||
* to refer to some "place" or "space" within the interface
|
||||
|
|
@ -9629,6 +9629,57 @@ As starting point for the design of such a framework, we'll pick the notion of a
|
|||
* the panel within this window
|
||||
* a view group within the panel
|
||||
* plus a locally defined access path further down to the actual UI element
|
||||
|
||||
!Properties
|
||||
UI coordinates are a symbolic specification, and as such, their representation is immutable value-like. Essentially, a coordinate specification designates a pathway, and thus is comprised of a sequence of symbols. The individual path component symbol can be addressed by its depth index, starting with the top level window as rooting point. The meaning of first steps of each path is thus always fixed (window, perspective, panel, view), followed by an essentially open sequence of local component names. Yet a given index position need not necessarily be actually defined. A coordinate spec can be indeterminate (nil), but in all other cases a minimal consecutive sequence of symbols is guaranteed to exist.
|
||||
|
||||
!!!flavours of meaning
|
||||
A given coordinate spec needs to be //interpreted// with the help of a resolver, which supplies additional knowledge regarding the actual window and UI configuration backing those interpretations. Such an interpretation allows to query for some typical predications, and it allows for //mutating operations,// which actually build a new coordinate spec from the given one.
|
||||
The general assumption is for all those coordinate interpretations to happen not within an excessively performance critical zone, where a little bit of iteration and repeated recomputation is deemed less costly than extended caching of evaluation state.
|
||||
|
||||
The first distinction to draw is the ''anchor point'' of a given coordinate spec. After anchoring, the designated path is explicitly rooted within a top level window. Obviously, the act of anchoring can be obvious(trivial), it can be //covered by wildcard,// or it can be a free interpolation or match against the existing environment. Starting from the anchor, the next predication to consider is the ''coverage'': the extent to which a given coordinate spec is actually covered by real UI structures. The test for coverage starts at the anchor point and descends following the coordinate spec in question. Backed by this evaluation process of interpretation and matching, we may judge a coordinate spec with respect to several predications
|
||||
* the coordinate spec may be totally ''explicit'' -- or it might contain wildcards
|
||||
* one specific path component of the coordinate spec may be known(present) or unknown
|
||||
* regarding the coverage, we may distinguish
|
||||
** a totally covered coordinate spec
|
||||
** a partially covered coordinate spec
|
||||
** a coordinate spec impossible to cover
|
||||
|
||||
!UI coordinate path evaluation
|
||||
As indicated above, evaluation of UI coordinates requires a resolver, and this evaluation process is //stateless.// Evaluation state is confined within the individual query or mutation call. Evaluation is accomplished by first constituting an anchoring, followed by traversal of the coordinate spec and matching against a navigation path within the actual UI window configuration. This process might involve interpretation of some meta-symbols and interpolation of wildcards.
|
||||
|
||||
Internally the coordinate resolver in turn relies on a context query interface, to find out about existing windows, panels, views and tabs and to navigate the real UI structure. The actual implementation of this context query interface is backed by the [[Navigator]] component exposed through the InteractionDirector.
|
||||
!!!Query operations
|
||||
In addition to the //locally decidable properties// of a coordinate spec, which are the explicitness and the presence of some component, several contextual predications may be queried
|
||||
;anchorage
|
||||
:the way the given coordinate spec is or can be anchored
|
||||
:* it is already //explicitly anchored// and this anchorage can be covered and backed by the currently existing UI configuration
|
||||
:* it //can be a anchored// by interpolation of some wildcards
|
||||
:* it is //incomplete// and need to be extended to allow anchoring
|
||||
:* it is //impossible to anchor// in the current UI configuration
|
||||
;coverage
|
||||
:the extent to which a given coordinate spec is backed by the actual UI configuration
|
||||
:please note: to determine the coverage, the spec need to anchored (either explicitly, or by interpolation, or by extension of an incomplete spec)
|
||||
:* it is //completely covered//
|
||||
:* it is //partially covered// with an remaining, uncovered extension part
|
||||
:* it is //possible to cover completely//
|
||||
:* it is //impossible to cover//
|
||||
!!!Mutations
|
||||
In addition to querying the interpretation of a given coordinate spec with respect to the current UI environment, it is also possible to rewrite or extend the spec based on this environment
|
||||
;anchoring
|
||||
:in correspondence to the possible states of anchorage, we may derived an explicitly anchored spec
|
||||
:*by interpolating the given spec
|
||||
:*by interpolation and extension of the given spec
|
||||
;covering
|
||||
:we may construct the covered part of a given spec, including automatic anchoring.
|
||||
;navigating
|
||||
:we may rewrite a given spec by navigating within the existing UI environment
|
||||
:as starting point, the coordinate spec need to be anchored and completely covered
|
||||
:from the topological UI position designated thus far, we may
|
||||
:*ascend
|
||||
:*descend to an existing child by matching name or index
|
||||
:*extend the path by an uncovered extension sequence
|
||||
:*extend the path by creating suitable child components
|
||||
</pre>
|
||||
</div>
|
||||
<div title="ViewConnection" modifier="Ichthyostega" created="201105221854" modified="201501091154" tags="def Model SessionLogic" changecount="3">
|
||||
|
|
|
|||
|
|
@ -3407,7 +3407,7 @@
|
|||
<linktarget COLOR="#8e2a4d" DESTINATION="ID_1909730752" ENDARROW="Default" ENDINCLINATION="190;-96;" ID="Arrow_ID_1543429248" SOURCE="ID_1507239589" STARTARROW="None" STARTINCLINATION="-103;109;"/>
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1485549081728" ID="ID_1122969153" MODIFIED="1504833848551" TEXT="globale Aktionen">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1485549081728" ID="ID_1122969153" MODIFIED="1506174809702" TEXT="globale Aktionen">
|
||||
<arrowlink COLOR="#824f68" DESTINATION="ID_826011549" ENDARROW="Default" ENDINCLINATION="-906;-1187;" ID="Arrow_ID_1373278707" STARTARROW="Default" STARTINCLINATION="873;259;"/>
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node CREATED="1488419973349" ID="ID_1855791702" MODIFIED="1488419978923" TEXT="brauche ein Konzept">
|
||||
|
|
@ -3591,7 +3591,8 @@
|
|||
<node CREATED="1504458702640" ID="ID_943045771" MODIFIED="1504458708091" TEXT="unlimitiert"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1504459120824" ID="ID_342577636" MODIFIED="1504459130946" TEXT="Koordinaten">
|
||||
<node CREATED="1504459120824" ID="ID_342577636" MODIFIED="1506175269622" TEXT="UI-Koordinaten">
|
||||
<arrowlink COLOR="#535189" DESTINATION="ID_1448696607" ENDARROW="Default" ENDINCLINATION="-107;-55;" ID="Arrow_ID_1194909838" STARTARROW="None" STARTINCLINATION="3;28;"/>
|
||||
<node CREATED="1504479456449" ID="ID_959239388" MODIFIED="1504479507642">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
|
@ -3619,6 +3620,270 @@
|
|||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506175078553" HGAP="92" ID="ID_1154523344" MODIFIED="1506181091841" TEXT="Implementierung" VSHIFT="6">
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node CREATED="1506175115772" ID="ID_1448696607" MODIFIED="1506181025658">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
<b>UI-Koordinaten </b>(UICoord)
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
<cloud COLOR="#e7d6c4"/>
|
||||
<linktarget COLOR="#535189" DESTINATION="ID_1448696607" ENDARROW="Default" ENDINCLINATION="-107;-55;" ID="Arrow_ID_1194909838" SOURCE="ID_342577636" STARTARROW="None" STARTINCLINATION="3;28;"/>
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node CREATED="1506175332288" ID="ID_1487048178" MODIFIED="1506175335441" TEXT="immutable"/>
|
||||
<node CREATED="1506175325136" ID="ID_569191479" MODIFIED="1506175331436" TEXT="kopierbare Werte"/>
|
||||
<node CREATED="1506175344846" ID="ID_1787806028" MODIFIED="1506175357976" TEXT="Tupel von Literalen"/>
|
||||
<node CREATED="1506175395879" ID="ID_1249891322" MODIFIED="1506175400362" TEXT="Bedeutungs-Varianten">
|
||||
<node CREATED="1506175488451" ID="ID_134646571" MODIFIED="1506175559083" TEXT="Anker"/>
|
||||
<node CREATED="1506175405502" ID="ID_468711419" MODIFIED="1506175417680" TEXT="explizit / wildcard"/>
|
||||
<node CREATED="1506175444505" ID="ID_971546375" MODIFIED="1506175448772" TEXT="bekannt / unbekannt"/>
|
||||
<node CREATED="1506175493954" ID="ID_1571215800" MODIFIED="1506175949153" TEXT="gedeckt / möglich / unmöglich"/>
|
||||
</node>
|
||||
<node CREATED="1506175969603" HGAP="58" ID="ID_1322989755" MODIFIED="1506181196817" TEXT="Auswertung" VSHIFT="43">
|
||||
<node CREATED="1506175980946" ID="ID_1635470067" MODIFIED="1506175983965" TEXT="stateless">
|
||||
<node CREATED="1506176104177" ID="ID_379934022" MODIFIED="1506176107452" TEXT="Traversierung"/>
|
||||
<node CREATED="1506176108473" ID="ID_241520424" MODIFIED="1506176114467" TEXT="Interpretation"/>
|
||||
<node CREATED="1506176114984" ID="ID_332155493" MODIFIED="1506176117235" TEXT="Abgleich"/>
|
||||
</node>
|
||||
<node CREATED="1506175984577" ID="ID_610939878" MODIFIED="1506175987228" TEXT="im Resolver">
|
||||
<node CREATED="1506176010590" ID="ID_901285927" MODIFIED="1506176067906" TEXT="Kontext-Infos">
|
||||
<node CREATED="1506176024596" ID="ID_1050302466" MODIFIED="1506176028175" TEXT="Aktuelles Fenster"/>
|
||||
<node CREATED="1506176028787" ID="ID_1768321192" MODIFIED="1506176037158" TEXT="existierende">
|
||||
<node CREATED="1506176038098" ID="ID_543075741" MODIFIED="1506176039621" TEXT="Fenster"/>
|
||||
<node CREATED="1506176040161" ID="ID_685895986" MODIFIED="1506176041845" TEXT="Panels"/>
|
||||
<node CREATED="1506176043073" ID="ID_670302946" MODIFIED="1506176044853" TEXT="Views"/>
|
||||
<node CREATED="1506176045465" ID="ID_6996325" MODIFIED="1506176046820" TEXT="Tabs"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506176077269" ID="ID_1123330267" MODIFIED="1506176086486" TEXT="Kontext ist zu kapseln">
|
||||
<icon BUILTIN="yes"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506180744136" HGAP="-8" ID="ID_1053983304" MODIFIED="1506180750564" TEXT="Operationen" VSHIFT="34">
|
||||
<node CREATED="1506180752094" ID="ID_532619019" MODIFIED="1506181105657" TEXT="Query">
|
||||
<font BOLD="true" NAME="SansSerif" SIZE="12"/>
|
||||
<node CREATED="1506180752094" ID="ID_509982542" MODIFIED="1506180752094" TEXT="locally decidable">
|
||||
<node CREATED="1506180752095" MODIFIED="1506180752095" TEXT="explicitness"/>
|
||||
<node CREATED="1506180752095" ID="ID_482556645" MODIFIED="1506180752095" TEXT="presence"/>
|
||||
</node>
|
||||
<node CREATED="1506180752096" ID="ID_320263447" MODIFIED="1506180752096" TEXT="contextual predications">
|
||||
<node CREATED="1506180752096" ID="ID_837824348" MODIFIED="1506180752096" TEXT="anchorage">
|
||||
<node CREATED="1506180752097" ID="ID_456798717" MODIFIED="1506180805482" TEXT="explicitly anchored">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
...and this anchorage can be covered and backed by the currently existing UI configuration
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1506180752098" ID="ID_1971122985" MODIFIED="1506180816686" TEXT="can be a anchored">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
...by interpolation of some wildcards
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1506180752099" ID="ID_1588059901" MODIFIED="1506180829103" TEXT="incomplete">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
...need to be extended to allow anchoring
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1506180752099" ID="ID_1331064451" MODIFIED="1506180752099" TEXT="impossible to anchor"/>
|
||||
</node>
|
||||
<node CREATED="1506180752099" ID="ID_1327313624" MODIFIED="1506180752099" TEXT="coverage">
|
||||
<node CREATED="1506180752099" ID="ID_1861096545" MODIFIED="1506181143851" TEXT="Prereq: need to anchored">
|
||||
<font ITALIC="true" NAME="SansSerif" SIZE="12"/>
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
<node CREATED="1506180752099" MODIFIED="1506180752099" TEXT="explicitly"/>
|
||||
<node CREATED="1506180752100" MODIFIED="1506180752100" TEXT="by interpolation"/>
|
||||
<node CREATED="1506180752100" MODIFIED="1506180752100" TEXT="by extension of incomplete"/>
|
||||
</node>
|
||||
<node CREATED="1506180752100" ID="ID_1925372021" MODIFIED="1506180752100" TEXT="completely covered"/>
|
||||
<node CREATED="1506180752100" ID="ID_1969020445" MODIFIED="1506180752100" TEXT="partially covered">
|
||||
<node CREATED="1506180752100" MODIFIED="1506180752100" TEXT="test only"/>
|
||||
<node CREATED="1506180752101" MODIFIED="1506180752101" TEXT="yield uncovered extension part"/>
|
||||
</node>
|
||||
<node CREATED="1506180752101" ID="ID_398264250" MODIFIED="1506180752101" TEXT="possible to cover completely"/>
|
||||
<node CREATED="1506180752101" ID="ID_622219519" MODIFIED="1506180752101" TEXT="impossible to cover"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506180752101" ID="ID_346716510" MODIFIED="1506181115210" TEXT="Mutate">
|
||||
<font BOLD="true" NAME="SansSerif" SIZE="12"/>
|
||||
<node CREATED="1506180752101" MODIFIED="1506180752101" TEXT="anchoring">
|
||||
<node CREATED="1506180752101" ID="ID_888532646" MODIFIED="1506180752101" TEXT="by interpolating the given spec"/>
|
||||
<node CREATED="1506180752102" ID="ID_1762786822" MODIFIED="1506180752102" TEXT="by interpolation and extension of the given spec"/>
|
||||
</node>
|
||||
<node CREATED="1506180752102" ID="ID_478035492" MODIFIED="1506180848952" TEXT="covering">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
we may construct the covered part of a given spec, including automatic anchoring.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</node>
|
||||
<node CREATED="1506180752102" ID="ID_1444275949" MODIFIED="1506180752102" TEXT="navigating">
|
||||
<node CREATED="1506180752102" ID="ID_1839478635" MODIFIED="1506181147267" TEXT="Prereq">
|
||||
<font ITALIC="true" NAME="SansSerif" SIZE="12"/>
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
<node CREATED="1506180752103" ID="ID_183872472" MODIFIED="1506180752103" TEXT="needs to be anchored"/>
|
||||
<node CREATED="1506180752103" MODIFIED="1506180752103" TEXT="needs to be completely covered"/>
|
||||
</node>
|
||||
<node CREATED="1506180752103" ID="ID_1985524064" MODIFIED="1506181178264" TEXT="starting point">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
navigate to the real UI component
|
||||
</p>
|
||||
<p>
|
||||
designated by the given coordinate spec
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
<node CREATED="1506180752103" MODIFIED="1506180752103" TEXT="ascend"/>
|
||||
<node CREATED="1506180752103" MODIFIED="1506180752103" TEXT="descend to an existing child">
|
||||
<node CREATED="1506180752103" MODIFIED="1506180752103" TEXT="by matching name"/>
|
||||
<node CREATED="1506180752104" MODIFIED="1506180752104" TEXT="by index number"/>
|
||||
</node>
|
||||
<node CREATED="1506180752104" MODIFIED="1506180752104" TEXT="extend the path by ...creates uncovered extension sequence"/>
|
||||
<node CREATED="1506180752104" MODIFIED="1506180752104" TEXT="create suitable children"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181068556" ID="ID_749871444" MODIFIED="1506181084051" TEXT="UICoord">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181721910" ID="ID_1680105436" MODIFIED="1506181735861" TEXT="Symbol-Tupel">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181727069" ID="ID_467120404" MODIFIED="1506181737140" TEXT="lokale Prädikate">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181744939" ID="ID_1731446951" MODIFIED="1506181820513" TEXT="present">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181747466" ID="ID_1522805946" MODIFIED="1506181821273" TEXT="wildcard">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181783173" ID="ID_306479120" MODIFIED="1506181821985" TEXT="explicit">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181770783" ID="ID_295392903" MODIFIED="1506181822673" TEXT="incomplete">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181073556" ID="ID_1878859300" MODIFIED="1506181084811" TEXT="Resolver">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181794428" ID="ID_333406817" MODIFIED="1506181807435" TEXT="Setup">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181800067" ID="ID_196802981" MODIFIED="1506181809619" TEXT="Wiring">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181802699" ID="ID_582767851" MODIFIED="1506181810370" TEXT="Test-Setup">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506175097367" ID="ID_1442345755" MODIFIED="1506181085379" TEXT="ViewSpec-DSL">
|
||||
<arrowlink COLOR="#b45c5a" DESTINATION="ID_686917529" ENDARROW="Default" ENDINCLINATION="-468;-196;" ID="Arrow_ID_1955094318" STARTARROW="None" STARTINCLINATION="360;85;"/>
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181855132" ID="ID_787628963" MODIFIED="1506181859251" TEXT="ViewSpec">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181864011" ID="ID_615395774" MODIFIED="1506181867138" TEXT="Alternativen">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181868898" ID="ID_1852393086" MODIFIED="1506181871266" TEXT="Resolver">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181842670" ID="ID_229712638" MODIFIED="1506181848613" TEXT="Allocator">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506181875481" ID="ID_941513985" MODIFIED="1506181880554" TEXT="AllocatorSpec">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506181908037" HGAP="-29" ID="ID_1925951134" MODIFIED="1506182045240" TEXT="Test" VSHIFT="21">
|
||||
<icon BUILTIN="stop"/>
|
||||
<node CREATED="1506181922767" ID="ID_1642380411" MODIFIED="1506181922767" TEXT="UICoord_test">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009518" ID="ID_138248232" MODIFIED="1506182101803" TEXT="verify_basics">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009519" ID="ID_1637725534" MODIFIED="1506182101802" TEXT="verify_builder">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009519" ID="ID_542761230" MODIFIED="1506182101802" TEXT="verify_comparisons">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009519" ID="ID_231137127" MODIFIED="1506182101801" TEXT="verify_queryAnchor">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009519" ID="ID_1203731740" MODIFIED="1506182101800" TEXT="verify_queryCoverage">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009520" ID="ID_1462245568" MODIFIED="1506182101799" TEXT="verify_mutateAnchor">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009520" ID="ID_1785831243" MODIFIED="1506182101798" TEXT="verify_mutateCover">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009520" ID="ID_1146069424" MODIFIED="1506182101797" TEXT="verify_mutateExtend">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182009520" ID="ID_1254487071" MODIFIED="1506182101796" TEXT="verify_mutateCreate">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1506182023288" ID="ID_1539184761" MODIFIED="1506182023288" TEXT="ViewSpecDSL_test">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182077694" ID="ID_839824654" MODIFIED="1506182098717" TEXT="verify_basicProperties">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182037003" ID="ID_439307131" MODIFIED="1506182109551" TEXT="verify_standardUsage">
|
||||
<icon BUILTIN="pencil"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1506182087462" ID="ID_47070993" MODIFIED="1506182098716" TEXT="verify_alternatives">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1504479724869" HGAP="-123" ID="ID_637855369" MODIFIED="1504479751743" TEXT="Darstellung" VSHIFT="10">
|
||||
<icon BUILTIN="forward"/>
|
||||
<node CREATED="1504479769415" ID="ID_115454468" MODIFIED="1504479902024" TEXT="Maßstab">
|
||||
|
|
@ -3654,9 +3919,10 @@
|
|||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1504479933641" ID="ID_686917529" MODIFIED="1505415912510" TEXT="DSL">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1504479933641" ID="ID_686917529" MODIFIED="1506175201158" TEXT="DSL">
|
||||
<cloud COLOR="#dac6a1"/>
|
||||
<linktarget COLOR="#5e819b" DESTINATION="ID_686917529" ENDARROW="Default" ENDINCLINATION="-89;-122;" ID="Arrow_ID_1067086551" SOURCE="ID_1397553997" STARTARROW="None" STARTINCLINATION="-322;62;"/>
|
||||
<linktarget COLOR="#b45c5a" DESTINATION="ID_686917529" ENDARROW="Default" ENDINCLINATION="-468;-196;" ID="Arrow_ID_1955094318" SOURCE="ID_1442345755" STARTARROW="None" STARTINCLINATION="360;85;"/>
|
||||
<icon BUILTIN="idea"/>
|
||||
<node CREATED="1504479939664" ID="ID_1158508729" MODIFIED="1504479950115" TEXT="Term-Schreibweise"/>
|
||||
<node CREATED="1504479950607" ID="ID_118638432" MODIFIED="1504479958289" TEXT="generiert Funktoren/Closures"/>
|
||||
|
|
@ -12589,7 +12855,7 @@
|
|||
<node CREATED="1448669675495" ID="ID_1257367197" MODIFIED="1448669679146" TEXT="Perspektiven"/>
|
||||
<node CREATED="1448669699148" ID="ID_1264820517" MODIFIED="1448669700591" TEXT="Gesten"/>
|
||||
</node>
|
||||
<node CREATED="1448669742334" HGAP="28" ID="ID_1679641405" MODIFIED="1487271385158" TEXT="InteractionStateManager" VSHIFT="-3">
|
||||
<node CREATED="1448669742334" HGAP="41" ID="ID_1679641405" MODIFIED="1506174960063" TEXT="InteractionStateManager" VSHIFT="-4">
|
||||
<linktarget COLOR="#81759f" DESTINATION="ID_1679641405" ENDARROW="Default" ENDINCLINATION="604;-108;" ID="Arrow_ID_1210299906" SOURCE="ID_839961131" STARTARROW="None" STARTINCLINATION="702;0;"/>
|
||||
<font BOLD="true" NAME="SansSerif" SIZE="13"/>
|
||||
<node CREATED="1448669816476" ID="ID_1895677880" MODIFIED="1448669822183" TEXT="lauscht als Observer mit"/>
|
||||
|
|
@ -12601,7 +12867,7 @@
|
|||
<node CREATED="1448669899113" ID="ID_990871123" MODIFIED="1492442595736" TEXT="er sendet jeweils die passende Command-ID"/>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1487213803525" HGAP="26" ID="ID_735655054" MODIFIED="1504478467098" TEXT="InteractionDirector" VSHIFT="-2">
|
||||
<node CREATED="1487213803525" HGAP="36" ID="ID_735655054" MODIFIED="1506174964342" TEXT="InteractionDirector" VSHIFT="-3">
|
||||
<arrowlink COLOR="#1b3863" DESTINATION="ID_362749694" ENDARROW="Default" ENDINCLINATION="-518;1012;" ID="Arrow_ID_959577029" STARTARROW="Default" STARTINCLINATION="-376;-568;"/>
|
||||
<linktarget COLOR="#586d86" DESTINATION="ID_735655054" ENDARROW="Default" ENDINCLINATION="549;166;" ID="Arrow_ID_1031406920" SOURCE="ID_1980246174" STARTARROW="None" STARTINCLINATION="1;-366;"/>
|
||||
<font NAME="SansSerif" SIZE="14"/>
|
||||
|
|
@ -12609,7 +12875,7 @@
|
|||
<node CREATED="1487275297855" ID="ID_417844993" MODIFIED="1487275301530" TEXT="betreibt FocusTracker"/>
|
||||
<node CREATED="1487273437019" ID="ID_1600127727" MODIFIED="1487273440390" TEXT="betreibt Navigator"/>
|
||||
</node>
|
||||
<node CREATED="1487270226342" ID="ID_1501993794" MODIFIED="1487270229593" TEXT="SpotLocator">
|
||||
<node CREATED="1487270226342" HGAP="32" ID="ID_1501993794" MODIFIED="1506174970573" TEXT="SpotLocator">
|
||||
<node CREATED="1487270240084" ID="ID_1171094973" MODIFIED="1487270974510" TEXT="Erfüllungsgehilfe">
|
||||
<icon BUILTIN="idea"/>
|
||||
</node>
|
||||
|
|
@ -13048,7 +13314,7 @@
|
|||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1485548830035" HGAP="5" ID="ID_1295711115" MODIFIED="1485548844056" TEXT="Nutzen" VSHIFT="17">
|
||||
<icon BUILTIN="bell"/>
|
||||
<node CREATED="1485548856639" ID="ID_1677281474" MODIFIED="1485548861522" TEXT="spezifische Aktionen">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1485548894522" FOLDED="true" ID="ID_826011549" MODIFIED="1504833848551" TEXT="Problem: globale Aktionen">
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1485548894522" FOLDED="true" ID="ID_826011549" MODIFIED="1506174809702" TEXT="Problem: globale Aktionen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue