incubator-adffaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Winer" <awi...@gmail.com>
Subject Re: ProcessTrainRenderer (pda vs. desktop renderers?)
Date Thu, 13 Jul 2006 20:52:50 GMT
Pavitra,

I haven't looked at these classes in a loooong while.

The general strategy is to avoid creating PDA-specific subclasses,
and instead add skinning keys or CSS classes to discriminate between
the two. That works when the differences are fairly minor tweaks, esp.
sizing.

However, looking at these classes now, it looks like the PDA
is radically different - much much simpler.  If your merged class
is basically a big "if desktop, use one code path, if PDA, use
a separate codepath", then it's better to just split them into
two classes and be done with it.

-- Adam


On 7/13/06, Pavitra Subramaniam <pavitra.subramaniam@oracle.com> wrote:
> Hello,
>
> I have merged the current ProcessRenderer.java (under 'adf-faces-impl\...\renderkit\uix')
and ProcessTrainRenderer.java (under 'adf-faces-impl\...\ui\laf\base\pda\desktop') into one
single renderer implementation under 'adf-faces-impl\...\renderkit\core\xhtml\ProcessTrainRenderer.java'
that extends the XhtmlRenderer.
>
> I noticed that there are currently 2 implementations for ProcessTrainRenderer (under
ui\laf\base\pda and ui\laf\base\pda\desktop) for different renderkits, I assume?
> Should I create a pda renderer in addition to the desktop version I have created, and
put them under 'renderkit\core\pda' and 'renderkit\core\desktop" resp.?
>
> Thanks
> - Pavitra
>
> -----Original Message-----
> From: Pavitra Subramaniam [mailto:pavitra.subramaniam@oracle.com]
> Sent: Monday, July 10, 2006 2:55 PM
> To: adffaces-dev@incubator.apache.org
> Subject: RE: ProcessTrain enhancement
>
> Hello Simon,
>
> Yes, I have started on this and will deliver the changes by mid-week, latest eow.
>
> Thanks
> - Pavitra
>
> -----Original Message-----
> From: Simon_Lessard@DMR.CA [mailto:Simon_Lessard@DMR.CA]
> Sent: Friday, July 07, 2006 6:17 AM
> To: adffaces-dev@incubator.apache.org
> Subject: RE: ProcessTrain enhancement
>
> Hello,
>
> Thank for your reply. I already started, but I'm not very far into it since I'm on another
project at the same time. Personally I think I could have it done by Tuesday or Wednesday
of next week. If you plan to be almost done by then as well then I should indeed start working
on something else.
>
>
> Regards,
>
> Simon Lessard
> Fujitsu Consulting
>
>
>
>
>
> "Pavitra Subramaniam" <pavitra.subramaniam@oracle.com>
> 2006-07-06 22:00
> Please respond to adffaces-user
>
>         To:     "adffaces-user@incubator.apache.org"
> <adffaces-user@incubator.apache.org>
>         cc:
>         Subject:        RE: ProcessTrain enhancement
>
>
> Hello,
>
> I have a task lined up to convert the existing Trinidad processTrain renderer to a "faces
major" version. And I plan to do it the following week. If you haven't already started it
I would be happy to work on it. I plan to deliver it in 2 phases.
> For phase 1, I simply plan to get the renderer to render the current layout and in the
second phase add the extra skinning selectors that you requested.
>
> If it's simple enough I can deliver both changes in one shot. Is that acceptable?
>
> Thanks
> - Pavitra
>
> -----Original Message-----
> From: Simon_Lessard@DMR.CA [mailto:Simon_Lessard@DMR.CA]
> Sent: Thursday, July 06, 2006 10:13 AM
> To: adffaces-user@incubator.apache.org
> Subject: Re: ProcessTrain enhancement
>
> Hello,
>
> Thank for the reply. I don't mind creating a new Renderer that extends XhtmlRenderer.
However, I have a little question about the FacesBean.Type that I must specify to the constructor.
I checked InputTextRenderer and saw that it was using CoreInputText.TYPE. That class seems
to be automatically generated so I assume there's a XML file somewhere from which the .java
is generated? Is that faces-config.xml, the .tld? A completely different one ? Where can I
find it?
>
>
> Thanks,
>
> Simon Lessard
> Fujitsu Consulting
>
>
>
>
>
> "Adam Winer" <awiner@gmail.com>
> 2006-07-06 11:50
> Please respond to adffaces-user
>
>         To:     adffaces-user@incubator.apache.org
>         cc:
>         Subject:        Re: ProcessTrain enhancement
>
>
> These look good to me.  One thing that's important:  we really need a Faces-major version
of this renderer - that is, instead of one that is in the "org.apache.myfaces.adfinternal.ui"
package, one that is in "org.apache.myfaces.adfinternal.renderkit.core.xhtml".
> Everything in "ui" is obsolete (oooold UIX-based code), and a major technical goal of
the project is to delete "ui" and "uinode" from the Apache Trinidad codebase.  So, -1 to adding
this feature to the old renderer, +1 to adding it to a new renderer.
>
> I'm more than happy to provide lots of details on how to write a new-style renderer,
though you can look at the existing examples for a pretty good clue how it works.
>
> -- Adam
>
> On 7/6/06, Simon_Lessard@dmr.ca <Simon_Lessard@dmr.ca> wrote:
> >
> > Hello,
> >
> > I'm currently working to modify the processTrain to accept more skin
> > selectors in order to open all icons provided by Oracle skin. The
> > selectors I plan to add are:
> >
> >   // processTrain styles used for the disabled links
> >   public static final String AF_PROCESS_TRAIN_TEXT_STYLE_CLASS =
> >     "af|processTrain::text";
> >
> >   // For outer margins
> >   public static final String AF_PROCESS_TRAIN_MARGIN_START_STYLE_CLASS =
> >     "af|processTrain::margin-start";
> >   public static final String AF_PROCESS_TRAIN_MARGIN_END_STYLE_CLASS =
> >     "af|processTrain::margin-end";
> >
> >   // For inner spacing
> >   public static final String AF_PROCESS_TRAIN_SPACING_STYLE_CLASS =
> >     "af|processTrain::step-spacing";
> >
> >   // For active steps
> >   public static final String AF_PROCESS_TRAIN_ACTIVE_START_ICON_NAME =
> >     "af|processTrain::step-active-start-icon";
> >   public static final String AF_PROCESS_TRAIN_ACTIVE_END_ICON_NAME =
> >     "af|processTrain::step-active-end-icon";
> >
> >   // For visited steps
> >   public static final String AF_PROCESS_TRAIN_VISITED_START_ICON_NAME =
> >     "af|processTrain::step-visited-start-icon";
> >   public static final String AF_PROCESS_TRAIN_VISITED_END_ICON_NAME =
> >     "af|processTrain::step-visited-end-icon";
> >
> >   // For unvisited steps
> >   public static final String AF_PROCESS_TRAIN_UNVISITED_START_ICON_NAME=
> >     "af|processTrain::step-unvisited-start-icon";
> >   public static final String AF_PROCESS_TRAIN_UNVISITED_END_ICON_NAME =
> >     "af|processTrain::step-unvisited-end-icon";
> >
> >   // For disabled steps
> >   public static final String AF_PROCESS_TRAIN_DISABLED_START_ICON_NAME =
> >     "af|processTrain::step-disabled-start-icon";
> >   public static final String AF_PROCESS_TRAIN_DISABLED_END_ICON_NAME =
> >     "af|processTrain::step-disabled-end-icon";
> >
> >   // For joints
> >   public static final String AF_PROCESS_TRAIN_JOINT_VISITED_ICON_NAME =
> >     "af|processTrain::joint-visited-icon";
> >   public static final String
> > AF_PROCESS_TRAIN_JOINT_UNVISITED_ICON_NAME
> =
> >     "af|processTrain::joint-unvisited-icon";
> >
> >   // For backward overflows
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_BACKWARD_STYLE_CLASS =
> >     "af|processTrain::overflow-backward";
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_BACKWARD_START_ICON_NAME =
> >     "af|processTrain::overflow-backward-start-icon";
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_BACKWARD_END_ICON_NAME =
> >     "af|processTrain::overflow-backward-end-icon";
> >
> >   // For forward overflows
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_FORWARD_STYLE_CLASS =
> >     "af|processTrain::overflow-forward";
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_FORWARD_START_ICON_NAME =
> >     "af|processTrain::overflow-forward-start-icon";
> >   public static final String
> AF_PROCESS_TRAIN_OVERFLOW_FORWARD_END_ICON_NAME =
> >     "af|processTrain::overflow-forward-end-icon";
> >
> > The target HTML structure for the process train in LtR mode is:
> >
> > <table align="center" border="0" cellpadding="0" cellspacing="0"
> > class="af|processTrain">
> >   <tbody>
> >     <tr>
> >       <td class="af|processTrain::margin-start" rowspan="2"></td>
> >
> >       <td align="right" class="af|processTrain::overflow-backward">
> >         <img src="af|processTrain::overflow-backward-start-icon"
> > title="%step-label%" alt="%step-label% : previous set"/>
> >       </td>
> >       <td background="af|processTrain::joint-visited-icon" align="left"
> > class="af|processTrain::overflow-backward>
> >         <img src="af|processTrain::overflow-backward-end-icon" alt="">
> >       </td>
> >
> >       <td background="af|processTrain::joint-visited-icon" class="
> > af|processTrain::step-spacing"></td>
> >
> >       <td background="af|processTrain::joint-visited-icon" align="right"
> > class="af|processTrain::step-visited">
> >         <img src="af|processTrain::step-visited-start-icon"
> > title="%step-label%" alt="%step-label% : previous step"/>
> >       </td>
> >       <td background="af|processTrain::joint-visited-icon" align="left"
> > class="af|processTrain::step-visited">
> >         <img src="af|processTrain::step-visited-end-icon" alt="">
> >       </td>
> >
> >       <td background="af|processTrain::joint-visited-icon" class="
> > af|processTrain::step-spacing"></td>
> >
> >       <td background="af|processTrain::joint-visited-icon" align="right"
> > class="af|processTrain::step-active">
> >         <img src="af|processTrain::step-active-start-icon"
> > title="%step-label%" alt="%step-label% : active step"/>
> >       </td>
> >       <td background="af|processTrain::joint-unvisited-icon"
> align="left"
> > class="af|processTrain::step-active">
> >         <img src="af|processTrain::step-active-end-icon" alt="">
> >       </td>
> >
> >       <td background="af|processTrain::joint-unvisited-icon" class="
> > af|processTrain::step-spacing"></td>
> >
> >       <td background="af|processTrain::joint-unvisited-icon"
> align="right"
> > class="af|processTrain::step-unvisited">
> >         <img src="af|processTrain::step-unvisited-start-icon"
> > title="%step-label%" alt="%step-label% : next step"/>
> >       </td>
> >       <td background="af|processTrain::joint-unvisited-icon"
> align="left"
> > class="af|processTrain::step-unvisited">
> >         <img src="af|processTrain::step-unvisited-end-icon" alt="">
> >       </td>
> >
> >       <td background="af|processTrain::joint-unvisited-icon" class="
> > af|processTrain::step-spacing"></td>
> >
> >       <td background="af|processTrain::joint-unvisited-icon"
> align="right"
> > class="af|processTrain::overflow-forward">
> >         <img src="af|processTrain::overflow-forward-start-icon"
> > title="%step-label%" alt="%step-label% : next set"/>
> >       </td>
> >       <td align="left" class="af|processTrain::overflow-forward">
> >         <img src="af|processTrain::overflow-forward-end-icon" alt="">
> >       </td>
> >
> >       <td class="af|processTrain::margin-end" rowspan="2"></td>
> >     </tr>
> >     <tr>
> >       <td colspan="2" class="af|processTrain::overflow-backward">
> >         <a class="af|processTrain::link">%step-label%</a>
> >       </td>
> >       <td colspan="2" class="af|processTrain::step-visited">
> >         <a class="af|processTrain::link">%step-label%</a>
> >       </td>
> >       <td colspan="2" class="af|processTrain::step-active">
> >         <a class="af|processTrain::link">%step-label%</a>
> >       </td>
> >       <td colspan="2" class="af|processTrain::step-unvisited">
> >         <a class="af|processTrain::text">%step-label%</a>
> >       </td>
> >       <td colspan="2" class="af|processTrain::overflow-forward">
> >         <a class="af|processTrain::text">%step-label%</a>
> >       </td>
> >     </tr>
> >   </tbody>
> > </table>
> >
> > Is that ok with you?
> >
> > Simon Lessard
> > DMR Conseil Inc. (http://www.dmrconseil.ca) T�l�phone : (418) 653-6881
> >
> > Sun Certified Programmer for Java 2 Platform 1.4
> >
>
>
>
>
>
>
>
>
>
Mime
View raw message