Or we provide this additional component/tweak the existing
stylesheet-component to provide such a feature optionally. Better have
a way of doing this that requires customization than not having a way
of doing this at all, right?

regards,

Martin

On 7/30/07, Scott O'Bryan <[EMAIL PROTECTED]> wrote:
> It's possible, but Portlet events won't be available until JSR-286.  And
> although I've seen some of the AJAX support for 286, I'm not sure what
> the eventing model will and will not support.  So either way, we'll need
> to revisit this I think when 286 comes out.  For now we're probably
> stuck with the simple styling.
>
> Simon Lessard wrote:
> > Ok, I'm really getting out of ideas here... But here's another attempt
> >
> > Couldn't we use the portlet message event model for that ? If all
> > portlets broadcast a message event containing their stylesheet (yeah,
> > it will be ugly on the network latency...) then the first Trinidad
> > portlet that catch those messages get in charge of rendering the
> > styles and warn the other portlets that it's going to be by
> > broadcasting yet another message (dunno if you can broadcast from an
> > event listener though... I have yet to read most of the spec on
> > portlet events)...
> >
> >
> > Regards,
> >
> > ~ Simon
> >
> > On 7/30/07, *Scott O'Bryan* <[EMAIL PROTECTED]
> > <mailto:[EMAIL PROTECTED]>> wrote:
> >
> >     Oops.  Submitted before I was done.
> >
> >     Currently Trinidad supports the ability to turn off stylesheets,
> >     it also
> >     supports the ability to force a certain skin to render.  Making is so
> >     that the stylesheet only loads once, however, is not trivial and
> >     since
> >     skinning extensions are currently combined into a single style sheet,
> >     the first portlet and/or the portal container would need to make sure
> >     those skinning extensions are installed as well.
> >
> >     Scott
> >
> >     Scott O'Bryan wrote:
> >     > This won't work in WSRP Portal environments that may use distributed
> >     > portlets.  This is because the portlets may exist on different
> >     > servers.  Furthermore different portlets may have different
> >     skinning
> >     > extensions.  This will hose the styling if a portlet with no
> >     skinning
> >     > extensions gets added before portlets WITH skinning extensions.  The
> >     > skinning extensions will not be available
> >     >
> >     >
> >     > Martin Marinschek wrote:
> >     >> Sure, this would work.
> >     >>
> >     >> Everyone agreeing we should do it this way?
> >     >>
> >     >> regards,
> >     >>
> >     >> Martin
> >     >>
> >     >> On 7/28/07, Simon Lessard < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>
> >     >>> Yeah, that would imply every single renderers. In a non-portlet
> >     >>> environment
> >     >>> the performance hit would not be big though as it would only
> >     be on
> >     >>> method
> >     >>> call and checking if we run in a portlet environment would not
> >     be an
> >     >>> expensive operation compared to the overall job done by renderers.
> >     >>> However
> >     >>> in the portlet environment, it would be a tad more...
> >     >>>
> >     >>> What about a ResponseWriter decorator applied by the renderkit
> >     if it
> >     >>> get
> >     >>> called by a portlet environment? The decorator could inject the
> >     >>> JavaScript
> >     >>> style copy just before the first non <html>, <head> or <body>
> >     >>> element then
> >     >>> set a boolean flag to false to inhibit itself. The overhaul would
> >     >>> then be a
> >     >>> single if evaluation per startElement. It would be called
> >     often, but
> >     >>> a if
> >     >>> with a boolean flag get evaluated in 2 ticks, which is nothing
> >     for all
> >     >>> practical purposes.
> >     >>>
> >     >>>
> >     >>> On 7/28/07, Martin Marinschek <[EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>>
> >     >>>> But you'd need to do this check in every renderer then, right? I
> >     >>>> wonder if this is good performance wise.
> >     >>>>
> >     >>>> regards,
> >     >>>>
> >     >>>> Martin
> >     >>>>
> >     >>>> On 7/27/07, Simon Lessard < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>>>
> >     >>>>> One way would be to have something along those line:
> >     >>>>>
> >     >>>>> CoreRenderer.java
> >     >>>>>
> >     >>>>>  public void encodeBegin(FacesContext context, UIComponent
> >     component)
> >     >>>>>  {
> >     >>>>>   if (isPortlet(context) && !isXhtmlRootElement() &&
> >     >>>>>
> >     >>> !isStyleSheetCopied())
> >     >>>
> >     >>>>>    {
> >     >>>>>      pushStyleSheet(context);
> >     >>>>>    }
> >     >>>>>
> >     >>>>>   // Do normal processing
> >     >>>>> }
> >     >>>>>
> >     >>>>>  protected abstract boolean isXhtmlRootElement();
> >     >>>>>
> >     >>>>> Then we would simply have to make isXhtmlRootElement()
> >     return true
> >     >>>>> for
> >     >>>>> document, head and body renderers and false for the others. But
> >     >>>>> it's not
> >     >>>>> extremely clean.
> >     >>>>>
> >     >>>>>
> >     >>>>> Regards,
> >     >>>>>
> >     >>>>> ~ Simon
> >     >>>>>
> >     >>>>>
> >     >>>>> On 7/27/07, Martin Marinschek < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>>>>
> >     >>>>>> Sure, it would be better for the user if it works out of
> >     the box.
> >     >>>>>>
> >     >>>>>> As much as I think, I don't find a central place where to
> >     put it,
> >     >>>>>>
> >     >>> though.
> >     >>>
> >     >>>>>> Ideas anyone?
> >     >>>>>>
> >     >>>>>> regards,
> >     >>>>>>
> >     >>>>>> Martin
> >     >>>>>>
> >     >>>>>> On 7/27/07, Simon Lessard <[EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>>>>>
> >     >>>>>>> Hello Martin,
> >     >>>>>>>
> >     >>>>>>> Yeah I thought about a new component and we actually
> >     already have
> >     >>>>>>> <trh:styleSheet/> that could be slightly altered to do
> >     that work,
> >     >>>>>>>
> >     >>> but I
> >     >>>
> >     >>>>>>> would prefer a way not involving any action from users.
> >     >>>>>>>
> >     >>>>>>>
> >     >>>>>>> On 7/27/07, Martin Marinschek <
> >     [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> >     wrote:
> >     >>>>>>>
> >     >>>>>>>> Hi Simon,
> >     >>>>>>>>
> >     >>>>>>>> true. The form-render was good for my nice small example,
> >     but is
> >     >>>>>>>>
> >     >>> no
> >     >>>
> >     >>>>>>>> general solution of course.
> >     >>>>>>>>
> >     >>>>>>>> I wonder if this would mandate a special component which does
> >     >>>>>>>>
> >     >>> nothing
> >     >>>
> >     >>>>>>>> but adding the stylesheet to the head?
> >     >>>>>>>>
> >     >>>>>>>> Eventually, the component could be generalized, so that
> >     all kinds
> >     >>>>>>>>
> >     >>> of
> >     >>>
> >     >>>>>>>> stylesheets can be added, if a link is provided and the
> >     stylesheet
> >     >>>>>>>> hasn't been added so far - I think this solution might be
> >     >>>>>>>>
> >     >>> interesting
> >     >>>
> >     >>>>>>>> for the portlet-developer in general.
> >     >>>>>>>>
> >     >>>>>>>> regards,
> >     >>>>>>>>
> >     >>>>>>>> Martin
> >     >>>>>>>>
> >     >>>>>>>> On 7/27/07, Simon Lessard < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>> wrote:
> >     >>>>>>>>
> >     >>>>>>>>> Issue with #3 is not very hard, we already have a
> >     >>>>>>>>>
> >     >>> RenderingContext
> >     >>>
> >     >>>>> that
> >     >>>>>
> >     >>>>>>> can
> >     >>>>>>>
> >     >>>>>>>>> be used for that. We could probably hook that code in
> >     >>>>>>>>>
> >     >>> CoreRenderer
> >     >>>
> >     >>>>> or
> >     >>>>>
> >     >>>>>>>>> XhtmlRenderer. The only issue left then would be to not
> >     have
> >     >>>>>>>>>
> >     >>>>> document,
> >     >>>>>
> >     >>>>>>> head
> >     >>>>>>>
> >     >>>>>>>>> and body renderer to execute it. Placing it in
> >     FormRenderer only
> >     >>>>>>>>>
> >     >>>>> does
> >     >>>>>
> >     >>>>>>> not
> >     >>>>>>>
> >     >>>>>>>>> seems right in case your page does not contain a form at
> >     all or
> >     >>>>>>>>>
> >     >>> use
> >     >>>
> >     >>>>> a
> >     >>>>>
> >     >>>>>>> basic
> >     >>>>>>>
> >     >>>>>>>>> JSF form (extremely unlikely though).
> >     >>>>>>>>>
> >     >>>>>>>>>
> >     >>>>>>>>> On 7/27/07, Martin Marinschek <
> >     [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> >     >>>>>>>>>
> >     >>> wrote:
> >     >>>
> >     >>>>>>>>>> For the discussion on if and how to integrate this into
> >     >>>>>>>>>>
> >     >>> Trinidad -
> >     >>>
> >     >>>>> I
> >     >>>>>
> >     >>>>>>>>>> see three cases:
> >     >>>>>>>>>>
> >     >>>>>>>>>> 1) people only want basic skinning, Trinidad uses
> >     >>>>>>>>>>
> >     >>> simple.portlet,
> >     >>>
> >     >>>>> and
> >     >>>>>
> >     >>>>>>>>>> emits portlet-standard compliant skinning hooks
> >     >>>>>>>>>>
> >     >>>>>>>>>> 2) people want normal Trinidad skinning, portlet container
> >     >>>>>>>>>>
> >     >>>>> provides
> >     >>>>>
> >     >>>>>>>>>> CSS file in the head, Trinidad doesn't have to do anything
> >     >>>>>>>>>>
> >     >>>>> (especially
> >     >>>>>
> >     >>>>>>>>>> not switch to portlet-standard compliant skinning hooks)
> >     >>>>>>>>>>
> >     >>>>>>>>>> 3) people want Trinidad skinning, portlet container
> >     does not
> >     >>>>>>>>>>
> >     >>>>> provide
> >     >>>>>
> >     >>>>>>>>>> the CSS file, Trinidad portlet needs to add the CSS
> >     file with
> >     >>>>>>>>>> JavaScript itself. Issue to solve: CSS file needs to be
> >     added
> >     >>>>>>>>>>
> >     >>> only
> >     >>>
> >     >>>>>>>>>> once.
> >     >>>>>>>>>>
> >     >>>>>>>>>> regards,
> >     >>>>>>>>>>
> >     >>>>>>>>>> Martin
> >     >>>>>>>>>>
> >     >>>>>>>>>> On 7/27/07, Martin Marinschek <
> >     [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> >
> >     >>>>>>>>>>
> >     >>>>> wrote:
> >     >>>>>
> >     >>>>>>>>>>> Hi Simon, Scott,
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> I've made skinning work now in any container - this is the
> >     >>>>>>>>>>>
> >     >>> code
> >     >>>
> >     >>>>> that
> >     >>>>>
> >     >>>>>>>>>>> I've used, for other users as a reference. We should carry
> >     >>>>>>>>>>>
> >     >>> on
> >     >>>
> >     >>>>> the
> >     >>>>>
> >     >>>>>>>>>>> discussion if and how to integrate this into Trinidad
> >     >>>>>>>>>>>
> >     >>> itself,
> >     >>>
> >     >>>>>>> though.
> >     >>>>>>>
> >     >>>>>>>>>>> regards,
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> Martin
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> --------------------
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> use a binding attribute on your tr:form:
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> <tr:form id="helloForm" binding="#{ personPage.form}">
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> provide a getter for this form in your backing-bean:
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>     public CoreForm getForm() {
> >     >>>>>>>>>>>         CoreForm coreForm =  new MyCoreForm();
> >     >>>>>>>>>>>         return coreForm;
> >     >>>>>>>>>>>     }
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> write the class MyCoreForm, extending Trinidad's
> >     CoreForm -
> >     >>>>>>>>>>>
> >     >>> with
> >     >>>
> >     >>>>>>> that,
> >     >>>>>>>
> >     >>>>>>>>>>> you should be good.
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>     public static class MyCoreForm extends CoreForm {
> >     >>>>>>>>>>>         @Override
> >     >>>>>>>>>>>         public void encodeBegin(FacesContext context)
> >     throws
> >     >>>>>>>>>>>
> >     >>>>>>> IOException
> >     >>>>>>>
> >     >>>>>>>>> {
> >     >>>>>>>>>
> >     >>>>>>>>>>>             StyleContext styleContext =
> >     >>>>>>>>>>>
> >     >>> ((CoreRenderingContext)
> >     >>>
> >     >>>>>>>>>>> RenderingContext.getCurrentInstance
> >     >>>>>>>>>>>
> >     >>>>>>>>> ()).getStyleContext();
> >     >>>>>>>>>
> >     >>>>>>>>>>>             String uri =
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>
> >     >>>>>>> styleContext.getStyleProvider
> >     >>>>>>>
> >     >>>>> ().getStyleSheetURI(styleContext);
> >     >>>>>
> >     >>>>>>>>>>>             String contextUri =
> >     >>>>>>>>>>> context.getExternalContext ().getRequestContextPath();
> >     >>>>>>>>>>>             String baseURL = contextUri +
> >     >>>>>>>>>>>
> >     >>>>>>>>> XhtmlConstants.STYLES_CACHE_DIRECTORY;
> >     >>>>>>>>>
> >     >>>>>>>>>>>             String finalUri = context.getExternalContext
> >     >>>>>>>>>>> ().encodeResourceURL(baseURL+uri);
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>             StringBuffer buf = new StringBuffer();
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>             buf.append("<script
> >     type=\"text/javascript\">\n"
> >     >>>>>>>>>>>
> >     >>> +
> >     >>>
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "//<![CDATA[\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "if( document.createStyleSheet) {\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "
> >     >>>>>>>>>>>
> >     >>>>> document.createStyleSheet('"+finalUri+"');\n"
> >     >>>>>
> >     >>>>>>> +
> >     >>>>>>>
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "}\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "else {\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "var styles = \"@import
> >     >>>>>>>>>>>
> >     >>>>>>> url('"+finalUri+"');\";\n" +
> >     >>>>>>>
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "var newSS= document.createElement
> >     >>>>>>>>>>>
> >     >>>>> ('link');\n" +
> >     >>>>>
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     " newSS.rel='stylesheet' ;\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     " newSS.href='"+finalUri+"';\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>
> >     >>> "document.getElementsByTagName(\"head\")[0].appendChild(newSS);\n"
> >     >>>
> >     >>>>>>>>> +
> >     >>>>>>>>>
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "}\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "//]]>\n" +
> >     >>>>>>>>>>>                     "\n" +
> >     >>>>>>>>>>>                     "</script>");
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>
> >     >>> context.getResponseWriter().write(buf.toString());
> >     >>>
> >     >>>>>>>>>>>             super.encodeBegin(context);
> >     >>>>>>>>>>>         }
> >     >>>>>>>>>>>     }
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> On 7/26/07, Simon Lessard < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>>
> >     >>>>>>>>>>>
> >     >>> wrote:
> >     >>>
> >     >>>>>>>>>>>> Thus linking Portal-Trinidad users to specific portal
> >     >>>>>>>>>>>>
> >     >>>>> vendor(s)...
> >     >>>>>
> >     >>>>>>> Ok,
> >     >>>>>>>
> >     >>>>>>>>> I see
> >     >>>>>>>>>
> >     >>>>>>>>>>>> the issue now... bleh...
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>> On 7/26/07, Scott O'Bryan < [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]> > wrote:
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>> Simon, you are correct.  The portal would be able to
> >     >>>>>>>>>>>>>
> >     >>> push a
> >     >>>
> >     >>>>>>>>> parameter to
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> Trinidad.  Always in a portal environment the skin is
> >     >>>>>>>>>>>>>
> >     >>>>>>> uncompressed
> >     >>>>>>>
> >     >>>>>>>>> so
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> that is also not an issue.  But currently changing the
> >     >>>>>>>>>>>>>
> >     >>>>>>> stylesheet
> >     >>>>>>>
> >     >>>>>>>>>>>>> provided by the Portal is a modification that needs to
> >     >>>>>>>>>>>>>
> >     >>> be
> >     >>>
> >     >>>>> made
> >     >>>>>
> >     >>>>>>> to
> >     >>>>>>>
> >     >>>>>>>>> the
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> portal itself.  I think that's where Martin is coming
> >     >>>>>>>>>>>>>
> >     >>> from.
> >     >>>
> >     >>>>> An
> >     >>>>>
> >     >>>>>>>>>>>>> unmodified portal container doesn't look very good when
> >     >>>>>>>>>>>>>
> >     >>>>>>> displaying
> >     >>>>>>>
> >     >>>>>>>>> faces
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> and forcing every portal container to provide a skin
> >     >>>>>>>>>>>>>
> >     >>> that is
> >     >>>
> >     >>>>> not
> >     >>>>>
> >     >>>>>>>>> based
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> off a standard is not going to be very successful in the
> >     >>>>>>>>>>>>>
> >     >>>>> general
> >     >>>>>
> >     >>>>>>>>> case.
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> I totally agree with this, but we're sort of between a
> >     >>>>>>>>>>>>>
> >     >>> rock
> >     >>>
> >     >>>>> and
> >     >>>>>
> >     >>>>>>> a
> >     >>>>>>>
> >     >>>>>>>>> hard
> >     >>>>>>>>>
> >     >>>>>>>>>>>>> place.  :)
> >     >>>>>>>>>>>>>
> >     >>>>>>>>>>>>>
> >     >>>>>>>>>>>>> Simon Lessard wrote:
> >     >>>>>>>>>>>>>
> >     >>>>>>>>>>>>>> Not really, I think we detect a specific parameter
> >     >>>>>>>>>>>>>>
> >     >>> pushed
> >     >>>
> >     >>>>> by
> >     >>>>>
> >     >>>>>>> the
> >     >>>>>>>
> >     >>>>>>>>>>>>>> container. So only container supporting skinning would
> >     >>>>>>>>>>>>>>
> >     >>>>> push
> >     >>>>>
> >     >>>>>>> it,
> >     >>>>>>>
> >     >>>>>>>>>>>>>> effectively synchronizing all portlet LaF. For other
> >     >>>>>>>>>>>>>>
> >     >>>>> container
> >     >>>>>
> >     >>>>>>> I
> >     >>>>>>>
> >     >>>>>>>>> think
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>> we simply use the normal code path... That or I had
> >     >>>>>>>>>>>>>>
> >     >>> some
> >     >>>
> >     >>>>>>> serious
> >     >>>>>>>
> >     >>>>>>>>>>>>>> hallucinations in the past months and imagined all
> >     >>>>>>>>>>>>>>
> >     >>> this...
> >     >>>
> >     >>>>>>>>>>>>>> On 7/26/07, *Martin Marinschek* <
> >     >>>>>>>>>>>>>>
> >     >>>>> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> >     >>>>>
> >     >>>>>>>>>>>>>> <mailto: [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]> >> wrote:
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     Hi Simon,
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     well, but this would then be portlet container
> >     >>>>>>>>>>>>>>
> >     >>>>> dependent,
> >     >>>>>
> >     >>>>>>>>> right?
> >     >>>>>>>>>
> >     >>>>>>>>>>>> You'd
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     effectively need to implement trinidad skinning in
> >     >>>>>>>>>>>>>>
> >     >>>>> every
> >     >>>>>
> >     >>>>>>>>> portlet
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     container.
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     regards,
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     Martin
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     On 7/26/07, Simon Lessard <
> >     >>>>>>>>>>>>>>
> >     >>> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> >     >>>
> >     >>>>>>>>>>>>>>     <mailto: [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>>> wrote:
> >     >>>>>>>>>>>>>>     > Personally, I don't see why the portal should
> >     >>>>>>>>>>>>>>
> >     >>> not be
> >     >>>
> >     >>>>>>> able to
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     provide all
> >     >>>>>>>>>>>>>>     > selectors.
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>     > Aren't we just not compressing the selector
> >     >>>>>>>>>>>>>>
> >     >>> names
> >     >>>
> >     >>>>> when
> >     >>>>>
> >     >>>>>>> we
> >     >>>>>>>
> >     >>>>>>>>> detect
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     a portal
> >     >>>>>>>>>>>>>>     > environment or did I miss something? I think
> >     >>>>>>>>>>>>>>
> >     >>> that
> >     >>>
> >     >>>>>>> strategy
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     cannot provides
> >     >>>>>>>>>>>>>>     > the icons though.
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>     > On 7/26/07, Martin Marinschek <
> >     >>>>>>>>>>>>>>
> >     >>>>>>> [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     <mailto: [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]> >> wrote:
> >     >>>>>>>>>>>>>>     > > Does the portlet container really provide
> >     >>>>>>>>>>>>>>
> >     >>> every
> >     >>>
> >     >>>>>>> styleclass
> >     >>>>>>>
> >     >>>>>>>>> that
> >     >>>>>>>>>
> >     >>>>>>>>>>>> is
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     > > necessary for Trinidad components to look like
> >     >>>>>>>>>>>>>>
> >     >>>>> they
> >     >>>>>
> >     >>>>>>>>> normally
> >     >>>>>>>>>
> >     >>>>>>>>>>>> look?
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > I'm just thinking that what is currently being
> >     >>>>>>>>>>>>>>
> >     >>>>> done is
> >     >>>>>
> >     >>>>>>> not
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     enough to
> >     >>>>>>>>>>>>>>     > > have the full skinning features available, and
> >     >>>>>>>>>>>>>>
> >     >>>>> that
> >     >>>>>
> >     >>>>>>> going
> >     >>>>>>>
> >     >>>>>>>>> the
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     > > direction of adding the CSS dynamically would
> >     >>>>>>>>>>>>>>
> >     >>>>> allow to
> >     >>>>>
> >     >>>>>>> do
> >     >>>>>>>
> >     >>>>>>>>> so.
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > regards,
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > Martin
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > On 7/26/07, Scott O'Bryan <
> >     >>>>>>>>>>>>>>
> >     >>> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> >     >>>
> >     >>>>>>>>>>>>>>     <mailto: [EMAIL PROTECTED]
> >     <mailto:[EMAIL PROTECTED]>>> wrote:
> >     >>>>>>>>>>>>>>     > > > Hey Martin,
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > > > Does the simple-portlet skin render any
> >     >>>>>>>>>>>>>>
> >     >>> better?
> >     >>>
> >     >>>>> I
> >     >>>>>
> >     >>>>>>>>> *THINK*
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     that when
> >     >>>>>>>>>>>>>>     > > > running in a portal environment you always
> >     >>>>>>>>>>>>>>
> >     >>> get
> >     >>>
> >     >>>>> the
> >     >>>>>
> >     >>>>>>>>>>>>>>     simple-portlet skin
> >     >>>>>>>>>>>>>>     > > > unless your portal provides one of the
> >     >>>>>>>>>>>>>>
> >     >>> necessary
> >     >>>
> >     >>>>>>> skin
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     extensions which,
> >     >>>>>>>>>>>>>>     > > > right now, it trinidad proprietary.  Maybe
> >     >>>>>>>>>>>>>>
> >     >>> this
> >     >>>
> >     >>>>> is
> >     >>>>>
> >     >>>>>>> just
> >     >>>>>>>
> >     >>>>>>>>> a
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     case of us
> >     >>>>>>>>>>>>>>     > > > needing to bug-fix the portlet skin.
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > > > That article is interesting, but I think
> >     >>>>>>>>>>>>>>
> >     >>> that
> >     >>>
> >     >>>>>>> Trinidad
> >     >>>>>>>
> >     >>>>>>>>> has
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     attempted to
> >     >>>>>>>>>>>>>>     > > > do the same thing only in a different way.
> >     >>>>>>>>>>>>>>
> >     >>>>> Instead
> >     >>>>>
> >     >>>>>>> of
> >     >>>>>>>
> >     >>>>>>>>> using
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     javascript
> >     >>>>>>>>>>>>>>     > > > to copy in the styles, we actually change
> >     >>>>>>>>>>>>>>
> >     >>> the
> >     >>>
> >     >>>>> class
> >     >>>>>
> >     >>>>>>>>> names
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     that get
> >     >>>>>>>>>>>>>>     > > > rendered on the client to use the portal
> >     >>>>>>>>>>>>>>
> >     >>> styles
> >     >>>
> >     >>>>>>> where
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     appropriate.
> >     >>>>>>>>>>>>>>     > > > Still, I'm not sure that this has been
> >     >>>>>>>>>>>>>>
> >     >>> tested
> >     >>>
> >     >>>>>>>>> extensively
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     because before
> >     >>>>>>>>>>>>>>     > > > we started looking at 301, much of
> >     >>>>>>>>>>>>>>
> >     >>> Trinidad's
> >     >>>
> >     >>>>> portal
> >     >>>>>
> >     >>>>>>>>> work
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     has been done
> >     >>>>>>>>>>>>>>     > > > with a Proof of Concept environment.
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > > > Scott
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > > > Martin Marinschek wrote:
> >     >>>>>>>>>>>>>>     > > > > After playing around for a while and
> >     >>>>>>>>>>>>>>
> >     >>> finally
> >     >>>
> >     >>>>>>> finding
> >     >>>>>>>
> >     >>>>>>>>> out
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     that it was
> >     >>>>>>>>>>>>>>     > > > > as easy as setting:
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>
> >     >>>>>>> <skin-family>simple</skin-family>
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > in the trinidad-config.xml I got skinning
> >     >>>>>>>>>>>>>>
> >     >>> to
> >     >>>
> >     >>>>> run
> >     >>>>>
> >     >>>>>>> in
> >     >>>>>>>
> >     >>>>>>>>> the
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     portlet
> >     >>>>>>>>>>>>>>     > > > > environment. In the end, I'm not very
> >     >>>>>>>>>>>>>>
> >     >>> happy
> >     >>>
> >     >>>>> with
> >     >>>>>
> >     >>>>>>> what
> >     >>>>>>>
> >     >>>>>>>>> I
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     see, though.
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > I'm attaching a screenshot - basically,
> >     >>>>>>>>>>>>>>
> >     >>> not
> >     >>>
> >     >>>>> much
> >     >>>>>
> >     >>>>>>>>> change
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     happens by
> >     >>>>>>>>>>>>>>     > > > > applying skinning - obviously due to the
> >     >>>>>>>>>>>>>>
> >     >>> fact
> >     >>>
> >     >>>>> that
> >     >>>>>
> >     >>>>>>> the
> >     >>>>>>>
> >     >>>>>>>>>>>> portlet
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     > > > > containers don't offer many default
> >     >>>>>>>>>>>>>>
> >     >>>>> style-class
> >     >>>>>
> >     >>>>>>> hooks.
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     > > > > Have I been getting this wrong or does it
> >     >>>>>>>>>>>>>>
> >     >>>>> really
> >     >>>>>
> >     >>>>>>> look
> >     >>>>>>>
> >     >>>>>>>>> like
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     this?
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > If I have been doing the right thing,
> >     >>>>>>>>>>>>>>
> >     >>> wouldn't
> >     >>>
> >     >>>>> it
> >     >>>>>
> >     >>>>>>> be
> >     >>>>>>>
> >     >>>>>>>>> nice
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     to have a
> >     >>>>>>>>>>>>>>     > > > > way of adding the stylesheet with
> >     >>>>>>>>>>>>>>
> >     >>> javascript
> >     >>>
> >     >>>>>>>>> dynamically
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     in the body?
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > Something like this:
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>
> >     >>> http://cse-mjmcl.cse.bris.ac.uk/blog/2005/08/18/1124396539593.html
> >     >>>
> >     >>>>>>>>>>>> <
> >     >>>>>>>>>>>>
> >     >>> http://cse-mjmcl.cse.bris.ac.uk/blog/2005/08/18/1124396539593.html
> >     >>>
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > might be in order to have full skinning
> >     >>>>>>>>>>>>>>
> >     >>>>> available,
> >     >>>>>
> >     >>>>>>> and
> >     >>>>>>>
> >     >>>>>>>>>>>>>>     still be
> >     >>>>>>>>>>>>>>     > > > > standards compliant.
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > I'd implement this in a component, if
> >     >>>>>>>>>>>>>>
> >     >>> nobody
> >     >>>
> >     >>>>> has
> >     >>>>>
> >     >>>>>>>>> better
> >     >>>>>>>>>
> >     >>>>>>>>>>>>>>     ideas...
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > regards,
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > > Martin
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>
> >     >>>
> >     ------------------------------------------------------------------------
> >     >>>
> >     >>>
> >     >>>>>>>>>>>>>>     > > > >
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > > >
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > --
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > http://www.irian.at
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > Your JSF powerhouse -
> >     >>>>>>>>>>>>>>     > > JSF Consulting, Development and
> >     >>>>>>>>>>>>>>     > > Courses in English and German
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     > > Professional Support for Apache MyFaces
> >     >>>>>>>>>>>>>>     > >
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>     >
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     --
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     http://www.irian.at
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     Your JSF powerhouse -
> >     >>>>>>>>>>>>>>     JSF Consulting, Development and
> >     >>>>>>>>>>>>>>     Courses in English and German
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>     Professional Support for Apache MyFaces
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>>
> >     >>>>>>>>>>>>>
> >     >>>>>>>>>>>>
> >     >>>>>>>>>>> --
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> http://www.irian.at
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> Your JSF powerhouse -
> >     >>>>>>>>>>> JSF Consulting, Development and
> >     >>>>>>>>>>> Courses in English and German
> >     >>>>>>>>>>>
> >     >>>>>>>>>>> Professional Support for Apache MyFaces
> >     >>>>>>>>>>>
> >     >>>>>>>>>>>
> >     >>>>>>>>>> --
> >     >>>>>>>>>>
> >     >>>>>>>>>> http://www.irian.at <http://www.irian.at>
> >     >>>>>>>>>>
> >     >>>>>>>>>> Your JSF powerhouse -
> >     >>>>>>>>>> JSF Consulting, Development and
> >     >>>>>>>>>> Courses in English and German
> >     >>>>>>>>>>
> >     >>>>>>>>>> Professional Support for Apache MyFaces
> >     >>>>>>>>>>
> >     >>>>>>>>>>
> >     >>>>>>>>>
> >     >>>>>>>> --
> >     >>>>>>>>
> >     >>>>>>>> http://www.irian.at
> >     >>>>>>>>
> >     >>>>>>>> Your JSF powerhouse -
> >     >>>>>>>> JSF Consulting, Development and
> >     >>>>>>>> Courses in English and German
> >     >>>>>>>>
> >     >>>>>>>> Professional Support for Apache MyFaces
> >     >>>>>>>>
> >     >>>>>>>>
> >     >>>>>>>
> >     >>>>>> --
> >     >>>>>>
> >     >>>>>> http://www.irian.at
> >     >>>>>>
> >     >>>>>> Your JSF powerhouse -
> >     >>>>>> JSF Consulting, Development and
> >     >>>>>> Courses in English and German
> >     >>>>>>
> >     >>>>>> Professional Support for Apache MyFaces
> >     >>>>>>
> >     >>>>>>
> >     >>>>>
> >     >>>> --
> >     >>>>
> >     >>>> http://www.irian.at
> >     >>>>
> >     >>>> Your JSF powerhouse -
> >     >>>> JSF Consulting, Development and
> >     >>>> Courses in English and German
> >     >>>>
> >     >>>> Professional Support for Apache MyFaces
> >     >>>>
> >     >>>>
> >     >>>
> >     >>
> >     >>
> >     >>
> >     >
> >     >
> >
> >
>
>


-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces

Reply via email to