Inherit OffsetBox.get_window_extent.#23907
Merged
timhoffm merged 1 commit intomatplotlib:mainfrom Oct 11, 2022
Merged
Conversation
tacaswell
approved these changes
Sep 16, 2022
timhoffm
reviewed
Sep 19, 2022
Adjust OffsetBox.get_window_extent to use get_extent (which is typically redefined in subclasses) instead of get_extent_offsets (which is not), and make it check whether the current class' get_offset takes any arguments or not (which is not consistent, but fixing that requires some backcompat work). Also set the offset-getter of AnchoredOffsetbox as a fixed method on the class, rather than dynamicaly setting in that class' get_extent_offset. These changes then let us inherit the implementation of OffsetBox.get_window_extent across most subclasses instead of having to copy-paste it again and again.
Contributor
Author
|
@timhoffm I have handled your comment re: signature checking. |
timhoffm
approved these changes
Oct 11, 2022
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adjust OffsetBox.get_window_extent to use get_extent (which is typically redefined in subclasses) instead of get_extent_offsets (which is not), and make it check whether the current class' get_offset takes any arguments or not (which is not consistent, but fixing that requires some backcompat work).
Also set the offset-getter of AnchoredOffsetbox as a fixed method on the class, rather than dynamicaly setting in that class' get_extent_offset.
These changes then let us inherit the implementation of OffsetBox.get_window_extent across most subclasses instead of having to copy-paste it again and again.
This mostly replaces #21699 without touching the more complex question of changing/harmonizing the signature of get_offset.
PR Summary
PR Checklist
Tests and Styling
pytestpasses).flake8-docstringsand runflake8 --docstring-convention=all).Documentation
doc/users/next_whats_new/(follow instructions in README.rst there).doc/api/next_api_changes/(follow instructions in README.rst there).