Changes between Version 13 and Version 14 of APP_LAYOUT_MYDOGGY_R1


Ignore:
Timestamp:
07/23/09 15:12:18 (16 years ago)
Author:
peko
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • APP_LAYOUT_MYDOGGY_R1

    v13 v14  
    3535    * Fixing mydoggy library: 
    3636     * There is a bug in the mydoggy built in "DockedContainer" that doesn't allow look and feel setting because of improper getting of the default font from a SynthLookAndFeel. This means that setting a system LookAndFeel is OK, while setting a synth one breaks mydoggy. 
    37      * A package that fixes mydoggy will be created inside the "org.sophie2.main.layout.mydoggy" module. It will be named "[source:branches/private/peko/sophie2-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes fixes]" and will contain: 
    38       * An implementation of "DockedContainer" in a class called [source:branches/private/peko/sophie2-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieDockedContainer.java SophieDockedContainer]. It will provide a default font and set in the places where mydoggy breaks. 
    39       * In order to have a consistently working mydoggy we should also provide an implementation of "ToolWindowDescriptor" in a class called [source:branches/private/peko/sophie2-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieToolWindowDescriptor.java SophieToolWindowDescriptor]. It is needed for another class described later so that it return a "SophieDockedContainer". The  "getToolWindowContainer" will be overridden to provide it. 
    40       * The SophieToolWindowDescriptor is needed in MyDoggyToolWindowManager. In order for the whole fix to work we should provide a [source:branches/private/peko/sophie2-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieToolWindowManager.java SophieToolWindowManager] that overrides the "createDescriptor" method. 
     37     * A package that fixes mydoggy will be created inside the "org.sophie2.main.layout.mydoggy" module. It will be named "[source:branches/private/peko/sophie2-mydoggy-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes fixes]" and will contain: 
     38      * An implementation of "DockedContainer" in a class called [source:branches/private/peko/sophie2-mydoggy-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieDockedContainer.java SophieDockedContainer]. It will provide a default font and set in the places where mydoggy breaks. 
     39      * In order to have a consistently working mydoggy we should also provide an implementation of "ToolWindowDescriptor" in a class called [source:branches/private/peko/sophie2-mydoggy-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieToolWindowDescriptor.java SophieToolWindowDescriptor]. It is needed for another class described later so that it return a "SophieDockedContainer". The  "getToolWindowContainer" will be overridden to provide it. 
     40      * The SophieToolWindowDescriptor is needed in MyDoggyToolWindowManager. In order for the whole fix to work we should provide a [source:branches/private/peko/sophie2-mydoggy-refactoring/modules/org.sophie2.main.layout.mydoggy/src/main/java/org/sophie2/main/layout/mydoggy/fixes/SophieToolWindowManager.java SophieToolWindowManager] that overrides the "createDescriptor" method. 
    4141    * Refactoring our implementation for layouting: 
    4242     * UML diagram:[[BR]] [[Image(source:branches/private/peko/sophie2-mydoggy-refactoring/doc/uml-design-diagrams/mydoggy-module-uml.png, 90%)]] 
    43      * As described in the diagram we have two base classes for layout elements and these are the simple MDLayoutElement and a MDCompoundLayoutElement. The only difference is that the compound elements has a list property subElements and a ToolWindowManager. Before that the "subElements" were defined in every implementor of the MDCompoundLayoutElement. The MDManageable interface is to point out that some layout component has a tool window manager. The ToolWindowManager is something that actually lays out the elements and is a class of mydoggy library. 
     43     * As described in the diagram we have two base classes for layout elements and these are the simple MDLayoutElement and a MDCompoundLayoutElement. The only difference is that the compound elements has a list property of subElements and a ToolWindowManager. Before that the "subElements" were defined in every implementor of the MDCompoundLayoutElement. The MDManageable interface is to point out that some layout component has a tool window manager. The ToolWindowManager is something that actually lays out the elements and is a class of mydoggy library. 
    4444 
    4545 * Changesets: