At 07:05 AM 11/8/2005 -0800, Donn Denman wrote:
+1 to ViewableKind as an annotation that the view applies to a Kind. This
could be the "textbook" example of good annotation usage!
The intent as I understood it was that the inverse attribute of
ViewableKind.detailView would be something like Branch.viewerForKinds, and
that you'd normally set up the relationship from that end. Thus, the
ViewableKind annotation would've been an implementation detail used by the
branch point to find the view, and would never even be seen by the parcel
developer; they would just set the branch's 'viewerForKinds' to be a list
of the target kinds.
Of course, that's not a fully fleshed out design, as it doesn't deal with
(for example) the possibility that multiple views might apply to the same
kind, especially when stamping is involved. There would probably need to
be something like Branch.supersedesView/supersededBy to allow the system to
find the "most specific" view that applies (rather similar to the way that
inter-task startup dependencies are handled in osaf.startup now).
It also might simply make sense to use something like a dropdown or tabbed
interface to allow non-superseded parallel views to exist, as it's likely
that third or "fourth party" plugins (i.e. plugins to extend other
plugins), will want to provide alternative or related views. It also would
make it easier to access specialized views like a "Soccer Referee" view on
a "Contact" item. Another possibility is to just combine applicable views
into one scrolling view.
Anyway, some of these ideas may be worth looking at in the next review of
the plans for stamping - and they might turn out to be quite simple if we
use the annotation system to do stamping.
(FWIW, I've noticed some discussion on the Design list about annotation
that's talking about a UI idea, so we may have to come up with a different
name for schema.Annotation in the near future to avoid conflict with the UI
concept of an annotation.)
On Nov 7, 2005, at 9:13 PM, Phillip J. Eby wrote:
At 04:45 PM 11/7/2005 -0800, Katie Capps Parlante wrote:
Would you feel differently if the annotation and attribute had different
names that didn't imply "hint to layer above me", but made it clear that
the annotation belonged to the view layer?
Actually, now that you mention it, if we were to do something like
ViewableKind, it shouldn't go in osaf.pim anyway, but rather be part of
the detail view parcel(s), since the annotation is on their behalf. I'm
guessing John just put it there because of the old ContentKind being
there before.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "Dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/dev