Hmm... I just thought about it more and realized that this solution
wouldn't satisfy someone who DOESN'T want to include Spark at all in a
flex 4 project...

Perhaps useSpark and useHalo are the best options since it would give
the user the most control.

Someone wanting halo would then have to say <useHalo>true</useHalo>
regardless of the flex version, and someone wanting spark would have
to do the same.

You could keep with an auto-adding in version and have a
<autoIncludeFrameworkThemes>false</autoIncludeFrameworkThemes> or
something could then turn off the addition of adding any framework
themes - I think this would actually be the most user friendly to the
majority of users

since - users who want just spark for a flex 4 project (the default)
would not have to do any additional config or add in any additional
scope=theme dependencies

users who want to use halo for a flex 3 project wouldn't have to do anything.

Users who want BOTH spark and halo for a flex 4 project would just
specify <useHalo>true</useHalo>

and users who DON'T want anythign added in at all could say
<autoIncludeFrameworkThemes>false</autoIncludeFrameworkThemes>

Users who had stuff specified in the <themes> section or who had any
<scope="theme"> dependencies could have an info message printed
explaining that the other themes are added in by default unless the
autoIncludeFrameworkThemes property is set to false - which would help
prompt them on what to do.

it'd involve adding 2 properties, but I think for most people they'd
never get used at all since the defaults would match what they
expect...

thoughts?

Ryan


On Fri, Nov 19, 2010 at 1:49 PM, Ryan Gardner <[email protected]> wrote:
> True. I think the smartest defaults to use for flexmojos would be to
> mirror what Flex or flashbuilder does by itself - but that is based a
> lot on the version obviously.
>
> I think that the defaults should be to use spark only for 4.0 (or
> wherever spark became the default) and higher, and use halo for
> anything less than flex 4 - but if there is anything in <themes> at
> all or if there are any <scope="theme"> dependencies - have the
> default spark inclusion not happen
>
> so it'd be something like this:
>
> List<String> getThemes() {
>    if (there are scope =  theme dependencies || this.themes != null) {
>        // add in the themes explicitly included
>        // add in whatever
>   }
>        if (version < 4 || useHaloTheme ) {
>             setup the halo theme
>        }
>       if (version > 4) {
>           setup the spark theme
>    }
>
> We'd only need to add one property (useHaloTheme) that would force
> halo to be included for earlier versions - and even that property
> could probably be optional if the user wanted to just explicitly
> define halo in the dependencies with scope=theme
>
> What do you think of that approach?
>
> I agree if we can avoid having some property trigger it and just go
> based on dependencies that'd be a plus. Perhaps splitting out
> spark.css and halo.swc into their own artifacts and then if the user
> wants to use them as themes just include them? (that'd be a major pain
> though to go back over all the past flex versions released and put a
> halo-theme.swc and spark-theme.css in the repositories, so that
> approach might not work so well)
>
> Ryan
>
>
>
> On Fri, Nov 19, 2010 at 9:53 AM, Marvin Froeder <[email protected]> wrote:
>> Hrmmm, I'm usually not a fan of this dontDefault configurations.....   IMHO,
>> this mean the default is either wrong or broken.
>>
>> I agree with you, if your APP is pure spark, makes no since to include halo
>> theme.  Or, if it is pure halo, makes no sense to include spark theme.
>>
>> If I'm not mistake the default is spark only for flex 4.1
>>>
>>>       <!-- List of CSS or SWC files to apply as a theme. -->
>>>       <theme>
>>>          <!-- The Flex 4 default theme is Spark. -->
>>>          <filename>themes/Spark/spark.css</filename>
>>>       </theme>
>>
>> One idea I had was to check the dependency list....    add spark.css when
>> spark.swc is present on the dependencies and add halo.swc when mx.swc is
>> present....
>>
>> If you don't use halo, just exclude mx.swc and you are ok.  Or, if you don't
>> use spark just remove spark.swc from your build the the themes are going to
>> be fixed automatically....
>>
>> Problem:  mx.swc only exists for flex 4.5
>>
>> It would be a nice ground for hero stuff.... when mobilecomponents.swc need
>> a different set of themes
>>>
>>>       <!-- List of CSS or SWC files to apply as a theme. -->
>>>       <theme>
>>>          <!-- default theme is mobile overlayed on top of spark -->
>>>          <filename>themes/Mobile/spark.css</filename>
>>>          <filename>themes/Mobile/mobile.swc</filename>
>>>       </theme>
>>
>> I have no clue on how to deal with flex 4.0 and 4.1, but I'm listening.  May
>> be would need a useSpark/useHalo.... I just don't like that, but that is
>> totally me, I have no technical reason to forbid that, my guts just tell me
>> something is wrong =/
>>
>> VELO
>>
>> On Fri, Nov 19, 2010 at 2:31 PM, Ryan Gardner <[email protected]> wrote:
>>>
>>> Does Flex Builder always include both spark and halo themes? If it
>>> does, I suppose that's a fine default - do we want to add something to
>>> flex mojos to allow the user to disable spark or halo?
>>>
>>> I can make a clean fork in github and patch something up - but figured
>>> I'd ask about the preferred way to do it first so that I can make it
>>> as clean to apply as possible.
>>>
>>> would something like <useSpark>true</useSpark> and
>>> <useHalo>false</useHalo> added to the config be the approach to take?
>>>
>>> Right now the way FM4 is, it will ADD halo and spark no matter what
>>> your dependencies are - so controlling which theme you are using is
>>> impossible through the dependencies.
>>>
>>> What do you think the cleanest way to make it possible to use just
>>> spark or just halo but still allow people to use both if they want
>>> would be? I think that the current implementation where the user
>>> doesn't have to use a big long copy-dependencies to get the theme
>>> files in place and then include them manually is a good move - but its
>>> important to let the user disable spark.
>>>
>>> Adding a property like <useSpark> that defaults to true and <useHalo>
>>> that defaults to true would be pretty easy - but I'm not sure if you
>>> are wanting to add in more properties to the config at this point for
>>> FM4 or not.
>>>
>>> Ryan
>>>
>>> On Wed, Nov 17, 2010 at 11:37 AM, Ryan Gardner <[email protected]> wrote:
>>> > I don't want to use the halo theme in my project, but it seems that
>>> > after the recent change to allow using both halo and spark it now
>>> > ALWAYS includes halo.swc in the list of themes passed to the compiler
>>> >
>>> > Is this intended to match some default adobe compiler setting? I don't
>>> > mind having the option to use halo and spark, but it seems that they
>>> > are both always included regardless of what theme dependencies you
>>> > have on the project.
>>> >
>>> > Ryan
>>> >
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Flex Mojos" group.
>>> To post to this group, send email to [email protected]
>>> To unsubscribe from this group, send email to
>>> [email protected]
>>> For more options, visit this group at
>>> http://groups.google.com/group/flex-mojos
>>>
>>> http://flexmojos.sonatype.org/
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Flex Mojos" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/flex-mojos
>>
>> http://flexmojos.sonatype.org/
>>
>

-- 
You received this message because you are subscribed to the Google
Groups "Flex Mojos" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/flex-mojos

http://flexmojos.sonatype.org/

Reply via email to