Fix MetricsReloaded for IDEA 8.x/Diana

Hi,

I would like to fix MetricsReloaded so it works under IDEA  8.x/Diana.

I am a newbie to plugin development so I would like to ask for  guidance and assistance. I have read the plugin tutorials and I'm able  to debug MetricsReloaded.

From my review and debugging of the code, I need to fix the  following to make it useful for 8.X/Diana:

1. Update code to compile cleanly and  run under 8.x/Diana

      a. Update/replace "missing" classes & interfaces
          - BaseAnalysisAction & BaseAnalysisActionDialog in  ProjectMetricsAction  (http://svn.jetbrains.org/idea/Trunk/Metrics/src/com/sixrr/metrics/plugin/ProjectMetricsAction.java)
          - ActionToolbarImpl & TreeSpeedSearch in MetricsConfigurationPanel  (http://svn.jetbrains.org/idea/Trunk/Metrics/src/com/sixrr/metrics/ui/metricdisplay/MetricsConfigurationPanel.java)

         - I was able to compile MR by replacing  BaseAnalysisAction with AnAction and implementing actionPerformed() as a  wrapper to the existing analyze() method.
         - I also  temporarily commented out TreeSpeedSearch & BaseAnalysisActionDialog  (which was actually unused)

     b. Make Calculate Metrics action work for correct  analysis scope
         - I am able to run Calculate Metrics  (ProjectMetricsAction) which is currently defaulting to Project scope  and the Complexity Metrics profile
         - Need to fix this so  it selects the correct scope and metrics profile to run on

     c. Make Calculate Metrics action work using selected  profile
        - Related to B; need a way (UI) to  select/configure profile to run on, see ProfileSelectionPanel  (http://svn.jetbrains.org/idea/Trunk/Metrics/src/com/sixrr/metrics/ui/dialogs/ProfileSelectionPanel.java)


2. Update code to "enable"  configuration/settings
     a. Setup/expose an  IDE/Project level configuration probably using  MetricsConfigurationPanel  (http://svn.jetbrains.org/idea/Trunk/Metrics/src/com/sixrr/metrics/ui/metricdisplay/MetricsConfigurationPanel.java)

     b. Make Calculate Metrics action work on "default"  profile
        - Related to 1.c; need a way to set a  "default" profile


3. Support & maintenance =) (not  sure if I will have enough time & a bit too ambitious at this time)
     a. Update/replace deprecated code to at least 8.x/Diana release
     b. Add unit tests for self-regression  (http://svn.jetbrains.org/idea/Trunk/Metrics/test/com/sixrr/metrics/context/)
     c. Update UI to improve navigation & filter of results
    d.  Update visualization of results (& export visualizations)


Any assistance and guidance in the right direction is very much  appreaciated.

By the way, does anybody know how to contact the original author,  Dave Griffith?

Please sign in to leave a comment.