Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backport Plot Containers refactor to 5.0 maintenance branch #765

Merged
merged 3 commits into from
Jun 8, 2021

Commits on Jun 8, 2021

  1. Refactor chaco OverlayPlotContainer to inherit from enable OverlayCon…

    …tainer (#758)
    
    * REF : Redefine container_under_layers in OverlayPlotContainer
    
    the trait is already defined in BasePlotContainer but we redefine it in
    the subclass so that we can eventually stop inheriting from it
    
    	modified:   chaco/plot_containers.py
    
    * REF : Redefine draw_layer trait in subclass
    
    like before, this trait is already defined in BasePlotContainer but we
    duplicate it in the subclass so that we can stop inheriting from
    BasePlotContainer
    
    	modified:   chaco/plot_containers.py
    
    * REF : Stop inheriting from BasePlotContainer
    
    all of the traits defined in BasePlotContainer have been redefined in
    OverlayPlotContainer. so OverlayPlotContainer can just inherit from
    Container directly
    
    	modified:   chaco/plot_containers.py
    
    * REF : Make OverlayPlotContainer inherit from enable OverlayContainer
    
    and remove the now redundant definitions of the methods
    get_preferred_size and _do_layout
    
    	modified:   chaco/plot_containers.py
    Poruri Sai Rahul committed Jun 8, 2021
    Configuration menu
    Copy the full SHA
    5a7d583 View commit details
    Browse the repository at this point in the history
  2. Use stack layout helpers from enable (#757)

    * CLN : Use stack layout helpers from enable
    
    there was duplicate code sitting in chaco that handled getting the
    preferred stacked container size and that handled doing the layout.
    
    this commit updates chaco to make use of the existing helper functions
    in enable
    
    	modified:   chaco/plot_containers.py
    
    * Fix bad merge
    Poruri Sai Rahul committed Jun 8, 2021
    Configuration menu
    Copy the full SHA
    536475e View commit details
    Browse the repository at this point in the history
  3. Make chaco v/h plot containers inherit from enable v/h stacked contai…

    …ners (#764)
    
    * REF : Redefine class-level attr on StackedPlotContainer subclasses
    
    specifically, HPlotContainer and VPlotContainer subclasses.
    this is a small step towards removing the inheritance from
    StackedPlotContainer
    
    	modified:   chaco/plot_containers.py
    
    * REF : Redefine methods defined on StackedPlotContainer
    
    specifically, we redefine get_preferred_size and _do_stack_layout
    methods on the subclasses of StackedPlotContainer
    
    	modified:   chaco/plot_containers.py
    
    * REF : Redefine stack_dimension and other_dimension on subclasses
    
    with these two traits, we have finally duplicated all methods and traits
    defined on the StackedPlotContainer in its subclasses.
    
    In the next step, we can finally remove the inheritance from
    StackedPlotContainer
    
    	modified:   chaco/plot_containers.py
    
    * CLN : Remove inheritance from StackedPlotContainer
    
    and make the subclasses inherit directly from BasePlotContainer instead.
    
    also remove the StackedPlotContainer class. We don't need to worry about
    external users of StackedPlotContainer as the class is private to this
    module and isn't exposed outside of this module. See __all__ in
    chaco.plot_containers
    
    	modified:   chaco/plot_containers.py
    
    * REF : Redefine BasePlotContainer traits on subclasses
    
    and with this, we can remove their dependence on BasePlotContainer as
    well
    
    	modified:   chaco/plot_containers.py
    
    * REF : chaco stacked plot containers now inherit from enable Container
    
    we can now start the process of using stacked container classes in
    enable
    
    	modified:   chaco/plot_containers.py
    
    * CLN : Make HPlotContainer inherit from enable HStackedContainer
    
    and remove a number of now redundant trait definitions and methods
    
    	modified:   chaco/plot_containers.py
    
    * REF : Make VPlotContainer inherit from enable VStackedContainer
    
    and remove a number of now redundant trait and methods definitions. also
    remove unused imports from enable.
    
    	modified:   chaco/plot_containers.py
    
    * FIX : Define necessary private cache trait on VPlotContainer
    
    _cached_preferred_size is expected and set by the layout machinery. it
    is defined explicitly on the HPlotContainer and OverlayPlotContainer but
    not on the VPlotContainer earlier
    
    	modified:   chaco/plot_containers.py
    
    * FIX : Dont import stacked containers from enable.api
    
    the classes were added to enable.api on the main branch - and they arent
    available in a released version yet
    
    	modified:   chaco/plot_containers.py
    
    * FIX : Install enable from maint/5.2 branch from git source
    
    instead of installing enable 5.1.1 via edm
    
    this is a temporary solution until enable 5.2.0 is available via
    edm - at which point the changes in ci should be removed
    
    	modified:   ci/edmtool.py
    
    * FIX : Install GL dependencies even on null toolkit
    
    because CI now needs to build enable from source
    
    	modified:   .github/workflows/test-with-edm.yml
    Poruri Sai Rahul committed Jun 8, 2021
    Configuration menu
    Copy the full SHA
    fb7a7b4 View commit details
    Browse the repository at this point in the history