You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-dev@incubator.apache.org by Simon Lessard <si...@gmail.com> on 2006/08/26 02:49:31 UTC
Train selectors
Yes... again...
I made a new renderer and it work quite well, but I had to use :ora-visited
and :ora-active for some selectors because those are "pass through" values.
Anyone have better name suggestion while we implement state interception on
a per component basis?
Regards,
~ Simon
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hello again,
Here's the remaining of the mail as I had to send the last one in a hurry. I
use the same join rule as you, that is previous stop determine the join
state, except for the join after the selected stop. The only exception are
disabled stops, those have disabled joins on both sides.
I also go rid of the separator, it's redundant as you can add padding to
-content selector. I also added two aliases .AFTrainContent:alias and
.AFTrainIconBlock. So you can add spacing between stop with something like
the following:
.AFTrainContent:alias
{
padding-left: 8px;
padding-right: 8px;
}
Regards,
~ Simon
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> Hello Pavitra,
>
> I had to do about the same changes on my side. Here's my list of selector
> and the rules I used:
>
> - af|train::stop combinable with :selected, :disabled, :completed (will
> probably become p_AFVisited) and :unvisited. You can append :readOnly at the
> end of the result. So af|train::stop:unvisited:readOnly is valid
> - af|train::link
> - af|train::join combinable with :disabled, :completed, :unvisited and
> :outer (:outer is used to add joins outside the edge of the train. I don't
> think many will use it, but it cost nothing and add more customization
> possibilities)
> - af|train::overflow-start combinable with :disabled and :readOnly
> - af|train::overflow-end combinable with :disabled, :unvisited and
> :readOnly
>
> I have the following valid suffixes: (I could not use ::content for
> example since double :: is now prevented from Adam's change to prevent some
> strange behavior it seem)
> -content (for example, the following is valid: af|train::stop-content and
> af|train::stop:selected-content. This selector refers to the link cell fo
> the train)
> -icon-block (as above but refers to the icon cell)
>
> The icons follow the same rule.
>
>
> On 8/28/06, Pavitra Subramaniam <pavitra.subramaniam@oracle.com > wrote:
> >
> > Hello Simon,
> >
> > I have also almost completed implementing the TrainRenderer using the
> > new skin selectors. It's great to know you are done as well. If you plan to
> > check in the train renderer code anytime soon, can we agree on the common
> > list of skin selectors, so that I can reuse them for my work internally at
> > Oracle? I had to make the following changes and wanted to give you an
> > update.
> >
> > 1. I had to introduce a new state called "read-only". This is different
> > from "disabled" state, like I explained in a previous email.
> >
> > 2. I removed some redundant skin hooks - I can send you the updated list
> > of selectors I am using. I also couldn't get the "pass-through states"
> > :visited, :active and :unvisited to work, just as you. So I have temporarily
> > defined selectors like Jeanne suggested (using p_AFVisited, p_AFUnvisited
> > etc. and renamed :active to :selected).
> >
> > 3. Finally I have simplified the rules for determining the state of
> > joins. I figured it would be much simpler if we did the following. The join
> > to the left of a stop, is 'always in the same state as the stop' (Overflows
> > could also follow the same rules as stops). So for instance for a train like
> >
> >
> > V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > vr uv v d uvr v
> >
> >
> > NOTE: The only exception, is the join to the left of an active stop is
> > visited. Also, UVR and VR are stops that are in 2 states simulataneously -
> > 'visited & read-only' and 'unvisited & read-only'. Read-only implies the
> > stop cannot be reached (and hence not clickable) and is dictated by the
> > 'readOnly' property on the component commandNavigationItem.
> >
> > Please let me know if the above is ok.
> >
> >
> > Thanks
> > - Pavitra
> >
> >
> > > -----Original Message-----
> > > From: Simon Lessard [mailto:simon.lessard.3@gmail.com ]
> > > Sent: Monday, August 28, 2006 11:43 AM
> > > To: adffaces-dev@incubator.apache.org
> > > Subject: Re: Train selectors
> > >
> > > Hmmm you mean somthing like af|train:: stop.p_AFVisited?
> > >
> > > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >
> > > > I was thinking :selected for :active. :selected could be used for
> > > > other components, too.
> > > > For :visited/:unvisited, I can't think of a better name.
> > > I'm thinking
> > > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
> > > > pseudo-class support in. These wouldn't in a public api
> > > format, though.
> > > >
> > > > - Jeanne
> > > >
> > > > Simon_Lessard@DMR.CA wrote:
> > > >
> > > > >Hello,
> > > > >
> > > > >I thought about the following name changes for the selectors:
> > > > >
> > > > >:active --> :current or :selected
> > > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> > > > >
> > > > >
> > > > >Do you have any other idea/preference?
> > > > >
> > > > >
> > > > >Regards,
> > > > >
> > > > >~ Simon
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >"Simon Lessard" < simon.lessard.3@gmail.com>
> > > > >2006-08-25 22:49
> > > > >Please respond to adffaces-dev
> > > > >
> > > > > To: "Trinidad - Dev"
> > > <ad...@incubator.apache.org>
> > > > > cc:
> > > > > Subject: Train selectors
> > > > >
> > > > >
> > > > >Yes... again...
> > > > >
> > > > >I made a new renderer and it work quite well, but I had to use
> > > > >:ora-visited and :ora-active for some selectors because those are
> > > > >"pass through"
> > > > >values.
> > > > >Anyone have better name suggestion while we implement state
> > > > >interception on a per component basis?
> > > > >
> > > > >
> > > > >Regards,
> > > > >
> > > > >~ Simon
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> > >
> >
> >
>
Re: TrainRenderer using the new train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
We don't want to expose the html, that is for sure. So using block for
divs and cell for tds should be out.
I was just saying that the skin selector keys we use in Trinidad use
cell or content, but not block, so even though we weren't as consistent
as we should have been, let's not add to the inconsistency by adding a
new term. :)
Pavitra Subramaniam wrote:
>Yes it does. That's why I used -block everywhere and some other places -content. But Jeanne seems to recommend cell, so not sure. <!-- Converted from text/rtf format -->
>- Pavitra
>From: Simon Lessard [mailto:simon.lessard.3@gmail.com] Sent: Tuesday, August 29, 2006 2:00 PM To: adffaces-dev@incubator.apache.org; pavitra.subramaniam@oracle.com Subject: Re: TrainRenderer using the new train selectors Ah, don't that expose the markup though? ~ Simon On 8/29/06, Pavitra Subramaniam <pavitra.subramaniam@oracle.com > wrote: I am using block to indicate style class that goes in a <div> and technically I should use cell for style class that goes in a <td> - Pavitra > -----Original Message----- > From: Simon Lessard [mailto:simon.lessard.3@gmail.com] > Sent: Tuesday, August 29, 2006 11:18 AM > To: adffaces-dev@incubator.apache.org > Subject: Re: TrainRenderer using the new train selectors > > Oups, comments below > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote: > > > > one question below > > > > Simon Lessard wrote: > > > > > Hello Pavitra, > > > > > > I had to do about the same changes on my side. Here's my list of > > selector > > > and the rules I used: > > > > > > - af|train::stop combinable with :selected, :disabled, :completed > > > (will probably become p_AFVisited) and :unvisited. You can append > > > :readOnly at the end of the result. So > > > af|train::stop:unvisited:readOnly is valid > > > - af|train::link > > > - af|train::join combinable with :disabled, :completed, > :unvisited > > > and :outer (:outer is used to add joins outside the edge of the > > > train. I don't think many will use it, but it cost > nothing and add > > > more customization > > > possibilities) > > > > Is :outer a state? It sounds to me like it should be > > af|train::join-outer > > > yes, it could be ::join-outer, was made a state only to fit > the other join selectors, but it does make more sense to use > -outer for that one. > > > Does that make more sense now? > > > Regards, > > ~ Simon > > > - af|train::overflow-start combinable with :disabled and :readOnly > > > - af|train::overflow-end combinable with :disabled, > :unvisited and > > > :readOnly > > > > > > I have the following valid suffixes: (I could not use > ::content for > > > example since double :: is now prevented from Adam's change to > > > prevent some strange behavior it seem) > > > > I don't think two pseudo-elements make sense, does it? I > suppose you > > could have a piece of a piece. Adam prevented it because there were > > bugs in it. I can't recall what the bugs were. > > > I was seeing them more as sub-elements, like ::stop::content > (content of the > stop) > > > -content(for example, the following is valid: > af|train::stop-content > > > and > > > af|train::stop:selected-content. This selector refers to the link > > > af|cell > > fo > > > the train) > > > > What does a :selected-content 'state' mean? > > How is it different than af|train::stop-content:selected? > > > My bad there, af|train::stop-content:selected is actually > what I use. Even if a better selector would have been > af|train::stop:selected::content imho. > > > -icon-block (as above but refers to the icon cell) > > > > Could you say -icon-cell? We use 'cell' quite a bit in our skinning > > selectors. > > > Yes I could, I was using block only because it was in Pavitra > document at first. > > > > > > The icons follow the same rule. > > > > > > On 8/28/06, Pavitra Subramaniam > <pa...@oracle.com> wrote: > > > > > >> > > >> Hello Simon, > > >> > > >> I have also almost completed implementing the > TrainRenderer using > > >> the new skin selectors. It's great to know you are done > as well. If > > >> you plan to check in the train renderer code anytime > soon, can we > > >> agree on the common list of skin selectors, so that I can reuse > > >> them for my work internally at Oracle? I had to make the > following > > >> changes and wanted to give you an update. > > >> > > >> 1. I had to introduce a new state called "read-only". This is > > >> different from "disabled" state, like I explained in a > previous email. > > >> > > >> 2. I removed some redundant skin hooks - I can send you > the updated > > list > > >> of selectors I am using. I also couldn't get the > "pass-through states" > > >> :visited, :active and :unvisited to work, just as you. So I have > > >> temporarily defined selectors like Jeanne suggested (using > > >> p_AFVisited, p_AFUnvisited etc. and renamed :active to > :selected). > > >> > > >> 3. Finally I have simplified the rules for determining > the state of > > >> joins. > > >> I figured it would be much simpler if we did the following. The > > >> join to the left of a stop, is 'always in the same state as the > > >> stop' (Overflows could also follow the same rules as > stops). So for > > >> instance for a train like > > >> > > >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V > > >> vr uv v duvrv > > >> > > >> > > >> NOTE: The only exception, is the join to the left of an > active stop > > >> is visited. Also, UVR and VR are stops that are in 2 states > > >> simulataneously - 'visited & read-only' and 'unvisited & > > >> read-only'. Read-only implies > > the > > >> stop cannot be reached (and hence not clickable) and is > dictated by > > >> the 'readOnly' property on the component commandNavigationItem. > > >> > > >> Please let me know if the above is ok. > > >> > > >> > > >> Thanks > > >> - Pavitra > > >> > > >> > > >> > -----Original Message----- > > >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com] > > >> > Sent: Monday, August 28, 2006 11:43 AM > > >> > To: adffaces-dev@incubator.apache.org > > >> > Subject: Re: Train selectors > > >> > > > >> > Hmmm you mean somthing like af|train:: stop.p_AFVisited? > > >> > > > >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote: > > >> > > > > >> > > I was thinking :selected for :active. :selected > could be used > > >> > > for other components, too. > > >> > > For :visited/:unvisited, I can't think of a better name. > > >> > I'm thinking > > >> > > that we should use .p_AFVisited, .P_AFUnvisited > until we have > > >> > > the pseudo-classsupport in. These wouldn't in a public api > > >> > format, though. > > >> > > > > >> > > - Jeanne > > >> > > > > >> > > Simon_Lessard@DMR.CA wrote: > > >> > > > > >> > > >Hello, > > >> > > > > > >> > > >I thought about the following name changes for the > selectors: > > >> > > > > > >> > > >:active --> :current or :selected :visited/:unvisited --> > > >> > > >:completed/:uncompleted or :seen/:unseen > > >> > > > > > >> > > > > > >> > > >Do you have any other idea/preference? > > >> > > > > > >> > > > > > >> > > >Regards, > > >> > > > > > >> > > >~ Simon > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > >"Simon Lessard" <si...@gmail.com> > > >> > > >2006-08-25 22:49 > > >> > > >Please respond to adffaces-dev > > >> > > > > > >> > > >To: "Trinidad - Dev" > > >> > < adffaces-dev@incubator.apache.org> > > >> > > >cc: > > >> > > >Subject:Train selectors > > >> > > > > > >> > > > > > >> > > >Yes... again... > > >> > > > > > >> > > >I made a new renderer and it work quite well, but I > had to use > > >> > > >:ora-visited and :ora-active for some selectors > because those > > >> > > >are "pass through" > > >> > > >values. > > >> > > >Anyone have better name suggestion while we implement state > > >> > > >interception on a per component basis? > > >> > > > > > >> > > > > > >> > > >Regards, > > >> > > > > > >> > > >~ Simon > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > > > >> > > > > >> > > > >> > > > >> > > > >> > > >> > > > > > > > > > >
>
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Yes it does. That's why I used -block everywhere and some other places -content. But Jeanne seems to recommend cell, so not sure. <!-- Converted from text/rtf format -->
- Pavitra
From: Simon Lessard [mailto:simon.lessard.3@gmail.com] Sent: Tuesday, August 29, 2006 2:00 PM To: adffaces-dev@incubator.apache.org; pavitra.subramaniam@oracle.com Subject: Re: TrainRenderer using the new train selectors Ah, don't that expose the markup though? ~ Simon On 8/29/06, Pavitra Subramaniam <pavitra.subramaniam@oracle.com > wrote: I am using block to indicate style class that goes in a <div> and technically I should use cell for style class that goes in a <td> - Pavitra > -----Original Message----- > From: Simon Lessard [mailto:simon.lessard.3@gmail.com] > Sent: Tuesday, August 29, 2006 11:18 AM > To: adffaces-dev@incubator.apache.org > Subject: Re: TrainRenderer using the new train selectors > > Oups, comments below > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote: > > > > one question below > > > > Simon Lessard wrote: > > > > > Hello Pavitra, > > > > > > I had to do about the same changes on my side. Here's my list of > > selector > > > and the rules I used: > > > > > > - af|train::stop combinable with :selected, :disabled, :completed > > > (will probably become p_AFVisited) and :unvisited. You can append > > > :readOnly at the end of the result. So > > > af|train::stop:unvisited:readOnly is valid > > > - af|train::link > > > - af|train::join combinable with :disabled, :completed, > :unvisited > > > and :outer (:outer is used to add joins outside the edge of the > > > train. I don't think many will use it, but it cost > nothing and add > > > more customization > > > possibilities) > > > > Is :outer a state? It sounds to me like it should be > > af|train::join-outer > > > yes, it could be ::join-outer, was made a state only to fit > the other join selectors, but it does make more sense to use > -outer for that one. > > > Does that make more sense now? > > > Regards, > > ~ Simon > > > - af|train::overflow-start combinable with :disabled and :readOnly > > > - af|train::overflow-end combinable with :disabled, > :unvisited and > > > :readOnly > > > > > > I have the following valid suffixes: (I could not use > ::content for > > > example since double :: is now prevented from Adam's change to > > > prevent some strange behavior it seem) > > > > I don't think two pseudo-elements make sense, does it? I > suppose you > > could have a piece of a piece. Adam prevented it because there were > > bugs in it. I can't recall what the bugs were. > > > I was seeing them more as sub-elements, like ::stop::content > (content of the > stop) > > > -content(for example, the following is valid: > af|train::stop-content > > > and > > > af|train::stop:selected-content. This selector refers to the link > > > af|cell > > fo > > > the train) > > > > What does a :selected-content 'state' mean? > > How is it different than af|train::stop-content:selected? > > > My bad there, af|train::stop-content:selected is actually > what I use. Even if a better selector would have been > af|train::stop:selected::content imho. > > > -icon-block (as above but refers to the icon cell) > > > > Could you say -icon-cell? We use 'cell' quite a bit in our skinning > > selectors. > > > Yes I could, I was using block only because it was in Pavitra > document at first. > > > > > > The icons follow the same rule. > > > > > > On 8/28/06, Pavitra Subramaniam > <pa...@oracle.com> wrote: > > > > > >> > > >> Hello Simon, > > >> > > >> I have also almost completed implementing the > TrainRenderer using > > >> the new skin selectors. It's great to know you are done > as well. If > > >> you plan to check in the train renderer code anytime > soon, can we > > >> agree on the common list of skin selectors, so that I can reuse > > >> them for my work internally at Oracle? I had to make the > following > > >> changes and wanted to give you an update. > > >> > > >> 1. I had to introduce a new state called "read-only". This is > > >> different from "disabled" state, like I explained in a > previous email. > > >> > > >> 2. I removed some redundant skin hooks - I can send you > the updated > > list > > >> of selectors I am using. I also couldn't get the > "pass-through states" > > >> :visited, :active and :unvisited to work, just as you. So I have > > >> temporarily defined selectors like Jeanne suggested (using > > >> p_AFVisited, p_AFUnvisited etc. and renamed :active to > :selected). > > >> > > >> 3. Finally I have simplified the rules for determining > the state of > > >> joins. > > >> I figured it would be much simpler if we did the following. The > > >> join to the left of a stop, is 'always in the same state as the > > >> stop' (Overflows could also follow the same rules as > stops). So for > > >> instance for a train like > > >> > > >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V > > >> vr uv v duvrv > > >> > > >> > > >> NOTE: The only exception, is the join to the left of an > active stop > > >> is visited. Also, UVR and VR are stops that are in 2 states > > >> simulataneously - 'visited & read-only' and 'unvisited & > > >> read-only'. Read-only implies > > the > > >> stop cannot be reached (and hence not clickable) and is > dictated by > > >> the 'readOnly' property on the component commandNavigationItem. > > >> > > >> Please let me know if the above is ok. > > >> > > >> > > >> Thanks > > >> - Pavitra > > >> > > >> > > >> > -----Original Message----- > > >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com] > > >> > Sent: Monday, August 28, 2006 11:43 AM > > >> > To: adffaces-dev@incubator.apache.org > > >> > Subject: Re: Train selectors > > >> > > > >> > Hmmm you mean somthing like af|train:: stop.p_AFVisited? > > >> > > > >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote: > > >> > > > > >> > > I was thinking :selected for :active. :selected > could be used > > >> > > for other components, too. > > >> > > For :visited/:unvisited, I can't think of a better name. > > >> > I'm thinking > > >> > > that we should use .p_AFVisited, .P_AFUnvisited > until we have > > >> > > the pseudo-classsupport in. These wouldn't in a public api > > >> > format, though. > > >> > > > > >> > > - Jeanne > > >> > > > > >> > > Simon_Lessard@DMR.CA wrote: > > >> > > > > >> > > >Hello, > > >> > > > > > >> > > >I thought about the following name changes for the > selectors: > > >> > > > > > >> > > >:active --> :current or :selected :visited/:unvisited --> > > >> > > >:completed/:uncompleted or :seen/:unseen > > >> > > > > > >> > > > > > >> > > >Do you have any other idea/preference? > > >> > > > > > >> > > > > > >> > > >Regards, > > >> > > > > > >> > > >~ Simon > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > >"Simon Lessard" <si...@gmail.com> > > >> > > >2006-08-25 22:49 > > >> > > >Please respond to adffaces-dev > > >> > > > > > >> > > >To: "Trinidad - Dev" > > >> > < adffaces-dev@incubator.apache.org> > > >> > > >cc: > > >> > > >Subject:Train selectors > > >> > > > > > >> > > > > > >> > > >Yes... again... > > >> > > > > > >> > > >I made a new renderer and it work quite well, but I > had to use > > >> > > >:ora-visited and :ora-active for some selectors > because those > > >> > > >are "pass through" > > >> > > >values. > > >> > > >Anyone have better name suggestion while we implement state > > >> > > >interception on a per component basis? > > >> > > > > > >> > > > > > >> > > >Regards, > > >> > > > > > >> > > >~ Simon > > >> > > > > > >> > > > > > >> > > > > > >> > > > > > >> > > > > >> > > > > >> > > > >> > > > >> > > > >> > > >> > > > > > > > > > >
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Ah, don't that expose the markup though?
~ Simon
On 8/29/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
> I am using block to indicate style class that goes in a <div> and
> technically I should use cell for style class that goes in a <td>
>
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Tuesday, August 29, 2006 11:18 AM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: TrainRenderer using the new train selectors
> >
> > Oups, comments below
> >
> > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >
> > > one question below
> > >
> > > Simon Lessard wrote:
> > >
> > > > Hello Pavitra,
> > > >
> > > > I had to do about the same changes on my side. Here's my list of
> > > selector
> > > > and the rules I used:
> > > >
> > > > - af|train::stop combinable with :selected, :disabled, :completed
> > > > (will probably become p_AFVisited) and :unvisited. You can append
> > > > :readOnly at the end of the result. So
> > > > af|train::stop:unvisited:readOnly is valid
> > > > - af|train::link
> > > > - af|train::join combinable with :disabled, :completed,
> > :unvisited
> > > > and :outer (:outer is used to add joins outside the edge of the
> > > > train. I don't think many will use it, but it cost
> > nothing and add
> > > > more customization
> > > > possibilities)
> > >
> > > Is :outer a state? It sounds to me like it should be
> > > af|train::join-outer
> >
> >
> > yes, it could be ::join-outer, was made a state only to fit
> > the other join selectors, but it does make more sense to use
> > -outer for that one.
> >
> >
> > Does that make more sense now?
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > > - af|train::overflow-end combinable with :disabled,
> > :unvisited and
> > > > :readOnly
> > > >
> > > > I have the following valid suffixes: (I could not use
> > ::content for
> > > > example since double :: is now prevented from Adam's change to
> > > > prevent some strange behavior it seem)
> > >
> > > I don't think two pseudo-elements make sense, does it? I
> > suppose you
> > > could have a piece of a piece. Adam prevented it because there were
> > > bugs in it. I can't recall what the bugs were.
> >
> >
> > I was seeing them more as sub-elements, like ::stop::content
> > (content of the
> > stop)
> >
> > > -content (for example, the following is valid:
> > af|train::stop-content
> > > > and
> > > > af|train::stop:selected-content. This selector refers to the link
> > > > af|cell
> > > fo
> > > > the train)
> > >
> > > What does a :selected-content 'state' mean?
> > > How is it different than af|train::stop-content:selected?
> >
> >
> > My bad there, af|train::stop-content:selected is actually
> > what I use. Even if a better selector would have been
> > af|train::stop:selected::content imho.
> >
> > > -icon-block (as above but refers to the icon cell)
> > >
> > > Could you say -icon-cell? We use 'cell' quite a bit in our skinning
> > > selectors.
> >
> >
> > Yes I could, I was using block only because it was in Pavitra
> > document at first.
> >
> > >
> > > > The icons follow the same rule.
> > > >
> > > > On 8/28/06, Pavitra Subramaniam
> > <pa...@oracle.com> wrote:
> > > >
> > > >>
> > > >> Hello Simon,
> > > >>
> > > >> I have also almost completed implementing the
> > TrainRenderer using
> > > >> the new skin selectors. It's great to know you are done
> > as well. If
> > > >> you plan to check in the train renderer code anytime
> > soon, can we
> > > >> agree on the common list of skin selectors, so that I can reuse
> > > >> them for my work internally at Oracle? I had to make the
> > following
> > > >> changes and wanted to give you an update.
> > > >>
> > > >> 1. I had to introduce a new state called "read-only". This is
> > > >> different from "disabled" state, like I explained in a
> > previous email.
> > > >>
> > > >> 2. I removed some redundant skin hooks - I can send you
> > the updated
> > > list
> > > >> of selectors I am using. I also couldn't get the
> > "pass-through states"
> > > >> :visited, :active and :unvisited to work, just as you. So I have
> > > >> temporarily defined selectors like Jeanne suggested (using
> > > >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > :selected).
> > > >>
> > > >> 3. Finally I have simplified the rules for determining
> > the state of
> > > >> joins.
> > > >> I figured it would be much simpler if we did the following. The
> > > >> join to the left of a stop, is 'always in the same state as the
> > > >> stop' (Overflows could also follow the same rules as
> > stops). So for
> > > >> instance for a train like
> > > >>
> > > >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > >> vr uv v d uvr v
> > > >>
> > > >>
> > > >> NOTE: The only exception, is the join to the left of an
> > active stop
> > > >> is visited. Also, UVR and VR are stops that are in 2 states
> > > >> simulataneously - 'visited & read-only' and 'unvisited &
> > > >> read-only'. Read-only implies
> > > the
> > > >> stop cannot be reached (and hence not clickable) and is
> > dictated by
> > > >> the 'readOnly' property on the component commandNavigationItem.
> > > >>
> > > >> Please let me know if the above is ok.
> > > >>
> > > >>
> > > >> Thanks
> > > >> - Pavitra
> > > >>
> > > >>
> > > >> > -----Original Message-----
> > > >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > >> > Sent: Monday, August 28, 2006 11:43 AM
> > > >> > To: adffaces-dev@incubator.apache.org
> > > >> > Subject: Re: Train selectors
> > > >> >
> > > >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > >> >
> > > >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >> > >
> > > >> > > I was thinking :selected for :active. :selected
> > could be used
> > > >> > > for other components, too.
> > > >> > > For :visited/:unvisited, I can't think of a better name.
> > > >> > I'm thinking
> > > >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > until we have
> > > >> > > the pseudo-class support in. These wouldn't in a public api
> > > >> > format, though.
> > > >> > >
> > > >> > > - Jeanne
> > > >> > >
> > > >> > > Simon_Lessard@DMR.CA wrote:
> > > >> > >
> > > >> > > >Hello,
> > > >> > > >
> > > >> > > >I thought about the following name changes for the
> > selectors:
> > > >> > > >
> > > >> > > >:active --> :current or :selected :visited/:unvisited -->
> > > >> > > >:completed/:uncompleted or :seen/:unseen
> > > >> > > >
> > > >> > > >
> > > >> > > >Do you have any other idea/preference?
> > > >> > > >
> > > >> > > >
> > > >> > > >Regards,
> > > >> > > >
> > > >> > > >~ Simon
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >"Simon Lessard" <si...@gmail.com>
> > > >> > > >2006-08-25 22:49
> > > >> > > >Please respond to adffaces-dev
> > > >> > > >
> > > >> > > > To: "Trinidad - Dev"
> > > >> > <ad...@incubator.apache.org>
> > > >> > > > cc:
> > > >> > > > Subject: Train selectors
> > > >> > > >
> > > >> > > >
> > > >> > > >Yes... again...
> > > >> > > >
> > > >> > > >I made a new renderer and it work quite well, but I
> > had to use
> > > >> > > >:ora-visited and :ora-active for some selectors
> > because those
> > > >> > > >are "pass through"
> > > >> > > >values.
> > > >> > > >Anyone have better name suggestion while we implement state
> > > >> > > >interception on a per component basis?
> > > >> > > >
> > > >> > > >
> > > >> > > >Regards,
> > > >> > > >
> > > >> > > >~ Simon
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> > >
> > > >> >
> > > >> >
> > > >> >
> > > >>
> > > >>
> > > >
> > >
> > >
> >
> >
> >
>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hello Pavitra,
There's some comments inline, but I basically agree with all points.
Regards,
~ Simon
On 8/30/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
> Comments inline
>
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Tuesday, August 29, 2006 5:24 PM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: TrainRenderer using the new train selectors
> >
> > Added some inline comments
> >
> > On 8/29/06, Pavitra Subramaniam
> > <pa...@oracle.com> wrote:
> > >
> > > Hello Simon, Jeanne,
> > >
> > > I have some comments on both your email exhanges. I have
> > consolidated
> > > all the items below as it was getting hard to read.
> > >
> > >
> > > >>>>
> > > - af|train::stop combinable with :selected, :disabled, :completed
> > > (will probably become p_AFVisited) and :unvisited. You can append
> > > :readOnly at the end of the result. So
> > > af|train::stop:unvisited:readOnly is valid
> > > >>>>
> > >
> > > - Do you think we need to support an
> > "af|train::stop:visited:readOnly"
> >
> >
> > I already support it. Icons are also resolved in availability
> > order. That is if the stop is visited and read-only, the
> > first icon in the lookup list will be
> > af|train::stop:visited:read-only-icon, then
> > af|train::stop:visited-icon and finally af|train::stop-icon.
> >
> > - I believe Jeanne wanted to have states that don't use camel case. So
> > > readOnly should be read-only
> >
> >
> > Easy change, I can do this.
> >
> > >>>>
> > > - af|train::link
> > > >>>>
> > > - should this be ::stop-link or ::link good enough?
> >
> >
> > Both work, however since this selector is often used in
> > combination with the ::stop selector, I would keep it with
> > ::link only. Here's a selector example I use for skinning links:
> >
> > af|train::stop:selected af|train::link
> > {
> > font-weight: bold;
> > }
> >
> > I believe it's expressive enough. What is your opinion about it?
> >
>
> -1. I have to support a scenario where both the stop icons and the parent
> train icons are clickable (and hence rendered as links, rather than <img>).
> I also need to show different icons on hover, mousedown and selected. So in
> such situations it may be clear to define something as a stop-link or
> stop-icon-link etc. af|train::link is too generic. Do you agree?
Fair point, I'll implement that while waiting to find a solution to IE 6
nightmare.
> >>>>
> > > - af|train::join combinable with :disabled, :completed,
> > :unvisited and
> > > :outer (:outer is used to add joins outside the edge of the
> > train. I
> > > don't think many will use it, but it cost nothing and add more
> > > customization
> > > possibilities)
> > > >>>>
> > >
> > > - :join-outer pseudo element is good enough. Is this used
> > outside the
> > > parent train icons or between the parent train icons and
> > the overflow
> > > (or stop)?
> >
> >
> > The latter, parent train icons and the stops. Currently I
> > render the parent train icons only when the extremity of the
> > train is visible. I was not sure if it was making sense to
> > show the parent train in the middle of the process. Speaking
> > of which, I added 2 skin properties as well:
> >
> > -ora-render-parent-train boolean property to set if the
> > parent train should be rendered -ora-visible-stop-count
> > integer property determning the amount of stop to render
> > before overflow. Invalid value result in a warning and using
> > the default value of 6.
>
> +1
>
> >
> > - do we still have the join-overflow? This comes between the
> > overflow and
> > > regular stops. It may be useful in cases where only these
> > joins need
> > > not be displayed.
> >
> >
> > My current version use standard joins for them. It's easy to
> > add but I wonder how often skinners will want to render a
> > join between the overflows and the stops but not between the
> > stop themselves. So I'm +0 on that
>
> - It's the opposite case I am interested in. Skinners may 'not' want to
> display a join between the overflow-prev & first stop AND the last stop &
> overflow-next, but display joins between the regular stops. I have to
> support this behavior. So it may be useful to have a join-overflow.
Not hard to implement so it will be done as well.
>
> > >>>>
> > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > - af|train::overflow-end combinable with :disabled, :unvisited and
> > > :readOnly
> > > >>>>
> > >
> > > - Do you think we should support :unvisited state on
> > overflow-start?
> > > This may be useful in cases where the train is not
> > sequential? I have
> > > a scenario where all stops in the train are enabled and
> > user can jump
> > > around any stop without a prescribed order.
> >
> >
> > Easy to add and allow more customization, +1 for this.
> >
> > >>>>
> > > I have the following valid suffixes: (I could not use ::content for
> > > example since double :: is now prevented from Adam's change
> > to prevent
> > > some strange behavior it seem) -content (for example, the
> > following is valid:
> > > af|train::stop-content and
> > > af|train::stop:selected-content. This selector refers to
> > the link cell
> > > af|(of
> > > the train)
> > > >>>>
> > >
> > > - I agree with Jeanne. Let's call it stop-content:selected. I don't
> > > think we need stop-content:visited or
> > stop-content:unvisited. It's an overkill.
> >
> >
> > stop-content unvisited is automatically supported as the cell
> > get the p_AFUnvisited class tagged on it.
> >
> > >>>>
> > > -icon-block (as above but refers to the icon cell)
> > > >>>>
> > >
> > > - Perhaps we should have a convention of using -block
> > suffix for style
> > > classes that go on <div> and -cell for styles that go on
> > td. Is that
> > > acceptable?
> >
> >
> > I'm -1 on that as it expose markup used.
>
>
> - Agree. -block should be -cell, although it still refers to a <td>, but I
> guess it's the current convention
>
>
> >
> > >>>>
> > > I use the same join rule as you, that is previous stop
> > determine the
> > > join state, except for the join after the selected stop. The only
> > > exception are disabled stops, those have disabled joins on
> > both sides.
> > > >>>>
> > >
> > > - the join after the selected stop should ideally have the state of
> > > the following stop. Isn't it?
> >
> >
> > Yep, that's what I use.
> >
> > Do you think it will be easier to just show the left join of
> > a disabled stop
> > > as "disabled". So if an unvisited stop follows the disabled
> > stop, the
> > > join between them will show up as unvisited. At least this is how I
> > > have implemented it. I use the same rule for displaying
> > joins before overflows.
> >
> >
> > I prefer to see both sides of a disabled stop being disabled
> > as it should not be accessible from either way, using an
> > unvisited join toward the end side could be seen as: "If you
> > can get to the step after the disabled one, just hit previous
> > and you'll be able to access the disable step".
>
> +1
>
> >
> > >>>>
> > > I also go rid of the separator, it's redundant as you can
> > add padding
> > > to -content selector. I also added two aliases
> > .AFTrainContent:alias
> > > and .AFTrainIconBlock. So you can add spacing between stop with
> > > something like the following:
> > > .AFTrainContent:alias
> > > {
> > > padding-left: 8px;
> > > padding-right: 8px;
> > > }
> > > >>>>
> > > When you say separator, do you mean the spacer that
> > separates stops?
> > > Where is the alias above included? Can you send me a HTML fragment?
> >
> >
> > Yes I meant the spacer. AFTrainContent:alias is added to the
> > content cell of stop, overflow-start and overflow-end, that
> > way it never breaks the joins.
>
> - Hmm. I tried this and it adds some white space around the icon. Maybe I
> need to test this some more.
>
> >
> > Thanks
> > > - Pavitra
> > >
> > >
> > > > -----Original Message-----
> > > > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > To: adffaces-dev@incubator.apache.org
> > > > Subject: Re: TrainRenderer using the new train selectors
> > > >
> > > > Ok,
> > > >
> > > > Then if those selectors are ok for you as well Pavitra
> > I'll make the
> > > > changes to -outer and and -icon-cell tonight and upload
> > the patch as
> > > > well as a test skin I used.
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > >
> > > > > yep, it all makes sense.
> > > > > I can see where you'd want to use a ::content. That would
> > > > make sense.
> > > > > We don't do this yet in any of our skinning keys, so I am fine
> > > > > with the -content, since we do that all over the place. :)
> > > > >
> > > > > - Jeanne
> > > > >
> > > > > Simon Lessard wrote:
> > > > >
> > > > > > Oups, comments below
> > > > > >
> > > > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > > >
> > > > > >>
> > > > > >> one question below
> > > > > >>
> > > > > >> Simon Lessard wrote:
> > > > > >>
> > > > > >> > Hello Pavitra,
> > > > > >> >
> > > > > >> > I had to do about the same changes on my side. Here's
> > > > my list of
> > > > > >> selector
> > > > > >> > and the rules I used:
> > > > > >> >
> > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > :completed
> > > > > >> (will
> > > > > >> > probably become p_AFVisited) and :unvisited. You
> > can append
> > > > > >> > :readOnly at the end of the result. So
> > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > >> > - af|train::link
> > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > >> > :unvisited
> > > > > and
> > > > > >> > :outer (:outer is used to add joins outside the
> > edge of the
> > > > > >> > train. I don't think many will use it, but it cost nothing
> > > > > >> > and add more
> > > > > customization
> > > > > >> > possibilities)
> > > > > >>
> > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > >> af|train::join-outer
> > > > > >
> > > > > >
> > > > > >
> > > > > > yes, it could be ::join-outer, was made a state only
> > to fit the
> > > > > > other join selectors, but it does make more sense to use
> > > > -outer for
> > > > > > that one.
> > > > > >
> > > > > >
> > > > > > Does that make more sense now?
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > ~ Simon
> > > > > >
> > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > :readOnly
> > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > > >> > :unvisited and :readOnly
> > > > > >> >
> > > > > >> > I have the following valid suffixes: (I could not use
> > > > ::content
> > > > > >> > for example since double :: is now prevented from
> > > > Adam's change
> > > > > >> > to prevent some strange behavior it seem)
> > > > > >>
> > > > > >> I don't think two pseudo-elements make sense, does it? I
> > > > > >> suppose you could have a piece of a piece. Adam prevented it
> > > > because there
> > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > >
> > > > > >
> > > > > >
> > > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > > (content of the
> > > > > > stop)
> > > > > >
> > > > > >> -content (for example, the following is valid:
> > > > > >> af|train::stop-content
> > > > > >> > and
> > > > > >> > af|train::stop:selected-content. This selector refers
> > > > to the link
> > > > > cell
> > > > > >> fo
> > > > > >> > the train)
> > > > > >>
> > > > > >> What does a :selected-content 'state' mean?
> > > > > >> How is it different than af|train::stop-content:selected?
> > > > > >
> > > > > >
> > > > > >
> > > > > > My bad there, af|train::stop-content:selected is actually
> > > > what I use.
> > > > > > Even
> > > > > > if a better selector would have been
> > > > > > af|train::stop:selected::content imho.
> > > > > >
> > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > >>
> > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > our skinning
> > > > > >> selectors.
> > > > > >
> > > > > >
> > > > > >
> > > > > > Yes I could, I was using block only because it was in Pavitra
> > > > > > document
> > > > > at
> > > > > > first.
> > > > > >
> > > > > >>
> > > > > >> > The icons follow the same rule.
> > > > > >> >
> > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > <pa...@oracle.com>
> > > > > >> wrote:
> > > > > >> >
> > > > > >> >>
> > > > > >> >> Hello Simon,
> > > > > >> >>
> > > > > >> >> I have also almost completed implementing the
> > TrainRenderer
> > > > > >> >> using
> > > > > the
> > > > > >> >> new
> > > > > >> >> skin selectors. It's great to know you are done as
> > > > well. If you
> > > > > >> plan to
> > > > > >> >> check in the train renderer code anytime soon, can we
> > > > agree on
> > > > > >> >> the common list of skin selectors, so that I can
> > > > reuse them for
> > > > > >> >> my work internally at Oracle? I had to make the following
> > > > > >> >> changes and wanted to give you
> > > > > an
> > > > > >> >> update.
> > > > > >> >>
> > > > > >> >> 1. I had to introduce a new state called
> > "read-only". This
> > > > > >> >> is
> > > > > >> different
> > > > > >> >> from "disabled" state, like I explained in a
> > previous email.
> > > > > >> >>
> > > > > >> >> 2. I removed some redundant skin hooks - I can
> > send you the
> > > > > >> >> updated
> > > > > >> list
> > > > > >> >> of selectors I am using. I also couldn't get the
> > > > > >> >> "pass-through
> > > > > >> states"
> > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > you. So I have
> > > > > >> >> temporarily defined selectors like Jeanne
> > suggested (using
> > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > >> >> :selected).
> > > > > >> >>
> > > > > >> >> 3. Finally I have simplified the rules for
> > > > determining the state
> > > > > >> >> of joins.
> > > > > >> >> I figured it would be much simpler if we did the
> > > > following. The
> > > > > >> >> join to the left of a stop, is 'always in the same
> > > > state as the
> > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > stops). So
> > > > > >> >> for instance for a train
> > > > > >> like
> > > > > >> >>
> > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > >> >> vr uv v d uvr v
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> NOTE: The only exception, is the join to the left of an
> > > > > >> >> active
> > > > > >> stop is
> > > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > > >> >> read-only'. Read-only implies
> > > > > >> the
> > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > is dictated
> > > > > >> by the
> > > > > >> >> 'readOnly' property on the component
> > commandNavigationItem.
> > > > > >> >>
> > > > > >> >> Please let me know if the above is ok.
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> Thanks
> > > > > >> >> - Pavitra
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> > -----Original Message-----
> > > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > >> >> > Subject: Re: Train selectors
> > > > > >> >> >
> > > > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > > > >> >> >
> > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > <je...@oracle.com> wrote:
> > > > > >> >> > >
> > > > > >> >> > > I was thinking :selected for :active.
> > :selected could be
> > > > > >> >> > > used
> > > > > for
> > > > > >> >> > > other components, too.
> > > > > >> >> > > For :visited/:unvisited, I can't think of a
> > better name.
> > > > > >> >> > I'm thinking
> > > > > >> >> > > that we should use .p_AFVisited,
> > .P_AFUnvisited until we
> > > > > >> >> > > have
> > > > > the
> > > > > >> >> > > pseudo-class support in. These wouldn't in a
> > public api
> > > > > >> >> > format, though.
> > > > > >> >> > >
> > > > > >> >> > > - Jeanne
> > > > > >> >> > >
> > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > >> >> > >
> > > > > >> >> > > >Hello,
> > > > > >> >> > > >
> > > > > >> >> > > >I thought about the following name changes for
> > > > the selectors:
> > > > > >> >> > > >
> > > > > >> >> > > >:active --> :current or :selected
> > > > :visited/:unvisited -->
> > > > > >> >> > > >:completed/:uncompleted or
> > > > > :seen/:unseen
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Do you have any other idea/preference?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > > >> >> > > >2006-08-25 22:49
> > > > > >> >> > > >Please respond to adffaces-dev
> > > > > >> >> > > >
> > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > >> >> > <ad...@incubator.apache.org>
> > > > > >> >> > > > cc:
> > > > > >> >> > > > Subject: Train selectors
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Yes... again...
> > > > > >> >> > > >
> > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > but I had to
> > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > selectors because
> > > > > >> >> > > >those
> > > > > >> are
> > > > > >> >> > > >"pass through"
> > > > > >> >> > > >values.
> > > > > >> >> > > >Anyone have better name suggestion while we
> > > > implement state
> > > > > >> >> > > >interception on a per component basis?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > >
> > > > > >> >> > >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >>
> > > > > >> >>
> > > > > >> >
> > > > > >>
> > > > > >>
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Simon,
You are right! I don't need the spacers at all. Padding the content cells work perfect!! Thanks
- Pavitra
> -----Original Message-----
> From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com]
> Sent: Wednesday, August 30, 2006 9:40 AM
> To: adffaces-dev@incubator.apache.org
> Subject: RE: TrainRenderer using the new train selectors
>
> Comments inline
>
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Tuesday, August 29, 2006 5:24 PM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: TrainRenderer using the new train selectors
> >
> > Added some inline comments
> >
> > On 8/29/06, Pavitra Subramaniam
> > <pa...@oracle.com> wrote:
> > >
> > > Hello Simon, Jeanne,
> > >
> > > I have some comments on both your email exhanges. I have
> > consolidated
> > > all the items below as it was getting hard to read.
> > >
> > >
> > > >>>>
> > > - af|train::stop combinable with :selected, :disabled, :completed
> > > (will probably become p_AFVisited) and :unvisited. You can append
> > > :readOnly at the end of the result. So
> > > af|train::stop:unvisited:readOnly is valid
> > > >>>>
> > >
> > > - Do you think we need to support an
> > "af|train::stop:visited:readOnly"
> >
> >
> > I already support it. Icons are also resolved in
> availability order.
> > That is if the stop is visited and read-only, the first icon in the
> > lookup list will be
> > af|train::stop:visited:read-only-icon, then
> train::stop:visited-icon
> > af|and finally af|train::stop-icon.
> >
> > - I believe Jeanne wanted to have states that don't use
> camel case. So
> > > readOnly should be read-only
> >
> >
> > Easy change, I can do this.
> >
> > >>>>
> > > - af|train::link
> > > >>>>
> > > - should this be ::stop-link or ::link good enough?
> >
> >
> > Both work, however since this selector is often used in combination
> > with the ::stop selector, I would keep it with ::link only.
> Here's a
> > selector example I use for skinning links:
> >
> > af|train::stop:selected af|train::link
> > {
> > font-weight: bold;
> > }
> >
> > I believe it's expressive enough. What is your opinion about it?
> >
>
> -1. I have to support a scenario where both the stop icons
> and the parent train icons are clickable (and hence rendered
> as links, rather than <img>). I also need to show different
> icons on hover, mousedown and selected. So in such situations
> it may be clear to define something as a stop-link or
> stop-icon-link etc. af|train::link is too generic. Do you agree?
>
>
> > >>>>
> > > - af|train::join combinable with :disabled, :completed,
> > :unvisited and
> > > :outer (:outer is used to add joins outside the edge of the
> > train. I
> > > don't think many will use it, but it cost nothing and add more
> > > customization
> > > possibilities)
> > > >>>>
> > >
> > > - :join-outer pseudo element is good enough. Is this used
> > outside the
> > > parent train icons or between the parent train icons and
> > the overflow
> > > (or stop)?
> >
> >
> > The latter, parent train icons and the stops. Currently I
> render the
> > parent train icons only when the extremity of the train is
> visible. I
> > was not sure if it was making sense to show the parent train in the
> > middle of the process. Speaking of which, I added 2 skin
> properties as
> > well:
> >
> > -ora-render-parent-train boolean property to set if the
> parent train
> > should be rendered -ora-visible-stop-count integer property
> determning
> > the amount of stop to render before overflow. Invalid value
> result in
> > a warning and using the default value of 6.
>
> +1
>
> >
> > - do we still have the join-overflow? This comes between the
> > overflow and
> > > regular stops. It may be useful in cases where only these
> > joins need
> > > not be displayed.
> >
> >
> > My current version use standard joins for them. It's easy to
> > add but I wonder how often skinners will want to render a
> > join between the overflows and the stops but not between the
> > stop themselves. So I'm +0 on that
>
> - It's the opposite case I am interested in. Skinners may
> 'not' want to display a join between the overflow-prev &
> first stop AND the last stop & overflow-next, but display
> joins between the regular stops. I have to support this
> behavior. So it may be useful to have a join-overflow.
>
>
> >
> > >>>>
> > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > - af|train::overflow-end combinable with :disabled,
> :unvisited and
> > > :readOnly
> > > >>>>
> > >
> > > - Do you think we should support :unvisited state on
> > overflow-start?
> > > This may be useful in cases where the train is not
> > sequential? I have
> > > a scenario where all stops in the train are enabled and
> > user can jump
> > > around any stop without a prescribed order.
> >
> >
> > Easy to add and allow more customization, +1 for this.
> >
> > >>>>
> > > I have the following valid suffixes: (I could not use
> ::content for
> > > example since double :: is now prevented from Adam's change
> > to prevent
> > > some strange behavior it seem) -content (for example, the
> > following is valid:
> > > af|train::stop-content and
> > > af|train::stop:selected-content. This selector refers to
> > the link cell
> > > af|(of
> > > the train)
> > > >>>>
> > >
> > > - I agree with Jeanne. Let's call it
> stop-content:selected. I don't
> > > think we need stop-content:visited or
> > stop-content:unvisited. It's an overkill.
> >
> >
> > stop-content unvisited is automatically supported as the cell
> > get the p_AFUnvisited class tagged on it.
> >
> > >>>>
> > > -icon-block (as above but refers to the icon cell)
> > > >>>>
> > >
> > > - Perhaps we should have a convention of using -block
> > suffix for style
> > > classes that go on <div> and -cell for styles that go on
> > td. Is that
> > > acceptable?
> >
> >
> > I'm -1 on that as it expose markup used.
>
>
> - Agree. -block should be -cell, although it still refers to
> a <td>, but I guess it's the current convention
>
>
> >
> > >>>>
> > > I use the same join rule as you, that is previous stop
> > determine the
> > > join state, except for the join after the selected stop. The only
> > > exception are disabled stops, those have disabled joins on
> > both sides.
> > > >>>>
> > >
> > > - the join after the selected stop should ideally have
> the state of
> > > the following stop. Isn't it?
> >
> >
> > Yep, that's what I use.
> >
> > Do you think it will be easier to just show the left join of
> > a disabled stop
> > > as "disabled". So if an unvisited stop follows the disabled
> > stop, the
> > > join between them will show up as unvisited. At least
> this is how I
> > > have implemented it. I use the same rule for displaying
> > joins before overflows.
> >
> >
> > I prefer to see both sides of a disabled stop being disabled
> > as it should not be accessible from either way, using an
> > unvisited join toward the end side could be seen as: "If you
> > can get to the step after the disabled one, just hit previous
> > and you'll be able to access the disable step".
>
> +1
>
> >
> > >>>>
> > > I also go rid of the separator, it's redundant as you can
> > add padding
> > > to -content selector. I also added two aliases
> > .AFTrainContent:alias
> > > and .AFTrainIconBlock. So you can add spacing between stop with
> > > something like the following:
> > > .AFTrainContent:alias
> > > {
> > > padding-left: 8px;
> > > padding-right: 8px;
> > > }
> > > >>>>
> > > When you say separator, do you mean the spacer that
> > separates stops?
> > > Where is the alias above included? Can you send me a HTML
> fragment?
> >
> >
> > Yes I meant the spacer. AFTrainContent:alias is added to the
> > content cell of stop, overflow-start and overflow-end, that
> > way it never breaks the joins.
>
> - Hmm. I tried this and it adds some white space around the
> icon. Maybe I need to test this some more.
>
> >
> > Thanks
> > > - Pavitra
> > >
> > >
> > > > -----Original Message-----
> > > > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > To: adffaces-dev@incubator.apache.org
> > > > Subject: Re: TrainRenderer using the new train selectors
> > > >
> > > > Ok,
> > > >
> > > > Then if those selectors are ok for you as well Pavitra
> > I'll make the
> > > > changes to -outer and and -icon-cell tonight and upload
> > the patch as
> > > > well as a test skin I used.
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > >
> > > > > yep, it all makes sense.
> > > > > I can see where you'd want to use a ::content. That would
> > > > make sense.
> > > > > We don't do this yet in any of our skinning keys, so
> I am fine
> > > > > with the -content, since we do that all over the place. :)
> > > > >
> > > > > - Jeanne
> > > > >
> > > > > Simon Lessard wrote:
> > > > >
> > > > > > Oups, comments below
> > > > > >
> > > > > > On 8/29/06, Jeanne Waldman
> <je...@oracle.com> wrote:
> > > > > >
> > > > > >>
> > > > > >> one question below
> > > > > >>
> > > > > >> Simon Lessard wrote:
> > > > > >>
> > > > > >> > Hello Pavitra,
> > > > > >> >
> > > > > >> > I had to do about the same changes on my side. Here's
> > > > my list of
> > > > > >> selector
> > > > > >> > and the rules I used:
> > > > > >> >
> > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > :completed
> > > > > >> (will
> > > > > >> > probably become p_AFVisited) and :unvisited. You
> > can append
> > > > > >> > :readOnly at the end of the result. So
> > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > >> > - af|train::link
> > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > >> > :unvisited
> > > > > and
> > > > > >> > :outer (:outer is used to add joins outside the
> > edge of the
> > > > > >> > train. I don't think many will use it, but it
> cost nothing
> > > > > >> > and add more
> > > > > customization
> > > > > >> > possibilities)
> > > > > >>
> > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > >> af|train::join-outer
> > > > > >
> > > > > >
> > > > > >
> > > > > > yes, it could be ::join-outer, was made a state only
> > to fit the
> > > > > > other join selectors, but it does make more sense to use
> > > > -outer for
> > > > > > that one.
> > > > > >
> > > > > >
> > > > > > Does that make more sense now?
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > ~ Simon
> > > > > >
> > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > :readOnly
> > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > > >> > :unvisited and :readOnly
> > > > > >> >
> > > > > >> > I have the following valid suffixes: (I could not use
> > > > ::content
> > > > > >> > for example since double :: is now prevented from
> > > > Adam's change
> > > > > >> > to prevent some strange behavior it seem)
> > > > > >>
> > > > > >> I don't think two pseudo-elements make sense, does it? I
> > > > > >> suppose you could have a piece of a piece. Adam
> prevented it
> > > > because there
> > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > >
> > > > > >
> > > > > >
> > > > > > I was seeing them more as sub-elements, like
> ::stop::content
> > > > > > (content of the
> > > > > > stop)
> > > > > >
> > > > > >> -content (for example, the following is valid:
> > > > > >> af|train::stop-content
> > > > > >> > and
> > > > > >> > af|train::stop:selected-content. This selector refers
> > > > to the link
> > > > > cell
> > > > > >> fo
> > > > > >> > the train)
> > > > > >>
> > > > > >> What does a :selected-content 'state' mean?
> > > > > >> How is it different than af|train::stop-content:selected?
> > > > > >
> > > > > >
> > > > > >
> > > > > > My bad there, af|train::stop-content:selected is actually
> > > > what I use.
> > > > > > Even
> > > > > > if a better selector would have been
> > > > > > af|train::stop:selected::content imho.
> > > > > >
> > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > >>
> > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > our skinning
> > > > > >> selectors.
> > > > > >
> > > > > >
> > > > > >
> > > > > > Yes I could, I was using block only because it was
> in Pavitra
> > > > > > document
> > > > > at
> > > > > > first.
> > > > > >
> > > > > >>
> > > > > >> > The icons follow the same rule.
> > > > > >> >
> > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > <pa...@oracle.com>
> > > > > >> wrote:
> > > > > >> >
> > > > > >> >>
> > > > > >> >> Hello Simon,
> > > > > >> >>
> > > > > >> >> I have also almost completed implementing the
> > TrainRenderer
> > > > > >> >> using
> > > > > the
> > > > > >> >> new
> > > > > >> >> skin selectors. It's great to know you are done as
> > > > well. If you
> > > > > >> plan to
> > > > > >> >> check in the train renderer code anytime soon, can we
> > > > agree on
> > > > > >> >> the common list of skin selectors, so that I can
> > > > reuse them for
> > > > > >> >> my work internally at Oracle? I had to make the
> following
> > > > > >> >> changes and wanted to give you
> > > > > an
> > > > > >> >> update.
> > > > > >> >>
> > > > > >> >> 1. I had to introduce a new state called
> > "read-only". This
> > > > > >> >> is
> > > > > >> different
> > > > > >> >> from "disabled" state, like I explained in a
> > previous email.
> > > > > >> >>
> > > > > >> >> 2. I removed some redundant skin hooks - I can
> > send you the
> > > > > >> >> updated
> > > > > >> list
> > > > > >> >> of selectors I am using. I also couldn't get the
> > > > > >> >> "pass-through
> > > > > >> states"
> > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > you. So I have
> > > > > >> >> temporarily defined selectors like Jeanne
> > suggested (using
> > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > >> >> :selected).
> > > > > >> >>
> > > > > >> >> 3. Finally I have simplified the rules for
> > > > determining the state
> > > > > >> >> of joins.
> > > > > >> >> I figured it would be much simpler if we did the
> > > > following. The
> > > > > >> >> join to the left of a stop, is 'always in the same
> > > > state as the
> > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > stops). So
> > > > > >> >> for instance for a train
> > > > > >> like
> > > > > >> >>
> > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > >> >> vr uv v d uvr v
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> NOTE: The only exception, is the join to the left of an
> > > > > >> >> active
> > > > > >> stop is
> > > > > >> >> visited. Also, UVR and VR are stops that are in
> 2 states
> > > > > >> >> simulataneously - 'visited & read-only' and
> 'unvisited &
> > > > > >> >> read-only'. Read-only implies
> > > > > >> the
> > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > is dictated
> > > > > >> by the
> > > > > >> >> 'readOnly' property on the component
> > commandNavigationItem.
> > > > > >> >>
> > > > > >> >> Please let me know if the above is ok.
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> Thanks
> > > > > >> >> - Pavitra
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> > -----Original Message-----
> > > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > >> >> > Subject: Re: Train selectors
> > > > > >> >> >
> > > > > >> >> > Hmmm you mean somthing like
> af|train::stop.p_AFVisited?
> > > > > >> >> >
> > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > <je...@oracle.com> wrote:
> > > > > >> >> > >
> > > > > >> >> > > I was thinking :selected for :active.
> > :selected could be
> > > > > >> >> > > used
> > > > > for
> > > > > >> >> > > other components, too.
> > > > > >> >> > > For :visited/:unvisited, I can't think of a
> > better name.
> > > > > >> >> > I'm thinking
> > > > > >> >> > > that we should use .p_AFVisited,
> > .P_AFUnvisited until we
> > > > > >> >> > > have
> > > > > the
> > > > > >> >> > > pseudo-class support in. These wouldn't in a
> > public api
> > > > > >> >> > format, though.
> > > > > >> >> > >
> > > > > >> >> > > - Jeanne
> > > > > >> >> > >
> > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > >> >> > >
> > > > > >> >> > > >Hello,
> > > > > >> >> > > >
> > > > > >> >> > > >I thought about the following name changes for
> > > > the selectors:
> > > > > >> >> > > >
> > > > > >> >> > > >:active --> :current or :selected
> > > > :visited/:unvisited -->
> > > > > >> >> > > >:completed/:uncompleted or
> > > > > :seen/:unseen
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Do you have any other idea/preference?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > > >> >> > > >2006-08-25 22:49
> > > > > >> >> > > >Please respond to adffaces-dev
> > > > > >> >> > > >
> > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > >> >> > <ad...@incubator.apache.org>
> > > > > >> >> > > > cc:
> > > > > >> >> > > > Subject: Train selectors
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Yes... again...
> > > > > >> >> > > >
> > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > but I had to
> > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > selectors because
> > > > > >> >> > > >those
> > > > > >> are
> > > > > >> >> > > >"pass through"
> > > > > >> >> > > >values.
> > > > > >> >> > > >Anyone have better name suggestion while we
> > > > implement state
> > > > > >> >> > > >interception on a per component basis?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > >
> > > > > >> >> > >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >>
> > > > > >> >>
> > > > > >> >
> > > > > >>
> > > > > >>
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Comments inline
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Tuesday, August 29, 2006 5:24 PM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: TrainRenderer using the new train selectors
>
> Added some inline comments
>
> On 8/29/06, Pavitra Subramaniam
> <pa...@oracle.com> wrote:
> >
> > Hello Simon, Jeanne,
> >
> > I have some comments on both your email exhanges. I have
> consolidated
> > all the items below as it was getting hard to read.
> >
> >
> > >>>>
> > - af|train::stop combinable with :selected, :disabled, :completed
> > (will probably become p_AFVisited) and :unvisited. You can append
> > :readOnly at the end of the result. So
> > af|train::stop:unvisited:readOnly is valid
> > >>>>
> >
> > - Do you think we need to support an
> "af|train::stop:visited:readOnly"
>
>
> I already support it. Icons are also resolved in availability
> order. That is if the stop is visited and read-only, the
> first icon in the lookup list will be
> af|train::stop:visited:read-only-icon, then
> af|train::stop:visited-icon and finally af|train::stop-icon.
>
> - I believe Jeanne wanted to have states that don't use camel case. So
> > readOnly should be read-only
>
>
> Easy change, I can do this.
>
> >>>>
> > - af|train::link
> > >>>>
> > - should this be ::stop-link or ::link good enough?
>
>
> Both work, however since this selector is often used in
> combination with the ::stop selector, I would keep it with
> ::link only. Here's a selector example I use for skinning links:
>
> af|train::stop:selected af|train::link
> {
> font-weight: bold;
> }
>
> I believe it's expressive enough. What is your opinion about it?
>
-1. I have to support a scenario where both the stop icons and the parent train icons are clickable (and hence rendered as links, rather than <img>). I also need to show different icons on hover, mousedown and selected. So in such situations it may be clear to define something as a stop-link or stop-icon-link etc. af|train::link is too generic. Do you agree?
> >>>>
> > - af|train::join combinable with :disabled, :completed,
> :unvisited and
> > :outer (:outer is used to add joins outside the edge of the
> train. I
> > don't think many will use it, but it cost nothing and add more
> > customization
> > possibilities)
> > >>>>
> >
> > - :join-outer pseudo element is good enough. Is this used
> outside the
> > parent train icons or between the parent train icons and
> the overflow
> > (or stop)?
>
>
> The latter, parent train icons and the stops. Currently I
> render the parent train icons only when the extremity of the
> train is visible. I was not sure if it was making sense to
> show the parent train in the middle of the process. Speaking
> of which, I added 2 skin properties as well:
>
> -ora-render-parent-train boolean property to set if the
> parent train should be rendered -ora-visible-stop-count
> integer property determning the amount of stop to render
> before overflow. Invalid value result in a warning and using
> the default value of 6.
+1
>
> - do we still have the join-overflow? This comes between the
> overflow and
> > regular stops. It may be useful in cases where only these
> joins need
> > not be displayed.
>
>
> My current version use standard joins for them. It's easy to
> add but I wonder how often skinners will want to render a
> join between the overflows and the stops but not between the
> stop themselves. So I'm +0 on that
- It's the opposite case I am interested in. Skinners may 'not' want to display a join between the overflow-prev & first stop AND the last stop & overflow-next, but display joins between the regular stops. I have to support this behavior. So it may be useful to have a join-overflow.
>
> >>>>
> > - af|train::overflow-start combinable with :disabled and :readOnly
> > - af|train::overflow-end combinable with :disabled, :unvisited and
> > :readOnly
> > >>>>
> >
> > - Do you think we should support :unvisited state on
> overflow-start?
> > This may be useful in cases where the train is not
> sequential? I have
> > a scenario where all stops in the train are enabled and
> user can jump
> > around any stop without a prescribed order.
>
>
> Easy to add and allow more customization, +1 for this.
>
> >>>>
> > I have the following valid suffixes: (I could not use ::content for
> > example since double :: is now prevented from Adam's change
> to prevent
> > some strange behavior it seem) -content (for example, the
> following is valid:
> > af|train::stop-content and
> > af|train::stop:selected-content. This selector refers to
> the link cell
> > af|(of
> > the train)
> > >>>>
> >
> > - I agree with Jeanne. Let's call it stop-content:selected. I don't
> > think we need stop-content:visited or
> stop-content:unvisited. It's an overkill.
>
>
> stop-content unvisited is automatically supported as the cell
> get the p_AFUnvisited class tagged on it.
>
> >>>>
> > -icon-block (as above but refers to the icon cell)
> > >>>>
> >
> > - Perhaps we should have a convention of using -block
> suffix for style
> > classes that go on <div> and -cell for styles that go on
> td. Is that
> > acceptable?
>
>
> I'm -1 on that as it expose markup used.
- Agree. -block should be -cell, although it still refers to a <td>, but I guess it's the current convention
>
> >>>>
> > I use the same join rule as you, that is previous stop
> determine the
> > join state, except for the join after the selected stop. The only
> > exception are disabled stops, those have disabled joins on
> both sides.
> > >>>>
> >
> > - the join after the selected stop should ideally have the state of
> > the following stop. Isn't it?
>
>
> Yep, that's what I use.
>
> Do you think it will be easier to just show the left join of
> a disabled stop
> > as "disabled". So if an unvisited stop follows the disabled
> stop, the
> > join between them will show up as unvisited. At least this is how I
> > have implemented it. I use the same rule for displaying
> joins before overflows.
>
>
> I prefer to see both sides of a disabled stop being disabled
> as it should not be accessible from either way, using an
> unvisited join toward the end side could be seen as: "If you
> can get to the step after the disabled one, just hit previous
> and you'll be able to access the disable step".
+1
>
> >>>>
> > I also go rid of the separator, it's redundant as you can
> add padding
> > to -content selector. I also added two aliases
> .AFTrainContent:alias
> > and .AFTrainIconBlock. So you can add spacing between stop with
> > something like the following:
> > .AFTrainContent:alias
> > {
> > padding-left: 8px;
> > padding-right: 8px;
> > }
> > >>>>
> > When you say separator, do you mean the spacer that
> separates stops?
> > Where is the alias above included? Can you send me a HTML fragment?
>
>
> Yes I meant the spacer. AFTrainContent:alias is added to the
> content cell of stop, overflow-start and overflow-end, that
> way it never breaks the joins.
- Hmm. I tried this and it adds some white space around the icon. Maybe I need to test this some more.
>
> Thanks
> > - Pavitra
> >
> >
> > > -----Original Message-----
> > > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > To: adffaces-dev@incubator.apache.org
> > > Subject: Re: TrainRenderer using the new train selectors
> > >
> > > Ok,
> > >
> > > Then if those selectors are ok for you as well Pavitra
> I'll make the
> > > changes to -outer and and -icon-cell tonight and upload
> the patch as
> > > well as a test skin I used.
> > >
> > >
> > > Regards,
> > >
> > > ~ Simon
> > >
> > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >
> > > > yep, it all makes sense.
> > > > I can see where you'd want to use a ::content. That would
> > > make sense.
> > > > We don't do this yet in any of our skinning keys, so I am fine
> > > > with the -content, since we do that all over the place. :)
> > > >
> > > > - Jeanne
> > > >
> > > > Simon Lessard wrote:
> > > >
> > > > > Oups, comments below
> > > > >
> > > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > >
> > > > >>
> > > > >> one question below
> > > > >>
> > > > >> Simon Lessard wrote:
> > > > >>
> > > > >> > Hello Pavitra,
> > > > >> >
> > > > >> > I had to do about the same changes on my side. Here's
> > > my list of
> > > > >> selector
> > > > >> > and the rules I used:
> > > > >> >
> > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > :completed
> > > > >> (will
> > > > >> > probably become p_AFVisited) and :unvisited. You
> can append
> > > > >> > :readOnly at the end of the result. So
> > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > >> > - af|train::link
> > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > >> > :unvisited
> > > > and
> > > > >> > :outer (:outer is used to add joins outside the
> edge of the
> > > > >> > train. I don't think many will use it, but it cost nothing
> > > > >> > and add more
> > > > customization
> > > > >> > possibilities)
> > > > >>
> > > > >> Is :outer a state? It sounds to me like it should be
> > > > >> af|train::join-outer
> > > > >
> > > > >
> > > > >
> > > > > yes, it could be ::join-outer, was made a state only
> to fit the
> > > > > other join selectors, but it does make more sense to use
> > > -outer for
> > > > > that one.
> > > > >
> > > > >
> > > > > Does that make more sense now?
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > ~ Simon
> > > > >
> > > > >> - af|train::overflow-start combinable with :disabled and
> > > :readOnly
> > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > >> > :unvisited and :readOnly
> > > > >> >
> > > > >> > I have the following valid suffixes: (I could not use
> > > ::content
> > > > >> > for example since double :: is now prevented from
> > > Adam's change
> > > > >> > to prevent some strange behavior it seem)
> > > > >>
> > > > >> I don't think two pseudo-elements make sense, does it? I
> > > > >> suppose you could have a piece of a piece. Adam prevented it
> > > because there
> > > > >> were bugs in it. I can't recall what the bugs were.
> > > > >
> > > > >
> > > > >
> > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > (content of the
> > > > > stop)
> > > > >
> > > > >> -content (for example, the following is valid:
> > > > >> af|train::stop-content
> > > > >> > and
> > > > >> > af|train::stop:selected-content. This selector refers
> > > to the link
> > > > cell
> > > > >> fo
> > > > >> > the train)
> > > > >>
> > > > >> What does a :selected-content 'state' mean?
> > > > >> How is it different than af|train::stop-content:selected?
> > > > >
> > > > >
> > > > >
> > > > > My bad there, af|train::stop-content:selected is actually
> > > what I use.
> > > > > Even
> > > > > if a better selector would have been
> > > > > af|train::stop:selected::content imho.
> > > > >
> > > > >> -icon-block (as above but refers to the icon cell)
> > > > >>
> > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > our skinning
> > > > >> selectors.
> > > > >
> > > > >
> > > > >
> > > > > Yes I could, I was using block only because it was in Pavitra
> > > > > document
> > > > at
> > > > > first.
> > > > >
> > > > >>
> > > > >> > The icons follow the same rule.
> > > > >> >
> > > > >> > On 8/28/06, Pavitra Subramaniam
> > > <pa...@oracle.com>
> > > > >> wrote:
> > > > >> >
> > > > >> >>
> > > > >> >> Hello Simon,
> > > > >> >>
> > > > >> >> I have also almost completed implementing the
> TrainRenderer
> > > > >> >> using
> > > > the
> > > > >> >> new
> > > > >> >> skin selectors. It's great to know you are done as
> > > well. If you
> > > > >> plan to
> > > > >> >> check in the train renderer code anytime soon, can we
> > > agree on
> > > > >> >> the common list of skin selectors, so that I can
> > > reuse them for
> > > > >> >> my work internally at Oracle? I had to make the following
> > > > >> >> changes and wanted to give you
> > > > an
> > > > >> >> update.
> > > > >> >>
> > > > >> >> 1. I had to introduce a new state called
> "read-only". This
> > > > >> >> is
> > > > >> different
> > > > >> >> from "disabled" state, like I explained in a
> previous email.
> > > > >> >>
> > > > >> >> 2. I removed some redundant skin hooks - I can
> send you the
> > > > >> >> updated
> > > > >> list
> > > > >> >> of selectors I am using. I also couldn't get the
> > > > >> >> "pass-through
> > > > >> states"
> > > > >> >> :visited, :active and :unvisited to work, just as
> > > you. So I have
> > > > >> >> temporarily defined selectors like Jeanne
> suggested (using
> > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > >> >> :selected).
> > > > >> >>
> > > > >> >> 3. Finally I have simplified the rules for
> > > determining the state
> > > > >> >> of joins.
> > > > >> >> I figured it would be much simpler if we did the
> > > following. The
> > > > >> >> join to the left of a stop, is 'always in the same
> > > state as the
> > > > >> >> stop' (Overflows could also follow the same rules as
> > > stops). So
> > > > >> >> for instance for a train
> > > > >> like
> > > > >> >>
> > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > >> >> vr uv v d uvr v
> > > > >> >>
> > > > >> >>
> > > > >> >> NOTE: The only exception, is the join to the left of an
> > > > >> >> active
> > > > >> stop is
> > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > >> >> read-only'. Read-only implies
> > > > >> the
> > > > >> >> stop cannot be reached (and hence not clickable) and
> > > is dictated
> > > > >> by the
> > > > >> >> 'readOnly' property on the component
> commandNavigationItem.
> > > > >> >>
> > > > >> >> Please let me know if the above is ok.
> > > > >> >>
> > > > >> >>
> > > > >> >> Thanks
> > > > >> >> - Pavitra
> > > > >> >>
> > > > >> >>
> > > > >> >> > -----Original Message-----
> > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > >> >> > Subject: Re: Train selectors
> > > > >> >> >
> > > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > > >> >> >
> > > > >> >> > On 8/28/06, Jeanne Waldman
> > > <je...@oracle.com> wrote:
> > > > >> >> > >
> > > > >> >> > > I was thinking :selected for :active.
> :selected could be
> > > > >> >> > > used
> > > > for
> > > > >> >> > > other components, too.
> > > > >> >> > > For :visited/:unvisited, I can't think of a
> better name.
> > > > >> >> > I'm thinking
> > > > >> >> > > that we should use .p_AFVisited,
> .P_AFUnvisited until we
> > > > >> >> > > have
> > > > the
> > > > >> >> > > pseudo-class support in. These wouldn't in a
> public api
> > > > >> >> > format, though.
> > > > >> >> > >
> > > > >> >> > > - Jeanne
> > > > >> >> > >
> > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > >> >> > >
> > > > >> >> > > >Hello,
> > > > >> >> > > >
> > > > >> >> > > >I thought about the following name changes for
> > > the selectors:
> > > > >> >> > > >
> > > > >> >> > > >:active --> :current or :selected
> > > :visited/:unvisited -->
> > > > >> >> > > >:completed/:uncompleted or
> > > > :seen/:unseen
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Do you have any other idea/preference?
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Regards,
> > > > >> >> > > >
> > > > >> >> > > >~ Simon
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > >> >> > > >2006-08-25 22:49
> > > > >> >> > > >Please respond to adffaces-dev
> > > > >> >> > > >
> > > > >> >> > > > To: "Trinidad - Dev"
> > > > >> >> > <ad...@incubator.apache.org>
> > > > >> >> > > > cc:
> > > > >> >> > > > Subject: Train selectors
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Yes... again...
> > > > >> >> > > >
> > > > >> >> > > >I made a new renderer and it work quite well,
> > > but I had to
> > > > >> >> > > >use :ora-visited and :ora-active for some
> > > selectors because
> > > > >> >> > > >those
> > > > >> are
> > > > >> >> > > >"pass through"
> > > > >> >> > > >values.
> > > > >> >> > > >Anyone have better name suggestion while we
> > > implement state
> > > > >> >> > > >interception on a per component basis?
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Regards,
> > > > >> >> > > >
> > > > >> >> > > >~ Simon
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > >
> > > > >> >> > >
> > > > >> >> >
> > > > >> >> >
> > > > >> >> >
> > > > >> >>
> > > > >> >>
> > > > >> >
> > > > >>
> > > > >>
> > > > >
> > > >
> > > >
> > >
> > >
> > >
> >
> >
>
>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Added some inline comments
On 8/29/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
> Hello Simon, Jeanne,
>
> I have some comments on both your email exhanges. I have consolidated all
> the items below as it was getting hard to read.
>
>
> >>>>
> - af|train::stop combinable with :selected, :disabled, :completed (will
> probably become p_AFVisited) and :unvisited. You can append :readOnly at the
> end of the result. So af|train::stop:unvisited:readOnly is valid
> >>>>
>
> - Do you think we need to support an "af|train::stop:visited:readOnly"
I already support it. Icons are also resolved in availability order. That is
if the stop is visited and read-only, the first icon in the lookup list will
be af|train::stop:visited:read-only-icon, then af|train::stop:visited-icon
and finally af|train::stop-icon.
- I believe Jeanne wanted to have states that don't use camel case. So
> readOnly should be read-only
Easy change, I can do this.
>>>>
> - af|train::link
> >>>>
> - should this be ::stop-link or ::link good enough?
Both work, however since this selector is often used in combination with the
::stop selector, I would keep it with ::link only. Here's a selector example
I use for skinning links:
af|train::stop:selected af|train::link
{
font-weight: bold;
}
I believe it's expressive enough. What is your opinion about it?
>>>>
> - af|train::join combinable with :disabled, :completed, :unvisited and
> :outer (:outer is used to add joins outside the edge of the train. I don't
> think many will use it, but it cost nothing and add more customization
> possibilities)
> >>>>
>
> - :join-outer pseudo element is good enough. Is this used outside the
> parent train icons or between the parent train icons and the overflow (or
> stop)?
The latter, parent train icons and the stops. Currently I render the parent
train icons only when the extremity of the train is visible. I was not sure
if it was making sense to show the parent train in the middle of the
process. Speaking of which, I added 2 skin properties as well:
-ora-render-parent-train boolean property to set if the parent train should
be rendered
-ora-visible-stop-count integer property determning the amount of stop to
render before overflow. Invalid value result in a warning and using the
default value of 6.
- do we still have the join-overflow? This comes between the overflow and
> regular stops. It may be useful in cases where only these joins need not be
> displayed.
My current version use standard joins for them. It's easy to add but I
wonder how often skinners will want to render a join between the overflows
and the stops but not between the stop themselves. So I'm +0 on that
>>>>
> - af|train::overflow-start combinable with :disabled and :readOnly
> - af|train::overflow-end combinable with :disabled, :unvisited and
> :readOnly
> >>>>
>
> - Do you think we should support :unvisited state on overflow-start? This
> may be useful in cases where the train is not sequential? I have a scenario
> where all stops in the train are enabled and user can jump around any stop
> without a prescribed order.
Easy to add and allow more customization, +1 for this.
>>>>
> I have the following valid suffixes: (I could not use ::content for
> example since double :: is now prevented from Adam's change to prevent some
> strange behavior it seem) -content (for example, the following is valid:
> af|train::stop-content and
> af|train::stop:selected-content. This selector refers to the link cell (of
> the train)
> >>>>
>
> - I agree with Jeanne. Let's call it stop-content:selected. I don't think
> we need stop-content:visited or stop-content:unvisited. It's an overkill.
stop-content unvisited is automatically supported as the cell get the
p_AFUnvisited class tagged on it.
>>>>
> -icon-block (as above but refers to the icon cell)
> >>>>
>
> - Perhaps we should have a convention of using -block suffix for style
> classes that go on <div> and -cell for styles that go on td. Is that
> acceptable?
I'm -1 on that as it expose markup used.
>>>>
> I use the same join rule as you, that is previous stop determine the join
> state, except for the join after the selected stop. The only exception are
> disabled stops, those have disabled joins on both sides.
> >>>>
>
> - the join after the selected stop should ideally have the state of the
> following stop. Isn't it?
Yep, that's what I use.
Do you think it will be easier to just show the left join of a disabled stop
> as "disabled". So if an unvisited stop follows the disabled stop, the join
> between them will show up as unvisited. At least this is how I have
> implemented it. I use the same rule for displaying joins before overflows.
I prefer to see both sides of a disabled stop being disabled as it should
not be accessible from either way, using an unvisited join toward the end
side could be seen as: "If you can get to the step after the disabled one,
just hit previous and you'll be able to access the disable step".
>>>>
> I also go rid of the separator, it's redundant as you can add padding to
> -content selector. I also added two aliases .AFTrainContent:alias and
> .AFTrainIconBlock. So you can add spacing between stop with something like
> the following:
> .AFTrainContent:alias
> {
> padding-left: 8px;
> padding-right: 8px;
> }
> >>>>
> When you say separator, do you mean the spacer that separates stops? Where
> is the alias above included? Can you send me a HTML fragment?
Yes I meant the spacer. AFTrainContent:alias is added to the content cell of
stop, overflow-start and overflow-end, that way it never breaks the joins.
Thanks
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Tuesday, August 29, 2006 11:43 AM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: TrainRenderer using the new train selectors
> >
> > Ok,
> >
> > Then if those selectors are ok for you as well Pavitra I'll
> > make the changes to -outer and and -icon-cell tonight and
> > upload the patch as well as a test skin I used.
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >
> > > yep, it all makes sense.
> > > I can see where you'd want to use a ::content. That would
> > make sense.
> > > We don't do this yet in any of our skinning keys, so I am fine with
> > > the -content, since we do that all over the place. :)
> > >
> > > - Jeanne
> > >
> > > Simon Lessard wrote:
> > >
> > > > Oups, comments below
> > > >
> > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >
> > > >>
> > > >> one question below
> > > >>
> > > >> Simon Lessard wrote:
> > > >>
> > > >> > Hello Pavitra,
> > > >> >
> > > >> > I had to do about the same changes on my side. Here's
> > my list of
> > > >> selector
> > > >> > and the rules I used:
> > > >> >
> > > >> > - af|train::stop combinable with :selected, :disabled,
> > :completed
> > > >> (will
> > > >> > probably become p_AFVisited) and :unvisited. You can append
> > > >> > :readOnly at the end of the result. So
> > > >> > af|train::stop:unvisited:readOnly is valid
> > > >> > - af|train::link
> > > >> > - af|train::join combinable with :disabled, :completed,
> > > >> > :unvisited
> > > and
> > > >> > :outer (:outer is used to add joins outside the edge of the
> > > >> > train. I don't think many will use it, but it cost nothing and
> > > >> > add more
> > > customization
> > > >> > possibilities)
> > > >>
> > > >> Is :outer a state? It sounds to me like it should be
> > > >> af|train::join-outer
> > > >
> > > >
> > > >
> > > > yes, it could be ::join-outer, was made a state only to fit the
> > > > other join selectors, but it does make more sense to use
> > -outer for
> > > > that one.
> > > >
> > > >
> > > > Does that make more sense now?
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > >> - af|train::overflow-start combinable with :disabled and
> > :readOnly
> > > >> > - af|train::overflow-end combinable with :disabled, :unvisited
> > > >> > and :readOnly
> > > >> >
> > > >> > I have the following valid suffixes: (I could not use
> > ::content
> > > >> > for example since double :: is now prevented from
> > Adam's change
> > > >> > to prevent some strange behavior it seem)
> > > >>
> > > >> I don't think two pseudo-elements make sense, does it? I suppose
> > > >> you could have a piece of a piece. Adam prevented it
> > because there
> > > >> were bugs in it. I can't recall what the bugs were.
> > > >
> > > >
> > > >
> > > > I was seeing them more as sub-elements, like ::stop::content
> > > > (content of the
> > > > stop)
> > > >
> > > >> -content (for example, the following is valid:
> > > >> af|train::stop-content
> > > >> > and
> > > >> > af|train::stop:selected-content. This selector refers
> > to the link
> > > cell
> > > >> fo
> > > >> > the train)
> > > >>
> > > >> What does a :selected-content 'state' mean?
> > > >> How is it different than af|train::stop-content:selected?
> > > >
> > > >
> > > >
> > > > My bad there, af|train::stop-content:selected is actually
> > what I use.
> > > > Even
> > > > if a better selector would have been
> > > > af|train::stop:selected::content imho.
> > > >
> > > >> -icon-block (as above but refers to the icon cell)
> > > >>
> > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > our skinning
> > > >> selectors.
> > > >
> > > >
> > > >
> > > > Yes I could, I was using block only because it was in Pavitra
> > > > document
> > > at
> > > > first.
> > > >
> > > >>
> > > >> > The icons follow the same rule.
> > > >> >
> > > >> > On 8/28/06, Pavitra Subramaniam
> > <pa...@oracle.com>
> > > >> wrote:
> > > >> >
> > > >> >>
> > > >> >> Hello Simon,
> > > >> >>
> > > >> >> I have also almost completed implementing the TrainRenderer
> > > >> >> using
> > > the
> > > >> >> new
> > > >> >> skin selectors. It's great to know you are done as
> > well. If you
> > > >> plan to
> > > >> >> check in the train renderer code anytime soon, can we
> > agree on
> > > >> >> the common list of skin selectors, so that I can
> > reuse them for
> > > >> >> my work internally at Oracle? I had to make the following
> > > >> >> changes and wanted to give you
> > > an
> > > >> >> update.
> > > >> >>
> > > >> >> 1. I had to introduce a new state called "read-only". This is
> > > >> different
> > > >> >> from "disabled" state, like I explained in a previous email.
> > > >> >>
> > > >> >> 2. I removed some redundant skin hooks - I can send you the
> > > >> >> updated
> > > >> list
> > > >> >> of selectors I am using. I also couldn't get the "pass-through
> > > >> states"
> > > >> >> :visited, :active and :unvisited to work, just as
> > you. So I have
> > > >> >> temporarily defined selectors like Jeanne suggested (using
> > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > >> >> :selected).
> > > >> >>
> > > >> >> 3. Finally I have simplified the rules for
> > determining the state
> > > >> >> of joins.
> > > >> >> I figured it would be much simpler if we did the
> > following. The
> > > >> >> join to the left of a stop, is 'always in the same
> > state as the
> > > >> >> stop' (Overflows could also follow the same rules as
> > stops). So
> > > >> >> for instance for a train
> > > >> like
> > > >> >>
> > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > >> >> vr uv v d uvr v
> > > >> >>
> > > >> >>
> > > >> >> NOTE: The only exception, is the join to the left of an active
> > > >> stop is
> > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > >> >> read-only'. Read-only implies
> > > >> the
> > > >> >> stop cannot be reached (and hence not clickable) and
> > is dictated
> > > >> by the
> > > >> >> 'readOnly' property on the component commandNavigationItem.
> > > >> >>
> > > >> >> Please let me know if the above is ok.
> > > >> >>
> > > >> >>
> > > >> >> Thanks
> > > >> >> - Pavitra
> > > >> >>
> > > >> >>
> > > >> >> > -----Original Message-----
> > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > >> >> > To: adffaces-dev@incubator.apache.org
> > > >> >> > Subject: Re: Train selectors
> > > >> >> >
> > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > >> >> >
> > > >> >> > On 8/28/06, Jeanne Waldman
> > <je...@oracle.com> wrote:
> > > >> >> > >
> > > >> >> > > I was thinking :selected for :active. :selected could be
> > > >> >> > > used
> > > for
> > > >> >> > > other components, too.
> > > >> >> > > For :visited/:unvisited, I can't think of a better name.
> > > >> >> > I'm thinking
> > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we
> > > >> >> > > have
> > > the
> > > >> >> > > pseudo-class support in. These wouldn't in a public api
> > > >> >> > format, though.
> > > >> >> > >
> > > >> >> > > - Jeanne
> > > >> >> > >
> > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > >> >> > >
> > > >> >> > > >Hello,
> > > >> >> > > >
> > > >> >> > > >I thought about the following name changes for
> > the selectors:
> > > >> >> > > >
> > > >> >> > > >:active --> :current or :selected
> > :visited/:unvisited -->
> > > >> >> > > >:completed/:uncompleted or
> > > :seen/:unseen
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Do you have any other idea/preference?
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Regards,
> > > >> >> > > >
> > > >> >> > > >~ Simon
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > >> >> > > >2006-08-25 22:49
> > > >> >> > > >Please respond to adffaces-dev
> > > >> >> > > >
> > > >> >> > > > To: "Trinidad - Dev"
> > > >> >> > <ad...@incubator.apache.org>
> > > >> >> > > > cc:
> > > >> >> > > > Subject: Train selectors
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Yes... again...
> > > >> >> > > >
> > > >> >> > > >I made a new renderer and it work quite well,
> > but I had to
> > > >> >> > > >use :ora-visited and :ora-active for some
> > selectors because
> > > >> >> > > >those
> > > >> are
> > > >> >> > > >"pass through"
> > > >> >> > > >values.
> > > >> >> > > >Anyone have better name suggestion while we
> > implement state
> > > >> >> > > >interception on a per component basis?
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Regards,
> > > >> >> > > >
> > > >> >> > > >~ Simon
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > >
> > > >> >> > >
> > > >> >> >
> > > >> >> >
> > > >> >> >
> > > >> >>
> > > >> >>
> > > >> >
> > > >>
> > > >>
> > > >
> > >
> > >
> >
> >
> >
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Jeanne and I were discussing this exact same workaround for IE6 :), yesterday - I'll let her explain it.
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Wednesday, August 30, 2006 6:10 AM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: TrainRenderer using the new train selectors
>
> Hello,
>
> I did not have any nightmare in the end, I found a quote
> instead: "Don't be too hard with Microsoft Internet Explorer,
> it is not bad, you can download Firefox with it".
>
> Anyway, I thought about a work around as well but it's far
> from easy and/or convenient. The idea would be to keep the
> state in the selector rather than extracting it and add
> automatic rule-ref from the parent selector. e.g. if you have
> af|train::stop:unvisited, instead of being splitted as
> af_train_stop p_AFUnvisited, it would become one selector
> af_train_stop_unvisited but a rule-ref would be added at
> parsing level to af_train_stop selector.
>
>
> Regards,
>
> ~ Simon
>
> On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >
> > Ok, I found the reproduction case... It's going to be painful...
> > Microsoft must have worked hard to invent such bug:
> >
> > This code is working
> >
> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> > http://www.w3.org/TR/html4/loose.dtd">
> > <html>
> > <head>
> > <title>5.8.3 Class Selectors</title>
> > <meta http-equiv="Content-Style-Type" content="text/css">
> > <style type="text/css">
> > P.liberty.give {color: blue; border: 2px solid red;
> background:
> > white;}
> > </style>
> > </head>
> > <body>
> > <p class="liberty me">
> > This is a paragraph with a class of 'liberty me',
> and should
> > NOT be red (border), white (background), and blue (foreground).
> > </p>
> > </body>
> > </html>
> >
> >
> > This code is not:
> >
> > <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> > http://www.w3.org/TR/html4/loose.dtd">
> > <html>
> > <head>
> > <title>5.8.3 Class Selectors</title>
> > <meta http-equiv="Content-Style-Type" content="text/css">
> > <style type="text/css">
> > P.give.liberty {color: blue; border: 2px solid red;
> background:
> > white;}
> > </style>
> > </head>
> > <body>
> > <p class="liberty me">
> > This is a paragraph with a class of 'liberty me',
> and should
> > NOT be red (border), white (background), and blue (foreground).
> > </p>
> > </body>
> > </html>
> >
> >
> > The difference? MSIE is actually only evaluating the last class
> > defined in the rule so in the first example, the p element does not
> > match "give" class so the style is not applied (and it
> should not be).
> > In the second, it matches .liberty and thus the style is applied.
> > Please someone, tell me you got a lifesaver idea to work
> around that insanity.
> >
> >
> > Goodnight... Another nightmare is coming for me I'm sure,
> >
> >
> >
> > ~ Simon
> >
> >
> > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> > >
> > > *mumble*
> > >
> > > http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
> > >
> > > *mumble*
> > >
> > >
> > > On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> > > >
> > > > Is it possible that IE is so dumb that it interprets
> > > >
> > > > .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled
> > > > rather than the specified .af_train_join AND .p_AFDisabled?
> > > >
> > > > My diagnosis makes it looks like it and if it's really
> the case,
> > > > it might be a problem for many or our skinning by state
> selectors.
> > > > Anyone knows any work around?
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > >
> > > > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> > > > >
> > > > > Yes it would. I'll start by uploading that damned patch first
> > > > > though... And since I have a rendering issue with IE,
> this will
> > > > > take one more day... Damned IE... Oh and I support
> RTL fine already as well...
> > > > > There's just that strange bug if joins under IE...
> > > > >
> > > > > The generated CSS includes the class and this is the
> only class
> > > > > using that join icon...
> > > > >
> > > > > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited
> > > > >
> {background-image:url('/TrinidadDemo-MenuModel-context-root/skin
> > > > >
> s/train/skin_images/JoinUnvisited.gif');background-repeat:repeat
> > > > > -x}
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > The classes on the content cell are
> > > > >
> > > > > <td colspan="3" class="p_AFUnvisited x72 x73">
> > > > > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> > > > > <a
> > > > > onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
> > > > > false;" href="#" class="x79">Useless step</a> </td>
> > > > >
> > > > > And the join get rendered for that step in a strange
> way... ...
> > > > > I hate IE...
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > ~ Simon
> > > > >
> > > > >
> > > > >
> > > > > On 8/29/06, Pavitra Subramaniam
> <pa...@oracle.com>
> > > > > wrote:
> > > > > >
> > > > > > It may also be a good idea to update
> MVariableResolver.java,
> > > > > > the test code that sets up MenuModel #{pageList},
> to include
> > > > > > the visited, disabled, unvisited + readOnly states.
> Right now
> > > > > > the train golden file only tests for selected and
> unvisited states.
> > > > > >
> > > > > > - Pavitra
> > > > > >
> > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Pavitra Subramaniam
> > > > > > > [mailto:pavitra.subramaniam@oracle.com
> > > > > > ]
> > > > > > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > > > > > To: adffaces-dev@incubator.apache.org
> > > > > > > Subject: RE: TrainRenderer using the new train selectors
> > > > > > >
> > > > > > > Hello Simon, Jeanne,
> > > > > > >
> > > > > > > I have some comments on both your email exhanges. I have
> > > > > > > consolidated all the items below as it was
> getting hard to read.
> > > > > > >
> > > > > > >
> > > > > > > >>>>
> > > > > > > - af|train::stop combinable with :selected, :disabled,
> > > > > > > :completed (will probably become p_AFVisited) and
> :unvisited.
> > > > > > > You can append :readOnly at the end of the result. So
> > > > > > > af|train::stop:unvisited:readOnly is valid
> > > > > > > >>>>
> > > > > > >
> > > > > > > - Do you think we need to support an
> > > > > > "af|train::stop:visited:readOnly"
> > > > > > > - I believe Jeanne wanted to have states that don't use
> > > > > > > camel case. So readOnly should be read-only
> > > > > > >
> > > > > > > >>>>
> > > > > > > - af|train::link
> > > > > > > >>>>
> > > > > > > - should this be ::stop-link or ::link good enough?
> > > > > > >
> > > > > > >
> > > > > > > >>>>
> > > > > > > - af|train::join combinable with :disabled, :completed,
> > > > > > > :unvisited and :outer (:outer is used to add
> joins outside
> > > > > > > the edge of the train. I don't think many will
> use it, but
> > > > > > > it cost nothing and add more customization
> > > > > > > possibilities)
> > > > > > > >>>>
> > > > > > >
> > > > > > > - :join-outer pseudo element is good enough. Is this used
> > > > > > > outside the parent train icons or between the
> parent train
> > > > > > > icons and the overflow (or stop)?
> > > > > > > - do we still have the join-overflow? This comes
> between the
> > > > > > > overflow and regular stops. It may be useful in
> cases where
> > > > > > > only these joins need not be displayed.
> > > > > > >
> > > > > > >
> > > > > > > >>>>
> > > > > > > - af|train::overflow-start combinable with :disabled and
> > > > > > :readOnly
> > > > > > > - af|train::overflow-end combinable with :disabled,
> > > > > > > :unvisited and :readOnly
> > > > > > > >>>>
> > > > > > >
> > > > > > > - Do you think we should support :unvisited state on
> > > > > > > overflow-start? This may be useful in cases where
> the train
> > > > > > > is not sequential? I have a scenario where all
> stops in the
> > > > > > > train are enabled and user can jump around any
> stop without
> > > > > > > a prescribed order.
> > > > > > >
> > > > > > > >>>>
> > > > > > > I have the following valid suffixes: (I could not use
> > > > > > > ::content for example since double :: is now
> prevented from
> > > > > > > Adam's change to prevent some strange behavior it seem)
> > > > > > > -content (for example, the following is valid:
> > > > > > > af|train::stop-content and
> > > > > > > af|train::stop:selected-content. This selector
> refers to the
> > > > > > > link cell
> > > > > > > af|(of the train)
> > > > > > > >>>>
> > > > > > >
> > > > > > > - I agree with Jeanne. Let's call it
> stop-content:selected.
> > > > > > > I don't think we need stop-content:visited or
> > > > > > > stop-content:unvisited. It's an overkill.
> > > > > > >
> > > > > > > >>>>
> > > > > > > -icon-block (as above but refers to the icon cell)
> > > > > > > >>>>
> > > > > > >
> > > > > > > - Perhaps we should have a convention of using
> -block suffix
> > > > > > > for style classes that go on <div> and -cell for
> styles that
> > > > > > > go on td. Is that acceptable?
> > > > > > >
> > > > > > > >>>>
> > > > > > > I use the same join rule as you, that is previous stop
> > > > > > > determine the join state, except for the join after the
> > > > > > > selected stop. The only exception are disabled
> stops, those
> > > > > > > have disabled joins on both sides.
> > > > > > > >>>>
> > > > > > >
> > > > > > > - the join after the selected stop should ideally
> have the
> > > > > > > state of the following stop. Isn't it? Do you
> think it will
> > > > > > > be easier to just show the left join of a
> disabled stop as
> > > > > > > "disabled". So if an unvisited stop follows the disabled
> > > > > > > stop, the join between them will show up as unvisited. At
> > > > > > > least this is how I have implemented it. I use
> the same rule
> > > > > > > for displaying joins before overflows.
> > > > > > >
> > > > > > >
> > > > > > > >>>>
> > > > > > > I also go rid of the separator, it's redundant as you can
> > > > > > > add padding to -content selector. I also added
> two aliases
> > > > > > > .AFTrainContent:alias and .AFTrainIconBlock. So
> you can add
> > > > > > > spacing between stop with something like the following:
> > > > > > > .AFTrainContent:alias
> > > > > > > {
> > > > > > > padding-left: 8px;
> > > > > > > padding-right: 8px;
> > > > > > > }
> > > > > > > >>>>
> > > > > > > When you say separator, do you mean the spacer that
> > > > > > > separates stops? Where is the alias above
> included? Can you
> > > > > > > send me a HTML fragment?
> > > > > > >
> > > > > > > Thanks
> > > > > > > - Pavitra
> > > > > > >
> > > > > > >
> > > > > > > > -----Original Message-----
> > > > > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > > > > > To: adffaces-dev@incubator.apache.org
> > > > > > > > Subject: Re: TrainRenderer using the new train selectors
> > > > > > > >
> > > > > > > > Ok,
> > > > > > > >
> > > > > > > > Then if those selectors are ok for you as well Pavitra
> > > > > > > > I'll
> > > > > > > make the
> > > > > > > > changes to -outer and and -icon-cell tonight and upload
> > > > > > > > the
> > > > > > > patch as
> > > > > > > > well as a test skin I used.
> > > > > > > >
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > >
> > > > > > > > ~ Simon
> > > > > > > >
> > > > > > > > On 8/29/06, Jeanne Waldman <
> jeanne.waldman@oracle.com> wrote:
> > > > > > > > >
> > > > > > > > > yep, it all makes sense.
> > > > > > > > > I can see where you'd want to use a ::content. That
> > > > > > > > > would
> > > > > > > > make sense.
> > > > > > > > > We don't do this yet in any of our skinning
> keys, so I
> > > > > > > > > am
> > > > > > > fine with
> > > > > > > > > the -content, since we do that all over the place. :)
> > > > > > > > >
> > > > > > > > > - Jeanne
> > > > > > > > >
> > > > > > > > > Simon Lessard wrote:
> > > > > > > > >
> > > > > > > > > > Oups, comments below
> > > > > > > > > >
> > > > > > > > > > On 8/29/06, Jeanne Waldman
> <jeanne.waldman@oracle.com
> > > > > > > > > > >
> > > > > > wrote:
> > > > > > > > > >
> > > > > > > > > >>
> > > > > > > > > >> one question below
> > > > > > > > > >>
> > > > > > > > > >> Simon Lessard wrote:
> > > > > > > > > >>
> > > > > > > > > >> > Hello Pavitra,
> > > > > > > > > >> >
> > > > > > > > > >> > I had to do about the same changes on my side.
> > > > > > > > > >> > Here's
> > > > > > > > my list of
> > > > > > > > > >> selector
> > > > > > > > > >> > and the rules I used:
> > > > > > > > > >> >
> > > > > > > > > >> > - af|train::stop combinable with :selected,
> > > > > > > > > >> > :disabled,
> > > > > > > > :completed
> > > > > > > > > >> (will
> > > > > > > > > >> > probably become p_AFVisited) and :unvisited. You
> > > > > > > > > >> > can
> > > > > > append
> > > > > > > > > >> > :readOnly at the end of the result. So
> > > > > > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > > > > > >> > - af|train::link
> > > > > > > > > >> > - af|train::join combinable with :disabled,
> > > > > > > > > >> > :completed, :unvisited
> > > > > > > > > and
> > > > > > > > > >> > :outer (:outer is used to add joins outside the
> > > > > > > > > >> > edge of
> > > > > > the
> > > > > > > > > >> > train. I don't think many will use it,
> but it cost
> > > > > > > nothing and
> > > > > > > > > >> > add more
> > > > > > > > > customization
> > > > > > > > > >> > possibilities)
> > > > > > > > > >>
> > > > > > > > > >> Is :outer a state? It sounds to me like it
> should be
> > > > > > > > > >> af|train::join-outer
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > yes, it could be ::join-outer, was made a
> state only
> > > > > > > > > > to
> > > > > > fit the
> > > > > > > > > > other join selectors, but it does make more
> sense to
> > > > > > > > > > use
> > > > > > > > -outer for
> > > > > > > > > > that one.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Does that make more sense now?
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Regards,
> > > > > > > > > >
> > > > > > > > > > ~ Simon
> > > > > > > > > >
> > > > > > > > > >> - af|train::overflow-start combinable with
> :disabled
> > > > > > > > > >> and
> > > > > > > > :readOnly
> > > > > > > > > >> > - af|train::overflow-end combinable with
> :disabled,
> > > > > > > :unvisited
> > > > > > > > > >> > and :readOnly
> > > > > > > > > >> >
> > > > > > > > > >> > I have the following valid suffixes: (I
> could not
> > > > > > > > > >> > use
> > > > > > > > ::content
> > > > > > > > > >> > for example since double :: is now prevented from
> > > > > > > > Adam's change
> > > > > > > > > >> > to prevent some strange behavior it seem)
> > > > > > > > > >>
> > > > > > > > > >> I don't think two pseudo-elements make
> sense, does it?
> > > > > > > I suppose
> > > > > > > > > >> you could have a piece of a piece. Adam
> prevented it
> > > > > > > > because there
> > > > > > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > I was seeing them more as sub-elements, like
> > > > > > ::stop::content
> > > > > > > > > > (content of the
> > > > > > > > > > stop)
> > > > > > > > > >
> > > > > > > > > >> -content (for example, the following is valid:
> > > > > > > > > >> af|train::stop-content
> > > > > > > > > >> > and
> > > > > > > > > >> > af|train::stop:selected-content. This selector
> > > > > > > > > >> > af|refers
> > > > > > > > to the link
> > > > > > > > > cell
> > > > > > > > > >> fo
> > > > > > > > > >> > the train)
> > > > > > > > > >>
> > > > > > > > > >> What does a :selected-content 'state' mean?
> > > > > > > > > >> How is it different than
> af|train::stop-content:selected?
> > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > My bad there, af|train::stop-content:selected is
> > > > > > > > > > actually
> > > > > > > > what I use.
> > > > > > > > > > Even
> > > > > > > > > > if a better selector would have been
> > > > > > > > > > af|train::stop:selected::content imho.
> > > > > > > > > >
> > > > > > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > > > > > >>
> > > > > > > > > >> Could you say -icon-cell? We use 'cell'
> quite a bit
> > > > > > > > > >> in
> > > > > > > > our skinning
> > > > > > > > > >> selectors.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Yes I could, I was using block only because
> it was in
> > > > > > Pavitra
> > > > > > > > > > document
> > > > > > > > > at
> > > > > > > > > > first.
> > > > > > > > > >
> > > > > > > > > >>
> > > > > > > > > >> > The icons follow the same rule.
> > > > > > > > > >> >
> > > > > > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > > > > > <pavitra.subramaniam@oracle.com >
> > > > > > > > > >> wrote:
> > > > > > > > > >> >
> > > > > > > > > >> >>
> > > > > > > > > >> >> Hello Simon,
> > > > > > > > > >> >>
> > > > > > > > > >> >> I have also almost completed implementing the
> > > > > > TrainRenderer
> > > > > > > > > >> >> using
> > > > > > > > > the
> > > > > > > > > >> >> new
> > > > > > > > > >> >> skin selectors. It's great to know you
> are done as
> > > > > > > > well. If you
> > > > > > > > > >> plan to
> > > > > > > > > >> >> check in the train renderer code
> anytime soon, can
> > > > > > > > > >> >> we
> > > > > > > > agree on
> > > > > > > > > >> >> the common list of skin selectors, so that I can
> > > > > > > > reuse them for
> > > > > > > > > >> >> my work internally at Oracle? I had to make the
> > > > > > following
> > > > > > > > > >> >> changes and wanted to give you
> > > > > > > > > an
> > > > > > > > > >> >> update.
> > > > > > > > > >> >>
> > > > > > > > > >> >> 1. I had to introduce a new state called
> > > > > > > "read-only". This is
> > > > > > > > > >> different
> > > > > > > > > >> >> from "disabled" state, like I explained in a
> > > > > > > > > >> >> previous
> > > > > > email.
> > > > > > > > > >> >>
> > > > > > > > > >> >> 2. I removed some redundant skin hooks - I can
> > > > > > > > > >> >> send
> > > > > > you the
> > > > > > > > > >> >> updated
> > > > > > > > > >> list
> > > > > > > > > >> >> of selectors I am using. I also couldn't get the
> > > > > > > "pass-through
> > > > > > > > > >> states"
> > > > > > > > > >> >> :visited, :active and :unvisited to
> work, just as
> > > > > > > > you. So I have
> > > > > > > > > >> >> temporarily defined selectors like Jeanne
> > > > > > > > > >> >> suggested
> > > > > > (using
> > > > > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed
> > > > > > > > > >> >> :active to :selected).
> > > > > > > > > >> >>
> > > > > > > > > >> >> 3. Finally I have simplified the rules for
> > > > > > > > determining the state
> > > > > > > > > >> >> of joins.
> > > > > > > > > >> >> I figured it would be much simpler if we did the
> > > > > > > > following. The
> > > > > > > > > >> >> join to the left of a stop, is 'always
> in the same
> > > > > > > > state as the
> > > > > > > > > >> >> stop' (Overflows could also follow the
> same rules
> > > > > > > > > >> >> as
> > > > > > > > stops). So
> > > > > > > > > >> >> for instance for a train
> > > > > > > > > >> like
> > > > > > > > > >> >>
> > > > > > > > > >> >> V ----- VR ----- UV ----- A ----- D
> ----- UVR ----- V
> > > > > > > > > >> >> vr uv v d
> uvr v
> > > > > > > > > >> >>
> > > > > > > > > >> >>
> > > > > > > > > >> >> NOTE: The only exception, is the join
> to the left
> > > > > > > of an active
> > > > > > > > > >> stop is
> > > > > > > > > >> >> visited. Also, UVR and VR are stops
> that are in 2
> > > > > > states
> > > > > > > > > >> >> simulataneously - 'visited & read-only' and
> > > > > > > > > >> >> 'unvisited
> > > > > > &
> > > > > > > > > >> >> read-only'. Read-only implies
> > > > > > > > > >> the
> > > > > > > > > >> >> stop cannot be reached (and hence not
> clickable)
> > > > > > > > > >> >> and
> > > > > > > > is dictated
> > > > > > > > > >> by the
> > > > > > > > > >> >> 'readOnly' property on the component
> > > > > > commandNavigationItem.
> > > > > > > > > >> >>
> > > > > > > > > >> >> Please let me know if the above is ok.
> > > > > > > > > >> >>
> > > > > > > > > >> >>
> > > > > > > > > >> >> Thanks
> > > > > > > > > >> >> - Pavitra
> > > > > > > > > >> >>
> > > > > > > > > >> >>
> > > > > > > > > >> >> > -----Original Message-----
> > > > > > > > > >> >> > From: Simon Lessard
> > > > > > > > > >> >> > [mailto:simon.lessard.3@gmail.com
> > > > > > ]
> > > > > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > > > > > >> >> > Subject: Re: Train selectors
> > > > > > > > > >> >> >
> > > > > > > > > >> >> > Hmmm you mean somthing like af|train::
> > > > > > stop.p_AFVisited?
> > > > > > > > > >> >> >
> > > > > > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > > > > > < jeanne.waldman@oracle.com> wrote:
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> > > I was thinking :selected for :active.
> > > > > > > > > >> >> > > :selected
> > > > > > > could be
> > > > > > > > > >> >> > > used
> > > > > > > > > for
> > > > > > > > > >> >> > > other components, too.
> > > > > > > > > >> >> > > For :visited/:unvisited, I can't think of a
> > > > > > > > > >> >> > > better
> > > > > > name.
> > > > > > > > > >> >> > I'm thinking
> > > > > > > > > >> >> > > that we should use .p_AFVisited,
> > > > > > > > > >> >> > > .P_AFUnvisited
> > > > > > > until we
> > > > > > > > > >> >> > > have
> > > > > > > > > the
> > > > > > > > > >> >> > > pseudo-class support in. These
> wouldn't in a
> > > > > > public api
> > > > > > > > > >> >> > format, though.
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> > > - Jeanne
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> > > >Hello,
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >I thought about the following name changes
> > > > > > > > > >> >> > > >for
> > > > > > > > the selectors:
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >:active --> :current or :selected
> > > > > > > > :visited/:unvisited -->
> > > > > > > > > >> >> > > >:completed/:uncompleted or
> > > > > > > > > :seen/:unseen
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >Do you have any other idea/preference?
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >Regards,
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >~ Simon
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >"Simon Lessard"
> <simon.lessard.3@gmail.com >
> > > > > > > > > >> >> > > >2006-08-25 22:49 Please respond to
> > > > > > > > > >> >> > > >adffaces-dev
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > > > > > >> >> > <ad...@incubator.apache.org>
> > > > > > > > > >> >> > > > cc:
> > > > > > > > > >> >> > > > Subject: Train selectors
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >Yes... again...
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >I made a new renderer and it work
> quite well,
> > > > > > > > but I had to
> > > > > > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > > > > > selectors because
> > > > > > > > > >> >> > > >those
> > > > > > > > > >> are
> > > > > > > > > >> >> > > >"pass through"
> > > > > > > > > >> >> > > >values.
> > > > > > > > > >> >> > > >Anyone have better name suggestion while we
> > > > > > > > implement state
> > > > > > > > > >> >> > > >interception on a per component basis?
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >Regards,
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >~ Simon
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > > >
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> > >
> > > > > > > > > >> >> >
> > > > > > > > > >> >> >
> > > > > > > > > >> >> >
> > > > > > > > > >> >>
> > > > > > > > > >> >>
> > > > > > > > > >> >
> > > > > > > > > >>
> > > > > > > > > >>
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hello Jeanne,
Thank for the comment. The blog is only a little IE 7 blog. I don't see
composite selector fix in the list but I sure hope it works. I might try to
install IE7 on on of my computers to test it out. And yeah, the skinning
issue are pilling up quite fast.
Regards,
~ Simon
On 8/31/06, Jeanne Waldman <je...@oracle.com> wrote:
>
> Hi Simon,
> I only have time to glance at these emails, but I wanted to comment real
> quickly.
> Yes, we've discovered that composite selectors don't work well in IE. I'll
> take a look at your blog link.
> I have been tasked to provide some fix, even if it isn't perfect, for
> IE6. We
> are hoping most people will upgrade to IE7, since I hear there is a
> security
> fix in IE7. It is fine in IE7, or so I've been told .I don't have IE7
> myself.
> I was thinking about doing something along the lines as you've suggested.
>
>
> Seems the skinning tasks are piling up!
>
> Simon Lessard wrote:
>
> > Hello,
> >
> > I did not have any nightmare in the end, I found a quote instead:
> > "Don't be
> > too hard with Microsoft Internet Explorer, it is not bad, you can
> > download
> > Firefox with it".
> >
> > Anyway, I thought about a work around as well but it's far from easy
> > and/or
> > convenient. The idea would be to keep the state in the selector rather
> > than
> > extracting it and add automatic rule-ref from the parent selector.
> > e.g. if
> > you have af|train::stop:unvisited, instead of being splitted as
> > af_train_stop p_AFUnvisited, it would become one selector
> > af_train_stop_unvisited but a rule-ref would be added at parsing level
> to
> > af_train_stop selector.
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> > On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >
> >>
> >> Ok, I found the reproduction case... It's going to be painful...
> >> Microsoft
> >> must have worked hard to invent such bug:
> >>
> >> This code is working
> >>
> >> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> >> http://www.w3.org/TR/html4/loose.dtd">
> >> <html>
> >> <head>
> >> <title>5.8.3 Class Selectors</title>
> >> <meta http-equiv="Content-Style-Type" content="text/css">
> >> <style type="text/css">
> >> P.liberty.give {color: blue; border: 2px solid red; background:
> >> white;}
> >> </style>
> >> </head>
> >> <body>
> >> <p class="liberty me">
> >> This is a paragraph with a class of 'liberty me', and should
> NOT
> >> be red (border), white (background), and blue (foreground).
> >> </p>
> >> </body>
> >> </html>
> >>
> >>
> >> This code is not:
> >>
> >> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> >> http://www.w3.org/TR/html4/loose.dtd">
> >> <html>
> >> <head>
> >> <title>5.8.3 Class Selectors</title>
> >> <meta http-equiv="Content-Style-Type" content="text/css">
> >> <style type="text/css">
> >> P.give.liberty {color: blue; border: 2px solid red; background:
> >> white;}
> >> </style>
> >> </head>
> >> <body>
> >> <p class="liberty me">
> >> This is a paragraph with a class of 'liberty me', and should
> NOT
> >> be red (border), white (background), and blue (foreground).
> >> </p>
> >> </body>
> >> </html>
> >>
> >>
> >> The difference? MSIE is actually only evaluating the last class
> >> defined in
> >> the rule so in the first example, the p element does not match "give"
> >> class
> >> so the style is not applied (and it should not be). In the second, it
> >> matches .liberty and thus the style is applied. Please someone, tell
> >> me you
> >> got a lifesaver idea to work around that insanity.
> >>
> >>
> >> Goodnight... Another nightmare is coming for me I'm sure,
> >>
> >>
> >>
> >> ~ Simon
> >>
> >>
> >> On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> >> >
> >> > *mumble*
> >> >
> >> > http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
> >> >
> >> > *mumble*
> >> >
> >> >
> >> > On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >> > >
> >> > > Is it possible that IE is so dumb that it interprets
> >> > >
> >> > > .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled
> >> rather
> >> > > than the specified .af_train_join AND .p_AFDisabled?
> >> > >
> >> > > My diagnosis makes it looks like it and if it's really the case, it
> >> > > might be a problem for many or our skinning by state selectors.
> >> Anyone knows
> >> > > any work around?
> >> > >
> >> > >
> >> > > Regards,
> >> > >
> >> > > ~ Simon
> >> > >
> >> > >
> >> > > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> >> > > >
> >> > > > Yes it would. I'll start by uploading that damned patch first
> >> > > > though... And since I have a rendering issue with IE, this will
> >> take one
> >> > > > more day... Damned IE... Oh and I support RTL fine already as
> >> well...
> >> > > > There's just that strange bug if joins under IE...
> >> > > >
> >> > > > The generated CSS includes the class and this is the only class
> >> > > > using that join icon...
> >> > > >
> >> > > > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited
> >>
> {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
> >>
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> >> > > > The classes on the content cell are
> >> > > >
> >> > > > <td colspan="3" class="p_AFUnvisited x72 x73">
> >> > > > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> >> > > > <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
> >> > > > false;" href="#" class="x79">Useless step</a>
> >> > > > </td>
> >> > > >
> >> > > > And the join get rendered for that step in a strange way... ... I
> >> > > > hate IE...
> >> > > >
> >> > > >
> >> > > > Regards,
> >> > > >
> >> > > > ~ Simon
> >> > > >
> >> > > >
> >> > > >
> >> > > > On 8/29/06, Pavitra Subramaniam <pa...@oracle.com>
> >> > > > wrote:
> >> > > > >
> >> > > > > It may also be a good idea to update MVariableResolver.java,
> the
> >> > > > > test code that sets up MenuModel #{pageList}, to include the
> >> visited,
> >> > > > > disabled, unvisited + readOnly states. Right now the train
> >> golden file only
> >> > > > > tests for selected and unvisited states.
> >> > > > >
> >> > > > > - Pavitra
> >> > > > >
> >> > > > >
> >> > > > > > -----Original Message-----
> >> > > > > > From: Pavitra Subramaniam
> >> [mailto:pavitra.subramaniam@oracle.com
> >> > > > > ]
> >> > > > > > Sent: Tuesday, August 29, 2006 2:46 PM
> >> > > > > > To: adffaces-dev@incubator.apache.org
> >> > > > > > Subject: RE: TrainRenderer using the new train selectors
> >> > > > > >
> >> > > > > > Hello Simon, Jeanne,
> >> > > > > >
> >> > > > > > I have some comments on both your email exhanges. I have
> >> > > > > > consolidated all the items below as it was getting hard to
> >> read.
> >> > > > > >
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > - af|train::stop combinable with :selected, :disabled,
> >> > > > > > :completed (will probably become p_AFVisited) and :unvisited.
> >> > > > > > You can append :readOnly at the end of the result. So
> >> > > > > > af|train::stop:unvisited:readOnly is valid
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - Do you think we need to support an
> >> > > > > "af|train::stop:visited:readOnly"
> >> > > > > > - I believe Jeanne wanted to have states that don't use camel
> >> > > > > > case. So readOnly should be read-only
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > - af|train::link
> >> > > > > > >>>>
> >> > > > > > - should this be ::stop-link or ::link good enough?
> >> > > > > >
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > - af|train::join combinable with :disabled, :completed,
> >> > > > > > :unvisited and :outer (:outer is used to add joins outside
> >> > > > > > the edge of the train. I don't think many will use it, but it
> >> > > > > > cost nothing and add more customization
> >> > > > > > possibilities)
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - :join-outer pseudo element is good enough. Is this used
> >> > > > > > outside the parent train icons or between the parent train
> >> > > > > > icons and the overflow (or stop)?
> >> > > > > > - do we still have the join-overflow? This comes between the
> >> > > > > > overflow and regular stops. It may be useful in cases where
> >> > > > > > only these joins need not be displayed.
> >> > > > > >
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > - af|train::overflow-start combinable with :disabled and
> >> > > > > :readOnly
> >> > > > > > - af|train::overflow-end combinable with :disabled,
> >> > > > > > :unvisited and :readOnly
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - Do you think we should support :unvisited state on
> >> > > > > > overflow-start? This may be useful in cases where the train
> >> > > > > > is not sequential? I have a scenario where all stops in the
> >> > > > > > train are enabled and user can jump around any stop without a
> >> > > > > > prescribed order.
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > I have the following valid suffixes: (I could not use
> >> > > > > > ::content for example since double :: is now prevented from
> >> > > > > > Adam's change to prevent some strange behavior it seem)
> >> > > > > > -content (for example, the following is valid:
> >> > > > > > af|train::stop-content and
> >> > > > > > af|train::stop:selected-content. This selector refers to the
> >> > > > > > link cell
> >> > > > > > af|(of the train)
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - I agree with Jeanne. Let's call it stop-content:selected. I
> >> > > > > > don't think we need stop-content:visited or
> >> > > > > > stop-content:unvisited. It's an overkill.
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > -icon-block (as above but refers to the icon cell)
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - Perhaps we should have a convention of using -block suffix
> >> > > > > > for style classes that go on <div> and -cell for styles that
> >> > > > > > go on td. Is that acceptable?
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > I use the same join rule as you, that is previous stop
> >> > > > > > determine the join state, except for the join after the
> >> > > > > > selected stop. The only exception are disabled stops, those
> >> > > > > > have disabled joins on both sides.
> >> > > > > > >>>>
> >> > > > > >
> >> > > > > > - the join after the selected stop should ideally have the
> >> > > > > > state of the following stop. Isn't it? Do you think it will
> >> > > > > > be easier to just show the left join of a disabled stop as
> >> > > > > > "disabled". So if an unvisited stop follows the disabled
> >> > > > > > stop, the join between them will show up as unvisited. At
> >> > > > > > least this is how I have implemented it. I use the same rule
> >> > > > > > for displaying joins before overflows.
> >> > > > > >
> >> > > > > >
> >> > > > > > >>>>
> >> > > > > > I also go rid of the separator, it's redundant as you can add
> >> > > > > > padding to -content selector. I also added two aliases
> >> > > > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> >> > > > > > spacing between stop with something like the following:
> >> > > > > > .AFTrainContent:alias
> >> > > > > > {
> >> > > > > > padding-left: 8px;
> >> > > > > > padding-right: 8px;
> >> > > > > > }
> >> > > > > > >>>>
> >> > > > > > When you say separator, do you mean the spacer that separates
> >> > > > > > stops? Where is the alias above included? Can you send me a
> >> > > > > > HTML fragment?
> >> > > > > >
> >> > > > > > Thanks
> >> > > > > > - Pavitra
> >> > > > > >
> >> > > > > >
> >> > > > > > > -----Original Message-----
> >> > > > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> >> > > > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> >> > > > > > > To: adffaces-dev@incubator.apache.org
> >> > > > > > > Subject: Re: TrainRenderer using the new train selectors
> >> > > > > > >
> >> > > > > > > Ok,
> >> > > > > > >
> >> > > > > > > Then if those selectors are ok for you as well Pavitra I'll
> >> > > > > > make the
> >> > > > > > > changes to -outer and and -icon-cell tonight and upload the
> >> > > > > > patch as
> >> > > > > > > well as a test skin I used.
> >> > > > > > >
> >> > > > > > >
> >> > > > > > > Regards,
> >> > > > > > >
> >> > > > > > > ~ Simon
> >> > > > > > >
> >> > > > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com>
> >> wrote:
> >> > > > > > > >
> >> > > > > > > > yep, it all makes sense.
> >> > > > > > > > I can see where you'd want to use a ::content. That would
> >> > > > > > > make sense.
> >> > > > > > > > We don't do this yet in any of our skinning keys, so I am
> >> > > > > > fine with
> >> > > > > > > > the -content, since we do that all over the place. :)
> >> > > > > > > >
> >> > > > > > > > - Jeanne
> >> > > > > > > >
> >> > > > > > > > Simon Lessard wrote:
> >> > > > > > > >
> >> > > > > > > > > Oups, comments below
> >> > > > > > > > >
> >> > > > > > > > > On 8/29/06, Jeanne Waldman <jeanne.waldman@oracle.com >
> >> > > > > wrote:
> >> > > > > > > > >
> >> > > > > > > > >>
> >> > > > > > > > >> one question below
> >> > > > > > > > >>
> >> > > > > > > > >> Simon Lessard wrote:
> >> > > > > > > > >>
> >> > > > > > > > >> > Hello Pavitra,
> >> > > > > > > > >> >
> >> > > > > > > > >> > I had to do about the same changes on my side.
> Here's
> >> > > > > > > my list of
> >> > > > > > > > >> selector
> >> > > > > > > > >> > and the rules I used:
> >> > > > > > > > >> >
> >> > > > > > > > >> > - af|train::stop combinable with :selected,
> >> :disabled,
> >> > > > > > > :completed
> >> > > > > > > > >> (will
> >> > > > > > > > >> > probably become p_AFVisited) and :unvisited. You can
> >> > > > > append
> >> > > > > > > > >> > :readOnly at the end of the result. So
> >> > > > > > > > >> > af|train::stop:unvisited:readOnly is valid
> >> > > > > > > > >> > - af|train::link
> >> > > > > > > > >> > - af|train::join combinable with :disabled,
> >> :completed,
> >> > > > > > > > >> > :unvisited
> >> > > > > > > > and
> >> > > > > > > > >> > :outer (:outer is used to add joins outside the
> >> edge of
> >> > > > > the
> >> > > > > > > > >> > train. I don't think many will use it, but it cost
> >> > > > > > nothing and
> >> > > > > > > > >> > add more
> >> > > > > > > > customization
> >> > > > > > > > >> > possibilities)
> >> > > > > > > > >>
> >> > > > > > > > >> Is :outer a state? It sounds to me like it should be
> >> > > > > > > > >> af|train::join-outer
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > yes, it could be ::join-outer, was made a state only to
> >> > > > > fit the
> >> > > > > > > > > other join selectors, but it does make more sense to
> use
> >> > > > > > > -outer for
> >> > > > > > > > > that one.
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > Does that make more sense now?
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > Regards,
> >> > > > > > > > >
> >> > > > > > > > > ~ Simon
> >> > > > > > > > >
> >> > > > > > > > >> - af|train::overflow-start combinable with :disabled
> >> and
> >> > > > > > > :readOnly
> >> > > > > > > > >> > - af|train::overflow-end combinable with :disabled,
> >> > > > > > :unvisited
> >> > > > > > > > >> > and :readOnly
> >> > > > > > > > >> >
> >> > > > > > > > >> > I have the following valid suffixes: (I could not
> use
> >> > > > > > > ::content
> >> > > > > > > > >> > for example since double :: is now prevented from
> >> > > > > > > Adam's change
> >> > > > > > > > >> > to prevent some strange behavior it seem)
> >> > > > > > > > >>
> >> > > > > > > > >> I don't think two pseudo-elements make sense, does it?
> >> > > > > > I suppose
> >> > > > > > > > >> you could have a piece of a piece. Adam prevented it
> >> > > > > > > because there
> >> > > > > > > > >> were bugs in it. I can't recall what the bugs were.
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > I was seeing them more as sub-elements, like
> >> > > > > ::stop::content
> >> > > > > > > > > (content of the
> >> > > > > > > > > stop)
> >> > > > > > > > >
> >> > > > > > > > >> -content (for example, the following is valid:
> >> > > > > > > > >> af|train::stop-content
> >> > > > > > > > >> > and
> >> > > > > > > > >> > af|train::stop:selected-content. This selector
> refers
> >> > > > > > > to the link
> >> > > > > > > > cell
> >> > > > > > > > >> fo
> >> > > > > > > > >> > the train)
> >> > > > > > > > >>
> >> > > > > > > > >> What does a :selected-content 'state' mean?
> >> > > > > > > > >> How is it different than
> >> af|train::stop-content:selected?
> >> > > > >
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > My bad there, af|train::stop-content:selected is
> >> actually
> >> > > > > > > what I use.
> >> > > > > > > > > Even
> >> > > > > > > > > if a better selector would have been
> >> > > > > > > > > af|train::stop:selected::content imho.
> >> > > > > > > > >
> >> > > > > > > > >> -icon-block (as above but refers to the icon cell)
> >> > > > > > > > >>
> >> > > > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> >> > > > > > > our skinning
> >> > > > > > > > >> selectors.
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > >
> >> > > > > > > > > Yes I could, I was using block only because it was in
> >> > > > > Pavitra
> >> > > > > > > > > document
> >> > > > > > > > at
> >> > > > > > > > > first.
> >> > > > > > > > >
> >> > > > > > > > >>
> >> > > > > > > > >> > The icons follow the same rule.
> >> > > > > > > > >> >
> >> > > > > > > > >> > On 8/28/06, Pavitra Subramaniam
> >> > > > > > > <pavitra.subramaniam@oracle.com >
> >> > > > > > > > >> wrote:
> >> > > > > > > > >> >
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> Hello Simon,
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> I have also almost completed implementing the
> >> > > > > TrainRenderer
> >> > > > > > > > >> >> using
> >> > > > > > > > the
> >> > > > > > > > >> >> new
> >> > > > > > > > >> >> skin selectors. It's great to know you are done as
> >> > > > > > > well. If you
> >> > > > > > > > >> plan to
> >> > > > > > > > >> >> check in the train renderer code anytime soon,
> >> can we
> >> > > > > > > agree on
> >> > > > > > > > >> >> the common list of skin selectors, so that I can
> >> > > > > > > reuse them for
> >> > > > > > > > >> >> my work internally at Oracle? I had to make the
> >> > > > > following
> >> > > > > > > > >> >> changes and wanted to give you
> >> > > > > > > > an
> >> > > > > > > > >> >> update.
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> 1. I had to introduce a new state called
> >> > > > > > "read-only". This is
> >> > > > > > > > >> different
> >> > > > > > > > >> >> from "disabled" state, like I explained in a
> >> previous
> >> > > > > email.
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> 2. I removed some redundant skin hooks - I can send
> >> > > > > you the
> >> > > > > > > > >> >> updated
> >> > > > > > > > >> list
> >> > > > > > > > >> >> of selectors I am using. I also couldn't get the
> >> > > > > > "pass-through
> >> > > > > > > > >> states"
> >> > > > > > > > >> >> :visited, :active and :unvisited to work, just as
> >> > > > > > > you. So I have
> >> > > > > > > > >> >> temporarily defined selectors like Jeanne suggested
> >> > > > > (using
> >> > > > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed
> >> :active to
> >> > > > > > > > >> >> :selected).
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> 3. Finally I have simplified the rules for
> >> > > > > > > determining the state
> >> > > > > > > > >> >> of joins.
> >> > > > > > > > >> >> I figured it would be much simpler if we did the
> >> > > > > > > following. The
> >> > > > > > > > >> >> join to the left of a stop, is 'always in the same
> >> > > > > > > state as the
> >> > > > > > > > >> >> stop' (Overflows could also follow the same rules
> as
> >> > > > > > > stops). So
> >> > > > > > > > >> >> for instance for a train
> >> > > > > > > > >> like
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR
> >> ----- V
> >> > > > > > > > >> >> vr uv v d uvr v
> >> > > > > > > > >> >>
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> NOTE: The only exception, is the join to the left
> >> > > > > > of an active
> >> > > > > > > > >> stop is
> >> > > > > > > > >> >> visited. Also, UVR and VR are stops that are in 2
> >> > > > > states
> >> > > > > > > > >> >> simulataneously - 'visited & read-only' and
> >> 'unvisited
> >> > > > > &
> >> > > > > > > > >> >> read-only'. Read-only implies
> >> > > > > > > > >> the
> >> > > > > > > > >> >> stop cannot be reached (and hence not clickable)
> and
> >> > > > > > > is dictated
> >> > > > > > > > >> by the
> >> > > > > > > > >> >> 'readOnly' property on the component
> >> > > > > commandNavigationItem.
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> Please let me know if the above is ok.
> >> > > > > > > > >> >>
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> Thanks
> >> > > > > > > > >> >> - Pavitra
> >> > > > > > > > >> >>
> >> > > > > > > > >> >>
> >> > > > > > > > >> >> > -----Original Message-----
> >> > > > > > > > >> >> > From: Simon Lessard
> >> [mailto:simon.lessard.3@gmail.com
> >> > > > > ]
> >> > > > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> >> > > > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> >> > > > > > > > >> >> > Subject: Re: Train selectors
> >> > > > > > > > >> >> >
> >> > > > > > > > >> >> > Hmmm you mean somthing like af|train::
> >> > > > > stop.p_AFVisited?
> >> > > > > > > > >> >> >
> >> > > > > > > > >> >> > On 8/28/06, Jeanne Waldman
> >> > > > > > > < jeanne.waldman@oracle.com> wrote:
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> > > I was thinking :selected for :active. :selected
> >> > > > > > could be
> >> > > > > > > > >> >> > > used
> >> > > > > > > > for
> >> > > > > > > > >> >> > > other components, too.
> >> > > > > > > > >> >> > > For :visited/:unvisited, I can't think of a
> >> better
> >> > > > > name.
> >> > > > > > > > >> >> > I'm thinking
> >> > > > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> >> > > > > > until we
> >> > > > > > > > >> >> > > have
> >> > > > > > > > the
> >> > > > > > > > >> >> > > pseudo-class support in. These wouldn't in a
> >> > > > > public api
> >> > > > > > > > >> >> > format, though.
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> > > - Jeanne
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> > > >Hello,
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >I thought about the following name changes for
> >> > > > > > > the selectors:
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >:active --> :current or :selected
> >> > > > > > > :visited/:unvisited -->
> >> > > > > > > > >> >> > > >:completed/:uncompleted or
> >> > > > > > > > :seen/:unseen
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >Do you have any other idea/preference?
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >Regards,
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >~ Simon
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >"Simon Lessard" <simon.lessard.3@gmail.com >
> >> > > > > > > > >> >> > > >2006-08-25 22:49
> >> > > > > > > > >> >> > > >Please respond to adffaces-dev
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > > To: "Trinidad - Dev"
> >> > > > > > > > >> >> > <ad...@incubator.apache.org>
> >> > > > > > > > >> >> > > > cc:
> >> > > > > > > > >> >> > > > Subject: Train selectors
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >Yes... again...
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >I made a new renderer and it work quite well,
> >> > > > > > > but I had to
> >> > > > > > > > >> >> > > >use :ora-visited and :ora-active for some
> >> > > > > > > selectors because
> >> > > > > > > > >> >> > > >those
> >> > > > > > > > >> are
> >> > > > > > > > >> >> > > >"pass through"
> >> > > > > > > > >> >> > > >values.
> >> > > > > > > > >> >> > > >Anyone have better name suggestion while we
> >> > > > > > > implement state
> >> > > > > > > > >> >> > > >interception on a per component basis?
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >Regards,
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >~ Simon
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > > >
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> > >
> >> > > > > > > > >> >> >
> >> > > > > > > > >> >> >
> >> > > > > > > > >> >> >
> >> > > > > > > > >> >>
> >> > > > > > > > >> >>
> >> > > > > > > > >> >
> >> > > > > > > > >>
> >> > > > > > > > >>
> >> > > > > > > > >
> >> > > > > > > >
> >> > > > > > > >
> >> > > > > > >
> >> > > > > > >
> >> > > > > > >
> >> > > > > >
> >> > > > > >
> >> > > > > >
> >> > > > >
> >> > > > >
> >> > > >
> >> > >
> >> >
> >>
> >
>
>
Re: TrainRenderer using the new train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
Hi Simon,
I only have time to glance at these emails, but I wanted to comment real
quickly.
Yes, we've discovered that composite selectors don't work well in IE. I'll
take a look at your blog link.
I have been tasked to provide some fix, even if it isn't perfect, for
IE6. We
are hoping most people will upgrade to IE7, since I hear there is a security
fix in IE7. It is fine in IE7, or so I've been told .I don't have IE7
myself.
I was thinking about doing something along the lines as you've suggested.
Seems the skinning tasks are piling up!
Simon Lessard wrote:
> Hello,
>
> I did not have any nightmare in the end, I found a quote instead:
> "Don't be
> too hard with Microsoft Internet Explorer, it is not bad, you can
> download
> Firefox with it".
>
> Anyway, I thought about a work around as well but it's far from easy
> and/or
> convenient. The idea would be to keep the state in the selector rather
> than
> extracting it and add automatic rule-ref from the parent selector.
> e.g. if
> you have af|train::stop:unvisited, instead of being splitted as
> af_train_stop p_AFUnvisited, it would become one selector
> af_train_stop_unvisited but a rule-ref would be added at parsing level to
> af_train_stop selector.
>
>
> Regards,
>
> ~ Simon
>
> On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
>>
>> Ok, I found the reproduction case... It's going to be painful...
>> Microsoft
>> must have worked hard to invent such bug:
>>
>> This code is working
>>
>> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
>> http://www.w3.org/TR/html4/loose.dtd">
>> <html>
>> <head>
>> <title>5.8.3 Class Selectors</title>
>> <meta http-equiv="Content-Style-Type" content="text/css">
>> <style type="text/css">
>> P.liberty.give {color: blue; border: 2px solid red; background:
>> white;}
>> </style>
>> </head>
>> <body>
>> <p class="liberty me">
>> This is a paragraph with a class of 'liberty me', and should NOT
>> be red (border), white (background), and blue (foreground).
>> </p>
>> </body>
>> </html>
>>
>>
>> This code is not:
>>
>> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
>> http://www.w3.org/TR/html4/loose.dtd">
>> <html>
>> <head>
>> <title>5.8.3 Class Selectors</title>
>> <meta http-equiv="Content-Style-Type" content="text/css">
>> <style type="text/css">
>> P.give.liberty {color: blue; border: 2px solid red; background:
>> white;}
>> </style>
>> </head>
>> <body>
>> <p class="liberty me">
>> This is a paragraph with a class of 'liberty me', and should NOT
>> be red (border), white (background), and blue (foreground).
>> </p>
>> </body>
>> </html>
>>
>>
>> The difference? MSIE is actually only evaluating the last class
>> defined in
>> the rule so in the first example, the p element does not match "give"
>> class
>> so the style is not applied (and it should not be). In the second, it
>> matches .liberty and thus the style is applied. Please someone, tell
>> me you
>> got a lifesaver idea to work around that insanity.
>>
>>
>> Goodnight... Another nightmare is coming for me I'm sure,
>>
>>
>>
>> ~ Simon
>>
>>
>> On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
>> >
>> > *mumble*
>> >
>> > http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
>> >
>> > *mumble*
>> >
>> >
>> > On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>> > >
>> > > Is it possible that IE is so dumb that it interprets
>> > >
>> > > .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled
>> rather
>> > > than the specified .af_train_join AND .p_AFDisabled?
>> > >
>> > > My diagnosis makes it looks like it and if it's really the case, it
>> > > might be a problem for many or our skinning by state selectors.
>> Anyone knows
>> > > any work around?
>> > >
>> > >
>> > > Regards,
>> > >
>> > > ~ Simon
>> > >
>> > >
>> > > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
>> > > >
>> > > > Yes it would. I'll start by uploading that damned patch first
>> > > > though... And since I have a rendering issue with IE, this will
>> take one
>> > > > more day... Damned IE... Oh and I support RTL fine already as
>> well...
>> > > > There's just that strange bug if joins under IE...
>> > > >
>> > > > The generated CSS includes the class and this is the only class
>> > > > using that join icon...
>> > > >
>> > > > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited
>> {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
>>
>> > > >
>> > > >
>> > > >
>> > > >
>> > > > The classes on the content cell are
>> > > >
>> > > > <td colspan="3" class="p_AFUnvisited x72 x73">
>> > > > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
>> > > > <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
>> > > > false;" href="#" class="x79">Useless step</a>
>> > > > </td>
>> > > >
>> > > > And the join get rendered for that step in a strange way... ... I
>> > > > hate IE...
>> > > >
>> > > >
>> > > > Regards,
>> > > >
>> > > > ~ Simon
>> > > >
>> > > >
>> > > >
>> > > > On 8/29/06, Pavitra Subramaniam <pa...@oracle.com>
>> > > > wrote:
>> > > > >
>> > > > > It may also be a good idea to update MVariableResolver.java, the
>> > > > > test code that sets up MenuModel #{pageList}, to include the
>> visited,
>> > > > > disabled, unvisited + readOnly states. Right now the train
>> golden file only
>> > > > > tests for selected and unvisited states.
>> > > > >
>> > > > > - Pavitra
>> > > > >
>> > > > >
>> > > > > > -----Original Message-----
>> > > > > > From: Pavitra Subramaniam
>> [mailto:pavitra.subramaniam@oracle.com
>> > > > > ]
>> > > > > > Sent: Tuesday, August 29, 2006 2:46 PM
>> > > > > > To: adffaces-dev@incubator.apache.org
>> > > > > > Subject: RE: TrainRenderer using the new train selectors
>> > > > > >
>> > > > > > Hello Simon, Jeanne,
>> > > > > >
>> > > > > > I have some comments on both your email exhanges. I have
>> > > > > > consolidated all the items below as it was getting hard to
>> read.
>> > > > > >
>> > > > > >
>> > > > > > >>>>
>> > > > > > - af|train::stop combinable with :selected, :disabled,
>> > > > > > :completed (will probably become p_AFVisited) and :unvisited.
>> > > > > > You can append :readOnly at the end of the result. So
>> > > > > > af|train::stop:unvisited:readOnly is valid
>> > > > > > >>>>
>> > > > > >
>> > > > > > - Do you think we need to support an
>> > > > > "af|train::stop:visited:readOnly"
>> > > > > > - I believe Jeanne wanted to have states that don't use camel
>> > > > > > case. So readOnly should be read-only
>> > > > > >
>> > > > > > >>>>
>> > > > > > - af|train::link
>> > > > > > >>>>
>> > > > > > - should this be ::stop-link or ::link good enough?
>> > > > > >
>> > > > > >
>> > > > > > >>>>
>> > > > > > - af|train::join combinable with :disabled, :completed,
>> > > > > > :unvisited and :outer (:outer is used to add joins outside
>> > > > > > the edge of the train. I don't think many will use it, but it
>> > > > > > cost nothing and add more customization
>> > > > > > possibilities)
>> > > > > > >>>>
>> > > > > >
>> > > > > > - :join-outer pseudo element is good enough. Is this used
>> > > > > > outside the parent train icons or between the parent train
>> > > > > > icons and the overflow (or stop)?
>> > > > > > - do we still have the join-overflow? This comes between the
>> > > > > > overflow and regular stops. It may be useful in cases where
>> > > > > > only these joins need not be displayed.
>> > > > > >
>> > > > > >
>> > > > > > >>>>
>> > > > > > - af|train::overflow-start combinable with :disabled and
>> > > > > :readOnly
>> > > > > > - af|train::overflow-end combinable with :disabled,
>> > > > > > :unvisited and :readOnly
>> > > > > > >>>>
>> > > > > >
>> > > > > > - Do you think we should support :unvisited state on
>> > > > > > overflow-start? This may be useful in cases where the train
>> > > > > > is not sequential? I have a scenario where all stops in the
>> > > > > > train are enabled and user can jump around any stop without a
>> > > > > > prescribed order.
>> > > > > >
>> > > > > > >>>>
>> > > > > > I have the following valid suffixes: (I could not use
>> > > > > > ::content for example since double :: is now prevented from
>> > > > > > Adam's change to prevent some strange behavior it seem)
>> > > > > > -content (for example, the following is valid:
>> > > > > > af|train::stop-content and
>> > > > > > af|train::stop:selected-content. This selector refers to the
>> > > > > > link cell
>> > > > > > af|(of the train)
>> > > > > > >>>>
>> > > > > >
>> > > > > > - I agree with Jeanne. Let's call it stop-content:selected. I
>> > > > > > don't think we need stop-content:visited or
>> > > > > > stop-content:unvisited. It's an overkill.
>> > > > > >
>> > > > > > >>>>
>> > > > > > -icon-block (as above but refers to the icon cell)
>> > > > > > >>>>
>> > > > > >
>> > > > > > - Perhaps we should have a convention of using -block suffix
>> > > > > > for style classes that go on <div> and -cell for styles that
>> > > > > > go on td. Is that acceptable?
>> > > > > >
>> > > > > > >>>>
>> > > > > > I use the same join rule as you, that is previous stop
>> > > > > > determine the join state, except for the join after the
>> > > > > > selected stop. The only exception are disabled stops, those
>> > > > > > have disabled joins on both sides.
>> > > > > > >>>>
>> > > > > >
>> > > > > > - the join after the selected stop should ideally have the
>> > > > > > state of the following stop. Isn't it? Do you think it will
>> > > > > > be easier to just show the left join of a disabled stop as
>> > > > > > "disabled". So if an unvisited stop follows the disabled
>> > > > > > stop, the join between them will show up as unvisited. At
>> > > > > > least this is how I have implemented it. I use the same rule
>> > > > > > for displaying joins before overflows.
>> > > > > >
>> > > > > >
>> > > > > > >>>>
>> > > > > > I also go rid of the separator, it's redundant as you can add
>> > > > > > padding to -content selector. I also added two aliases
>> > > > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
>> > > > > > spacing between stop with something like the following:
>> > > > > > .AFTrainContent:alias
>> > > > > > {
>> > > > > > padding-left: 8px;
>> > > > > > padding-right: 8px;
>> > > > > > }
>> > > > > > >>>>
>> > > > > > When you say separator, do you mean the spacer that separates
>> > > > > > stops? Where is the alias above included? Can you send me a
>> > > > > > HTML fragment?
>> > > > > >
>> > > > > > Thanks
>> > > > > > - Pavitra
>> > > > > >
>> > > > > >
>> > > > > > > -----Original Message-----
>> > > > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
>> > > > > > > Sent: Tuesday, August 29, 2006 11:43 AM
>> > > > > > > To: adffaces-dev@incubator.apache.org
>> > > > > > > Subject: Re: TrainRenderer using the new train selectors
>> > > > > > >
>> > > > > > > Ok,
>> > > > > > >
>> > > > > > > Then if those selectors are ok for you as well Pavitra I'll
>> > > > > > make the
>> > > > > > > changes to -outer and and -icon-cell tonight and upload the
>> > > > > > patch as
>> > > > > > > well as a test skin I used.
>> > > > > > >
>> > > > > > >
>> > > > > > > Regards,
>> > > > > > >
>> > > > > > > ~ Simon
>> > > > > > >
>> > > > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com>
>> wrote:
>> > > > > > > >
>> > > > > > > > yep, it all makes sense.
>> > > > > > > > I can see where you'd want to use a ::content. That would
>> > > > > > > make sense.
>> > > > > > > > We don't do this yet in any of our skinning keys, so I am
>> > > > > > fine with
>> > > > > > > > the -content, since we do that all over the place. :)
>> > > > > > > >
>> > > > > > > > - Jeanne
>> > > > > > > >
>> > > > > > > > Simon Lessard wrote:
>> > > > > > > >
>> > > > > > > > > Oups, comments below
>> > > > > > > > >
>> > > > > > > > > On 8/29/06, Jeanne Waldman <jeanne.waldman@oracle.com >
>> > > > > wrote:
>> > > > > > > > >
>> > > > > > > > >>
>> > > > > > > > >> one question below
>> > > > > > > > >>
>> > > > > > > > >> Simon Lessard wrote:
>> > > > > > > > >>
>> > > > > > > > >> > Hello Pavitra,
>> > > > > > > > >> >
>> > > > > > > > >> > I had to do about the same changes on my side. Here's
>> > > > > > > my list of
>> > > > > > > > >> selector
>> > > > > > > > >> > and the rules I used:
>> > > > > > > > >> >
>> > > > > > > > >> > - af|train::stop combinable with :selected,
>> :disabled,
>> > > > > > > :completed
>> > > > > > > > >> (will
>> > > > > > > > >> > probably become p_AFVisited) and :unvisited. You can
>> > > > > append
>> > > > > > > > >> > :readOnly at the end of the result. So
>> > > > > > > > >> > af|train::stop:unvisited:readOnly is valid
>> > > > > > > > >> > - af|train::link
>> > > > > > > > >> > - af|train::join combinable with :disabled,
>> :completed,
>> > > > > > > > >> > :unvisited
>> > > > > > > > and
>> > > > > > > > >> > :outer (:outer is used to add joins outside the
>> edge of
>> > > > > the
>> > > > > > > > >> > train. I don't think many will use it, but it cost
>> > > > > > nothing and
>> > > > > > > > >> > add more
>> > > > > > > > customization
>> > > > > > > > >> > possibilities)
>> > > > > > > > >>
>> > > > > > > > >> Is :outer a state? It sounds to me like it should be
>> > > > > > > > >> af|train::join-outer
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > yes, it could be ::join-outer, was made a state only to
>> > > > > fit the
>> > > > > > > > > other join selectors, but it does make more sense to use
>> > > > > > > -outer for
>> > > > > > > > > that one.
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > Does that make more sense now?
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > Regards,
>> > > > > > > > >
>> > > > > > > > > ~ Simon
>> > > > > > > > >
>> > > > > > > > >> - af|train::overflow-start combinable with :disabled
>> and
>> > > > > > > :readOnly
>> > > > > > > > >> > - af|train::overflow-end combinable with :disabled,
>> > > > > > :unvisited
>> > > > > > > > >> > and :readOnly
>> > > > > > > > >> >
>> > > > > > > > >> > I have the following valid suffixes: (I could not use
>> > > > > > > ::content
>> > > > > > > > >> > for example since double :: is now prevented from
>> > > > > > > Adam's change
>> > > > > > > > >> > to prevent some strange behavior it seem)
>> > > > > > > > >>
>> > > > > > > > >> I don't think two pseudo-elements make sense, does it?
>> > > > > > I suppose
>> > > > > > > > >> you could have a piece of a piece. Adam prevented it
>> > > > > > > because there
>> > > > > > > > >> were bugs in it. I can't recall what the bugs were.
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > I was seeing them more as sub-elements, like
>> > > > > ::stop::content
>> > > > > > > > > (content of the
>> > > > > > > > > stop)
>> > > > > > > > >
>> > > > > > > > >> -content (for example, the following is valid:
>> > > > > > > > >> af|train::stop-content
>> > > > > > > > >> > and
>> > > > > > > > >> > af|train::stop:selected-content. This selector refers
>> > > > > > > to the link
>> > > > > > > > cell
>> > > > > > > > >> fo
>> > > > > > > > >> > the train)
>> > > > > > > > >>
>> > > > > > > > >> What does a :selected-content 'state' mean?
>> > > > > > > > >> How is it different than
>> af|train::stop-content:selected?
>> > > > >
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > My bad there, af|train::stop-content:selected is
>> actually
>> > > > > > > what I use.
>> > > > > > > > > Even
>> > > > > > > > > if a better selector would have been
>> > > > > > > > > af|train::stop:selected::content imho.
>> > > > > > > > >
>> > > > > > > > >> -icon-block (as above but refers to the icon cell)
>> > > > > > > > >>
>> > > > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
>> > > > > > > our skinning
>> > > > > > > > >> selectors.
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > >
>> > > > > > > > > Yes I could, I was using block only because it was in
>> > > > > Pavitra
>> > > > > > > > > document
>> > > > > > > > at
>> > > > > > > > > first.
>> > > > > > > > >
>> > > > > > > > >>
>> > > > > > > > >> > The icons follow the same rule.
>> > > > > > > > >> >
>> > > > > > > > >> > On 8/28/06, Pavitra Subramaniam
>> > > > > > > <pavitra.subramaniam@oracle.com >
>> > > > > > > > >> wrote:
>> > > > > > > > >> >
>> > > > > > > > >> >>
>> > > > > > > > >> >> Hello Simon,
>> > > > > > > > >> >>
>> > > > > > > > >> >> I have also almost completed implementing the
>> > > > > TrainRenderer
>> > > > > > > > >> >> using
>> > > > > > > > the
>> > > > > > > > >> >> new
>> > > > > > > > >> >> skin selectors. It's great to know you are done as
>> > > > > > > well. If you
>> > > > > > > > >> plan to
>> > > > > > > > >> >> check in the train renderer code anytime soon,
>> can we
>> > > > > > > agree on
>> > > > > > > > >> >> the common list of skin selectors, so that I can
>> > > > > > > reuse them for
>> > > > > > > > >> >> my work internally at Oracle? I had to make the
>> > > > > following
>> > > > > > > > >> >> changes and wanted to give you
>> > > > > > > > an
>> > > > > > > > >> >> update.
>> > > > > > > > >> >>
>> > > > > > > > >> >> 1. I had to introduce a new state called
>> > > > > > "read-only". This is
>> > > > > > > > >> different
>> > > > > > > > >> >> from "disabled" state, like I explained in a
>> previous
>> > > > > email.
>> > > > > > > > >> >>
>> > > > > > > > >> >> 2. I removed some redundant skin hooks - I can send
>> > > > > you the
>> > > > > > > > >> >> updated
>> > > > > > > > >> list
>> > > > > > > > >> >> of selectors I am using. I also couldn't get the
>> > > > > > "pass-through
>> > > > > > > > >> states"
>> > > > > > > > >> >> :visited, :active and :unvisited to work, just as
>> > > > > > > you. So I have
>> > > > > > > > >> >> temporarily defined selectors like Jeanne suggested
>> > > > > (using
>> > > > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed
>> :active to
>> > > > > > > > >> >> :selected).
>> > > > > > > > >> >>
>> > > > > > > > >> >> 3. Finally I have simplified the rules for
>> > > > > > > determining the state
>> > > > > > > > >> >> of joins.
>> > > > > > > > >> >> I figured it would be much simpler if we did the
>> > > > > > > following. The
>> > > > > > > > >> >> join to the left of a stop, is 'always in the same
>> > > > > > > state as the
>> > > > > > > > >> >> stop' (Overflows could also follow the same rules as
>> > > > > > > stops). So
>> > > > > > > > >> >> for instance for a train
>> > > > > > > > >> like
>> > > > > > > > >> >>
>> > > > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR
>> ----- V
>> > > > > > > > >> >> vr uv v d uvr v
>> > > > > > > > >> >>
>> > > > > > > > >> >>
>> > > > > > > > >> >> NOTE: The only exception, is the join to the left
>> > > > > > of an active
>> > > > > > > > >> stop is
>> > > > > > > > >> >> visited. Also, UVR and VR are stops that are in 2
>> > > > > states
>> > > > > > > > >> >> simulataneously - 'visited & read-only' and
>> 'unvisited
>> > > > > &
>> > > > > > > > >> >> read-only'. Read-only implies
>> > > > > > > > >> the
>> > > > > > > > >> >> stop cannot be reached (and hence not clickable) and
>> > > > > > > is dictated
>> > > > > > > > >> by the
>> > > > > > > > >> >> 'readOnly' property on the component
>> > > > > commandNavigationItem.
>> > > > > > > > >> >>
>> > > > > > > > >> >> Please let me know if the above is ok.
>> > > > > > > > >> >>
>> > > > > > > > >> >>
>> > > > > > > > >> >> Thanks
>> > > > > > > > >> >> - Pavitra
>> > > > > > > > >> >>
>> > > > > > > > >> >>
>> > > > > > > > >> >> > -----Original Message-----
>> > > > > > > > >> >> > From: Simon Lessard
>> [mailto:simon.lessard.3@gmail.com
>> > > > > ]
>> > > > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
>> > > > > > > > >> >> > To: adffaces-dev@incubator.apache.org
>> > > > > > > > >> >> > Subject: Re: Train selectors
>> > > > > > > > >> >> >
>> > > > > > > > >> >> > Hmmm you mean somthing like af|train::
>> > > > > stop.p_AFVisited?
>> > > > > > > > >> >> >
>> > > > > > > > >> >> > On 8/28/06, Jeanne Waldman
>> > > > > > > < jeanne.waldman@oracle.com> wrote:
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> > > I was thinking :selected for :active. :selected
>> > > > > > could be
>> > > > > > > > >> >> > > used
>> > > > > > > > for
>> > > > > > > > >> >> > > other components, too.
>> > > > > > > > >> >> > > For :visited/:unvisited, I can't think of a
>> better
>> > > > > name.
>> > > > > > > > >> >> > I'm thinking
>> > > > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
>> > > > > > until we
>> > > > > > > > >> >> > > have
>> > > > > > > > the
>> > > > > > > > >> >> > > pseudo-class support in. These wouldn't in a
>> > > > > public api
>> > > > > > > > >> >> > format, though.
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> > > - Jeanne
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> > > >Hello,
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >I thought about the following name changes for
>> > > > > > > the selectors:
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >:active --> :current or :selected
>> > > > > > > :visited/:unvisited -->
>> > > > > > > > >> >> > > >:completed/:uncompleted or
>> > > > > > > > :seen/:unseen
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >Do you have any other idea/preference?
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >Regards,
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >~ Simon
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >"Simon Lessard" <simon.lessard.3@gmail.com >
>> > > > > > > > >> >> > > >2006-08-25 22:49
>> > > > > > > > >> >> > > >Please respond to adffaces-dev
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > > To: "Trinidad - Dev"
>> > > > > > > > >> >> > <ad...@incubator.apache.org>
>> > > > > > > > >> >> > > > cc:
>> > > > > > > > >> >> > > > Subject: Train selectors
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >Yes... again...
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >I made a new renderer and it work quite well,
>> > > > > > > but I had to
>> > > > > > > > >> >> > > >use :ora-visited and :ora-active for some
>> > > > > > > selectors because
>> > > > > > > > >> >> > > >those
>> > > > > > > > >> are
>> > > > > > > > >> >> > > >"pass through"
>> > > > > > > > >> >> > > >values.
>> > > > > > > > >> >> > > >Anyone have better name suggestion while we
>> > > > > > > implement state
>> > > > > > > > >> >> > > >interception on a per component basis?
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >Regards,
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >~ Simon
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > > >
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> > >
>> > > > > > > > >> >> >
>> > > > > > > > >> >> >
>> > > > > > > > >> >> >
>> > > > > > > > >> >>
>> > > > > > > > >> >>
>> > > > > > > > >> >
>> > > > > > > > >>
>> > > > > > > > >>
>> > > > > > > > >
>> > > > > > > >
>> > > > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > > >
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hello,
I did not have any nightmare in the end, I found a quote instead: "Don't be
too hard with Microsoft Internet Explorer, it is not bad, you can download
Firefox with it".
Anyway, I thought about a work around as well but it's far from easy and/or
convenient. The idea would be to keep the state in the selector rather than
extracting it and add automatic rule-ref from the parent selector. e.g. if
you have af|train::stop:unvisited, instead of being splitted as
af_train_stop p_AFUnvisited, it would become one selector
af_train_stop_unvisited but a rule-ref would be added at parsing level to
af_train_stop selector.
Regards,
~ Simon
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> Ok, I found the reproduction case... It's going to be painful... Microsoft
> must have worked hard to invent such bug:
>
> This code is working
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> http://www.w3.org/TR/html4/loose.dtd">
> <html>
> <head>
> <title>5.8.3 Class Selectors</title>
> <meta http-equiv="Content-Style-Type" content="text/css">
> <style type="text/css">
> P.liberty.give {color: blue; border: 2px solid red; background:
> white;}
> </style>
> </head>
> <body>
> <p class="liberty me">
> This is a paragraph with a class of 'liberty me', and should NOT
> be red (border), white (background), and blue (foreground).
> </p>
> </body>
> </html>
>
>
> This code is not:
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
> http://www.w3.org/TR/html4/loose.dtd">
> <html>
> <head>
> <title>5.8.3 Class Selectors</title>
> <meta http-equiv="Content-Style-Type" content="text/css">
> <style type="text/css">
> P.give.liberty {color: blue; border: 2px solid red; background:
> white;}
> </style>
> </head>
> <body>
> <p class="liberty me">
> This is a paragraph with a class of 'liberty me', and should NOT
> be red (border), white (background), and blue (foreground).
> </p>
> </body>
> </html>
>
>
> The difference? MSIE is actually only evaluating the last class defined in
> the rule so in the first example, the p element does not match "give" class
> so the style is not applied (and it should not be). In the second, it
> matches .liberty and thus the style is applied. Please someone, tell me you
> got a lifesaver idea to work around that insanity.
>
>
> Goodnight... Another nightmare is coming for me I'm sure,
>
>
>
> ~ Simon
>
>
> On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> >
> > *mumble*
> >
> > http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
> >
> > *mumble*
> >
> >
> > On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> > >
> > > Is it possible that IE is so dumb that it interprets
> > >
> > > .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled rather
> > > than the specified .af_train_join AND .p_AFDisabled?
> > >
> > > My diagnosis makes it looks like it and if it's really the case, it
> > > might be a problem for many or our skinning by state selectors. Anyone knows
> > > any work around?
> > >
> > >
> > > Regards,
> > >
> > > ~ Simon
> > >
> > >
> > > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> > > >
> > > > Yes it would. I'll start by uploading that damned patch first
> > > > though... And since I have a rendering issue with IE, this will take one
> > > > more day... Damned IE... Oh and I support RTL fine already as well...
> > > > There's just that strange bug if joins under IE...
> > > >
> > > > The generated CSS includes the class and this is the only class
> > > > using that join icon...
> > > >
> > > > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
> > > >
> > > >
> > > >
> > > >
> > > > The classes on the content cell are
> > > >
> > > > <td colspan="3" class="p_AFUnvisited x72 x73">
> > > > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> > > > <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
> > > > false;" href="#" class="x79">Useless step</a>
> > > > </td>
> > > >
> > > > And the join get rendered for that step in a strange way... ... I
> > > > hate IE...
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > >
> > > >
> > > > On 8/29/06, Pavitra Subramaniam <pa...@oracle.com>
> > > > wrote:
> > > > >
> > > > > It may also be a good idea to update MVariableResolver.java, the
> > > > > test code that sets up MenuModel #{pageList}, to include the visited,
> > > > > disabled, unvisited + readOnly states. Right now the train golden file only
> > > > > tests for selected and unvisited states.
> > > > >
> > > > > - Pavitra
> > > > >
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com
> > > > > ]
> > > > > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > > > > To: adffaces-dev@incubator.apache.org
> > > > > > Subject: RE: TrainRenderer using the new train selectors
> > > > > >
> > > > > > Hello Simon, Jeanne,
> > > > > >
> > > > > > I have some comments on both your email exhanges. I have
> > > > > > consolidated all the items below as it was getting hard to read.
> > > > > >
> > > > > >
> > > > > > >>>>
> > > > > > - af|train::stop combinable with :selected, :disabled,
> > > > > > :completed (will probably become p_AFVisited) and :unvisited.
> > > > > > You can append :readOnly at the end of the result. So
> > > > > > af|train::stop:unvisited:readOnly is valid
> > > > > > >>>>
> > > > > >
> > > > > > - Do you think we need to support an
> > > > > "af|train::stop:visited:readOnly"
> > > > > > - I believe Jeanne wanted to have states that don't use camel
> > > > > > case. So readOnly should be read-only
> > > > > >
> > > > > > >>>>
> > > > > > - af|train::link
> > > > > > >>>>
> > > > > > - should this be ::stop-link or ::link good enough?
> > > > > >
> > > > > >
> > > > > > >>>>
> > > > > > - af|train::join combinable with :disabled, :completed,
> > > > > > :unvisited and :outer (:outer is used to add joins outside
> > > > > > the edge of the train. I don't think many will use it, but it
> > > > > > cost nothing and add more customization
> > > > > > possibilities)
> > > > > > >>>>
> > > > > >
> > > > > > - :join-outer pseudo element is good enough. Is this used
> > > > > > outside the parent train icons or between the parent train
> > > > > > icons and the overflow (or stop)?
> > > > > > - do we still have the join-overflow? This comes between the
> > > > > > overflow and regular stops. It may be useful in cases where
> > > > > > only these joins need not be displayed.
> > > > > >
> > > > > >
> > > > > > >>>>
> > > > > > - af|train::overflow-start combinable with :disabled and
> > > > > :readOnly
> > > > > > - af|train::overflow-end combinable with :disabled,
> > > > > > :unvisited and :readOnly
> > > > > > >>>>
> > > > > >
> > > > > > - Do you think we should support :unvisited state on
> > > > > > overflow-start? This may be useful in cases where the train
> > > > > > is not sequential? I have a scenario where all stops in the
> > > > > > train are enabled and user can jump around any stop without a
> > > > > > prescribed order.
> > > > > >
> > > > > > >>>>
> > > > > > I have the following valid suffixes: (I could not use
> > > > > > ::content for example since double :: is now prevented from
> > > > > > Adam's change to prevent some strange behavior it seem)
> > > > > > -content (for example, the following is valid:
> > > > > > af|train::stop-content and
> > > > > > af|train::stop:selected-content. This selector refers to the
> > > > > > link cell
> > > > > > af|(of the train)
> > > > > > >>>>
> > > > > >
> > > > > > - I agree with Jeanne. Let's call it stop-content:selected. I
> > > > > > don't think we need stop-content:visited or
> > > > > > stop-content:unvisited. It's an overkill.
> > > > > >
> > > > > > >>>>
> > > > > > -icon-block (as above but refers to the icon cell)
> > > > > > >>>>
> > > > > >
> > > > > > - Perhaps we should have a convention of using -block suffix
> > > > > > for style classes that go on <div> and -cell for styles that
> > > > > > go on td. Is that acceptable?
> > > > > >
> > > > > > >>>>
> > > > > > I use the same join rule as you, that is previous stop
> > > > > > determine the join state, except for the join after the
> > > > > > selected stop. The only exception are disabled stops, those
> > > > > > have disabled joins on both sides.
> > > > > > >>>>
> > > > > >
> > > > > > - the join after the selected stop should ideally have the
> > > > > > state of the following stop. Isn't it? Do you think it will
> > > > > > be easier to just show the left join of a disabled stop as
> > > > > > "disabled". So if an unvisited stop follows the disabled
> > > > > > stop, the join between them will show up as unvisited. At
> > > > > > least this is how I have implemented it. I use the same rule
> > > > > > for displaying joins before overflows.
> > > > > >
> > > > > >
> > > > > > >>>>
> > > > > > I also go rid of the separator, it's redundant as you can add
> > > > > > padding to -content selector. I also added two aliases
> > > > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > > > > > spacing between stop with something like the following:
> > > > > > .AFTrainContent:alias
> > > > > > {
> > > > > > padding-left: 8px;
> > > > > > padding-right: 8px;
> > > > > > }
> > > > > > >>>>
> > > > > > When you say separator, do you mean the spacer that separates
> > > > > > stops? Where is the alias above included? Can you send me a
> > > > > > HTML fragment?
> > > > > >
> > > > > > Thanks
> > > > > > - Pavitra
> > > > > >
> > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > > > > To: adffaces-dev@incubator.apache.org
> > > > > > > Subject: Re: TrainRenderer using the new train selectors
> > > > > > >
> > > > > > > Ok,
> > > > > > >
> > > > > > > Then if those selectors are ok for you as well Pavitra I'll
> > > > > > make the
> > > > > > > changes to -outer and and -icon-cell tonight and upload the
> > > > > > patch as
> > > > > > > well as a test skin I used.
> > > > > > >
> > > > > > >
> > > > > > > Regards,
> > > > > > >
> > > > > > > ~ Simon
> > > > > > >
> > > > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > > > > > > >
> > > > > > > > yep, it all makes sense.
> > > > > > > > I can see where you'd want to use a ::content. That would
> > > > > > > make sense.
> > > > > > > > We don't do this yet in any of our skinning keys, so I am
> > > > > > fine with
> > > > > > > > the -content, since we do that all over the place. :)
> > > > > > > >
> > > > > > > > - Jeanne
> > > > > > > >
> > > > > > > > Simon Lessard wrote:
> > > > > > > >
> > > > > > > > > Oups, comments below
> > > > > > > > >
> > > > > > > > > On 8/29/06, Jeanne Waldman <jeanne.waldman@oracle.com >
> > > > > wrote:
> > > > > > > > >
> > > > > > > > >>
> > > > > > > > >> one question below
> > > > > > > > >>
> > > > > > > > >> Simon Lessard wrote:
> > > > > > > > >>
> > > > > > > > >> > Hello Pavitra,
> > > > > > > > >> >
> > > > > > > > >> > I had to do about the same changes on my side. Here's
> > > > > > > my list of
> > > > > > > > >> selector
> > > > > > > > >> > and the rules I used:
> > > > > > > > >> >
> > > > > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > > > > :completed
> > > > > > > > >> (will
> > > > > > > > >> > probably become p_AFVisited) and :unvisited. You can
> > > > > append
> > > > > > > > >> > :readOnly at the end of the result. So
> > > > > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > > > > >> > - af|train::link
> > > > > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > > > > >> > :unvisited
> > > > > > > > and
> > > > > > > > >> > :outer (:outer is used to add joins outside the edge of
> > > > > the
> > > > > > > > >> > train. I don't think many will use it, but it cost
> > > > > > nothing and
> > > > > > > > >> > add more
> > > > > > > > customization
> > > > > > > > >> > possibilities)
> > > > > > > > >>
> > > > > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > > > > >> af|train::join-outer
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > yes, it could be ::join-outer, was made a state only to
> > > > > fit the
> > > > > > > > > other join selectors, but it does make more sense to use
> > > > > > > -outer for
> > > > > > > > > that one.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Does that make more sense now?
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Regards,
> > > > > > > > >
> > > > > > > > > ~ Simon
> > > > > > > > >
> > > > > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > > > > :readOnly
> > > > > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > > > :unvisited
> > > > > > > > >> > and :readOnly
> > > > > > > > >> >
> > > > > > > > >> > I have the following valid suffixes: (I could not use
> > > > > > > ::content
> > > > > > > > >> > for example since double :: is now prevented from
> > > > > > > Adam's change
> > > > > > > > >> > to prevent some strange behavior it seem)
> > > > > > > > >>
> > > > > > > > >> I don't think two pseudo-elements make sense, does it?
> > > > > > I suppose
> > > > > > > > >> you could have a piece of a piece. Adam prevented it
> > > > > > > because there
> > > > > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > I was seeing them more as sub-elements, like
> > > > > ::stop::content
> > > > > > > > > (content of the
> > > > > > > > > stop)
> > > > > > > > >
> > > > > > > > >> -content (for example, the following is valid:
> > > > > > > > >> af|train::stop-content
> > > > > > > > >> > and
> > > > > > > > >> > af|train::stop:selected-content. This selector refers
> > > > > > > to the link
> > > > > > > > cell
> > > > > > > > >> fo
> > > > > > > > >> > the train)
> > > > > > > > >>
> > > > > > > > >> What does a :selected-content 'state' mean?
> > > > > > > > >> How is it different than af|train::stop-content:selected?
> > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > My bad there, af|train::stop-content:selected is actually
> > > > > > > what I use.
> > > > > > > > > Even
> > > > > > > > > if a better selector would have been
> > > > > > > > > af|train::stop:selected::content imho.
> > > > > > > > >
> > > > > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > > > > >>
> > > > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > > > > our skinning
> > > > > > > > >> selectors.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Yes I could, I was using block only because it was in
> > > > > Pavitra
> > > > > > > > > document
> > > > > > > > at
> > > > > > > > > first.
> > > > > > > > >
> > > > > > > > >>
> > > > > > > > >> > The icons follow the same rule.
> > > > > > > > >> >
> > > > > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > > > > <pavitra.subramaniam@oracle.com >
> > > > > > > > >> wrote:
> > > > > > > > >> >
> > > > > > > > >> >>
> > > > > > > > >> >> Hello Simon,
> > > > > > > > >> >>
> > > > > > > > >> >> I have also almost completed implementing the
> > > > > TrainRenderer
> > > > > > > > >> >> using
> > > > > > > > the
> > > > > > > > >> >> new
> > > > > > > > >> >> skin selectors. It's great to know you are done as
> > > > > > > well. If you
> > > > > > > > >> plan to
> > > > > > > > >> >> check in the train renderer code anytime soon, can we
> > > > > > > agree on
> > > > > > > > >> >> the common list of skin selectors, so that I can
> > > > > > > reuse them for
> > > > > > > > >> >> my work internally at Oracle? I had to make the
> > > > > following
> > > > > > > > >> >> changes and wanted to give you
> > > > > > > > an
> > > > > > > > >> >> update.
> > > > > > > > >> >>
> > > > > > > > >> >> 1. I had to introduce a new state called
> > > > > > "read-only". This is
> > > > > > > > >> different
> > > > > > > > >> >> from "disabled" state, like I explained in a previous
> > > > > email.
> > > > > > > > >> >>
> > > > > > > > >> >> 2. I removed some redundant skin hooks - I can send
> > > > > you the
> > > > > > > > >> >> updated
> > > > > > > > >> list
> > > > > > > > >> >> of selectors I am using. I also couldn't get the
> > > > > > "pass-through
> > > > > > > > >> states"
> > > > > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > > > > you. So I have
> > > > > > > > >> >> temporarily defined selectors like Jeanne suggested
> > > > > (using
> > > > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > > > > >> >> :selected).
> > > > > > > > >> >>
> > > > > > > > >> >> 3. Finally I have simplified the rules for
> > > > > > > determining the state
> > > > > > > > >> >> of joins.
> > > > > > > > >> >> I figured it would be much simpler if we did the
> > > > > > > following. The
> > > > > > > > >> >> join to the left of a stop, is 'always in the same
> > > > > > > state as the
> > > > > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > > > > stops). So
> > > > > > > > >> >> for instance for a train
> > > > > > > > >> like
> > > > > > > > >> >>
> > > > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > > > > >> >> vr uv v d uvr v
> > > > > > > > >> >>
> > > > > > > > >> >>
> > > > > > > > >> >> NOTE: The only exception, is the join to the left
> > > > > > of an active
> > > > > > > > >> stop is
> > > > > > > > >> >> visited. Also, UVR and VR are stops that are in 2
> > > > > states
> > > > > > > > >> >> simulataneously - 'visited & read-only' and 'unvisited
> > > > > &
> > > > > > > > >> >> read-only'. Read-only implies
> > > > > > > > >> the
> > > > > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > > > > is dictated
> > > > > > > > >> by the
> > > > > > > > >> >> 'readOnly' property on the component
> > > > > commandNavigationItem.
> > > > > > > > >> >>
> > > > > > > > >> >> Please let me know if the above is ok.
> > > > > > > > >> >>
> > > > > > > > >> >>
> > > > > > > > >> >> Thanks
> > > > > > > > >> >> - Pavitra
> > > > > > > > >> >>
> > > > > > > > >> >>
> > > > > > > > >> >> > -----Original Message-----
> > > > > > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com
> > > > > ]
> > > > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > > > > >> >> > Subject: Re: Train selectors
> > > > > > > > >> >> >
> > > > > > > > >> >> > Hmmm you mean somthing like af|train::
> > > > > stop.p_AFVisited?
> > > > > > > > >> >> >
> > > > > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > > > > < jeanne.waldman@oracle.com> wrote:
> > > > > > > > >> >> > >
> > > > > > > > >> >> > > I was thinking :selected for :active. :selected
> > > > > > could be
> > > > > > > > >> >> > > used
> > > > > > > > for
> > > > > > > > >> >> > > other components, too.
> > > > > > > > >> >> > > For :visited/:unvisited, I can't think of a better
> > > > > name.
> > > > > > > > >> >> > I'm thinking
> > > > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > > > > > until we
> > > > > > > > >> >> > > have
> > > > > > > > the
> > > > > > > > >> >> > > pseudo-class support in. These wouldn't in a
> > > > > public api
> > > > > > > > >> >> > format, though.
> > > > > > > > >> >> > >
> > > > > > > > >> >> > > - Jeanne
> > > > > > > > >> >> > >
> > > > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > > > > >> >> > >
> > > > > > > > >> >> > > >Hello,
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >I thought about the following name changes for
> > > > > > > the selectors:
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >:active --> :current or :selected
> > > > > > > :visited/:unvisited -->
> > > > > > > > >> >> > > >:completed/:uncompleted or
> > > > > > > > :seen/:unseen
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >Do you have any other idea/preference?
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >Regards,
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >~ Simon
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >"Simon Lessard" <simon.lessard.3@gmail.com >
> > > > > > > > >> >> > > >2006-08-25 22:49
> > > > > > > > >> >> > > >Please respond to adffaces-dev
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > > > > >> >> > <ad...@incubator.apache.org>
> > > > > > > > >> >> > > > cc:
> > > > > > > > >> >> > > > Subject: Train selectors
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >Yes... again...
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > > > > but I had to
> > > > > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > > > > selectors because
> > > > > > > > >> >> > > >those
> > > > > > > > >> are
> > > > > > > > >> >> > > >"pass through"
> > > > > > > > >> >> > > >values.
> > > > > > > > >> >> > > >Anyone have better name suggestion while we
> > > > > > > implement state
> > > > > > > > >> >> > > >interception on a per component basis?
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >Regards,
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >~ Simon
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > > >
> > > > > > > > >> >> > >
> > > > > > > > >> >> > >
> > > > > > > > >> >> >
> > > > > > > > >> >> >
> > > > > > > > >> >> >
> > > > > > > > >> >>
> > > > > > > > >> >>
> > > > > > > > >> >
> > > > > > > > >>
> > > > > > > > >>
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > >
> >
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Ok, I found the reproduction case... It's going to be painful... Microsoft
must have worked hard to invent such bug:
This code is working
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>5.8.3 Class Selectors</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css">
P.liberty.give {color: blue; border: 2px solid red; background:
white;}
</style>
</head>
<body>
<p class="liberty me">
This is a paragraph with a class of 'liberty me', and should NOT be
red (border), white (background), and blue (foreground).
</p>
</body>
</html>
This code is not:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>5.8.3 Class Selectors</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css">
P.give.liberty {color: blue; border: 2px solid red; background:
white;}
</style>
</head>
<body>
<p class="liberty me">
This is a paragraph with a class of 'liberty me', and should NOT be
red (border), white (background), and blue (foreground).
</p>
</body>
</html>
The difference? MSIE is actually only evaluating the last class defined in
the rule so in the first example, the p element does not match "give" class
so the style is not applied (and it should not be). In the second, it
matches .liberty and thus the style is applied. Please someone, tell me you
got a lifesaver idea to work around that insanity.
Goodnight... Another nightmare is coming for me I'm sure,
~ Simon
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> *mumble*
>
> http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
>
> *mumble*
>
>
> On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >
> > Is it possible that IE is so dumb that it interprets
> >
> > .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled rather
> > than the specified .af_train_join AND .p_AFDisabled?
> >
> > My diagnosis makes it looks like it and if it's really the case, it
> > might be a problem for many or our skinning by state selectors. Anyone knows
> > any work around?
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> >
> > On 8/29/06, Simon Lessard < simon.lessard.3@gmail.com> wrote:
> > >
> > > Yes it would. I'll start by uploading that damned patch first
> > > though... And since I have a rendering issue with IE, this will take one
> > > more day... Damned IE... Oh and I support RTL fine already as well...
> > > There's just that strange bug if joins under IE...
> > >
> > > The generated CSS includes the class and this is the only class using
> > > that join icon...
> > >
> > > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
> > >
> > >
> > >
> > > The classes on the content cell are
> > >
> > > <td colspan="3" class="p_AFUnvisited x72 x73">
> > > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> > > <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
> > > false;" href="#" class="x79">Useless step</a>
> > > </td>
> > >
> > > And the join get rendered for that step in a strange way... ... I hate
> > > IE...
> > >
> > >
> > > Regards,
> > >
> > > ~ Simon
> > >
> > >
> > >
> > > On 8/29/06, Pavitra Subramaniam <pa...@oracle.com>
> > > wrote:
> > > >
> > > > It may also be a good idea to update MVariableResolver.java, the
> > > > test code that sets up MenuModel #{pageList}, to include the visited,
> > > > disabled, unvisited + readOnly states. Right now the train golden file only
> > > > tests for selected and unvisited states.
> > > >
> > > > - Pavitra
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Pavitra Subramaniam [mailto: pavitra.subramaniam@oracle.com]
> > > > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > > > To: adffaces-dev@incubator.apache.org
> > > > > Subject: RE: TrainRenderer using the new train selectors
> > > > >
> > > > > Hello Simon, Jeanne,
> > > > >
> > > > > I have some comments on both your email exhanges. I have
> > > > > consolidated all the items below as it was getting hard to read.
> > > > >
> > > > >
> > > > > >>>>
> > > > > - af|train::stop combinable with :selected, :disabled,
> > > > > :completed (will probably become p_AFVisited) and :unvisited.
> > > > > You can append :readOnly at the end of the result. So
> > > > > af|train::stop:unvisited:readOnly is valid
> > > > > >>>>
> > > > >
> > > > > - Do you think we need to support an
> > > > "af|train::stop:visited:readOnly"
> > > > > - I believe Jeanne wanted to have states that don't use camel
> > > > > case. So readOnly should be read-only
> > > > >
> > > > > >>>>
> > > > > - af|train::link
> > > > > >>>>
> > > > > - should this be ::stop-link or ::link good enough?
> > > > >
> > > > >
> > > > > >>>>
> > > > > - af|train::join combinable with :disabled, :completed,
> > > > > :unvisited and :outer (:outer is used to add joins outside
> > > > > the edge of the train. I don't think many will use it, but it
> > > > > cost nothing and add more customization
> > > > > possibilities)
> > > > > >>>>
> > > > >
> > > > > - :join-outer pseudo element is good enough. Is this used
> > > > > outside the parent train icons or between the parent train
> > > > > icons and the overflow (or stop)?
> > > > > - do we still have the join-overflow? This comes between the
> > > > > overflow and regular stops. It may be useful in cases where
> > > > > only these joins need not be displayed.
> > > > >
> > > > >
> > > > > >>>>
> > > > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > > > - af|train::overflow-end combinable with :disabled,
> > > > > :unvisited and :readOnly
> > > > > >>>>
> > > > >
> > > > > - Do you think we should support :unvisited state on
> > > > > overflow-start? This may be useful in cases where the train
> > > > > is not sequential? I have a scenario where all stops in the
> > > > > train are enabled and user can jump around any stop without a
> > > > > prescribed order.
> > > > >
> > > > > >>>>
> > > > > I have the following valid suffixes: (I could not use
> > > > > ::content for example since double :: is now prevented from
> > > > > Adam's change to prevent some strange behavior it seem)
> > > > > -content (for example, the following is valid:
> > > > > af|train::stop-content and
> > > > > af|train::stop:selected-content. This selector refers to the
> > > > > link cell
> > > > > af|(of the train)
> > > > > >>>>
> > > > >
> > > > > - I agree with Jeanne. Let's call it stop-content:selected. I
> > > > > don't think we need stop-content:visited or
> > > > > stop-content:unvisited. It's an overkill.
> > > > >
> > > > > >>>>
> > > > > -icon-block (as above but refers to the icon cell)
> > > > > >>>>
> > > > >
> > > > > - Perhaps we should have a convention of using -block suffix
> > > > > for style classes that go on <div> and -cell for styles that
> > > > > go on td. Is that acceptable?
> > > > >
> > > > > >>>>
> > > > > I use the same join rule as you, that is previous stop
> > > > > determine the join state, except for the join after the
> > > > > selected stop. The only exception are disabled stops, those
> > > > > have disabled joins on both sides.
> > > > > >>>>
> > > > >
> > > > > - the join after the selected stop should ideally have the
> > > > > state of the following stop. Isn't it? Do you think it will
> > > > > be easier to just show the left join of a disabled stop as
> > > > > "disabled". So if an unvisited stop follows the disabled
> > > > > stop, the join between them will show up as unvisited. At
> > > > > least this is how I have implemented it. I use the same rule
> > > > > for displaying joins before overflows.
> > > > >
> > > > >
> > > > > >>>>
> > > > > I also go rid of the separator, it's redundant as you can add
> > > > > padding to -content selector. I also added two aliases
> > > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > > > > spacing between stop with something like the following:
> > > > > .AFTrainContent:alias
> > > > > {
> > > > > padding-left: 8px;
> > > > > padding-right: 8px;
> > > > > }
> > > > > >>>>
> > > > > When you say separator, do you mean the spacer that separates
> > > > > stops? Where is the alias above included? Can you send me a
> > > > > HTML fragment?
> > > > >
> > > > > Thanks
> > > > > - Pavitra
> > > > >
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > > > To: adffaces-dev@incubator.apache.org
> > > > > > Subject: Re: TrainRenderer using the new train selectors
> > > > > >
> > > > > > Ok,
> > > > > >
> > > > > > Then if those selectors are ok for you as well Pavitra I'll
> > > > > make the
> > > > > > changes to -outer and and -icon-cell tonight and upload the
> > > > > patch as
> > > > > > well as a test skin I used.
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > ~ Simon
> > > > > >
> > > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > > > > > >
> > > > > > > yep, it all makes sense.
> > > > > > > I can see where you'd want to use a ::content. That would
> > > > > > make sense.
> > > > > > > We don't do this yet in any of our skinning keys, so I am
> > > > > fine with
> > > > > > > the -content, since we do that all over the place. :)
> > > > > > >
> > > > > > > - Jeanne
> > > > > > >
> > > > > > > Simon Lessard wrote:
> > > > > > >
> > > > > > > > Oups, comments below
> > > > > > > >
> > > > > > > > On 8/29/06, Jeanne Waldman <jeanne.waldman@oracle.com >
> > > > wrote:
> > > > > > > >
> > > > > > > >>
> > > > > > > >> one question below
> > > > > > > >>
> > > > > > > >> Simon Lessard wrote:
> > > > > > > >>
> > > > > > > >> > Hello Pavitra,
> > > > > > > >> >
> > > > > > > >> > I had to do about the same changes on my side. Here's
> > > > > > my list of
> > > > > > > >> selector
> > > > > > > >> > and the rules I used:
> > > > > > > >> >
> > > > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > > > :completed
> > > > > > > >> (will
> > > > > > > >> > probably become p_AFVisited) and :unvisited. You can
> > > > append
> > > > > > > >> > :readOnly at the end of the result. So
> > > > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > > > >> > - af|train::link
> > > > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > > > >> > :unvisited
> > > > > > > and
> > > > > > > >> > :outer (:outer is used to add joins outside the edge of
> > > > the
> > > > > > > >> > train. I don't think many will use it, but it cost
> > > > > nothing and
> > > > > > > >> > add more
> > > > > > > customization
> > > > > > > >> > possibilities)
> > > > > > > >>
> > > > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > > > >> af|train::join-outer
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > yes, it could be ::join-outer, was made a state only to fit
> > > > the
> > > > > > > > other join selectors, but it does make more sense to use
> > > > > > -outer for
> > > > > > > > that one.
> > > > > > > >
> > > > > > > >
> > > > > > > > Does that make more sense now?
> > > > > > > >
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > >
> > > > > > > > ~ Simon
> > > > > > > >
> > > > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > > > :readOnly
> > > > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > > :unvisited
> > > > > > > >> > and :readOnly
> > > > > > > >> >
> > > > > > > >> > I have the following valid suffixes: (I could not use
> > > > > > ::content
> > > > > > > >> > for example since double :: is now prevented from
> > > > > > Adam's change
> > > > > > > >> > to prevent some strange behavior it seem)
> > > > > > > >>
> > > > > > > >> I don't think two pseudo-elements make sense, does it?
> > > > > I suppose
> > > > > > > >> you could have a piece of a piece. Adam prevented it
> > > > > > because there
> > > > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > > > > (content of the
> > > > > > > > stop)
> > > > > > > >
> > > > > > > >> -content (for example, the following is valid:
> > > > > > > >> af|train::stop-content
> > > > > > > >> > and
> > > > > > > >> > af|train::stop:selected-content. This selector refers
> > > > > > to the link
> > > > > > > cell
> > > > > > > >> fo
> > > > > > > >> > the train)
> > > > > > > >>
> > > > > > > >> What does a :selected-content 'state' mean?
> > > > > > > >> How is it different than af|train::stop-content:selected?
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > My bad there, af|train::stop-content:selected is actually
> > > > > > what I use.
> > > > > > > > Even
> > > > > > > > if a better selector would have been
> > > > > > > > af|train::stop:selected::content imho.
> > > > > > > >
> > > > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > > > >>
> > > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > > > our skinning
> > > > > > > >> selectors.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Yes I could, I was using block only because it was in
> > > > Pavitra
> > > > > > > > document
> > > > > > > at
> > > > > > > > first.
> > > > > > > >
> > > > > > > >>
> > > > > > > >> > The icons follow the same rule.
> > > > > > > >> >
> > > > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > > > <pavitra.subramaniam@oracle.com >
> > > > > > > >> wrote:
> > > > > > > >> >
> > > > > > > >> >>
> > > > > > > >> >> Hello Simon,
> > > > > > > >> >>
> > > > > > > >> >> I have also almost completed implementing the
> > > > TrainRenderer
> > > > > > > >> >> using
> > > > > > > the
> > > > > > > >> >> new
> > > > > > > >> >> skin selectors. It's great to know you are done as
> > > > > > well. If you
> > > > > > > >> plan to
> > > > > > > >> >> check in the train renderer code anytime soon, can we
> > > > > > agree on
> > > > > > > >> >> the common list of skin selectors, so that I can
> > > > > > reuse them for
> > > > > > > >> >> my work internally at Oracle? I had to make the
> > > > following
> > > > > > > >> >> changes and wanted to give you
> > > > > > > an
> > > > > > > >> >> update.
> > > > > > > >> >>
> > > > > > > >> >> 1. I had to introduce a new state called
> > > > > "read-only". This is
> > > > > > > >> different
> > > > > > > >> >> from "disabled" state, like I explained in a previous
> > > > email.
> > > > > > > >> >>
> > > > > > > >> >> 2. I removed some redundant skin hooks - I can send you
> > > > the
> > > > > > > >> >> updated
> > > > > > > >> list
> > > > > > > >> >> of selectors I am using. I also couldn't get the
> > > > > "pass-through
> > > > > > > >> states"
> > > > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > > > you. So I have
> > > > > > > >> >> temporarily defined selectors like Jeanne suggested
> > > > (using
> > > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > > > >> >> :selected).
> > > > > > > >> >>
> > > > > > > >> >> 3. Finally I have simplified the rules for
> > > > > > determining the state
> > > > > > > >> >> of joins.
> > > > > > > >> >> I figured it would be much simpler if we did the
> > > > > > following. The
> > > > > > > >> >> join to the left of a stop, is 'always in the same
> > > > > > state as the
> > > > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > > > stops). So
> > > > > > > >> >> for instance for a train
> > > > > > > >> like
> > > > > > > >> >>
> > > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > > > >> >> vr uv v d uvr v
> > > > > > > >> >>
> > > > > > > >> >>
> > > > > > > >> >> NOTE: The only exception, is the join to the left
> > > > > of an active
> > > > > > > >> stop is
> > > > > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > >
> > > > > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > > > > >> >> read-only'. Read-only implies
> > > > > > > >> the
> > > > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > > > is dictated
> > > > > > > >> by the
> > > > > > > >> >> 'readOnly' property on the component
> > > > commandNavigationItem.
> > > > > > > >> >>
> > > > > > > >> >> Please let me know if the above is ok.
> > > > > > > >> >>
> > > > > > > >> >>
> > > > > > > >> >> Thanks
> > > > > > > >> >> - Pavitra
> > > > > > > >> >>
> > > > > > > >> >>
> > > > > > > >> >> > -----Original Message-----
> > > > > > > >> >> > From: Simon Lessard [mailto: simon.lessard.3@gmail.com
> > > > ]
> > > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > > > >> >> > Subject: Re: Train selectors
> > > > > > > >> >> >
> > > > > > > >> >> > Hmmm you mean somthing like af|train::
> > > > stop.p_AFVisited?
> > > > > > > >> >> >
> > > > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > > > < jeanne.waldman@oracle.com> wrote:
> > > > > > > >> >> > >
> > > > > > > >> >> > > I was thinking :selected for :active. :selected
> > > > > could be
> > > > > > > >> >> > > used
> > > > > > > for
> > > > > > > >> >> > > other components, too.
> > > > > > > >> >> > > For :visited/:unvisited, I can't think of a better
> > > > name.
> > > > > > > >> >> > I'm thinking
> > > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > > > > until we
> > > > > > > >> >> > > have
> > > > > > > the
> > > > > > > >> >> > > pseudo-class support in. These wouldn't in a public
> > > > api
> > > > > > > >> >> > format, though.
> > > > > > > >> >> > >
> > > > > > > >> >> > > - Jeanne
> > > > > > > >> >> > >
> > > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > > > >> >> > >
> > > > > > > >> >> > > >Hello,
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >I thought about the following name changes for
> > > > > > the selectors:
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >:active --> :current or :selected
> > > > > > :visited/:unvisited -->
> > > > > > > >> >> > > >:completed/:uncompleted or
> > > > > > > :seen/:unseen
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >Do you have any other idea/preference?
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >Regards,
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >~ Simon
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >"Simon Lessard" <simon.lessard.3@gmail.com >
> > > > > > > >> >> > > >2006-08-25 22:49
> > > > > > > >> >> > > >Please respond to adffaces-dev
> > > > > > > >> >> > > >
> > > > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > > > >> >> > <ad...@incubator.apache.org>
> > > > > > > >> >> > > > cc:
> > > > > > > >> >> > > > Subject: Train selectors
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >Yes... again...
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > > > but I had to
> > > > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > > > selectors because
> > > > > > > >> >> > > >those
> > > > > > > >> are
> > > > > > > >> >> > > >"pass through"
> > > > > > > >> >> > > >values.
> > > > > > > >> >> > > >Anyone have better name suggestion while we
> > > > > > implement state
> > > > > > > >> >> > > >interception on a per component basis?
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >Regards,
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >~ Simon
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > > >
> > > > > > > >> >> > >
> > > > > > > >> >> > >
> > > > > > > >> >> >
> > > > > > > >> >> >
> > > > > > > >> >> >
> > > > > > > >> >>
> > > > > > > >> >>
> > > > > > > >> >
> > > > > > > >>
> > > > > > > >>
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> >
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
*mumble*
http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx
*mumble*
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> Is it possible that IE is so dumb that it interprets
>
> .af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled rather than
> the specified .af_train_join AND .p_AFDisabled?
>
> My diagnosis makes it looks like it and if it's really the case, it might
> be a problem for many or our skinning by state selectors. Anyone knows any
> work around?
>
>
> Regards,
>
> ~ Simon
>
>
> On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >
> > Yes it would. I'll start by uploading that damned patch first though...
> > And since I have a rendering issue with IE, this will take one more day...
> > Damned IE... Oh and I support RTL fine already as well... There's just that
> > strange bug if joins under IE...
> >
> > The generated CSS includes the class and this is the only class using
> > that join icon...
> >
> > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
> >
> >
> > The classes on the content cell are
> >
> > <td colspan="3" class="p_AFUnvisited x72 x73">
> > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> > <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return
> > false;" href="#" class="x79">Useless step</a>
> > </td>
> >
> > And the join get rendered for that step in a strange way... ... I hate
> > IE...
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> >
> >
> > On 8/29/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
> > >
> > > It may also be a good idea to update MVariableResolver.java, the test
> > > code that sets up MenuModel #{pageList}, to include the visited, disabled,
> > > unvisited + readOnly states. Right now the train golden file only tests for
> > > selected and unvisited states.
> > >
> > > - Pavitra
> > >
> > >
> > > > -----Original Message-----
> > > > From: Pavitra Subramaniam [mailto: pavitra.subramaniam@oracle.com]
> > > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > > To: adffaces-dev@incubator.apache.org
> > > > Subject: RE: TrainRenderer using the new train selectors
> > > >
> > > > Hello Simon, Jeanne,
> > > >
> > > > I have some comments on both your email exhanges. I have
> > > > consolidated all the items below as it was getting hard to read.
> > > >
> > > >
> > > > >>>>
> > > > - af|train::stop combinable with :selected, :disabled,
> > > > :completed (will probably become p_AFVisited) and :unvisited.
> > > > You can append :readOnly at the end of the result. So
> > > > af|train::stop:unvisited:readOnly is valid
> > > > >>>>
> > > >
> > > > - Do you think we need to support an
> > > "af|train::stop:visited:readOnly"
> > > > - I believe Jeanne wanted to have states that don't use camel
> > > > case. So readOnly should be read-only
> > > >
> > > > >>>>
> > > > - af|train::link
> > > > >>>>
> > > > - should this be ::stop-link or ::link good enough?
> > > >
> > > >
> > > > >>>>
> > > > - af|train::join combinable with :disabled, :completed,
> > > > :unvisited and :outer (:outer is used to add joins outside
> > > > the edge of the train. I don't think many will use it, but it
> > > > cost nothing and add more customization
> > > > possibilities)
> > > > >>>>
> > > >
> > > > - :join-outer pseudo element is good enough. Is this used
> > > > outside the parent train icons or between the parent train
> > > > icons and the overflow (or stop)?
> > > > - do we still have the join-overflow? This comes between the
> > > > overflow and regular stops. It may be useful in cases where
> > > > only these joins need not be displayed.
> > > >
> > > >
> > > > >>>>
> > > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > > - af|train::overflow-end combinable with :disabled,
> > > > :unvisited and :readOnly
> > > > >>>>
> > > >
> > > > - Do you think we should support :unvisited state on
> > > > overflow-start? This may be useful in cases where the train
> > > > is not sequential? I have a scenario where all stops in the
> > > > train are enabled and user can jump around any stop without a
> > > > prescribed order.
> > > >
> > > > >>>>
> > > > I have the following valid suffixes: (I could not use
> > > > ::content for example since double :: is now prevented from
> > > > Adam's change to prevent some strange behavior it seem)
> > > > -content (for example, the following is valid:
> > > > af|train::stop-content and
> > > > af|train::stop:selected-content. This selector refers to the
> > > > link cell
> > > > af|(of the train)
> > > > >>>>
> > > >
> > > > - I agree with Jeanne. Let's call it stop-content:selected. I
> > > > don't think we need stop-content:visited or
> > > > stop-content:unvisited. It's an overkill.
> > > >
> > > > >>>>
> > > > -icon-block (as above but refers to the icon cell)
> > > > >>>>
> > > >
> > > > - Perhaps we should have a convention of using -block suffix
> > > > for style classes that go on <div> and -cell for styles that
> > > > go on td. Is that acceptable?
> > > >
> > > > >>>>
> > > > I use the same join rule as you, that is previous stop
> > > > determine the join state, except for the join after the
> > > > selected stop. The only exception are disabled stops, those
> > > > have disabled joins on both sides.
> > > > >>>>
> > > >
> > > > - the join after the selected stop should ideally have the
> > > > state of the following stop. Isn't it? Do you think it will
> > > > be easier to just show the left join of a disabled stop as
> > > > "disabled". So if an unvisited stop follows the disabled
> > > > stop, the join between them will show up as unvisited. At
> > > > least this is how I have implemented it. I use the same rule
> > > > for displaying joins before overflows.
> > > >
> > > >
> > > > >>>>
> > > > I also go rid of the separator, it's redundant as you can add
> > > > padding to -content selector. I also added two aliases
> > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > > > spacing between stop with something like the following:
> > > > .AFTrainContent:alias
> > > > {
> > > > padding-left: 8px;
> > > > padding-right: 8px;
> > > > }
> > > > >>>>
> > > > When you say separator, do you mean the spacer that separates
> > > > stops? Where is the alias above included? Can you send me a
> > > > HTML fragment?
> > > >
> > > > Thanks
> > > > - Pavitra
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > > To: adffaces-dev@incubator.apache.org
> > > > > Subject: Re: TrainRenderer using the new train selectors
> > > > >
> > > > > Ok,
> > > > >
> > > > > Then if those selectors are ok for you as well Pavitra I'll
> > > > make the
> > > > > changes to -outer and and -icon-cell tonight and upload the
> > > > patch as
> > > > > well as a test skin I used.
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > ~ Simon
> > > > >
> > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > > > > >
> > > > > > yep, it all makes sense.
> > > > > > I can see where you'd want to use a ::content. That would
> > > > > make sense.
> > > > > > We don't do this yet in any of our skinning keys, so I am
> > > > fine with
> > > > > > the -content, since we do that all over the place. :)
> > > > > >
> > > > > > - Jeanne
> > > > > >
> > > > > > Simon Lessard wrote:
> > > > > >
> > > > > > > Oups, comments below
> > > > > > >
> > > > > > > On 8/29/06, Jeanne Waldman <jeanne.waldman@oracle.com > wrote:
> > > > > > >
> > > > > > >>
> > > > > > >> one question below
> > > > > > >>
> > > > > > >> Simon Lessard wrote:
> > > > > > >>
> > > > > > >> > Hello Pavitra,
> > > > > > >> >
> > > > > > >> > I had to do about the same changes on my side. Here's
> > > > > my list of
> > > > > > >> selector
> > > > > > >> > and the rules I used:
> > > > > > >> >
> > > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > > :completed
> > > > > > >> (will
> > > > > > >> > probably become p_AFVisited) and :unvisited. You can append
> > > > > > >> > :readOnly at the end of the result. So
> > > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > > >> > - af|train::link
> > > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > > >> > :unvisited
> > > > > > and
> > > > > > >> > :outer (:outer is used to add joins outside the edge of the
> > > > > > >> > train. I don't think many will use it, but it cost
> > > > nothing and
> > > > > > >> > add more
> > > > > > customization
> > > > > > >> > possibilities)
> > > > > > >>
> > > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > > >> af|train::join-outer
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > yes, it could be ::join-outer, was made a state only to fit
> > > the
> > > > > > > other join selectors, but it does make more sense to use
> > > > > -outer for
> > > > > > > that one.
> > > > > > >
> > > > > > >
> > > > > > > Does that make more sense now?
> > > > > > >
> > > > > > >
> > > > > > > Regards,
> > > > > > >
> > > > > > > ~ Simon
> > > > > > >
> > > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > > :readOnly
> > > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > :unvisited
> > > > > > >> > and :readOnly
> > > > > > >> >
> > > > > > >> > I have the following valid suffixes: (I could not use
> > > > > ::content
> > > > > > >> > for example since double :: is now prevented from
> > > > > Adam's change
> > > > > > >> > to prevent some strange behavior it seem)
> > > > > > >>
> > > > > > >> I don't think two pseudo-elements make sense, does it?
> > > > I suppose
> > > > > > >> you could have a piece of a piece. Adam prevented it
> > > > > because there
> > > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > > > (content of the
> > > > > > > stop)
> > > > > > >
> > > > > > >> -content (for example, the following is valid:
> > > > > > >> af|train::stop-content
> > > > > > >> > and
> > > > > > >> > af|train::stop:selected-content. This selector refers
> > > > > to the link
> > > > > > cell
> > > > > > >> fo
> > > > > > >> > the train)
> > > > > > >>
> > > > > > >> What does a :selected-content 'state' mean?
> > > > > > >> How is it different than af|train::stop-content:selected?
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > My bad there, af|train::stop-content:selected is actually
> > > > > what I use.
> > > > > > > Even
> > > > > > > if a better selector would have been
> > > > > > > af|train::stop:selected::content imho.
> > > > > > >
> > > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > > >>
> > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > > our skinning
> > > > > > >> selectors.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Yes I could, I was using block only because it was in Pavitra
> > > > > > > document
> > > > > > at
> > > > > > > first.
> > > > > > >
> > > > > > >>
> > > > > > >> > The icons follow the same rule.
> > > > > > >> >
> > > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > > <pavitra.subramaniam@oracle.com >
> > > > > > >> wrote:
> > > > > > >> >
> > > > > > >> >>
> > > > > > >> >> Hello Simon,
> > > > > > >> >>
> > > > > > >> >> I have also almost completed implementing the
> > > TrainRenderer
> > > > > > >> >> using
> > > > > > the
> > > > > > >> >> new
> > > > > > >> >> skin selectors. It's great to know you are done as
> > > > > well. If you
> > > > > > >> plan to
> > > > > > >> >> check in the train renderer code anytime soon, can we
> > > > > agree on
> > > > > > >> >> the common list of skin selectors, so that I can
> > > > > reuse them for
> > > > > > >> >> my work internally at Oracle? I had to make the following
> > > > > > >> >> changes and wanted to give you
> > > > > > an
> > > > > > >> >> update.
> > > > > > >> >>
> > > > > > >> >> 1. I had to introduce a new state called
> > > > "read-only". This is
> > > > > > >> different
> > > > > > >> >> from "disabled" state, like I explained in a previous
> > > email.
> > > > > > >> >>
> > > > > > >> >> 2. I removed some redundant skin hooks - I can send you
> > > the
> > > > > > >> >> updated
> > > > > > >> list
> > > > > > >> >> of selectors I am using. I also couldn't get the
> > > > "pass-through
> > > > > > >> states"
> > > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > > you. So I have
> > > > > > >> >> temporarily defined selectors like Jeanne suggested (using
> > >
> > > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > > >> >> :selected).
> > > > > > >> >>
> > > > > > >> >> 3. Finally I have simplified the rules for
> > > > > determining the state
> > > > > > >> >> of joins.
> > > > > > >> >> I figured it would be much simpler if we did the
> > > > > following. The
> > > > > > >> >> join to the left of a stop, is 'always in the same
> > > > > state as the
> > > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > > stops). So
> > > > > > >> >> for instance for a train
> > > > > > >> like
> > > > > > >> >>
> > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > > >> >> vr uv v d uvr v
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> NOTE: The only exception, is the join to the left
> > > > of an active
> > > > > > >> stop is
> > > > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > > > >> >> read-only'. Read-only implies
> > > > > > >> the
> > > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > > is dictated
> > > > > > >> by the
> > > > > > >> >> 'readOnly' property on the component
> > > commandNavigationItem.
> > > > > > >> >>
> > > > > > >> >> Please let me know if the above is ok.
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> Thanks
> > > > > > >> >> - Pavitra
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> > -----Original Message-----
> > > > > > >> >> > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > > >> >> > Subject: Re: Train selectors
> > > > > > >> >> >
> > > > > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > > > > >> >> >
> > > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > > < jeanne.waldman@oracle.com> wrote:
> > > > > > >> >> > >
> > > > > > >> >> > > I was thinking :selected for :active. :selected
> > > > could be
> > > > > > >> >> > > used
> > > > > > for
> > > > > > >> >> > > other components, too.
> > > > > > >> >> > > For :visited/:unvisited, I can't think of a better
> > > name.
> > > > > > >> >> > I'm thinking
> > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > > > until we
> > > > > > >> >> > > have
> > > > > > the
> > > > > > >> >> > > pseudo-class support in. These wouldn't in a public
> > > api
> > > > > > >> >> > format, though.
> > > > > > >> >> > >
> > > > > > >> >> > > - Jeanne
> > > > > > >> >> > >
> > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > > >> >> > >
> > > > > > >> >> > > >Hello,
> > > > > > >> >> > > >
> > > > > > >> >> > > >I thought about the following name changes for
> > > > > the selectors:
> > > > > > >> >> > > >
> > > > > > >> >> > > >:active --> :current or :selected
> > > > > :visited/:unvisited -->
> > > > > > >> >> > > >:completed/:uncompleted or
> > > > > > :seen/:unseen
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Do you have any other idea/preference?
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Regards,
> > > > > > >> >> > > >
> > > > > > >> >> > > >~ Simon
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >"Simon Lessard" <simon.lessard.3@gmail.com >
> > > > > > >> >> > > >2006-08-25 22:49
> > > > > > >> >> > > >Please respond to adffaces-dev
> > > > > > >> >> > > >
> > > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > > >> >> > <ad...@incubator.apache.org>
> > > > > > >> >> > > > cc:
> > > > > > >> >> > > > Subject: Train selectors
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Yes... again...
> > > > > > >> >> > > >
> > > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > > but I had to
> > > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > > selectors because
> > > > > > >> >> > > >those
> > > > > > >> are
> > > > > > >> >> > > >"pass through"
> > > > > > >> >> > > >values.
> > > > > > >> >> > > >Anyone have better name suggestion while we
> > > > > implement state
> > > > > > >> >> > > >interception on a per component basis?
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Regards,
> > > > > > >> >> > > >
> > > > > > >> >> > > >~ Simon
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > >
> > > > > > >> >> > >
> > > > > > >> >> >
> > > > > > >> >> >
> > > > > > >> >> >
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >
> > > > > > >>
> > > > > > >>
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
You are right. It gets even more complicated when you have multiple state skins.
Jeanne and I were looking at this exact problem on IE6. For e.g., in the html below, I have 2 skins .af_train_stop-link and .af_train_stop-spacer. Both define the it's .p_AFvisited state.
IE6 always seems to do
.af_train_stop-link.p_AFVisited OR .af_train_stop-link OR .p_AFVisited
What's even worse is that it picks up the styles of the last defined .p_AFVisited rather than the one that is defined along with .af_train_stop-link. Jeanne said she will look into this.
Thanks
Pavitra
------------
<html>
<head>
<title>train Demo</title>
<style type="text/css">
.af_train_stop-link.p_AFVisited{text-decoration:underline;color:red;background-color:transparent;}
.af_train_stop-spacer.p_AFVisited{background-color:red}
</style>
</head>
<body class="">
<table cellpadding="0" cellspacing="0" border="0" summary="" class="af_train">
<tbody>
<tr>
<td><div class="af_train_stop-spacer p_AFVisited"></div></td>
<td></td>
</tr>
<tr>
<td><div class="af_train_stop-content ">
<a class="af_train_stop-link p_AFVisited" onclick="return false;">First Step</a></div></td>
<td></td>
</tr>
</tbody>
</table>
</body>
</html>
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Tuesday, August 29, 2006 6:54 PM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: TrainRenderer using the new train selectors
>
> Is it possible that IE is so dumb that it interprets
>
> .af_train_join.p_AFDisabled as .af_train_join OR
> .p_AFDisabled rather than the specified .af_train_join AND
> .p_AFDisabled?
>
> My diagnosis makes it looks like it and if it's really the
> case, it might be a problem for many or our skinning by state
> selectors. Anyone knows any work around?
>
>
> Regards,
>
> ~ Simon
>
> On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
> >
> > Yes it would. I'll start by uploading that damned patch
> first though...
> > And since I have a rendering issue with IE, this will take
> one more day...
> > Damned IE... Oh and I support RTL fine already as well...
> There's just
> > that strange bug if joins under IE...
> >
> > The generated CSS includes the class and this is the only
> class using
> > that join icon...
> >
> > .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited
> >
> {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/trai
> > n/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
> >
> >
> > The classes on the content cell are
> >
> > <td colspan="3" class="p_AFUnvisited x72 x73">
> > <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> > <a
> onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return false;"
> > href="#" class="x79">Useless step</a>
> > </td>
> >
> > And the join get rendered for that step in a strange way...
> ... I hate
> > IE...
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> >
> >
> > On 8/29/06, Pavitra Subramaniam
> <pa...@oracle.com> wrote:
> > >
> > > It may also be a good idea to update MVariableResolver.java, the
> > > test code that sets up MenuModel #{pageList}, to include the
> > > visited, disabled, unvisited + readOnly states. Right now
> the train
> > > golden file only tests for selected and unvisited states.
> > >
> > > - Pavitra
> > >
> > >
> > > > -----Original Message-----
> > > > From: Pavitra Subramaniam
> [mailto:pavitra.subramaniam@oracle.com]
> > > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > > To: adffaces-dev@incubator.apache.org
> > > > Subject: RE: TrainRenderer using the new train selectors
> > > >
> > > > Hello Simon, Jeanne,
> > > >
> > > > I have some comments on both your email exhanges. I have
> > > > consolidated all the items below as it was getting hard to read.
> > > >
> > > >
> > > > >>>>
> > > > - af|train::stop combinable with :selected, :disabled,
> :completed
> > > > (will probably become p_AFVisited) and :unvisited.
> > > > You can append :readOnly at the end of the result. So
> > > > af|train::stop:unvisited:readOnly is valid
> > > > >>>>
> > > >
> > > > - Do you think we need to support an
> "af|train::stop:visited:readOnly"
> > >
> > > > - I believe Jeanne wanted to have states that don't use camel
> > > > case. So readOnly should be read-only
> > > >
> > > > >>>>
> > > > - af|train::link
> > > > >>>>
> > > > - should this be ::stop-link or ::link good enough?
> > > >
> > > >
> > > > >>>>
> > > > - af|train::join combinable with :disabled, :completed,
> :unvisited
> > > > and :outer (:outer is used to add joins outside the edge of the
> > > > train. I don't think many will use it, but it cost
> nothing and add
> > > > more customization
> > > > possibilities)
> > > > >>>>
> > > >
> > > > - :join-outer pseudo element is good enough. Is this
> used outside
> > > > the parent train icons or between the parent train
> icons and the
> > > > overflow (or stop)?
> > > > - do we still have the join-overflow? This comes between the
> > > > overflow and regular stops. It may be useful in cases
> where only
> > > > these joins need not be displayed.
> > > >
> > > >
> > > > >>>>
> > > > - af|train::overflow-start combinable with :disabled
> and :readOnly
> > > > - af|train::overflow-end combinable with :disabled,
> :unvisited and
> > > > :readOnly
> > > > >>>>
> > > >
> > > > - Do you think we should support :unvisited state on
> > > > overflow-start? This may be useful in cases where the
> train is not
> > > > sequential? I have a scenario where all stops in the train are
> > > > enabled and user can jump around any stop without a prescribed
> > > > order.
> > > >
> > > > >>>>
> > > > I have the following valid suffixes: (I could not use ::content
> > > > for example since double :: is now prevented from
> Adam's change to
> > > > prevent some strange behavior it seem) -content (for
> example, the
> > > > following is valid:
> > > > af|train::stop-content and
> > > > af|train::stop:selected-content. This selector refers to the
> > > > link cell
> > > > af|(of the train)
> > > > >>>>
> > > >
> > > > - I agree with Jeanne. Let's call it stop-content:selected. I
> > > > don't think we need stop-content:visited or
> > > > stop-content:unvisited. It's an overkill.
> > > >
> > > > >>>>
> > > > -icon-block (as above but refers to the icon cell)
> > > > >>>>
> > > >
> > > > - Perhaps we should have a convention of using -block
> suffix for
> > > > style classes that go on <div> and -cell for styles
> that go on td.
> > > > Is that acceptable?
> > > >
> > > > >>>>
> > > > I use the same join rule as you, that is previous stop
> determine
> > > > the join state, except for the join after the selected
> stop. The
> > > > only exception are disabled stops, those have disabled joins on
> > > > both sides.
> > > > >>>>
> > > >
> > > > - the join after the selected stop should ideally have
> the state
> > > > of the following stop. Isn't it? Do you think it will
> be easier to
> > > > just show the left join of a disabled stop as
> "disabled". So if an
> > > > unvisited stop follows the disabled stop, the join between them
> > > > will show up as unvisited. At least this is how I have
> implemented
> > > > it. I use the same rule for displaying joins before overflows.
> > > >
> > > >
> > > > >>>>
> > > > I also go rid of the separator, it's redundant as you can add
> > > > padding to -content selector. I also added two aliases
> > > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > > > spacing between stop with something like the following:
> > > > .AFTrainContent:alias
> > > > {
> > > > padding-left: 8px;
> > > > padding-right: 8px;
> > > > }
> > > > >>>>
> > > > When you say separator, do you mean the spacer that separates
> > > > stops? Where is the alias above included? Can you send
> me a HTML
> > > > fragment?
> > > >
> > > > Thanks
> > > > - Pavitra
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > > To: adffaces-dev@incubator.apache.org
> > > > > Subject: Re: TrainRenderer using the new train selectors
> > > > >
> > > > > Ok,
> > > > >
> > > > > Then if those selectors are ok for you as well Pavitra I'll
> > > > make the
> > > > > changes to -outer and and -icon-cell tonight and upload the
> > > > patch as
> > > > > well as a test skin I used.
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > ~ Simon
> > > > >
> > > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > > > > >
> > > > > > yep, it all makes sense.
> > > > > > I can see where you'd want to use a ::content. That would
> > > > > make sense.
> > > > > > We don't do this yet in any of our skinning keys, so I am
> > > > fine with
> > > > > > the -content, since we do that all over the place. :)
> > > > > >
> > > > > > - Jeanne
> > > > > >
> > > > > > Simon Lessard wrote:
> > > > > >
> > > > > > > Oups, comments below
> > > > > > >
> > > > > > > On 8/29/06, Jeanne Waldman
> <je...@oracle.com> wrote:
> > > > > > >
> > > > > > >>
> > > > > > >> one question below
> > > > > > >>
> > > > > > >> Simon Lessard wrote:
> > > > > > >>
> > > > > > >> > Hello Pavitra,
> > > > > > >> >
> > > > > > >> > I had to do about the same changes on my side. Here's
> > > > > my list of
> > > > > > >> selector
> > > > > > >> > and the rules I used:
> > > > > > >> >
> > > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > > :completed
> > > > > > >> (will
> > > > > > >> > probably become p_AFVisited) and :unvisited. You can
> > > > > > >> > append :readOnly at the end of the result. So
> > > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > > >> > - af|train::link
> > > > > > >> > - af|train::join combinable with :disabled,
> :completed,
> > > > > > >> > :unvisited
> > > > > > and
> > > > > > >> > :outer (:outer is used to add joins outside
> the edge of
> > > > > > >> > the train. I don't think many will use it, but it cost
> > > > nothing and
> > > > > > >> > add more
> > > > > > customization
> > > > > > >> > possibilities)
> > > > > > >>
> > > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > > >> af|train::join-outer
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > yes, it could be ::join-outer, was made a state
> only to fit
> > > > > > > the other join selectors, but it does make more
> sense to use
> > > > > -outer for
> > > > > > > that one.
> > > > > > >
> > > > > > >
> > > > > > > Does that make more sense now?
> > > > > > >
> > > > > > >
> > > > > > > Regards,
> > > > > > >
> > > > > > > ~ Simon
> > > > > > >
> > > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > > :readOnly
> > > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > > :unvisited
> > > > > > >> > and :readOnly
> > > > > > >> >
> > > > > > >> > I have the following valid suffixes: (I could not use
> > > > > ::content
> > > > > > >> > for example since double :: is now prevented from
> > > > > Adam's change
> > > > > > >> > to prevent some strange behavior it seem)
> > > > > > >>
> > > > > > >> I don't think two pseudo-elements make sense, does it?
> > > > I suppose
> > > > > > >> you could have a piece of a piece. Adam prevented it
> > > > > because there
> > > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > I was seeing them more as sub-elements, like
> ::stop::content
> > > > > > > (content of the
> > > > > > > stop)
> > > > > > >
> > > > > > >> -content (for example, the following is valid:
> > > > > > >> af|train::stop-content
> > > > > > >> > and
> > > > > > >> > af|train::stop:selected-content. This selector refers
> > > > > to the link
> > > > > > cell
> > > > > > >> fo
> > > > > > >> > the train)
> > > > > > >>
> > > > > > >> What does a :selected-content 'state' mean?
> > > > > > >> How is it different than af|train::stop-content:selected?
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > My bad there, af|train::stop-content:selected is actually
> > > > > what I use.
> > > > > > > Even
> > > > > > > if a better selector would have been
> > > > > > > af|train::stop:selected::content imho.
> > > > > > >
> > > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > > >>
> > > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > > our skinning
> > > > > > >> selectors.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Yes I could, I was using block only because it was in
> > > > > > > Pavitra document
> > > > > > at
> > > > > > > first.
> > > > > > >
> > > > > > >>
> > > > > > >> > The icons follow the same rule.
> > > > > > >> >
> > > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > > <pa...@oracle.com>
> > > > > > >> wrote:
> > > > > > >> >
> > > > > > >> >>
> > > > > > >> >> Hello Simon,
> > > > > > >> >>
> > > > > > >> >> I have also almost completed implementing the
> > > > > > >> >> TrainRenderer using
> > > > > > the
> > > > > > >> >> new
> > > > > > >> >> skin selectors. It's great to know you are done as
> > > > > well. If you
> > > > > > >> plan to
> > > > > > >> >> check in the train renderer code anytime soon, can we
> > > > > agree on
> > > > > > >> >> the common list of skin selectors, so that I can
> > > > > reuse them for
> > > > > > >> >> my work internally at Oracle? I had to make the
> > > > > > >> >> following changes and wanted to give you
> > > > > > an
> > > > > > >> >> update.
> > > > > > >> >>
> > > > > > >> >> 1. I had to introduce a new state called
> > > > "read-only". This is
> > > > > > >> different
> > > > > > >> >> from "disabled" state, like I explained in a
> previous email.
> > >
> > > > > > >> >>
> > > > > > >> >> 2. I removed some redundant skin hooks - I
> can send you
> > > > > > >> >> the updated
> > > > > > >> list
> > > > > > >> >> of selectors I am using. I also couldn't get the
> > > > "pass-through
> > > > > > >> states"
> > > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > > you. So I have
> > > > > > >> >> temporarily defined selectors like Jeanne suggested
> > > > > > >> >> (using p_AFVisited, p_AFUnvisited etc. and renamed
> > > > > > >> >> :active to :selected).
> > > > > > >> >>
> > > > > > >> >> 3. Finally I have simplified the rules for
> > > > > determining the state
> > > > > > >> >> of joins.
> > > > > > >> >> I figured it would be much simpler if we did the
> > > > > following. The
> > > > > > >> >> join to the left of a stop, is 'always in the same
> > > > > state as the
> > > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > > stops). So
> > > > > > >> >> for instance for a train
> > > > > > >> like
> > > > > > >> >>
> > > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > > >> >> vr uv v d uvr v
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> NOTE: The only exception, is the join to the left
> > > > of an active
> > > > > > >> stop is
> > > > > > >> >> visited. Also, UVR and VR are stops that are
> in 2 states
> > > > > > >> >> simulataneously - 'visited & read-only' and
> 'unvisited &
> > > > > > >> >> read-only'. Read-only implies
> > > > > > >> the
> > > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > > is dictated
> > > > > > >> by the
> > > > > > >> >> 'readOnly' property on the component
> commandNavigationItem.
> > > > > > >> >>
> > > > > > >> >> Please let me know if the above is ok.
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> Thanks
> > > > > > >> >> - Pavitra
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >> > -----Original Message-----
> > > > > > >> >> > From: Simon Lessard
> [mailto:simon.lessard.3@gmail.com]
> > > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > > >> >> > Subject: Re: Train selectors
> > > > > > >> >> >
> > > > > > >> >> > Hmmm you mean somthing like
> af|train::stop.p_AFVisited?
> > > > > > >> >> >
> > > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > > < jeanne.waldman@oracle.com> wrote:
> > > > > > >> >> > >
> > > > > > >> >> > > I was thinking :selected for :active. :selected
> > > > could be
> > > > > > >> >> > > used
> > > > > > for
> > > > > > >> >> > > other components, too.
> > > > > > >> >> > > For :visited/:unvisited, I can't think of
> a better name.
> > >
> > > > > > >> >> > I'm thinking
> > > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > > > until we
> > > > > > >> >> > > have
> > > > > > the
> > > > > > >> >> > > pseudo-class support in. These wouldn't
> in a public
> > > > > > >> >> > > api
> > > > > > >> >> > format, though.
> > > > > > >> >> > >
> > > > > > >> >> > > - Jeanne
> > > > > > >> >> > >
> > > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > > >> >> > >
> > > > > > >> >> > > >Hello,
> > > > > > >> >> > > >
> > > > > > >> >> > > >I thought about the following name changes for
> > > > > the selectors:
> > > > > > >> >> > > >
> > > > > > >> >> > > >:active --> :current or :selected
> > > > > :visited/:unvisited -->
> > > > > > >> >> > > >:completed/:uncompleted or
> > > > > > :seen/:unseen
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Do you have any other idea/preference?
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Regards,
> > > > > > >> >> > > >
> > > > > > >> >> > > >~ Simon
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > > > >> >> > > >2006-08-25 22:49
> > > > > > >> >> > > >Please respond to adffaces-dev
> > > > > > >> >> > > >
> > > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > > >> >> > <ad...@incubator.apache.org>
> > > > > > >> >> > > > cc:
> > > > > > >> >> > > > Subject: Train selectors
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Yes... again...
> > > > > > >> >> > > >
> > > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > > but I had to
> > > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > > selectors because
> > > > > > >> >> > > >those
> > > > > > >> are
> > > > > > >> >> > > >"pass through"
> > > > > > >> >> > > >values.
> > > > > > >> >> > > >Anyone have better name suggestion while we
> > > > > implement state
> > > > > > >> >> > > >interception on a per component basis?
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >Regards,
> > > > > > >> >> > > >
> > > > > > >> >> > > >~ Simon
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > > >
> > > > > > >> >> > >
> > > > > > >> >> > >
> > > > > > >> >> >
> > > > > > >> >> >
> > > > > > >> >> >
> > > > > > >> >>
> > > > > > >> >>
> > > > > > >> >
> > > > > > >>
> > > > > > >>
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
>
>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Is it possible that IE is so dumb that it interprets
.af_train_join.p_AFDisabled as .af_train_join OR .p_AFDisabled rather than
the specified .af_train_join AND .p_AFDisabled?
My diagnosis makes it looks like it and if it's really the case, it might be
a problem for many or our skinning by state selectors. Anyone knows any work
around?
Regards,
~ Simon
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> Yes it would. I'll start by uploading that damned patch first though...
> And since I have a rendering issue with IE, this will take one more day...
> Damned IE... Oh and I support RTL fine already as well... There's just that
> strange bug if joins under IE...
>
> The generated CSS includes the class and this is the only class using that
> join icon...
>
> .af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited {background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
>
>
> The classes on the content cell are
>
> <td colspan="3" class="p_AFUnvisited x72 x73">
> <!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
> <a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return false;"
> href="#" class="x79">Useless step</a>
> </td>
>
> And the join get rendered for that step in a strange way... ... I hate
> IE...
>
>
> Regards,
>
> ~ Simon
>
>
>
> On 8/29/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
> >
> > It may also be a good idea to update MVariableResolver.java, the test
> > code that sets up MenuModel #{pageList}, to include the visited, disabled,
> > unvisited + readOnly states. Right now the train golden file only tests for
> > selected and unvisited states.
> >
> > - Pavitra
> >
> >
> > > -----Original Message-----
> > > From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com]
> > > Sent: Tuesday, August 29, 2006 2:46 PM
> > > To: adffaces-dev@incubator.apache.org
> > > Subject: RE: TrainRenderer using the new train selectors
> > >
> > > Hello Simon, Jeanne,
> > >
> > > I have some comments on both your email exhanges. I have
> > > consolidated all the items below as it was getting hard to read.
> > >
> > >
> > > >>>>
> > > - af|train::stop combinable with :selected, :disabled,
> > > :completed (will probably become p_AFVisited) and :unvisited.
> > > You can append :readOnly at the end of the result. So
> > > af|train::stop:unvisited:readOnly is valid
> > > >>>>
> > >
> > > - Do you think we need to support an "af|train::stop:visited:readOnly"
> >
> > > - I believe Jeanne wanted to have states that don't use camel
> > > case. So readOnly should be read-only
> > >
> > > >>>>
> > > - af|train::link
> > > >>>>
> > > - should this be ::stop-link or ::link good enough?
> > >
> > >
> > > >>>>
> > > - af|train::join combinable with :disabled, :completed,
> > > :unvisited and :outer (:outer is used to add joins outside
> > > the edge of the train. I don't think many will use it, but it
> > > cost nothing and add more customization
> > > possibilities)
> > > >>>>
> > >
> > > - :join-outer pseudo element is good enough. Is this used
> > > outside the parent train icons or between the parent train
> > > icons and the overflow (or stop)?
> > > - do we still have the join-overflow? This comes between the
> > > overflow and regular stops. It may be useful in cases where
> > > only these joins need not be displayed.
> > >
> > >
> > > >>>>
> > > - af|train::overflow-start combinable with :disabled and :readOnly
> > > - af|train::overflow-end combinable with :disabled,
> > > :unvisited and :readOnly
> > > >>>>
> > >
> > > - Do you think we should support :unvisited state on
> > > overflow-start? This may be useful in cases where the train
> > > is not sequential? I have a scenario where all stops in the
> > > train are enabled and user can jump around any stop without a
> > > prescribed order.
> > >
> > > >>>>
> > > I have the following valid suffixes: (I could not use
> > > ::content for example since double :: is now prevented from
> > > Adam's change to prevent some strange behavior it seem)
> > > -content (for example, the following is valid:
> > > af|train::stop-content and
> > > af|train::stop:selected-content. This selector refers to the
> > > link cell
> > > af|(of the train)
> > > >>>>
> > >
> > > - I agree with Jeanne. Let's call it stop-content:selected. I
> > > don't think we need stop-content:visited or
> > > stop-content:unvisited. It's an overkill.
> > >
> > > >>>>
> > > -icon-block (as above but refers to the icon cell)
> > > >>>>
> > >
> > > - Perhaps we should have a convention of using -block suffix
> > > for style classes that go on <div> and -cell for styles that
> > > go on td. Is that acceptable?
> > >
> > > >>>>
> > > I use the same join rule as you, that is previous stop
> > > determine the join state, except for the join after the
> > > selected stop. The only exception are disabled stops, those
> > > have disabled joins on both sides.
> > > >>>>
> > >
> > > - the join after the selected stop should ideally have the
> > > state of the following stop. Isn't it? Do you think it will
> > > be easier to just show the left join of a disabled stop as
> > > "disabled". So if an unvisited stop follows the disabled
> > > stop, the join between them will show up as unvisited. At
> > > least this is how I have implemented it. I use the same rule
> > > for displaying joins before overflows.
> > >
> > >
> > > >>>>
> > > I also go rid of the separator, it's redundant as you can add
> > > padding to -content selector. I also added two aliases
> > > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > > spacing between stop with something like the following:
> > > .AFTrainContent:alias
> > > {
> > > padding-left: 8px;
> > > padding-right: 8px;
> > > }
> > > >>>>
> > > When you say separator, do you mean the spacer that separates
> > > stops? Where is the alias above included? Can you send me a
> > > HTML fragment?
> > >
> > > Thanks
> > > - Pavitra
> > >
> > >
> > > > -----Original Message-----
> > > > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > > To: adffaces-dev@incubator.apache.org
> > > > Subject: Re: TrainRenderer using the new train selectors
> > > >
> > > > Ok,
> > > >
> > > > Then if those selectors are ok for you as well Pavitra I'll
> > > make the
> > > > changes to -outer and and -icon-cell tonight and upload the
> > > patch as
> > > > well as a test skin I used.
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > > On 8/29/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > > > >
> > > > > yep, it all makes sense.
> > > > > I can see where you'd want to use a ::content. That would
> > > > make sense.
> > > > > We don't do this yet in any of our skinning keys, so I am
> > > fine with
> > > > > the -content, since we do that all over the place. :)
> > > > >
> > > > > - Jeanne
> > > > >
> > > > > Simon Lessard wrote:
> > > > >
> > > > > > Oups, comments below
> > > > > >
> > > > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > > >
> > > > > >>
> > > > > >> one question below
> > > > > >>
> > > > > >> Simon Lessard wrote:
> > > > > >>
> > > > > >> > Hello Pavitra,
> > > > > >> >
> > > > > >> > I had to do about the same changes on my side. Here's
> > > > my list of
> > > > > >> selector
> > > > > >> > and the rules I used:
> > > > > >> >
> > > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > > :completed
> > > > > >> (will
> > > > > >> > probably become p_AFVisited) and :unvisited. You can append
> > > > > >> > :readOnly at the end of the result. So
> > > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > > >> > - af|train::link
> > > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > > >> > :unvisited
> > > > > and
> > > > > >> > :outer (:outer is used to add joins outside the edge of the
> > > > > >> > train. I don't think many will use it, but it cost
> > > nothing and
> > > > > >> > add more
> > > > > customization
> > > > > >> > possibilities)
> > > > > >>
> > > > > >> Is :outer a state? It sounds to me like it should be
> > > > > >> af|train::join-outer
> > > > > >
> > > > > >
> > > > > >
> > > > > > yes, it could be ::join-outer, was made a state only to fit the
> > > > > > other join selectors, but it does make more sense to use
> > > > -outer for
> > > > > > that one.
> > > > > >
> > > > > >
> > > > > > Does that make more sense now?
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > ~ Simon
> > > > > >
> > > > > >> - af|train::overflow-start combinable with :disabled and
> > > > :readOnly
> > > > > >> > - af|train::overflow-end combinable with :disabled,
> > > :unvisited
> > > > > >> > and :readOnly
> > > > > >> >
> > > > > >> > I have the following valid suffixes: (I could not use
> > > > ::content
> > > > > >> > for example since double :: is now prevented from
> > > > Adam's change
> > > > > >> > to prevent some strange behavior it seem)
> > > > > >>
> > > > > >> I don't think two pseudo-elements make sense, does it?
> > > I suppose
> > > > > >> you could have a piece of a piece. Adam prevented it
> > > > because there
> > > > > >> were bugs in it. I can't recall what the bugs were.
> > > > > >
> > > > > >
> > > > > >
> > > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > > (content of the
> > > > > > stop)
> > > > > >
> > > > > >> -content (for example, the following is valid:
> > > > > >> af|train::stop-content
> > > > > >> > and
> > > > > >> > af|train::stop:selected-content. This selector refers
> > > > to the link
> > > > > cell
> > > > > >> fo
> > > > > >> > the train)
> > > > > >>
> > > > > >> What does a :selected-content 'state' mean?
> > > > > >> How is it different than af|train::stop-content:selected?
> > > > > >
> > > > > >
> > > > > >
> > > > > > My bad there, af|train::stop-content:selected is actually
> > > > what I use.
> > > > > > Even
> > > > > > if a better selector would have been
> > > > > > af|train::stop:selected::content imho.
> > > > > >
> > > > > >> -icon-block (as above but refers to the icon cell)
> > > > > >>
> > > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > > our skinning
> > > > > >> selectors.
> > > > > >
> > > > > >
> > > > > >
> > > > > > Yes I could, I was using block only because it was in Pavitra
> > > > > > document
> > > > > at
> > > > > > first.
> > > > > >
> > > > > >>
> > > > > >> > The icons follow the same rule.
> > > > > >> >
> > > > > >> > On 8/28/06, Pavitra Subramaniam
> > > > <pa...@oracle.com>
> > > > > >> wrote:
> > > > > >> >
> > > > > >> >>
> > > > > >> >> Hello Simon,
> > > > > >> >>
> > > > > >> >> I have also almost completed implementing the TrainRenderer
> > > > > >> >> using
> > > > > the
> > > > > >> >> new
> > > > > >> >> skin selectors. It's great to know you are done as
> > > > well. If you
> > > > > >> plan to
> > > > > >> >> check in the train renderer code anytime soon, can we
> > > > agree on
> > > > > >> >> the common list of skin selectors, so that I can
> > > > reuse them for
> > > > > >> >> my work internally at Oracle? I had to make the following
> > > > > >> >> changes and wanted to give you
> > > > > an
> > > > > >> >> update.
> > > > > >> >>
> > > > > >> >> 1. I had to introduce a new state called
> > > "read-only". This is
> > > > > >> different
> > > > > >> >> from "disabled" state, like I explained in a previous email.
> >
> > > > > >> >>
> > > > > >> >> 2. I removed some redundant skin hooks - I can send you the
> > > > > >> >> updated
> > > > > >> list
> > > > > >> >> of selectors I am using. I also couldn't get the
> > > "pass-through
> > > > > >> states"
> > > > > >> >> :visited, :active and :unvisited to work, just as
> > > > you. So I have
> > > > > >> >> temporarily defined selectors like Jeanne suggested (using
> > > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > > >> >> :selected).
> > > > > >> >>
> > > > > >> >> 3. Finally I have simplified the rules for
> > > > determining the state
> > > > > >> >> of joins.
> > > > > >> >> I figured it would be much simpler if we did the
> > > > following. The
> > > > > >> >> join to the left of a stop, is 'always in the same
> > > > state as the
> > > > > >> >> stop' (Overflows could also follow the same rules as
> > > > stops). So
> > > > > >> >> for instance for a train
> > > > > >> like
> > > > > >> >>
> > > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > > >> >> vr uv v d uvr v
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> NOTE: The only exception, is the join to the left
> > > of an active
> > > > > >> stop is
> > > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > > >> >> read-only'. Read-only implies
> > > > > >> the
> > > > > >> >> stop cannot be reached (and hence not clickable) and
> > > > is dictated
> > > > > >> by the
> > > > > >> >> 'readOnly' property on the component commandNavigationItem.
> > > > > >> >>
> > > > > >> >> Please let me know if the above is ok.
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> Thanks
> > > > > >> >> - Pavitra
> > > > > >> >>
> > > > > >> >>
> > > > > >> >> > -----Original Message-----
> > > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > > >> >> > Subject: Re: Train selectors
> > > > > >> >> >
> > > > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > > > >> >> >
> > > > > >> >> > On 8/28/06, Jeanne Waldman
> > > > < jeanne.waldman@oracle.com> wrote:
> > > > > >> >> > >
> > > > > >> >> > > I was thinking :selected for :active. :selected
> > > could be
> > > > > >> >> > > used
> > > > > for
> > > > > >> >> > > other components, too.
> > > > > >> >> > > For :visited/:unvisited, I can't think of a better name.
> >
> > > > > >> >> > I'm thinking
> > > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > > until we
> > > > > >> >> > > have
> > > > > the
> > > > > >> >> > > pseudo-class support in. These wouldn't in a public api
> > > > > >> >> > format, though.
> > > > > >> >> > >
> > > > > >> >> > > - Jeanne
> > > > > >> >> > >
> > > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > > >> >> > >
> > > > > >> >> > > >Hello,
> > > > > >> >> > > >
> > > > > >> >> > > >I thought about the following name changes for
> > > > the selectors:
> > > > > >> >> > > >
> > > > > >> >> > > >:active --> :current or :selected
> > > > :visited/:unvisited -->
> > > > > >> >> > > >:completed/:uncompleted or
> > > > > :seen/:unseen
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Do you have any other idea/preference?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > > >> >> > > >2006-08-25 22:49
> > > > > >> >> > > >Please respond to adffaces-dev
> > > > > >> >> > > >
> > > > > >> >> > > > To: "Trinidad - Dev"
> > > > > >> >> > <ad...@incubator.apache.org>
> > > > > >> >> > > > cc:
> > > > > >> >> > > > Subject: Train selectors
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Yes... again...
> > > > > >> >> > > >
> > > > > >> >> > > >I made a new renderer and it work quite well,
> > > > but I had to
> > > > > >> >> > > >use :ora-visited and :ora-active for some
> > > > selectors because
> > > > > >> >> > > >those
> > > > > >> are
> > > > > >> >> > > >"pass through"
> > > > > >> >> > > >values.
> > > > > >> >> > > >Anyone have better name suggestion while we
> > > > implement state
> > > > > >> >> > > >interception on a per component basis?
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >Regards,
> > > > > >> >> > > >
> > > > > >> >> > > >~ Simon
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > > >
> > > > > >> >> > >
> > > > > >> >> > >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >> >
> > > > > >> >>
> > > > > >> >>
> > > > > >> >
> > > > > >>
> > > > > >>
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
> >
> >
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Yes it would. I'll start by uploading that damned patch first though... And
since I have a rendering issue with IE, this will take one more day...
Damned IE... Oh and I support RTL fine already as well... There's just that
strange bug if joins under IE...
The generated CSS includes the class and this is the only class using that
join icon...
.af_train_join.p_AFUnvisited,.xc1.p_AFUnvisited
{background-image:url('/TrinidadDemo-MenuModel-context-root/skins/train/skin_images/JoinUnvisited.gif');background-repeat:repeat-x}
The classes on the content cell are
<td colspan="3" class="p_AFUnvisited x72 x73">
<!-- Start: org.apache.myfaces.trinidad.Command["_id5"] -->
<a onclick="submitForm('_id2',1,{source:'_id4:2:_id5'});return false;"
href="#" class="x79">Useless step</a>
</td>
And the join get rendered for that step in a strange way... ... I hate IE...
Regards,
~ Simon
On 8/29/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
> It may also be a good idea to update MVariableResolver.java, the test code
> that sets up MenuModel #{pageList}, to include the visited, disabled,
> unvisited + readOnly states. Right now the train golden file only tests for
> selected and unvisited states.
>
> - Pavitra
>
>
> > -----Original Message-----
> > From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com]
> > Sent: Tuesday, August 29, 2006 2:46 PM
> > To: adffaces-dev@incubator.apache.org
> > Subject: RE: TrainRenderer using the new train selectors
> >
> > Hello Simon, Jeanne,
> >
> > I have some comments on both your email exhanges. I have
> > consolidated all the items below as it was getting hard to read.
> >
> >
> > >>>>
> > - af|train::stop combinable with :selected, :disabled,
> > :completed (will probably become p_AFVisited) and :unvisited.
> > You can append :readOnly at the end of the result. So
> > af|train::stop:unvisited:readOnly is valid
> > >>>>
> >
> > - Do you think we need to support an "af|train::stop:visited:readOnly"
> > - I believe Jeanne wanted to have states that don't use camel
> > case. So readOnly should be read-only
> >
> > >>>>
> > - af|train::link
> > >>>>
> > - should this be ::stop-link or ::link good enough?
> >
> >
> > >>>>
> > - af|train::join combinable with :disabled, :completed,
> > :unvisited and :outer (:outer is used to add joins outside
> > the edge of the train. I don't think many will use it, but it
> > cost nothing and add more customization
> > possibilities)
> > >>>>
> >
> > - :join-outer pseudo element is good enough. Is this used
> > outside the parent train icons or between the parent train
> > icons and the overflow (or stop)?
> > - do we still have the join-overflow? This comes between the
> > overflow and regular stops. It may be useful in cases where
> > only these joins need not be displayed.
> >
> >
> > >>>>
> > - af|train::overflow-start combinable with :disabled and :readOnly
> > - af|train::overflow-end combinable with :disabled,
> > :unvisited and :readOnly
> > >>>>
> >
> > - Do you think we should support :unvisited state on
> > overflow-start? This may be useful in cases where the train
> > is not sequential? I have a scenario where all stops in the
> > train are enabled and user can jump around any stop without a
> > prescribed order.
> >
> > >>>>
> > I have the following valid suffixes: (I could not use
> > ::content for example since double :: is now prevented from
> > Adam's change to prevent some strange behavior it seem)
> > -content (for example, the following is valid:
> > af|train::stop-content and
> > af|train::stop:selected-content. This selector refers to the
> > link cell
> > af|(of the train)
> > >>>>
> >
> > - I agree with Jeanne. Let's call it stop-content:selected. I
> > don't think we need stop-content:visited or
> > stop-content:unvisited. It's an overkill.
> >
> > >>>>
> > -icon-block (as above but refers to the icon cell)
> > >>>>
> >
> > - Perhaps we should have a convention of using -block suffix
> > for style classes that go on <div> and -cell for styles that
> > go on td. Is that acceptable?
> >
> > >>>>
> > I use the same join rule as you, that is previous stop
> > determine the join state, except for the join after the
> > selected stop. The only exception are disabled stops, those
> > have disabled joins on both sides.
> > >>>>
> >
> > - the join after the selected stop should ideally have the
> > state of the following stop. Isn't it? Do you think it will
> > be easier to just show the left join of a disabled stop as
> > "disabled". So if an unvisited stop follows the disabled
> > stop, the join between them will show up as unvisited. At
> > least this is how I have implemented it. I use the same rule
> > for displaying joins before overflows.
> >
> >
> > >>>>
> > I also go rid of the separator, it's redundant as you can add
> > padding to -content selector. I also added two aliases
> > .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> > spacing between stop with something like the following:
> > .AFTrainContent:alias
> > {
> > padding-left: 8px;
> > padding-right: 8px;
> > }
> > >>>>
> > When you say separator, do you mean the spacer that separates
> > stops? Where is the alias above included? Can you send me a
> > HTML fragment?
> >
> > Thanks
> > - Pavitra
> >
> >
> > > -----Original Message-----
> > > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > Sent: Tuesday, August 29, 2006 11:43 AM
> > > To: adffaces-dev@incubator.apache.org
> > > Subject: Re: TrainRenderer using the new train selectors
> > >
> > > Ok,
> > >
> > > Then if those selectors are ok for you as well Pavitra I'll
> > make the
> > > changes to -outer and and -icon-cell tonight and upload the
> > patch as
> > > well as a test skin I used.
> > >
> > >
> > > Regards,
> > >
> > > ~ Simon
> > >
> > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >
> > > > yep, it all makes sense.
> > > > I can see where you'd want to use a ::content. That would
> > > make sense.
> > > > We don't do this yet in any of our skinning keys, so I am
> > fine with
> > > > the -content, since we do that all over the place. :)
> > > >
> > > > - Jeanne
> > > >
> > > > Simon Lessard wrote:
> > > >
> > > > > Oups, comments below
> > > > >
> > > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > > >
> > > > >>
> > > > >> one question below
> > > > >>
> > > > >> Simon Lessard wrote:
> > > > >>
> > > > >> > Hello Pavitra,
> > > > >> >
> > > > >> > I had to do about the same changes on my side. Here's
> > > my list of
> > > > >> selector
> > > > >> > and the rules I used:
> > > > >> >
> > > > >> > - af|train::stop combinable with :selected, :disabled,
> > > :completed
> > > > >> (will
> > > > >> > probably become p_AFVisited) and :unvisited. You can append
> > > > >> > :readOnly at the end of the result. So
> > > > >> > af|train::stop:unvisited:readOnly is valid
> > > > >> > - af|train::link
> > > > >> > - af|train::join combinable with :disabled, :completed,
> > > > >> > :unvisited
> > > > and
> > > > >> > :outer (:outer is used to add joins outside the edge of the
> > > > >> > train. I don't think many will use it, but it cost
> > nothing and
> > > > >> > add more
> > > > customization
> > > > >> > possibilities)
> > > > >>
> > > > >> Is :outer a state? It sounds to me like it should be
> > > > >> af|train::join-outer
> > > > >
> > > > >
> > > > >
> > > > > yes, it could be ::join-outer, was made a state only to fit the
> > > > > other join selectors, but it does make more sense to use
> > > -outer for
> > > > > that one.
> > > > >
> > > > >
> > > > > Does that make more sense now?
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > ~ Simon
> > > > >
> > > > >> - af|train::overflow-start combinable with :disabled and
> > > :readOnly
> > > > >> > - af|train::overflow-end combinable with :disabled,
> > :unvisited
> > > > >> > and :readOnly
> > > > >> >
> > > > >> > I have the following valid suffixes: (I could not use
> > > ::content
> > > > >> > for example since double :: is now prevented from
> > > Adam's change
> > > > >> > to prevent some strange behavior it seem)
> > > > >>
> > > > >> I don't think two pseudo-elements make sense, does it?
> > I suppose
> > > > >> you could have a piece of a piece. Adam prevented it
> > > because there
> > > > >> were bugs in it. I can't recall what the bugs were.
> > > > >
> > > > >
> > > > >
> > > > > I was seeing them more as sub-elements, like ::stop::content
> > > > > (content of the
> > > > > stop)
> > > > >
> > > > >> -content (for example, the following is valid:
> > > > >> af|train::stop-content
> > > > >> > and
> > > > >> > af|train::stop:selected-content. This selector refers
> > > to the link
> > > > cell
> > > > >> fo
> > > > >> > the train)
> > > > >>
> > > > >> What does a :selected-content 'state' mean?
> > > > >> How is it different than af|train::stop-content:selected?
> > > > >
> > > > >
> > > > >
> > > > > My bad there, af|train::stop-content:selected is actually
> > > what I use.
> > > > > Even
> > > > > if a better selector would have been
> > > > > af|train::stop:selected::content imho.
> > > > >
> > > > >> -icon-block (as above but refers to the icon cell)
> > > > >>
> > > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > > our skinning
> > > > >> selectors.
> > > > >
> > > > >
> > > > >
> > > > > Yes I could, I was using block only because it was in Pavitra
> > > > > document
> > > > at
> > > > > first.
> > > > >
> > > > >>
> > > > >> > The icons follow the same rule.
> > > > >> >
> > > > >> > On 8/28/06, Pavitra Subramaniam
> > > <pa...@oracle.com>
> > > > >> wrote:
> > > > >> >
> > > > >> >>
> > > > >> >> Hello Simon,
> > > > >> >>
> > > > >> >> I have also almost completed implementing the TrainRenderer
> > > > >> >> using
> > > > the
> > > > >> >> new
> > > > >> >> skin selectors. It's great to know you are done as
> > > well. If you
> > > > >> plan to
> > > > >> >> check in the train renderer code anytime soon, can we
> > > agree on
> > > > >> >> the common list of skin selectors, so that I can
> > > reuse them for
> > > > >> >> my work internally at Oracle? I had to make the following
> > > > >> >> changes and wanted to give you
> > > > an
> > > > >> >> update.
> > > > >> >>
> > > > >> >> 1. I had to introduce a new state called
> > "read-only". This is
> > > > >> different
> > > > >> >> from "disabled" state, like I explained in a previous email.
> > > > >> >>
> > > > >> >> 2. I removed some redundant skin hooks - I can send you the
> > > > >> >> updated
> > > > >> list
> > > > >> >> of selectors I am using. I also couldn't get the
> > "pass-through
> > > > >> states"
> > > > >> >> :visited, :active and :unvisited to work, just as
> > > you. So I have
> > > > >> >> temporarily defined selectors like Jeanne suggested (using
> > > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > > >> >> :selected).
> > > > >> >>
> > > > >> >> 3. Finally I have simplified the rules for
> > > determining the state
> > > > >> >> of joins.
> > > > >> >> I figured it would be much simpler if we did the
> > > following. The
> > > > >> >> join to the left of a stop, is 'always in the same
> > > state as the
> > > > >> >> stop' (Overflows could also follow the same rules as
> > > stops). So
> > > > >> >> for instance for a train
> > > > >> like
> > > > >> >>
> > > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > > >> >> vr uv v d uvr v
> > > > >> >>
> > > > >> >>
> > > > >> >> NOTE: The only exception, is the join to the left
> > of an active
> > > > >> stop is
> > > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > > >> >> read-only'. Read-only implies
> > > > >> the
> > > > >> >> stop cannot be reached (and hence not clickable) and
> > > is dictated
> > > > >> by the
> > > > >> >> 'readOnly' property on the component commandNavigationItem.
> > > > >> >>
> > > > >> >> Please let me know if the above is ok.
> > > > >> >>
> > > > >> >>
> > > > >> >> Thanks
> > > > >> >> - Pavitra
> > > > >> >>
> > > > >> >>
> > > > >> >> > -----Original Message-----
> > > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > > >> >> > To: adffaces-dev@incubator.apache.org
> > > > >> >> > Subject: Re: Train selectors
> > > > >> >> >
> > > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > > >> >> >
> > > > >> >> > On 8/28/06, Jeanne Waldman
> > > <je...@oracle.com> wrote:
> > > > >> >> > >
> > > > >> >> > > I was thinking :selected for :active. :selected
> > could be
> > > > >> >> > > used
> > > > for
> > > > >> >> > > other components, too.
> > > > >> >> > > For :visited/:unvisited, I can't think of a better name.
> > > > >> >> > I'm thinking
> > > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> > until we
> > > > >> >> > > have
> > > > the
> > > > >> >> > > pseudo-class support in. These wouldn't in a public api
> > > > >> >> > format, though.
> > > > >> >> > >
> > > > >> >> > > - Jeanne
> > > > >> >> > >
> > > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > > >> >> > >
> > > > >> >> > > >Hello,
> > > > >> >> > > >
> > > > >> >> > > >I thought about the following name changes for
> > > the selectors:
> > > > >> >> > > >
> > > > >> >> > > >:active --> :current or :selected
> > > :visited/:unvisited -->
> > > > >> >> > > >:completed/:uncompleted or
> > > > :seen/:unseen
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Do you have any other idea/preference?
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Regards,
> > > > >> >> > > >
> > > > >> >> > > >~ Simon
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > > >> >> > > >2006-08-25 22:49
> > > > >> >> > > >Please respond to adffaces-dev
> > > > >> >> > > >
> > > > >> >> > > > To: "Trinidad - Dev"
> > > > >> >> > <ad...@incubator.apache.org>
> > > > >> >> > > > cc:
> > > > >> >> > > > Subject: Train selectors
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Yes... again...
> > > > >> >> > > >
> > > > >> >> > > >I made a new renderer and it work quite well,
> > > but I had to
> > > > >> >> > > >use :ora-visited and :ora-active for some
> > > selectors because
> > > > >> >> > > >those
> > > > >> are
> > > > >> >> > > >"pass through"
> > > > >> >> > > >values.
> > > > >> >> > > >Anyone have better name suggestion while we
> > > implement state
> > > > >> >> > > >interception on a per component basis?
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >Regards,
> > > > >> >> > > >
> > > > >> >> > > >~ Simon
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > > >
> > > > >> >> > >
> > > > >> >> > >
> > > > >> >> >
> > > > >> >> >
> > > > >> >> >
> > > > >> >>
> > > > >> >>
> > > > >> >
> > > > >>
> > > > >>
> > > > >
> > > >
> > > >
> > >
> > >
> > >
> >
> >
> >
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
It may also be a good idea to update MVariableResolver.java, the test code that sets up MenuModel #{pageList}, to include the visited, disabled, unvisited + readOnly states. Right now the train golden file only tests for selected and unvisited states.
- Pavitra
> -----Original Message-----
> From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com]
> Sent: Tuesday, August 29, 2006 2:46 PM
> To: adffaces-dev@incubator.apache.org
> Subject: RE: TrainRenderer using the new train selectors
>
> Hello Simon, Jeanne,
>
> I have some comments on both your email exhanges. I have
> consolidated all the items below as it was getting hard to read.
>
>
> >>>>
> - af|train::stop combinable with :selected, :disabled,
> :completed (will probably become p_AFVisited) and :unvisited.
> You can append :readOnly at the end of the result. So
> af|train::stop:unvisited:readOnly is valid
> >>>>
>
> - Do you think we need to support an "af|train::stop:visited:readOnly"
> - I believe Jeanne wanted to have states that don't use camel
> case. So readOnly should be read-only
>
> >>>>
> - af|train::link
> >>>>
> - should this be ::stop-link or ::link good enough?
>
>
> >>>>
> - af|train::join combinable with :disabled, :completed,
> :unvisited and :outer (:outer is used to add joins outside
> the edge of the train. I don't think many will use it, but it
> cost nothing and add more customization
> possibilities)
> >>>>
>
> - :join-outer pseudo element is good enough. Is this used
> outside the parent train icons or between the parent train
> icons and the overflow (or stop)?
> - do we still have the join-overflow? This comes between the
> overflow and regular stops. It may be useful in cases where
> only these joins need not be displayed.
>
>
> >>>>
> - af|train::overflow-start combinable with :disabled and :readOnly
> - af|train::overflow-end combinable with :disabled,
> :unvisited and :readOnly
> >>>>
>
> - Do you think we should support :unvisited state on
> overflow-start? This may be useful in cases where the train
> is not sequential? I have a scenario where all stops in the
> train are enabled and user can jump around any stop without a
> prescribed order.
>
> >>>>
> I have the following valid suffixes: (I could not use
> ::content for example since double :: is now prevented from
> Adam's change to prevent some strange behavior it seem)
> -content (for example, the following is valid:
> af|train::stop-content and
> af|train::stop:selected-content. This selector refers to the
> link cell
> af|(of the train)
> >>>>
>
> - I agree with Jeanne. Let's call it stop-content:selected. I
> don't think we need stop-content:visited or
> stop-content:unvisited. It's an overkill.
>
> >>>>
> -icon-block (as above but refers to the icon cell)
> >>>>
>
> - Perhaps we should have a convention of using -block suffix
> for style classes that go on <div> and -cell for styles that
> go on td. Is that acceptable?
>
> >>>>
> I use the same join rule as you, that is previous stop
> determine the join state, except for the join after the
> selected stop. The only exception are disabled stops, those
> have disabled joins on both sides.
> >>>>
>
> - the join after the selected stop should ideally have the
> state of the following stop. Isn't it? Do you think it will
> be easier to just show the left join of a disabled stop as
> "disabled". So if an unvisited stop follows the disabled
> stop, the join between them will show up as unvisited. At
> least this is how I have implemented it. I use the same rule
> for displaying joins before overflows.
>
>
> >>>>
> I also go rid of the separator, it's redundant as you can add
> padding to -content selector. I also added two aliases
> .AFTrainContent:alias and .AFTrainIconBlock. So you can add
> spacing between stop with something like the following:
> .AFTrainContent:alias
> {
> padding-left: 8px;
> padding-right: 8px;
> }
> >>>>
> When you say separator, do you mean the spacer that separates
> stops? Where is the alias above included? Can you send me a
> HTML fragment?
>
> Thanks
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Tuesday, August 29, 2006 11:43 AM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: TrainRenderer using the new train selectors
> >
> > Ok,
> >
> > Then if those selectors are ok for you as well Pavitra I'll
> make the
> > changes to -outer and and -icon-cell tonight and upload the
> patch as
> > well as a test skin I used.
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >
> > > yep, it all makes sense.
> > > I can see where you'd want to use a ::content. That would
> > make sense.
> > > We don't do this yet in any of our skinning keys, so I am
> fine with
> > > the -content, since we do that all over the place. :)
> > >
> > > - Jeanne
> > >
> > > Simon Lessard wrote:
> > >
> > > > Oups, comments below
> > > >
> > > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > > >
> > > >>
> > > >> one question below
> > > >>
> > > >> Simon Lessard wrote:
> > > >>
> > > >> > Hello Pavitra,
> > > >> >
> > > >> > I had to do about the same changes on my side. Here's
> > my list of
> > > >> selector
> > > >> > and the rules I used:
> > > >> >
> > > >> > - af|train::stop combinable with :selected, :disabled,
> > :completed
> > > >> (will
> > > >> > probably become p_AFVisited) and :unvisited. You can append
> > > >> > :readOnly at the end of the result. So
> > > >> > af|train::stop:unvisited:readOnly is valid
> > > >> > - af|train::link
> > > >> > - af|train::join combinable with :disabled, :completed,
> > > >> > :unvisited
> > > and
> > > >> > :outer (:outer is used to add joins outside the edge of the
> > > >> > train. I don't think many will use it, but it cost
> nothing and
> > > >> > add more
> > > customization
> > > >> > possibilities)
> > > >>
> > > >> Is :outer a state? It sounds to me like it should be
> > > >> af|train::join-outer
> > > >
> > > >
> > > >
> > > > yes, it could be ::join-outer, was made a state only to fit the
> > > > other join selectors, but it does make more sense to use
> > -outer for
> > > > that one.
> > > >
> > > >
> > > > Does that make more sense now?
> > > >
> > > >
> > > > Regards,
> > > >
> > > > ~ Simon
> > > >
> > > >> - af|train::overflow-start combinable with :disabled and
> > :readOnly
> > > >> > - af|train::overflow-end combinable with :disabled,
> :unvisited
> > > >> > and :readOnly
> > > >> >
> > > >> > I have the following valid suffixes: (I could not use
> > ::content
> > > >> > for example since double :: is now prevented from
> > Adam's change
> > > >> > to prevent some strange behavior it seem)
> > > >>
> > > >> I don't think two pseudo-elements make sense, does it?
> I suppose
> > > >> you could have a piece of a piece. Adam prevented it
> > because there
> > > >> were bugs in it. I can't recall what the bugs were.
> > > >
> > > >
> > > >
> > > > I was seeing them more as sub-elements, like ::stop::content
> > > > (content of the
> > > > stop)
> > > >
> > > >> -content (for example, the following is valid:
> > > >> af|train::stop-content
> > > >> > and
> > > >> > af|train::stop:selected-content. This selector refers
> > to the link
> > > cell
> > > >> fo
> > > >> > the train)
> > > >>
> > > >> What does a :selected-content 'state' mean?
> > > >> How is it different than af|train::stop-content:selected?
> > > >
> > > >
> > > >
> > > > My bad there, af|train::stop-content:selected is actually
> > what I use.
> > > > Even
> > > > if a better selector would have been
> > > > af|train::stop:selected::content imho.
> > > >
> > > >> -icon-block (as above but refers to the icon cell)
> > > >>
> > > >> Could you say -icon-cell? We use 'cell' quite a bit in
> > our skinning
> > > >> selectors.
> > > >
> > > >
> > > >
> > > > Yes I could, I was using block only because it was in Pavitra
> > > > document
> > > at
> > > > first.
> > > >
> > > >>
> > > >> > The icons follow the same rule.
> > > >> >
> > > >> > On 8/28/06, Pavitra Subramaniam
> > <pa...@oracle.com>
> > > >> wrote:
> > > >> >
> > > >> >>
> > > >> >> Hello Simon,
> > > >> >>
> > > >> >> I have also almost completed implementing the TrainRenderer
> > > >> >> using
> > > the
> > > >> >> new
> > > >> >> skin selectors. It's great to know you are done as
> > well. If you
> > > >> plan to
> > > >> >> check in the train renderer code anytime soon, can we
> > agree on
> > > >> >> the common list of skin selectors, so that I can
> > reuse them for
> > > >> >> my work internally at Oracle? I had to make the following
> > > >> >> changes and wanted to give you
> > > an
> > > >> >> update.
> > > >> >>
> > > >> >> 1. I had to introduce a new state called
> "read-only". This is
> > > >> different
> > > >> >> from "disabled" state, like I explained in a previous email.
> > > >> >>
> > > >> >> 2. I removed some redundant skin hooks - I can send you the
> > > >> >> updated
> > > >> list
> > > >> >> of selectors I am using. I also couldn't get the
> "pass-through
> > > >> states"
> > > >> >> :visited, :active and :unvisited to work, just as
> > you. So I have
> > > >> >> temporarily defined selectors like Jeanne suggested (using
> > > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > > >> >> :selected).
> > > >> >>
> > > >> >> 3. Finally I have simplified the rules for
> > determining the state
> > > >> >> of joins.
> > > >> >> I figured it would be much simpler if we did the
> > following. The
> > > >> >> join to the left of a stop, is 'always in the same
> > state as the
> > > >> >> stop' (Overflows could also follow the same rules as
> > stops). So
> > > >> >> for instance for a train
> > > >> like
> > > >> >>
> > > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > > >> >> vr uv v d uvr v
> > > >> >>
> > > >> >>
> > > >> >> NOTE: The only exception, is the join to the left
> of an active
> > > >> stop is
> > > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > > >> >> read-only'. Read-only implies
> > > >> the
> > > >> >> stop cannot be reached (and hence not clickable) and
> > is dictated
> > > >> by the
> > > >> >> 'readOnly' property on the component commandNavigationItem.
> > > >> >>
> > > >> >> Please let me know if the above is ok.
> > > >> >>
> > > >> >>
> > > >> >> Thanks
> > > >> >> - Pavitra
> > > >> >>
> > > >> >>
> > > >> >> > -----Original Message-----
> > > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > > >> >> > To: adffaces-dev@incubator.apache.org
> > > >> >> > Subject: Re: Train selectors
> > > >> >> >
> > > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > > >> >> >
> > > >> >> > On 8/28/06, Jeanne Waldman
> > <je...@oracle.com> wrote:
> > > >> >> > >
> > > >> >> > > I was thinking :selected for :active. :selected
> could be
> > > >> >> > > used
> > > for
> > > >> >> > > other components, too.
> > > >> >> > > For :visited/:unvisited, I can't think of a better name.
> > > >> >> > I'm thinking
> > > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited
> until we
> > > >> >> > > have
> > > the
> > > >> >> > > pseudo-class support in. These wouldn't in a public api
> > > >> >> > format, though.
> > > >> >> > >
> > > >> >> > > - Jeanne
> > > >> >> > >
> > > >> >> > > Simon_Lessard@DMR.CA wrote:
> > > >> >> > >
> > > >> >> > > >Hello,
> > > >> >> > > >
> > > >> >> > > >I thought about the following name changes for
> > the selectors:
> > > >> >> > > >
> > > >> >> > > >:active --> :current or :selected
> > :visited/:unvisited -->
> > > >> >> > > >:completed/:uncompleted or
> > > :seen/:unseen
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Do you have any other idea/preference?
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Regards,
> > > >> >> > > >
> > > >> >> > > >~ Simon
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > > >> >> > > >2006-08-25 22:49
> > > >> >> > > >Please respond to adffaces-dev
> > > >> >> > > >
> > > >> >> > > > To: "Trinidad - Dev"
> > > >> >> > <ad...@incubator.apache.org>
> > > >> >> > > > cc:
> > > >> >> > > > Subject: Train selectors
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Yes... again...
> > > >> >> > > >
> > > >> >> > > >I made a new renderer and it work quite well,
> > but I had to
> > > >> >> > > >use :ora-visited and :ora-active for some
> > selectors because
> > > >> >> > > >those
> > > >> are
> > > >> >> > > >"pass through"
> > > >> >> > > >values.
> > > >> >> > > >Anyone have better name suggestion while we
> > implement state
> > > >> >> > > >interception on a per component basis?
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >Regards,
> > > >> >> > > >
> > > >> >> > > >~ Simon
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > > >
> > > >> >> > >
> > > >> >> > >
> > > >> >> >
> > > >> >> >
> > > >> >> >
> > > >> >>
> > > >> >>
> > > >> >
> > > >>
> > > >>
> > > >
> > >
> > >
> >
> >
> >
>
>
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Hello Simon, Jeanne,
I have some comments on both your email exhanges. I have consolidated all the items below as it was getting hard to read.
>>>>
- af|train::stop combinable with :selected, :disabled, :completed (will probably become p_AFVisited) and :unvisited. You can append :readOnly at the end of the result. So af|train::stop:unvisited:readOnly is valid
>>>>
- Do you think we need to support an "af|train::stop:visited:readOnly"
- I believe Jeanne wanted to have states that don't use camel case. So readOnly should be read-only
>>>>
- af|train::link
>>>>
- should this be ::stop-link or ::link good enough?
>>>>
- af|train::join combinable with :disabled, :completed, :unvisited and :outer (:outer is used to add joins outside the edge of the train. I don't think many will use it, but it cost nothing and add more customization
possibilities)
>>>>
- :join-outer pseudo element is good enough. Is this used outside the parent train icons or between the parent train icons and the overflow (or stop)?
- do we still have the join-overflow? This comes between the overflow and regular stops. It may be useful in cases where only these joins need not be displayed.
>>>>
- af|train::overflow-start combinable with :disabled and :readOnly
- af|train::overflow-end combinable with :disabled, :unvisited and :readOnly
>>>>
- Do you think we should support :unvisited state on overflow-start? This may be useful in cases where the train is not sequential? I have a scenario where all stops in the train are enabled and user can jump around any stop without a prescribed order.
>>>>
I have the following valid suffixes: (I could not use ::content for example since double :: is now prevented from Adam's change to prevent some strange behavior it seem) -content (for example, the following is valid: af|train::stop-content and
af|train::stop:selected-content. This selector refers to the link cell (of the train)
>>>>
- I agree with Jeanne. Let's call it stop-content:selected. I don't think we need stop-content:visited or stop-content:unvisited. It's an overkill.
>>>>
-icon-block (as above but refers to the icon cell)
>>>>
- Perhaps we should have a convention of using -block suffix for style classes that go on <div> and -cell for styles that go on td. Is that acceptable?
>>>>
I use the same join rule as you, that is previous stop determine the join state, except for the join after the selected stop. The only exception are disabled stops, those have disabled joins on both sides.
>>>>
- the join after the selected stop should ideally have the state of the following stop. Isn't it? Do you think it will be easier to just show the left join of a disabled stop as "disabled". So if an unvisited stop follows the disabled stop, the join between them will show up as unvisited. At least this is how I have implemented it. I use the same rule for displaying joins before overflows.
>>>>
I also go rid of the separator, it's redundant as you can add padding to -content selector. I also added two aliases .AFTrainContent:alias and .AFTrainIconBlock. So you can add spacing between stop with something like the following:
.AFTrainContent:alias
{
padding-left: 8px;
padding-right: 8px;
}
>>>>
When you say separator, do you mean the spacer that separates stops? Where is the alias above included? Can you send me a HTML fragment?
Thanks
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Tuesday, August 29, 2006 11:43 AM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: TrainRenderer using the new train selectors
>
> Ok,
>
> Then if those selectors are ok for you as well Pavitra I'll
> make the changes to -outer and and -icon-cell tonight and
> upload the patch as well as a test skin I used.
>
>
> Regards,
>
> ~ Simon
>
> On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> >
> > yep, it all makes sense.
> > I can see where you'd want to use a ::content. That would
> make sense.
> > We don't do this yet in any of our skinning keys, so I am fine with
> > the -content, since we do that all over the place. :)
> >
> > - Jeanne
> >
> > Simon Lessard wrote:
> >
> > > Oups, comments below
> > >
> > > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >
> > >>
> > >> one question below
> > >>
> > >> Simon Lessard wrote:
> > >>
> > >> > Hello Pavitra,
> > >> >
> > >> > I had to do about the same changes on my side. Here's
> my list of
> > >> selector
> > >> > and the rules I used:
> > >> >
> > >> > - af|train::stop combinable with :selected, :disabled,
> :completed
> > >> (will
> > >> > probably become p_AFVisited) and :unvisited. You can append
> > >> > :readOnly at the end of the result. So
> > >> > af|train::stop:unvisited:readOnly is valid
> > >> > - af|train::link
> > >> > - af|train::join combinable with :disabled, :completed,
> > >> > :unvisited
> > and
> > >> > :outer (:outer is used to add joins outside the edge of the
> > >> > train. I don't think many will use it, but it cost nothing and
> > >> > add more
> > customization
> > >> > possibilities)
> > >>
> > >> Is :outer a state? It sounds to me like it should be
> > >> af|train::join-outer
> > >
> > >
> > >
> > > yes, it could be ::join-outer, was made a state only to fit the
> > > other join selectors, but it does make more sense to use
> -outer for
> > > that one.
> > >
> > >
> > > Does that make more sense now?
> > >
> > >
> > > Regards,
> > >
> > > ~ Simon
> > >
> > >> - af|train::overflow-start combinable with :disabled and
> :readOnly
> > >> > - af|train::overflow-end combinable with :disabled, :unvisited
> > >> > and :readOnly
> > >> >
> > >> > I have the following valid suffixes: (I could not use
> ::content
> > >> > for example since double :: is now prevented from
> Adam's change
> > >> > to prevent some strange behavior it seem)
> > >>
> > >> I don't think two pseudo-elements make sense, does it? I suppose
> > >> you could have a piece of a piece. Adam prevented it
> because there
> > >> were bugs in it. I can't recall what the bugs were.
> > >
> > >
> > >
> > > I was seeing them more as sub-elements, like ::stop::content
> > > (content of the
> > > stop)
> > >
> > >> -content (for example, the following is valid:
> > >> af|train::stop-content
> > >> > and
> > >> > af|train::stop:selected-content. This selector refers
> to the link
> > cell
> > >> fo
> > >> > the train)
> > >>
> > >> What does a :selected-content 'state' mean?
> > >> How is it different than af|train::stop-content:selected?
> > >
> > >
> > >
> > > My bad there, af|train::stop-content:selected is actually
> what I use.
> > > Even
> > > if a better selector would have been
> > > af|train::stop:selected::content imho.
> > >
> > >> -icon-block (as above but refers to the icon cell)
> > >>
> > >> Could you say -icon-cell? We use 'cell' quite a bit in
> our skinning
> > >> selectors.
> > >
> > >
> > >
> > > Yes I could, I was using block only because it was in Pavitra
> > > document
> > at
> > > first.
> > >
> > >>
> > >> > The icons follow the same rule.
> > >> >
> > >> > On 8/28/06, Pavitra Subramaniam
> <pa...@oracle.com>
> > >> wrote:
> > >> >
> > >> >>
> > >> >> Hello Simon,
> > >> >>
> > >> >> I have also almost completed implementing the TrainRenderer
> > >> >> using
> > the
> > >> >> new
> > >> >> skin selectors. It's great to know you are done as
> well. If you
> > >> plan to
> > >> >> check in the train renderer code anytime soon, can we
> agree on
> > >> >> the common list of skin selectors, so that I can
> reuse them for
> > >> >> my work internally at Oracle? I had to make the following
> > >> >> changes and wanted to give you
> > an
> > >> >> update.
> > >> >>
> > >> >> 1. I had to introduce a new state called "read-only". This is
> > >> different
> > >> >> from "disabled" state, like I explained in a previous email.
> > >> >>
> > >> >> 2. I removed some redundant skin hooks - I can send you the
> > >> >> updated
> > >> list
> > >> >> of selectors I am using. I also couldn't get the "pass-through
> > >> states"
> > >> >> :visited, :active and :unvisited to work, just as
> you. So I have
> > >> >> temporarily defined selectors like Jeanne suggested (using
> > >> >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> > >> >> :selected).
> > >> >>
> > >> >> 3. Finally I have simplified the rules for
> determining the state
> > >> >> of joins.
> > >> >> I figured it would be much simpler if we did the
> following. The
> > >> >> join to the left of a stop, is 'always in the same
> state as the
> > >> >> stop' (Overflows could also follow the same rules as
> stops). So
> > >> >> for instance for a train
> > >> like
> > >> >>
> > >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > >> >> vr uv v d uvr v
> > >> >>
> > >> >>
> > >> >> NOTE: The only exception, is the join to the left of an active
> > >> stop is
> > >> >> visited. Also, UVR and VR are stops that are in 2 states
> > >> >> simulataneously - 'visited & read-only' and 'unvisited &
> > >> >> read-only'. Read-only implies
> > >> the
> > >> >> stop cannot be reached (and hence not clickable) and
> is dictated
> > >> by the
> > >> >> 'readOnly' property on the component commandNavigationItem.
> > >> >>
> > >> >> Please let me know if the above is ok.
> > >> >>
> > >> >>
> > >> >> Thanks
> > >> >> - Pavitra
> > >> >>
> > >> >>
> > >> >> > -----Original Message-----
> > >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > >> >> > Sent: Monday, August 28, 2006 11:43 AM
> > >> >> > To: adffaces-dev@incubator.apache.org
> > >> >> > Subject: Re: Train selectors
> > >> >> >
> > >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > >> >> >
> > >> >> > On 8/28/06, Jeanne Waldman
> <je...@oracle.com> wrote:
> > >> >> > >
> > >> >> > > I was thinking :selected for :active. :selected could be
> > >> >> > > used
> > for
> > >> >> > > other components, too.
> > >> >> > > For :visited/:unvisited, I can't think of a better name.
> > >> >> > I'm thinking
> > >> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we
> > >> >> > > have
> > the
> > >> >> > > pseudo-class support in. These wouldn't in a public api
> > >> >> > format, though.
> > >> >> > >
> > >> >> > > - Jeanne
> > >> >> > >
> > >> >> > > Simon_Lessard@DMR.CA wrote:
> > >> >> > >
> > >> >> > > >Hello,
> > >> >> > > >
> > >> >> > > >I thought about the following name changes for
> the selectors:
> > >> >> > > >
> > >> >> > > >:active --> :current or :selected
> :visited/:unvisited -->
> > >> >> > > >:completed/:uncompleted or
> > :seen/:unseen
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >Do you have any other idea/preference?
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >Regards,
> > >> >> > > >
> > >> >> > > >~ Simon
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >"Simon Lessard" <si...@gmail.com>
> > >> >> > > >2006-08-25 22:49
> > >> >> > > >Please respond to adffaces-dev
> > >> >> > > >
> > >> >> > > > To: "Trinidad - Dev"
> > >> >> > <ad...@incubator.apache.org>
> > >> >> > > > cc:
> > >> >> > > > Subject: Train selectors
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >Yes... again...
> > >> >> > > >
> > >> >> > > >I made a new renderer and it work quite well,
> but I had to
> > >> >> > > >use :ora-visited and :ora-active for some
> selectors because
> > >> >> > > >those
> > >> are
> > >> >> > > >"pass through"
> > >> >> > > >values.
> > >> >> > > >Anyone have better name suggestion while we
> implement state
> > >> >> > > >interception on a per component basis?
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >Regards,
> > >> >> > > >
> > >> >> > > >~ Simon
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >
> > >> >> > > >
> > >> >> > >
> > >> >> > >
> > >> >> >
> > >> >> >
> > >> >> >
> > >> >>
> > >> >>
> > >> >
> > >>
> > >>
> > >
> >
> >
>
>
>
Re: TrainRenderer using the new train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
Sounds good to me.
Simon Lessard wrote:
> Ok,
>
> Then if those selectors are ok for you as well Pavitra I'll make the
> changes
> to -outer and and -icon-cell tonight and upload the patch as well as a
> test
> skin I used.
>
>
> Regards,
>
> ~ Simon
>
> On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
>
>>
>> yep, it all makes sense.
>> I can see where you'd want to use a ::content. That would make sense. We
>> don't do this yet in any of our skinning keys, so I am fine with the
>> -content, since we do that all over the place. :)
>>
>> - Jeanne
>>
>> Simon Lessard wrote:
>>
>> > Oups, comments below
>> >
>> > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
>> >
>> >>
>> >> one question below
>> >>
>> >> Simon Lessard wrote:
>> >>
>> >> > Hello Pavitra,
>> >> >
>> >> > I had to do about the same changes on my side. Here's my list of
>> >> selector
>> >> > and the rules I used:
>> >> >
>> >> > - af|train::stop combinable with :selected, :disabled, :completed
>> >> (will
>> >> > probably become p_AFVisited) and :unvisited. You can append
>> :readOnly
>> >> > at the
>> >> > end of the result. So af|train::stop:unvisited:readOnly is valid
>> >> > - af|train::link
>> >> > - af|train::join combinable with :disabled, :completed, :unvisited
>> and
>> >> > :outer (:outer is used to add joins outside the edge of the
>> train. I
>> >> > don't
>> >> > think many will use it, but it cost nothing and add more
>> customization
>> >> > possibilities)
>> >>
>> >> Is :outer a state? It sounds to me like it should be
>> >> af|train::join-outer
>> >
>> >
>> >
>> > yes, it could be ::join-outer, was made a state only to fit the other
>> > join
>> > selectors, but it does make more sense to use -outer for that one.
>> >
>> >
>> > Does that make more sense now?
>> >
>> >
>> > Regards,
>> >
>> > ~ Simon
>> >
>> >> - af|train::overflow-start combinable with :disabled and :readOnly
>> >> > - af|train::overflow-end combinable with :disabled, :unvisited and
>> >> > :readOnly
>> >> >
>> >> > I have the following valid suffixes: (I could not use ::content for
>> >> > example
>> >> > since double :: is now prevented from Adam's change to prevent some
>> >> > strange
>> >> > behavior it seem)
>> >>
>> >> I don't think two pseudo-elements make sense, does it? I suppose you
>> >> could have
>> >> a piece of a piece. Adam prevented it because there were bugs in
>> it. I
>> >> can't recall what the bugs were.
>> >
>> >
>> >
>> > I was seeing them more as sub-elements, like ::stop::content (content
>> > of the
>> > stop)
>> >
>> >> -content (for example, the following is valid:
>> af|train::stop-content
>> >> > and
>> >> > af|train::stop:selected-content. This selector refers to the link
>> cell
>> >> fo
>> >> > the train)
>> >>
>> >> What does a :selected-content 'state' mean?
>> >> How is it different than af|train::stop-content:selected?
>> >
>> >
>> >
>> > My bad there, af|train::stop-content:selected is actually what I use.
>> > Even
>> > if a better selector would have been af|train::stop:selected::content
>> > imho.
>> >
>> >> -icon-block (as above but refers to the icon cell)
>> >>
>> >> Could you say -icon-cell? We use 'cell' quite a bit in our skinning
>> >> selectors.
>> >
>> >
>> >
>> > Yes I could, I was using block only because it was in Pavitra document
>> at
>> > first.
>> >
>> >>
>> >> > The icons follow the same rule.
>> >> >
>> >> > On 8/28/06, Pavitra Subramaniam <pa...@oracle.com>
>> >> wrote:
>> >> >
>> >> >>
>> >> >> Hello Simon,
>> >> >>
>> >> >> I have also almost completed implementing the TrainRenderer using
>> the
>> >> >> new
>> >> >> skin selectors. It's great to know you are done as well. If you
>> >> plan to
>> >> >> check in the train renderer code anytime soon, can we agree on the
>> >> >> common
>> >> >> list of skin selectors, so that I can reuse them for my work
>> >> >> internally at
>> >> >> Oracle? I had to make the following changes and wanted to give you
>> an
>> >> >> update.
>> >> >>
>> >> >> 1. I had to introduce a new state called "read-only". This is
>> >> different
>> >> >> from "disabled" state, like I explained in a previous email.
>> >> >>
>> >> >> 2. I removed some redundant skin hooks - I can send you the
>> updated
>> >> list
>> >> >> of selectors I am using. I also couldn't get the "pass-through
>> >> states"
>> >> >> :visited, :active and :unvisited to work, just as you. So I have
>> >> >> temporarily
>> >> >> defined selectors like Jeanne suggested (using p_AFVisited,
>> >> >> p_AFUnvisited
>> >> >> etc. and renamed :active to :selected).
>> >> >>
>> >> >> 3. Finally I have simplified the rules for determining the
>> state of
>> >> >> joins.
>> >> >> I figured it would be much simpler if we did the following. The
>> join
>> >> >> to the
>> >> >> left of a stop, is 'always in the same state as the stop'
>> (Overflows
>> >> >> could
>> >> >> also follow the same rules as stops). So for instance for a train
>> >> like
>> >> >>
>> >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
>> >> >> vr uv v d uvr v
>> >> >>
>> >> >>
>> >> >> NOTE: The only exception, is the join to the left of an active
>> >> stop is
>> >> >> visited. Also, UVR and VR are stops that are in 2 states
>> >> >> simulataneously -
>> >> >> 'visited & read-only' and 'unvisited & read-only'. Read-only
>> implies
>> >> the
>> >> >> stop cannot be reached (and hence not clickable) and is dictated
>> >> by the
>> >> >> 'readOnly' property on the component commandNavigationItem.
>> >> >>
>> >> >> Please let me know if the above is ok.
>> >> >>
>> >> >>
>> >> >> Thanks
>> >> >> - Pavitra
>> >> >>
>> >> >>
>> >> >> > -----Original Message-----
>> >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
>> >> >> > Sent: Monday, August 28, 2006 11:43 AM
>> >> >> > To: adffaces-dev@incubator.apache.org
>> >> >> > Subject: Re: Train selectors
>> >> >> >
>> >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
>> >> >> >
>> >> >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
>> >> >> > >
>> >> >> > > I was thinking :selected for :active. :selected could be used
>> for
>> >> >> > > other components, too.
>> >> >> > > For :visited/:unvisited, I can't think of a better name.
>> >> >> > I'm thinking
>> >> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we have
>> the
>> >> >> > > pseudo-class support in. These wouldn't in a public api
>> >> >> > format, though.
>> >> >> > >
>> >> >> > > - Jeanne
>> >> >> > >
>> >> >> > > Simon_Lessard@DMR.CA wrote:
>> >> >> > >
>> >> >> > > >Hello,
>> >> >> > > >
>> >> >> > > >I thought about the following name changes for the selectors:
>> >> >> > > >
>> >> >> > > >:active --> :current or :selected
>> >> >> > > >:visited/:unvisited --> :completed/:uncompleted or
>> :seen/:unseen
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >Do you have any other idea/preference?
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >Regards,
>> >> >> > > >
>> >> >> > > >~ Simon
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >"Simon Lessard" <si...@gmail.com>
>> >> >> > > >2006-08-25 22:49
>> >> >> > > >Please respond to adffaces-dev
>> >> >> > > >
>> >> >> > > > To: "Trinidad - Dev"
>> >> >> > <ad...@incubator.apache.org>
>> >> >> > > > cc:
>> >> >> > > > Subject: Train selectors
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >Yes... again...
>> >> >> > > >
>> >> >> > > >I made a new renderer and it work quite well, but I had to
>> use
>> >> >> > > >:ora-visited and :ora-active for some selectors because those
>> >> are
>> >> >> > > >"pass through"
>> >> >> > > >values.
>> >> >> > > >Anyone have better name suggestion while we implement state
>> >> >> > > >interception on a per component basis?
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >Regards,
>> >> >> > > >
>> >> >> > > >~ Simon
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >
>> >> >> > > >
>> >> >> > >
>> >> >> > >
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >>
>> >> >>
>> >> >
>> >>
>> >>
>> >
>>
>>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Ok,
Then if those selectors are ok for you as well Pavitra I'll make the changes
to -outer and and -icon-cell tonight and upload the patch as well as a test
skin I used.
Regards,
~ Simon
On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
>
> yep, it all makes sense.
> I can see where you'd want to use a ::content. That would make sense. We
> don't do this yet in any of our skinning keys, so I am fine with the
> -content, since we do that all over the place. :)
>
> - Jeanne
>
> Simon Lessard wrote:
>
> > Oups, comments below
> >
> > On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> >
> >>
> >> one question below
> >>
> >> Simon Lessard wrote:
> >>
> >> > Hello Pavitra,
> >> >
> >> > I had to do about the same changes on my side. Here's my list of
> >> selector
> >> > and the rules I used:
> >> >
> >> > - af|train::stop combinable with :selected, :disabled, :completed
> >> (will
> >> > probably become p_AFVisited) and :unvisited. You can append :readOnly
> >> > at the
> >> > end of the result. So af|train::stop:unvisited:readOnly is valid
> >> > - af|train::link
> >> > - af|train::join combinable with :disabled, :completed, :unvisited
> and
> >> > :outer (:outer is used to add joins outside the edge of the train. I
> >> > don't
> >> > think many will use it, but it cost nothing and add more
> customization
> >> > possibilities)
> >>
> >> Is :outer a state? It sounds to me like it should be
> >> af|train::join-outer
> >
> >
> >
> > yes, it could be ::join-outer, was made a state only to fit the other
> > join
> > selectors, but it does make more sense to use -outer for that one.
> >
> >
> > Does that make more sense now?
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> >> - af|train::overflow-start combinable with :disabled and :readOnly
> >> > - af|train::overflow-end combinable with :disabled, :unvisited and
> >> > :readOnly
> >> >
> >> > I have the following valid suffixes: (I could not use ::content for
> >> > example
> >> > since double :: is now prevented from Adam's change to prevent some
> >> > strange
> >> > behavior it seem)
> >>
> >> I don't think two pseudo-elements make sense, does it? I suppose you
> >> could have
> >> a piece of a piece. Adam prevented it because there were bugs in it. I
> >> can't recall what the bugs were.
> >
> >
> >
> > I was seeing them more as sub-elements, like ::stop::content (content
> > of the
> > stop)
> >
> >> -content (for example, the following is valid: af|train::stop-content
> >> > and
> >> > af|train::stop:selected-content. This selector refers to the link
> cell
> >> fo
> >> > the train)
> >>
> >> What does a :selected-content 'state' mean?
> >> How is it different than af|train::stop-content:selected?
> >
> >
> >
> > My bad there, af|train::stop-content:selected is actually what I use.
> > Even
> > if a better selector would have been af|train::stop:selected::content
> > imho.
> >
> >> -icon-block (as above but refers to the icon cell)
> >>
> >> Could you say -icon-cell? We use 'cell' quite a bit in our skinning
> >> selectors.
> >
> >
> >
> > Yes I could, I was using block only because it was in Pavitra document
> at
> > first.
> >
> >>
> >> > The icons follow the same rule.
> >> >
> >> > On 8/28/06, Pavitra Subramaniam <pa...@oracle.com>
> >> wrote:
> >> >
> >> >>
> >> >> Hello Simon,
> >> >>
> >> >> I have also almost completed implementing the TrainRenderer using
> the
> >> >> new
> >> >> skin selectors. It's great to know you are done as well. If you
> >> plan to
> >> >> check in the train renderer code anytime soon, can we agree on the
> >> >> common
> >> >> list of skin selectors, so that I can reuse them for my work
> >> >> internally at
> >> >> Oracle? I had to make the following changes and wanted to give you
> an
> >> >> update.
> >> >>
> >> >> 1. I had to introduce a new state called "read-only". This is
> >> different
> >> >> from "disabled" state, like I explained in a previous email.
> >> >>
> >> >> 2. I removed some redundant skin hooks - I can send you the updated
> >> list
> >> >> of selectors I am using. I also couldn't get the "pass-through
> >> states"
> >> >> :visited, :active and :unvisited to work, just as you. So I have
> >> >> temporarily
> >> >> defined selectors like Jeanne suggested (using p_AFVisited,
> >> >> p_AFUnvisited
> >> >> etc. and renamed :active to :selected).
> >> >>
> >> >> 3. Finally I have simplified the rules for determining the state of
> >> >> joins.
> >> >> I figured it would be much simpler if we did the following. The join
> >> >> to the
> >> >> left of a stop, is 'always in the same state as the stop' (Overflows
> >> >> could
> >> >> also follow the same rules as stops). So for instance for a train
> >> like
> >> >>
> >> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> >> >> vr uv v d uvr v
> >> >>
> >> >>
> >> >> NOTE: The only exception, is the join to the left of an active
> >> stop is
> >> >> visited. Also, UVR and VR are stops that are in 2 states
> >> >> simulataneously -
> >> >> 'visited & read-only' and 'unvisited & read-only'. Read-only implies
> >> the
> >> >> stop cannot be reached (and hence not clickable) and is dictated
> >> by the
> >> >> 'readOnly' property on the component commandNavigationItem.
> >> >>
> >> >> Please let me know if the above is ok.
> >> >>
> >> >>
> >> >> Thanks
> >> >> - Pavitra
> >> >>
> >> >>
> >> >> > -----Original Message-----
> >> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> >> >> > Sent: Monday, August 28, 2006 11:43 AM
> >> >> > To: adffaces-dev@incubator.apache.org
> >> >> > Subject: Re: Train selectors
> >> >> >
> >> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> >> >> >
> >> >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> >> >> > >
> >> >> > > I was thinking :selected for :active. :selected could be used
> for
> >> >> > > other components, too.
> >> >> > > For :visited/:unvisited, I can't think of a better name.
> >> >> > I'm thinking
> >> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we have
> the
> >> >> > > pseudo-class support in. These wouldn't in a public api
> >> >> > format, though.
> >> >> > >
> >> >> > > - Jeanne
> >> >> > >
> >> >> > > Simon_Lessard@DMR.CA wrote:
> >> >> > >
> >> >> > > >Hello,
> >> >> > > >
> >> >> > > >I thought about the following name changes for the selectors:
> >> >> > > >
> >> >> > > >:active --> :current or :selected
> >> >> > > >:visited/:unvisited --> :completed/:uncompleted or
> :seen/:unseen
> >> >> > > >
> >> >> > > >
> >> >> > > >Do you have any other idea/preference?
> >> >> > > >
> >> >> > > >
> >> >> > > >Regards,
> >> >> > > >
> >> >> > > >~ Simon
> >> >> > > >
> >> >> > > >
> >> >> > > >
> >> >> > > >
> >> >> > > >
> >> >> > > >"Simon Lessard" <si...@gmail.com>
> >> >> > > >2006-08-25 22:49
> >> >> > > >Please respond to adffaces-dev
> >> >> > > >
> >> >> > > > To: "Trinidad - Dev"
> >> >> > <ad...@incubator.apache.org>
> >> >> > > > cc:
> >> >> > > > Subject: Train selectors
> >> >> > > >
> >> >> > > >
> >> >> > > >Yes... again...
> >> >> > > >
> >> >> > > >I made a new renderer and it work quite well, but I had to use
> >> >> > > >:ora-visited and :ora-active for some selectors because those
> >> are
> >> >> > > >"pass through"
> >> >> > > >values.
> >> >> > > >Anyone have better name suggestion while we implement state
> >> >> > > >interception on a per component basis?
> >> >> > > >
> >> >> > > >
> >> >> > > >Regards,
> >> >> > > >
> >> >> > > >~ Simon
> >> >> > > >
> >> >> > > >
> >> >> > > >
> >> >> > > >
> >> >> > >
> >> >> > >
> >> >> >
> >> >> >
> >> >> >
> >> >>
> >> >>
> >> >
> >>
> >>
> >
>
>
Re: TrainRenderer using the new train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
yep, it all makes sense.
I can see where you'd want to use a ::content. That would make sense. We
don't do this yet in any of our skinning keys, so I am fine with the
-content, since we do that all over the place. :)
- Jeanne
Simon Lessard wrote:
> Oups, comments below
>
> On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
>
>>
>> one question below
>>
>> Simon Lessard wrote:
>>
>> > Hello Pavitra,
>> >
>> > I had to do about the same changes on my side. Here's my list of
>> selector
>> > and the rules I used:
>> >
>> > - af|train::stop combinable with :selected, :disabled, :completed
>> (will
>> > probably become p_AFVisited) and :unvisited. You can append :readOnly
>> > at the
>> > end of the result. So af|train::stop:unvisited:readOnly is valid
>> > - af|train::link
>> > - af|train::join combinable with :disabled, :completed, :unvisited and
>> > :outer (:outer is used to add joins outside the edge of the train. I
>> > don't
>> > think many will use it, but it cost nothing and add more customization
>> > possibilities)
>>
>> Is :outer a state? It sounds to me like it should be
>> af|train::join-outer
>
>
>
> yes, it could be ::join-outer, was made a state only to fit the other
> join
> selectors, but it does make more sense to use -outer for that one.
>
>
> Does that make more sense now?
>
>
> Regards,
>
> ~ Simon
>
>> - af|train::overflow-start combinable with :disabled and :readOnly
>> > - af|train::overflow-end combinable with :disabled, :unvisited and
>> > :readOnly
>> >
>> > I have the following valid suffixes: (I could not use ::content for
>> > example
>> > since double :: is now prevented from Adam's change to prevent some
>> > strange
>> > behavior it seem)
>>
>> I don't think two pseudo-elements make sense, does it? I suppose you
>> could have
>> a piece of a piece. Adam prevented it because there were bugs in it. I
>> can't recall what the bugs were.
>
>
>
> I was seeing them more as sub-elements, like ::stop::content (content
> of the
> stop)
>
>> -content (for example, the following is valid: af|train::stop-content
>> > and
>> > af|train::stop:selected-content. This selector refers to the link cell
>> fo
>> > the train)
>>
>> What does a :selected-content 'state' mean?
>> How is it different than af|train::stop-content:selected?
>
>
>
> My bad there, af|train::stop-content:selected is actually what I use.
> Even
> if a better selector would have been af|train::stop:selected::content
> imho.
>
>> -icon-block (as above but refers to the icon cell)
>>
>> Could you say -icon-cell? We use 'cell' quite a bit in our skinning
>> selectors.
>
>
>
> Yes I could, I was using block only because it was in Pavitra document at
> first.
>
>>
>> > The icons follow the same rule.
>> >
>> > On 8/28/06, Pavitra Subramaniam <pa...@oracle.com>
>> wrote:
>> >
>> >>
>> >> Hello Simon,
>> >>
>> >> I have also almost completed implementing the TrainRenderer using the
>> >> new
>> >> skin selectors. It's great to know you are done as well. If you
>> plan to
>> >> check in the train renderer code anytime soon, can we agree on the
>> >> common
>> >> list of skin selectors, so that I can reuse them for my work
>> >> internally at
>> >> Oracle? I had to make the following changes and wanted to give you an
>> >> update.
>> >>
>> >> 1. I had to introduce a new state called "read-only". This is
>> different
>> >> from "disabled" state, like I explained in a previous email.
>> >>
>> >> 2. I removed some redundant skin hooks - I can send you the updated
>> list
>> >> of selectors I am using. I also couldn't get the "pass-through
>> states"
>> >> :visited, :active and :unvisited to work, just as you. So I have
>> >> temporarily
>> >> defined selectors like Jeanne suggested (using p_AFVisited,
>> >> p_AFUnvisited
>> >> etc. and renamed :active to :selected).
>> >>
>> >> 3. Finally I have simplified the rules for determining the state of
>> >> joins.
>> >> I figured it would be much simpler if we did the following. The join
>> >> to the
>> >> left of a stop, is 'always in the same state as the stop' (Overflows
>> >> could
>> >> also follow the same rules as stops). So for instance for a train
>> like
>> >>
>> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
>> >> vr uv v d uvr v
>> >>
>> >>
>> >> NOTE: The only exception, is the join to the left of an active
>> stop is
>> >> visited. Also, UVR and VR are stops that are in 2 states
>> >> simulataneously -
>> >> 'visited & read-only' and 'unvisited & read-only'. Read-only implies
>> the
>> >> stop cannot be reached (and hence not clickable) and is dictated
>> by the
>> >> 'readOnly' property on the component commandNavigationItem.
>> >>
>> >> Please let me know if the above is ok.
>> >>
>> >>
>> >> Thanks
>> >> - Pavitra
>> >>
>> >>
>> >> > -----Original Message-----
>> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
>> >> > Sent: Monday, August 28, 2006 11:43 AM
>> >> > To: adffaces-dev@incubator.apache.org
>> >> > Subject: Re: Train selectors
>> >> >
>> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
>> >> >
>> >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
>> >> > >
>> >> > > I was thinking :selected for :active. :selected could be used for
>> >> > > other components, too.
>> >> > > For :visited/:unvisited, I can't think of a better name.
>> >> > I'm thinking
>> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
>> >> > > pseudo-class support in. These wouldn't in a public api
>> >> > format, though.
>> >> > >
>> >> > > - Jeanne
>> >> > >
>> >> > > Simon_Lessard@DMR.CA wrote:
>> >> > >
>> >> > > >Hello,
>> >> > > >
>> >> > > >I thought about the following name changes for the selectors:
>> >> > > >
>> >> > > >:active --> :current or :selected
>> >> > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
>> >> > > >
>> >> > > >
>> >> > > >Do you have any other idea/preference?
>> >> > > >
>> >> > > >
>> >> > > >Regards,
>> >> > > >
>> >> > > >~ Simon
>> >> > > >
>> >> > > >
>> >> > > >
>> >> > > >
>> >> > > >
>> >> > > >"Simon Lessard" <si...@gmail.com>
>> >> > > >2006-08-25 22:49
>> >> > > >Please respond to adffaces-dev
>> >> > > >
>> >> > > > To: "Trinidad - Dev"
>> >> > <ad...@incubator.apache.org>
>> >> > > > cc:
>> >> > > > Subject: Train selectors
>> >> > > >
>> >> > > >
>> >> > > >Yes... again...
>> >> > > >
>> >> > > >I made a new renderer and it work quite well, but I had to use
>> >> > > >:ora-visited and :ora-active for some selectors because those
>> are
>> >> > > >"pass through"
>> >> > > >values.
>> >> > > >Anyone have better name suggestion while we implement state
>> >> > > >interception on a per component basis?
>> >> > > >
>> >> > > >
>> >> > > >Regards,
>> >> > > >
>> >> > > >~ Simon
>> >> > > >
>> >> > > >
>> >> > > >
>> >> > > >
>> >> > >
>> >> > >
>> >> >
>> >> >
>> >> >
>> >>
>> >>
>> >
>>
>>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Bleh, the
"Does that make more sense now?
Regards,
~ Simon"
should have been placed much later, there're comments after it. And it
should have been
"Does it make more sense now?
Regards,
~ Simon"
Thanks to my broken English...
On 8/29/06, Simon Lessard <si...@gmail.com> wrote:
>
> Oups, comments below
>
> On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> >
> > one question below
> >
> > Simon Lessard wrote:
> >
> > > Hello Pavitra,
> > >
> > > I had to do about the same changes on my side. Here's my list of
> > selector
> > > and the rules I used:
> > >
> > > - af|train::stop combinable with :selected, :disabled, :completed
> > (will
> > > probably become p_AFVisited) and :unvisited. You can append :readOnly
> > > at the
> > > end of the result. So af|train::stop:unvisited:readOnly is valid
> > > - af|train::link
> > > - af|train::join combinable with :disabled, :completed, :unvisited and
> >
> > > :outer (:outer is used to add joins outside the edge of the train. I
> > > don't
> > > think many will use it, but it cost nothing and add more customization
> > > possibilities)
> >
> > Is :outer a state? It sounds to me like it should be
> > af|train::join-outer
>
>
> yes, it could be ::join-outer, was made a state only to fit the other join
> selectors, but it does make more sense to use -outer for that one.
>
>
> Does that make more sense now?
>
>
> Regards,
>
> ~ Simon
>
> > - af|train::overflow-start combinable with :disabled and :readOnly
> > > - af|train::overflow-end combinable with :disabled, :unvisited and
> > > :readOnly
> > >
> > > I have the following valid suffixes: (I could not use ::content for
> > > example
> > > since double :: is now prevented from Adam's change to prevent some
> > > strange
> > > behavior it seem)
> >
> > I don't think two pseudo-elements make sense, does it? I suppose you
> > could have
> > a piece of a piece. Adam prevented it because there were bugs in it. I
> > can't recall what the bugs were.
>
>
> I was seeing them more as sub-elements, like ::stop::content (content of
> the stop)
>
> > -content (for example, the following is valid: af|train::stop-content
> > > and
> > > af|train::stop:selected-content. This selector refers to the link cell
> > fo
> > > the train)
> >
> > What does a :selected-content 'state' mean?
> > How is it different than af|train::stop-content:selected?
>
>
> My bad there, af|train::stop-content:selected is actually what I use. Even
> if a better selector would have been af|train::stop:selected::content imho.
>
> > -icon-block (as above but refers to the icon cell)
> >
> > Could you say -icon-cell? We use 'cell' quite a bit in our skinning
> > selectors.
>
>
> Yes I could, I was using block only because it was in Pavitra document at
> first.
>
> >
> > > The icons follow the same rule.
> > >
> > > On 8/28/06, Pavitra Subramaniam <pa...@oracle.com>
> > wrote:
> > >
> > >>
> > >> Hello Simon,
> > >>
> > >> I have also almost completed implementing the TrainRenderer using the
> > >> new
> > >> skin selectors. It's great to know you are done as well. If you plan
> > to
> > >> check in the train renderer code anytime soon, can we agree on the
> > >> common
> > >> list of skin selectors, so that I can reuse them for my work
> > >> internally at
> > >> Oracle? I had to make the following changes and wanted to give you an
> > >> update.
> > >>
> > >> 1. I had to introduce a new state called "read-only". This is
> > different
> > >> from "disabled" state, like I explained in a previous email.
> > >>
> > >> 2. I removed some redundant skin hooks - I can send you the updated
> > list
> > >> of selectors I am using. I also couldn't get the "pass-through
> > states"
> > >> :visited, :active and :unvisited to work, just as you. So I have
> > >> temporarily
> > >> defined selectors like Jeanne suggested (using p_AFVisited,
> > >> p_AFUnvisited
> > >> etc. and renamed :active to :selected).
> > >>
> > >> 3. Finally I have simplified the rules for determining the state of
> > >> joins.
> > >> I figured it would be much simpler if we did the following. The join
> > >> to the
> > >> left of a stop, is 'always in the same state as the stop' (Overflows
> > >> could
> > >> also follow the same rules as stops). So for instance for a train
> > like
> > >>
> > >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > >> vr uv v d uvr v
> > >>
> > >>
> > >> NOTE: The only exception, is the join to the left of an active stop
> > is
> > >> visited. Also, UVR and VR are stops that are in 2 states
> > >> simulataneously -
> > >> 'visited & read-only' and 'unvisited & read-only'. Read-only implies
> > the
> > >> stop cannot be reached (and hence not clickable) and is dictated by
> > the
> > >> 'readOnly' property on the component commandNavigationItem.
> > >>
> > >> Please let me know if the above is ok.
> > >>
> > >>
> > >> Thanks
> > >> - Pavitra
> > >>
> > >>
> > >> > -----Original Message-----
> > >> > From: Simon Lessard [mailto: simon.lessard.3@gmail.com]
> > >> > Sent: Monday, August 28, 2006 11:43 AM
> > >> > To: adffaces-dev@incubator.apache.org
> > >> > Subject: Re: Train selectors
> > >> >
> > >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > >> >
> > >> > On 8/28/06, Jeanne Waldman < jeanne.waldman@oracle.com> wrote:
> > >> > >
> > >> > > I was thinking :selected for :active. :selected could be used for
> > >> > > other components, too.
> > >> > > For :visited/:unvisited, I can't think of a better name.
> > >> > I'm thinking
> > >> > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
> > >> > > pseudo-class support in. These wouldn't in a public api
> > >> > format, though.
> > >> > >
> > >> > > - Jeanne
> > >> > >
> > >> > > Simon_Lessard@DMR.CA wrote:
> > >> > >
> > >> > > >Hello,
> > >> > > >
> > >> > > >I thought about the following name changes for the selectors:
> > >> > > >
> > >> > > >:active --> :current or :selected
> > >> > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> >
> > >> > > >
> > >> > > >
> > >> > > >Do you have any other idea/preference?
> > >> > > >
> > >> > > >
> > >> > > >Regards,
> > >> > > >
> > >> > > >~ Simon
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >"Simon Lessard" < simon.lessard.3@gmail.com>
> > >> > > >2006-08-25 22:49
> > >> > > >Please respond to adffaces-dev
> > >> > > >
> > >> > > > To: "Trinidad - Dev"
> > >> > <ad...@incubator.apache.org>
> > >> > > > cc:
> > >> > > > Subject: Train selectors
> > >> > > >
> > >> > > >
> > >> > > >Yes... again...
> > >> > > >
> > >> > > >I made a new renderer and it work quite well, but I had to use
> > >> > > >:ora-visited and :ora-active for some selectors because those
> > are
> > >> > > >"pass through"
> > >> > > >values.
> > >> > > >Anyone have better name suggestion while we implement state
> > >> > > >interception on a per component basis?
> > >> > > >
> > >> > > >
> > >> > > >Regards,
> > >> > > >
> > >> > > >~ Simon
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > >
> > >> > >
> > >> >
> > >> >
> > >> >
> > >>
> > >>
> > >
> >
> >
>
RE: TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
I am using block to indicate style class that goes in a <div> and technically I should use cell for style class that goes in a <td>
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Tuesday, August 29, 2006 11:18 AM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: TrainRenderer using the new train selectors
>
> Oups, comments below
>
> On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
> >
> > one question below
> >
> > Simon Lessard wrote:
> >
> > > Hello Pavitra,
> > >
> > > I had to do about the same changes on my side. Here's my list of
> > selector
> > > and the rules I used:
> > >
> > > - af|train::stop combinable with :selected, :disabled, :completed
> > > (will probably become p_AFVisited) and :unvisited. You can append
> > > :readOnly at the end of the result. So
> > > af|train::stop:unvisited:readOnly is valid
> > > - af|train::link
> > > - af|train::join combinable with :disabled, :completed,
> :unvisited
> > > and :outer (:outer is used to add joins outside the edge of the
> > > train. I don't think many will use it, but it cost
> nothing and add
> > > more customization
> > > possibilities)
> >
> > Is :outer a state? It sounds to me like it should be
> > af|train::join-outer
>
>
> yes, it could be ::join-outer, was made a state only to fit
> the other join selectors, but it does make more sense to use
> -outer for that one.
>
>
> Does that make more sense now?
>
>
> Regards,
>
> ~ Simon
>
> > - af|train::overflow-start combinable with :disabled and :readOnly
> > > - af|train::overflow-end combinable with :disabled,
> :unvisited and
> > > :readOnly
> > >
> > > I have the following valid suffixes: (I could not use
> ::content for
> > > example since double :: is now prevented from Adam's change to
> > > prevent some strange behavior it seem)
> >
> > I don't think two pseudo-elements make sense, does it? I
> suppose you
> > could have a piece of a piece. Adam prevented it because there were
> > bugs in it. I can't recall what the bugs were.
>
>
> I was seeing them more as sub-elements, like ::stop::content
> (content of the
> stop)
>
> > -content (for example, the following is valid:
> af|train::stop-content
> > > and
> > > af|train::stop:selected-content. This selector refers to the link
> > > af|cell
> > fo
> > > the train)
> >
> > What does a :selected-content 'state' mean?
> > How is it different than af|train::stop-content:selected?
>
>
> My bad there, af|train::stop-content:selected is actually
> what I use. Even if a better selector would have been
> af|train::stop:selected::content imho.
>
> > -icon-block (as above but refers to the icon cell)
> >
> > Could you say -icon-cell? We use 'cell' quite a bit in our skinning
> > selectors.
>
>
> Yes I could, I was using block only because it was in Pavitra
> document at first.
>
> >
> > > The icons follow the same rule.
> > >
> > > On 8/28/06, Pavitra Subramaniam
> <pa...@oracle.com> wrote:
> > >
> > >>
> > >> Hello Simon,
> > >>
> > >> I have also almost completed implementing the
> TrainRenderer using
> > >> the new skin selectors. It's great to know you are done
> as well. If
> > >> you plan to check in the train renderer code anytime
> soon, can we
> > >> agree on the common list of skin selectors, so that I can reuse
> > >> them for my work internally at Oracle? I had to make the
> following
> > >> changes and wanted to give you an update.
> > >>
> > >> 1. I had to introduce a new state called "read-only". This is
> > >> different from "disabled" state, like I explained in a
> previous email.
> > >>
> > >> 2. I removed some redundant skin hooks - I can send you
> the updated
> > list
> > >> of selectors I am using. I also couldn't get the
> "pass-through states"
> > >> :visited, :active and :unvisited to work, just as you. So I have
> > >> temporarily defined selectors like Jeanne suggested (using
> > >> p_AFVisited, p_AFUnvisited etc. and renamed :active to
> :selected).
> > >>
> > >> 3. Finally I have simplified the rules for determining
> the state of
> > >> joins.
> > >> I figured it would be much simpler if we did the following. The
> > >> join to the left of a stop, is 'always in the same state as the
> > >> stop' (Overflows could also follow the same rules as
> stops). So for
> > >> instance for a train like
> > >>
> > >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> > >> vr uv v d uvr v
> > >>
> > >>
> > >> NOTE: The only exception, is the join to the left of an
> active stop
> > >> is visited. Also, UVR and VR are stops that are in 2 states
> > >> simulataneously - 'visited & read-only' and 'unvisited &
> > >> read-only'. Read-only implies
> > the
> > >> stop cannot be reached (and hence not clickable) and is
> dictated by
> > >> the 'readOnly' property on the component commandNavigationItem.
> > >>
> > >> Please let me know if the above is ok.
> > >>
> > >>
> > >> Thanks
> > >> - Pavitra
> > >>
> > >>
> > >> > -----Original Message-----
> > >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > >> > Sent: Monday, August 28, 2006 11:43 AM
> > >> > To: adffaces-dev@incubator.apache.org
> > >> > Subject: Re: Train selectors
> > >> >
> > >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> > >> >
> > >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >> > >
> > >> > > I was thinking :selected for :active. :selected
> could be used
> > >> > > for other components, too.
> > >> > > For :visited/:unvisited, I can't think of a better name.
> > >> > I'm thinking
> > >> > > that we should use .p_AFVisited, .P_AFUnvisited
> until we have
> > >> > > the pseudo-class support in. These wouldn't in a public api
> > >> > format, though.
> > >> > >
> > >> > > - Jeanne
> > >> > >
> > >> > > Simon_Lessard@DMR.CA wrote:
> > >> > >
> > >> > > >Hello,
> > >> > > >
> > >> > > >I thought about the following name changes for the
> selectors:
> > >> > > >
> > >> > > >:active --> :current or :selected :visited/:unvisited -->
> > >> > > >:completed/:uncompleted or :seen/:unseen
> > >> > > >
> > >> > > >
> > >> > > >Do you have any other idea/preference?
> > >> > > >
> > >> > > >
> > >> > > >Regards,
> > >> > > >
> > >> > > >~ Simon
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >"Simon Lessard" <si...@gmail.com>
> > >> > > >2006-08-25 22:49
> > >> > > >Please respond to adffaces-dev
> > >> > > >
> > >> > > > To: "Trinidad - Dev"
> > >> > <ad...@incubator.apache.org>
> > >> > > > cc:
> > >> > > > Subject: Train selectors
> > >> > > >
> > >> > > >
> > >> > > >Yes... again...
> > >> > > >
> > >> > > >I made a new renderer and it work quite well, but I
> had to use
> > >> > > >:ora-visited and :ora-active for some selectors
> because those
> > >> > > >are "pass through"
> > >> > > >values.
> > >> > > >Anyone have better name suggestion while we implement state
> > >> > > >interception on a per component basis?
> > >> > > >
> > >> > > >
> > >> > > >Regards,
> > >> > > >
> > >> > > >~ Simon
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > >
> > >> > >
> > >> >
> > >> >
> > >> >
> > >>
> > >>
> > >
> >
> >
>
>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Oups, comments below
On 8/29/06, Jeanne Waldman <je...@oracle.com> wrote:
>
> one question below
>
> Simon Lessard wrote:
>
> > Hello Pavitra,
> >
> > I had to do about the same changes on my side. Here's my list of
> selector
> > and the rules I used:
> >
> > - af|train::stop combinable with :selected, :disabled, :completed (will
> > probably become p_AFVisited) and :unvisited. You can append :readOnly
> > at the
> > end of the result. So af|train::stop:unvisited:readOnly is valid
> > - af|train::link
> > - af|train::join combinable with :disabled, :completed, :unvisited and
> > :outer (:outer is used to add joins outside the edge of the train. I
> > don't
> > think many will use it, but it cost nothing and add more customization
> > possibilities)
>
> Is :outer a state? It sounds to me like it should be af|train::join-outer
yes, it could be ::join-outer, was made a state only to fit the other join
selectors, but it does make more sense to use -outer for that one.
Does that make more sense now?
Regards,
~ Simon
> - af|train::overflow-start combinable with :disabled and :readOnly
> > - af|train::overflow-end combinable with :disabled, :unvisited and
> > :readOnly
> >
> > I have the following valid suffixes: (I could not use ::content for
> > example
> > since double :: is now prevented from Adam's change to prevent some
> > strange
> > behavior it seem)
>
> I don't think two pseudo-elements make sense, does it? I suppose you
> could have
> a piece of a piece. Adam prevented it because there were bugs in it. I
> can't recall what the bugs were.
I was seeing them more as sub-elements, like ::stop::content (content of the
stop)
> -content (for example, the following is valid: af|train::stop-content
> > and
> > af|train::stop:selected-content. This selector refers to the link cell
> fo
> > the train)
>
> What does a :selected-content 'state' mean?
> How is it different than af|train::stop-content:selected?
My bad there, af|train::stop-content:selected is actually what I use. Even
if a better selector would have been af|train::stop:selected::content imho.
> -icon-block (as above but refers to the icon cell)
>
> Could you say -icon-cell? We use 'cell' quite a bit in our skinning
> selectors.
Yes I could, I was using block only because it was in Pavitra document at
first.
>
> > The icons follow the same rule.
> >
> > On 8/28/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
> >
> >>
> >> Hello Simon,
> >>
> >> I have also almost completed implementing the TrainRenderer using the
> >> new
> >> skin selectors. It's great to know you are done as well. If you plan to
> >> check in the train renderer code anytime soon, can we agree on the
> >> common
> >> list of skin selectors, so that I can reuse them for my work
> >> internally at
> >> Oracle? I had to make the following changes and wanted to give you an
> >> update.
> >>
> >> 1. I had to introduce a new state called "read-only". This is different
> >> from "disabled" state, like I explained in a previous email.
> >>
> >> 2. I removed some redundant skin hooks - I can send you the updated
> list
> >> of selectors I am using. I also couldn't get the "pass-through states"
> >> :visited, :active and :unvisited to work, just as you. So I have
> >> temporarily
> >> defined selectors like Jeanne suggested (using p_AFVisited,
> >> p_AFUnvisited
> >> etc. and renamed :active to :selected).
> >>
> >> 3. Finally I have simplified the rules for determining the state of
> >> joins.
> >> I figured it would be much simpler if we did the following. The join
> >> to the
> >> left of a stop, is 'always in the same state as the stop' (Overflows
> >> could
> >> also follow the same rules as stops). So for instance for a train like
> >>
> >> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> >> vr uv v d uvr v
> >>
> >>
> >> NOTE: The only exception, is the join to the left of an active stop is
> >> visited. Also, UVR and VR are stops that are in 2 states
> >> simulataneously -
> >> 'visited & read-only' and 'unvisited & read-only'. Read-only implies
> the
> >> stop cannot be reached (and hence not clickable) and is dictated by the
> >> 'readOnly' property on the component commandNavigationItem.
> >>
> >> Please let me know if the above is ok.
> >>
> >>
> >> Thanks
> >> - Pavitra
> >>
> >>
> >> > -----Original Message-----
> >> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> >> > Sent: Monday, August 28, 2006 11:43 AM
> >> > To: adffaces-dev@incubator.apache.org
> >> > Subject: Re: Train selectors
> >> >
> >> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> >> >
> >> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> >> > >
> >> > > I was thinking :selected for :active. :selected could be used for
> >> > > other components, too.
> >> > > For :visited/:unvisited, I can't think of a better name.
> >> > I'm thinking
> >> > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
> >> > > pseudo-class support in. These wouldn't in a public api
> >> > format, though.
> >> > >
> >> > > - Jeanne
> >> > >
> >> > > Simon_Lessard@DMR.CA wrote:
> >> > >
> >> > > >Hello,
> >> > > >
> >> > > >I thought about the following name changes for the selectors:
> >> > > >
> >> > > >:active --> :current or :selected
> >> > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> >> > > >
> >> > > >
> >> > > >Do you have any other idea/preference?
> >> > > >
> >> > > >
> >> > > >Regards,
> >> > > >
> >> > > >~ Simon
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> >> > > >"Simon Lessard" <si...@gmail.com>
> >> > > >2006-08-25 22:49
> >> > > >Please respond to adffaces-dev
> >> > > >
> >> > > > To: "Trinidad - Dev"
> >> > <ad...@incubator.apache.org>
> >> > > > cc:
> >> > > > Subject: Train selectors
> >> > > >
> >> > > >
> >> > > >Yes... again...
> >> > > >
> >> > > >I made a new renderer and it work quite well, but I had to use
> >> > > >:ora-visited and :ora-active for some selectors because those are
> >> > > >"pass through"
> >> > > >values.
> >> > > >Anyone have better name suggestion while we implement state
> >> > > >interception on a per component basis?
> >> > > >
> >> > > >
> >> > > >Regards,
> >> > > >
> >> > > >~ Simon
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> >> > >
> >> > >
> >> >
> >> >
> >> >
> >>
> >>
> >
>
>
Re: TrainRenderer using the new train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
one question below
Simon Lessard wrote:
> Hello Pavitra,
>
> I had to do about the same changes on my side. Here's my list of selector
> and the rules I used:
>
> - af|train::stop combinable with :selected, :disabled, :completed (will
> probably become p_AFVisited) and :unvisited. You can append :readOnly
> at the
> end of the result. So af|train::stop:unvisited:readOnly is valid
> - af|train::link
> - af|train::join combinable with :disabled, :completed, :unvisited and
> :outer (:outer is used to add joins outside the edge of the train. I
> don't
> think many will use it, but it cost nothing and add more customization
> possibilities)
Is :outer a state? It sounds to me like it should be af|train::join-outer
> - af|train::overflow-start combinable with :disabled and :readOnly
> - af|train::overflow-end combinable with :disabled, :unvisited and
> :readOnly
>
> I have the following valid suffixes: (I could not use ::content for
> example
> since double :: is now prevented from Adam's change to prevent some
> strange
> behavior it seem)
I don't think two pseudo-elements make sense, does it? I suppose you
could have
a piece of a piece. Adam prevented it because there were bugs in it. I
can't recall what the bugs were.
> -content (for example, the following is valid: af|train::stop-content
> and
> af|train::stop:selected-content. This selector refers to the link cell fo
> the train)
What does a :selected-content 'state' mean?
How is it different than af|train::stop-content:selected?
> -icon-block (as above but refers to the icon cell)
Could you say -icon-cell? We use 'cell' quite a bit in our skinning
selectors.
>
> The icons follow the same rule.
>
> On 8/28/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
>>
>> Hello Simon,
>>
>> I have also almost completed implementing the TrainRenderer using the
>> new
>> skin selectors. It's great to know you are done as well. If you plan to
>> check in the train renderer code anytime soon, can we agree on the
>> common
>> list of skin selectors, so that I can reuse them for my work
>> internally at
>> Oracle? I had to make the following changes and wanted to give you an
>> update.
>>
>> 1. I had to introduce a new state called "read-only". This is different
>> from "disabled" state, like I explained in a previous email.
>>
>> 2. I removed some redundant skin hooks - I can send you the updated list
>> of selectors I am using. I also couldn't get the "pass-through states"
>> :visited, :active and :unvisited to work, just as you. So I have
>> temporarily
>> defined selectors like Jeanne suggested (using p_AFVisited,
>> p_AFUnvisited
>> etc. and renamed :active to :selected).
>>
>> 3. Finally I have simplified the rules for determining the state of
>> joins.
>> I figured it would be much simpler if we did the following. The join
>> to the
>> left of a stop, is 'always in the same state as the stop' (Overflows
>> could
>> also follow the same rules as stops). So for instance for a train like
>>
>> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
>> vr uv v d uvr v
>>
>>
>> NOTE: The only exception, is the join to the left of an active stop is
>> visited. Also, UVR and VR are stops that are in 2 states
>> simulataneously -
>> 'visited & read-only' and 'unvisited & read-only'. Read-only implies the
>> stop cannot be reached (and hence not clickable) and is dictated by the
>> 'readOnly' property on the component commandNavigationItem.
>>
>> Please let me know if the above is ok.
>>
>>
>> Thanks
>> - Pavitra
>>
>>
>> > -----Original Message-----
>> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
>> > Sent: Monday, August 28, 2006 11:43 AM
>> > To: adffaces-dev@incubator.apache.org
>> > Subject: Re: Train selectors
>> >
>> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
>> >
>> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
>> > >
>> > > I was thinking :selected for :active. :selected could be used for
>> > > other components, too.
>> > > For :visited/:unvisited, I can't think of a better name.
>> > I'm thinking
>> > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
>> > > pseudo-class support in. These wouldn't in a public api
>> > format, though.
>> > >
>> > > - Jeanne
>> > >
>> > > Simon_Lessard@DMR.CA wrote:
>> > >
>> > > >Hello,
>> > > >
>> > > >I thought about the following name changes for the selectors:
>> > > >
>> > > >:active --> :current or :selected
>> > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
>> > > >
>> > > >
>> > > >Do you have any other idea/preference?
>> > > >
>> > > >
>> > > >Regards,
>> > > >
>> > > >~ Simon
>> > > >
>> > > >
>> > > >
>> > > >
>> > > >
>> > > >"Simon Lessard" <si...@gmail.com>
>> > > >2006-08-25 22:49
>> > > >Please respond to adffaces-dev
>> > > >
>> > > > To: "Trinidad - Dev"
>> > <ad...@incubator.apache.org>
>> > > > cc:
>> > > > Subject: Train selectors
>> > > >
>> > > >
>> > > >Yes... again...
>> > > >
>> > > >I made a new renderer and it work quite well, but I had to use
>> > > >:ora-visited and :ora-active for some selectors because those are
>> > > >"pass through"
>> > > >values.
>> > > >Anyone have better name suggestion while we implement state
>> > > >interception on a per component basis?
>> > > >
>> > > >
>> > > >Regards,
>> > > >
>> > > >~ Simon
>> > > >
>> > > >
>> > > >
>> > > >
>> > >
>> > >
>> >
>> >
>> >
>>
>>
>
Re: TrainRenderer using the new train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hello Pavitra,
I had to do about the same changes on my side. Here's my list of selector
and the rules I used:
- af|train::stop combinable with :selected, :disabled, :completed (will
probably become p_AFVisited) and :unvisited. You can append :readOnly at the
end of the result. So af|train::stop:unvisited:readOnly is valid
- af|train::link
- af|train::join combinable with :disabled, :completed, :unvisited and
:outer (:outer is used to add joins outside the edge of the train. I don't
think many will use it, but it cost nothing and add more customization
possibilities)
- af|train::overflow-start combinable with :disabled and :readOnly
- af|train::overflow-end combinable with :disabled, :unvisited and :readOnly
I have the following valid suffixes: (I could not use ::content for example
since double :: is now prevented from Adam's change to prevent some strange
behavior it seem)
-content (for example, the following is valid: af|train::stop-content and
af|train::stop:selected-content. This selector refers to the link cell fo
the train)
-icon-block (as above but refers to the icon cell)
The icons follow the same rule.
On 8/28/06, Pavitra Subramaniam <pa...@oracle.com> wrote:
>
> Hello Simon,
>
> I have also almost completed implementing the TrainRenderer using the new
> skin selectors. It's great to know you are done as well. If you plan to
> check in the train renderer code anytime soon, can we agree on the common
> list of skin selectors, so that I can reuse them for my work internally at
> Oracle? I had to make the following changes and wanted to give you an
> update.
>
> 1. I had to introduce a new state called "read-only". This is different
> from "disabled" state, like I explained in a previous email.
>
> 2. I removed some redundant skin hooks - I can send you the updated list
> of selectors I am using. I also couldn't get the "pass-through states"
> :visited, :active and :unvisited to work, just as you. So I have temporarily
> defined selectors like Jeanne suggested (using p_AFVisited, p_AFUnvisited
> etc. and renamed :active to :selected).
>
> 3. Finally I have simplified the rules for determining the state of joins.
> I figured it would be much simpler if we did the following. The join to the
> left of a stop, is 'always in the same state as the stop' (Overflows could
> also follow the same rules as stops). So for instance for a train like
>
> V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
> vr uv v d uvr v
>
>
> NOTE: The only exception, is the join to the left of an active stop is
> visited. Also, UVR and VR are stops that are in 2 states simulataneously -
> 'visited & read-only' and 'unvisited & read-only'. Read-only implies the
> stop cannot be reached (and hence not clickable) and is dictated by the
> 'readOnly' property on the component commandNavigationItem.
>
> Please let me know if the above is ok.
>
>
> Thanks
> - Pavitra
>
>
> > -----Original Message-----
> > From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> > Sent: Monday, August 28, 2006 11:43 AM
> > To: adffaces-dev@incubator.apache.org
> > Subject: Re: Train selectors
> >
> > Hmmm you mean somthing like af|train::stop.p_AFVisited?
> >
> > On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> > >
> > > I was thinking :selected for :active. :selected could be used for
> > > other components, too.
> > > For :visited/:unvisited, I can't think of a better name.
> > I'm thinking
> > > that we should use .p_AFVisited, .P_AFUnvisited until we have the
> > > pseudo-class support in. These wouldn't in a public api
> > format, though.
> > >
> > > - Jeanne
> > >
> > > Simon_Lessard@DMR.CA wrote:
> > >
> > > >Hello,
> > > >
> > > >I thought about the following name changes for the selectors:
> > > >
> > > >:active --> :current or :selected
> > > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> > > >
> > > >
> > > >Do you have any other idea/preference?
> > > >
> > > >
> > > >Regards,
> > > >
> > > >~ Simon
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >"Simon Lessard" <si...@gmail.com>
> > > >2006-08-25 22:49
> > > >Please respond to adffaces-dev
> > > >
> > > > To: "Trinidad - Dev"
> > <ad...@incubator.apache.org>
> > > > cc:
> > > > Subject: Train selectors
> > > >
> > > >
> > > >Yes... again...
> > > >
> > > >I made a new renderer and it work quite well, but I had to use
> > > >:ora-visited and :ora-active for some selectors because those are
> > > >"pass through"
> > > >values.
> > > >Anyone have better name suggestion while we implement state
> > > >interception on a per component basis?
> > > >
> > > >
> > > >Regards,
> > > >
> > > >~ Simon
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>
TrainRenderer using the new train selectors
Posted by Pavitra Subramaniam <pa...@oracle.com>.
Hello Simon,
I have also almost completed implementing the TrainRenderer using the new skin selectors. It's great to know you are done as well. If you plan to check in the train renderer code anytime soon, can we agree on the common list of skin selectors, so that I can reuse them for my work internally at Oracle? I had to make the following changes and wanted to give you an update.
1. I had to introduce a new state called "read-only". This is different from "disabled" state, like I explained in a previous email.
2. I removed some redundant skin hooks - I can send you the updated list of selectors I am using. I also couldn't get the "pass-through states" :visited, :active and :unvisited to work, just as you. So I have temporarily defined selectors like Jeanne suggested (using p_AFVisited, p_AFUnvisited etc. and renamed :active to :selected).
3. Finally I have simplified the rules for determining the state of joins. I figured it would be much simpler if we did the following. The join to the left of a stop, is 'always in the same state as the stop' (Overflows could also follow the same rules as stops). So for instance for a train like
V ----- VR ----- UV ----- A ----- D ----- UVR ----- V
vr uv v d uvr v
NOTE: The only exception, is the join to the left of an active stop is visited. Also, UVR and VR are stops that are in 2 states simulataneously - 'visited & read-only' and 'unvisited & read-only'. Read-only implies the stop cannot be reached (and hence not clickable) and is dictated by the 'readOnly' property on the component commandNavigationItem.
Please let me know if the above is ok.
Thanks
- Pavitra
> -----Original Message-----
> From: Simon Lessard [mailto:simon.lessard.3@gmail.com]
> Sent: Monday, August 28, 2006 11:43 AM
> To: adffaces-dev@incubator.apache.org
> Subject: Re: Train selectors
>
> Hmmm you mean somthing like af|train::stop.p_AFVisited?
>
> On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
> >
> > I was thinking :selected for :active. :selected could be used for
> > other components, too.
> > For :visited/:unvisited, I can't think of a better name.
> I'm thinking
> > that we should use .p_AFVisited, .P_AFUnvisited until we have the
> > pseudo-class support in. These wouldn't in a public api
> format, though.
> >
> > - Jeanne
> >
> > Simon_Lessard@DMR.CA wrote:
> >
> > >Hello,
> > >
> > >I thought about the following name changes for the selectors:
> > >
> > >:active --> :current or :selected
> > >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> > >
> > >
> > >Do you have any other idea/preference?
> > >
> > >
> > >Regards,
> > >
> > >~ Simon
> > >
> > >
> > >
> > >
> > >
> > >"Simon Lessard" <si...@gmail.com>
> > >2006-08-25 22:49
> > >Please respond to adffaces-dev
> > >
> > > To: "Trinidad - Dev"
> <ad...@incubator.apache.org>
> > > cc:
> > > Subject: Train selectors
> > >
> > >
> > >Yes... again...
> > >
> > >I made a new renderer and it work quite well, but I had to use
> > >:ora-visited and :ora-active for some selectors because those are
> > >"pass through"
> > >values.
> > >Anyone have better name suggestion while we implement state
> > >interception on a per component basis?
> > >
> > >
> > >Regards,
> > >
> > >~ Simon
> > >
> > >
> > >
> > >
> >
> >
>
>
>
Re: Train selectors
Posted by Simon Lessard <si...@gmail.com>.
Hmmm you mean somthing like af|train::stop.p_AFVisited?
On 8/28/06, Jeanne Waldman <je...@oracle.com> wrote:
>
> I was thinking :selected for :active. :selected could be used for other
> components, too.
> For :visited/:unvisited, I can't think of a better name. I'm thinking
> that we should use .p_AFVisited, .P_AFUnvisited until we have the
> pseudo-class support in. These wouldn't in a public api format, though.
>
> - Jeanne
>
> Simon_Lessard@DMR.CA wrote:
>
> >Hello,
> >
> >I thought about the following name changes for the selectors:
> >
> >:active --> :current or :selected
> >:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
> >
> >
> >Do you have any other idea/preference?
> >
> >
> >Regards,
> >
> >~ Simon
> >
> >
> >
> >
> >
> >"Simon Lessard" <si...@gmail.com>
> >2006-08-25 22:49
> >Please respond to adffaces-dev
> >
> > To: "Trinidad - Dev" <ad...@incubator.apache.org>
> > cc:
> > Subject: Train selectors
> >
> >
> >Yes... again...
> >
> >I made a new renderer and it work quite well, but I had to use
> >:ora-visited
> >and :ora-active for some selectors because those are "pass through"
> >values.
> >Anyone have better name suggestion while we implement state interception
> >on
> >a per component basis?
> >
> >
> >Regards,
> >
> >~ Simon
> >
> >
> >
> >
>
>
Re: Train selectors
Posted by Jeanne Waldman <je...@oracle.com>.
I was thinking :selected for :active. :selected could be used for other
components, too.
For :visited/:unvisited, I can't think of a better name. I'm thinking
that we should use .p_AFVisited, .P_AFUnvisited until we have the
pseudo-class support in. These wouldn't in a public api format, though.
- Jeanne
Simon_Lessard@DMR.CA wrote:
>Hello,
>
>I thought about the following name changes for the selectors:
>
>:active --> :current or :selected
>:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
>
>
>Do you have any other idea/preference?
>
>
>Regards,
>
>~ Simon
>
>
>
>
>
>"Simon Lessard" <si...@gmail.com>
>2006-08-25 22:49
>Please respond to adffaces-dev
>
> To: "Trinidad - Dev" <ad...@incubator.apache.org>
> cc:
> Subject: Train selectors
>
>
>Yes... again...
>
>I made a new renderer and it work quite well, but I had to use
>:ora-visited
>and :ora-active for some selectors because those are "pass through"
>values.
>Anyone have better name suggestion while we implement state interception
>on
>a per component basis?
>
>
>Regards,
>
>~ Simon
>
>
>
>
Re: Train selectors
Posted by Si...@DMR.CA.
Hello,
I thought about the following name changes for the selectors:
:active --> :current or :selected
:visited/:unvisited --> :completed/:uncompleted or :seen/:unseen
Do you have any other idea/preference?
Regards,
~ Simon
"Simon Lessard" <si...@gmail.com>
2006-08-25 22:49
Please respond to adffaces-dev
To: "Trinidad - Dev" <ad...@incubator.apache.org>
cc:
Subject: Train selectors
Yes... again...
I made a new renderer and it work quite well, but I had to use
:ora-visited
and :ora-active for some selectors because those are "pass through"
values.
Anyone have better name suggestion while we implement state interception
on
a per component basis?
Regards,
~ Simon