[REVIEW REQUEST] RT-19713 Add API to JavaFX to allow for setting preferred user agent stylesheet

Daniel Zwolenski zonski at gmail.com
Wed Nov 21 14:04:13 PST 2012


reply-all got me again...


On Thu, Nov 22, 2012 at 8:58 AM, Daniel Zwolenski <zonski at gmail.com> wrote:

> +1 to the idea.
>
> I'm wondering if it's worth having some sort of System property (or
> something similar if System properties are bad form) that could set the
> default stylesheet as well if none has been explicitly set by the
> developer. That way if I forgot to specifically link my app to a default
> style sheet and then 12 months later a new release of Java causes me
> problems I could at least set the style via a system property rather than
> having to get back into my old code, change it, recompile, redeploy, etc.
> Applets and JNLP are the prime problem children for the auto-updating
> issues so anything that could be set in the HTML or JNLP to change the
> style would do the job in my opinion.
>
> Also more just thinking out loud, but some build tool support for this
> might be interesting. e.g. the native installers, and/or jnlp files could
> bundle in a default style per OS or something (and Maven could just use
> convention to look for the existence of say a default-win32-style.css vs a
> -osx, etc).
>
>
>
>
> On Thu, Nov 22, 2012 at 8:38 AM, Jim Weaver <james.weaver at oracle.com>wrote:
>
>> +1.
>>
>> Thanks,
>> Jim Weaver
>>
>>
>> On 11/21/12 4:09 PM, Jasper Potts wrote:
>>
>>> Hi All,
>>>
>>> I would like to add API to Application to add the ability to set the
>>> default user agent stylesheet. So far JavaFX has had a default stylesheet
>>> of capsian.css hard coded for all applications. In 8 if we have time I
>>> would like to have a new stylesheet that you can use as alternative to
>>> caspian.css. This would also open the platform to easy use of 3rd party
>>> look and feels.
>>>
>>> public abstract class Application {
>>> ….
>>>      /**
>>>       * Set the default user agent stylesheet. This is used to provide
>>> default
>>>       * styling for all ui controls and other nodes. Each release of
>>> JavaFX may
>>>       * have a new default value for this so if you need to guarantee
>>> consistency
>>>       * you will need to call this method and choose what default you
>>> would like
>>>       * for your application.
>>>       *
>>>       * @param url The URL to the stylesheet as a String.
>>>       */
>>>      public static void setDefaultUserAgentStylesheet(**String url) ….
>>> …..
>>> }
>>>
>>> This has been a much requested feature for a long time:
>>> http://javafx-jira.kenai.com/**browse/RT-8054<http://javafx-jira.kenai.com/browse/RT-8054>
>>> http://javafx-jira.kenai.com/**browse/RT-5753<http://javafx-jira.kenai.com/browse/RT-5753>
>>> http://javafx-jira.kenai.com/**browse/RT-19713<http://javafx-jira.kenai.com/browse/RT-19713>
>>>
>>> There have been some workarounds for specific use cases and a proposed
>>> solution for a Theme class but none have solved the root problem of being
>>> able to change the default user agent stylesheet.
>>>
>>> Thanks
>>>
>>> Jasper
>>>
>>
>>
>> --
>> Regards,
>> Jim Weaver
>> Java Evangelist
>> Oracle Corporation
>> james.weaver at oracle.com
>>
>>
>


More information about the openjfx-dev mailing list