You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2010/08/23 15:38:18 UTC

[jira] Created: (CAY-1474) Straightening CayenneModeler platform-specific builds

Straightening CayenneModeler platform-specific builds
-----------------------------------------------------

                 Key: CAY-1474
                 URL: https://issues.apache.org/jira/browse/CAY-1474
             Project: Cayenne
          Issue Type: Task
          Components: Modeler
    Affects Versions: 3.1M1
            Reporter: Andrus Adamchik
            Assignee: Andrus Adamchik
             Fix For: 3.1M1


A lack of consistent approach to the Modeler cross-platform behavior results in a number of issues. Most are not visible to the end users (and mostly causing problems in development), still that may change as we are upgrading preferences in Cayenne 3.1. So..

1. Core Modeler code has OSX-specific logic for inclusion of Quit/About/Preferences menus. Since OSX style Quit/About/Preferences are availble on OS X under "native" Aqua look and feel only when "cayenne-modeler-mac-ext" is compiled in, a generic CayenneModeler assembly lacks those menus on the Mac. 

2. Dynamic look and feel driven by preferences is causing issues when upgrading from 3.0 to 3.1 (the Modeler switches to Windows Plastic L&F, also loosing Quit/About/Preferences menus in the process)..

3. There were other minor issues that I cna't remember now.

So what I am going to do this:

* Look and feel will be hardcoded per Modeler assembly type (no more override from preferences). It will be Aqua for OS X assembly, and plastic for generic and windows. Caveat: it will be "default" (no forcing special L&F) in the base "cayenne-modeler" module. This way we can get correct keyboard shortcusts when debugging the Modeler on Mac.

* the code will be refactored to provide menu and look and feel configuration as extension points that can be overridden by subclassing of some launcher class. (in the past we had a much more ambitious plans to use a plugin container... maybe some day. OSGI is more or less usable now)

* default cayenne-modeler module without platform extensions will install all menus and will use platform default L&F (see above). This setup will be used when executed from Eclipse on all platforms..

* OS X assembly will subclass the launcher to deal with Quit/About/Preferences menus and to maybe force AQUA L&F.

* Windows and generic assemblies will subclass the launcher to add Plastic L&F. (Plastic seems to look better on Linux than Java defaults)





 




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (CAY-1474) Straightening CayenneModeler platform-specific builds

Posted by "Andrus Adamchik (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CAY-1474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrus Adamchik closed CAY-1474.
--------------------------------

    Resolution: Fixed

> Straightening CayenneModeler platform-specific builds
> -----------------------------------------------------
>
>                 Key: CAY-1474
>                 URL: https://issues.apache.org/jira/browse/CAY-1474
>             Project: Cayenne
>          Issue Type: Task
>          Components: Modeler
>    Affects Versions: 3.1M1
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>             Fix For: 3.1M1
>
>
> A lack of consistent approach to the Modeler cross-platform behavior results in a number of issues. Most are not visible to the end users (and mostly causing problems in development), still that may change as we are upgrading preferences in Cayenne 3.1. So..
> 1. Core Modeler code has OSX-specific logic for inclusion of Quit/About/Preferences menus. Since OSX style Quit/About/Preferences are availble on OS X under "native" Aqua look and feel only when "cayenne-modeler-mac-ext" is compiled in, a generic CayenneModeler assembly lacks those menus on the Mac. 
> 2. Dynamic look and feel driven by preferences is causing issues when upgrading from 3.0 to 3.1 (the Modeler switches to Windows Plastic L&F, also loosing Quit/About/Preferences menus in the process)..
> 3. There were other minor issues that I cna't remember now.
> So what I am going to do this:
> * Look and feel will be hardcoded per Modeler assembly type (no more override from preferences). It will be Aqua for OS X assembly, and plastic for generic and windows. Caveat: it will be "default" (no forcing special L&F) in the base "cayenne-modeler" module. This way we can get correct keyboard shortcusts when debugging the Modeler on Mac.
> * the code will be refactored to provide menu and look and feel configuration as extension points that can be overridden by subclassing of some launcher class. (in the past we had a much more ambitious plans to use a plugin container... maybe some day. OSGI is more or less usable now)
> * default cayenne-modeler module without platform extensions will install all menus and will use platform default L&F (see above). This setup will be used when executed from Eclipse on all platforms..
> * OS X assembly will subclass the launcher to deal with Quit/About/Preferences menus and to maybe force AQUA L&F.
> * Windows and generic assemblies will subclass the launcher to add Plastic L&F. (Plastic seems to look better on Linux than Java defaults)
>  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.