- Added
docs
folder with PyAPIReference's website. - Now on
inspect_object.py
it doesn't get the members withinspect.getmembers(object_)
, instead ittuple(vars(object_).items())
which will keep the members in the order you defined them. - When converting function to markdown it now includes it's parameters.
- Added export as markdown options.
- Added discord link on
README.md
.
- Added Markdown tab where you can create a markdown file based on the tree (and the checkboxes), update it and edit the markdown.
- When loading file default dir will be the last file dir, if no last file current dir.
- If found exception when loading module cancel creation of tree and display the exception onto a label.
- Changed code block colors.
- Now
inspect_object
do not inspect imported members (if module). InspectObject
worker now do not havemodule_content
as class attribute, just as instance.- Changed default theme to
dark
. - Added
inspect_object_worker_finished
and moved allfinished.connect
to it.
- Now using PyQtDarkTheme for both, light and dark theme.
- Now
Fold all
action doesn't fold the collapsible widget itself. - Moved fonts and images to resources.
- Fixed
create_property_collapsible
bug.
CollapsibleWidget
now has only 10 of margin at the left to representate indentation.- Added context menu to collapsible widget with
Fold, Unfold, Fold all and Unfold all
actions. - Now the tree will show class attributes.
- Changed scrollarea step from 2 to 5.
- Removed color pattern from
docstring
and added toint, str, tuple, list and dict
.
- Color pattern
- Now the
default
value will be a color instead of"default"
. - Created
find_object_type_color
, which will, given a string representing the type of the object, look up troughcolors
onto the prefs file for a color for the object type, if no color for the type, default font color.
- Now the
- Settings dialog
- Converted the settings dialog into a class.
- Settings now in tabs (
QTabWidget
).
- When inspecting object if found
type
type returnclass
instead. theme
toTHEME
(because it's a constant)- Added
logo_without_background.png
image to display on the top of the application.
- User can pick color pattern for (
classes, functions, parameters
) in Settings tab - Prefs/settings.prefs
- Added default color pattern (white for dark mode, black for light mode)
- Adding more colors soon
- When docstring (or other string) has more than one line, create a collapsible for it.
- Set
UbuntuMono
as font for the whole app (needed to fix, because menu bar is included). - Added
UbuntuMono
font to assets.
GUI/theme.prefs
- Added disabled color to buttons.
- Added custom font.
- Added loading label when inspecting module.
- Moved all export actions to
Export tree...
menu insideFile
menu. - Removed all export actions shortcuts.
- Added PyAPIReference logo at the top of the window
- Renamed some thread stuff.
- Changed
inspect_object
to run on seperate thread. Prevents GUI freezing.
Visual suggestion: Need to gray out button when disabled
- Added breakline after logo on
README.md
.
- Resized
logo.png
(now500x263
).
- Added
logo.png
,icon.png
andicon.ico
. - Added icon to window.
- Fixed export option.
- Added
restore_geometry
andsave_geometry
methods onMainWindow
class.
- Fixed PREFS export function.
- Updated all to new PREFS version.
- Moved GUI stuff to
GUI
folder.
- Now annotation support collapsible widget.
- Settings no more resizable.
inspect_object.py
- Changed way object type was obtained.
- Get docstring from every object.
- Now supports multiple function return annotation or parameter annotations.
- Other
str
and__name__
stuff.
- Changed way
collapsible_widget
theme works. - Restore opened file when closing application (also when applying on settings dialog).
- If no inherits or no parameters ignore collapsible (instead of displaying and empty one).
- Created
FormLayout
onsettings_dialog.py
that centers the widgets (not likeQFormLayout
).- Added
multipledispatch
onrequirements.txt
- Added
- Added export as PREFS and YAML options
- Added docstrings of objects to tree
- Fixed bug if default parameter was class or function (
get_callable_parameters
ininspect_object.py
)
- Changed widgets margin on
collapsible_widget.py
. - Added
get_module_from_path
onextra.py
(used onmain.py
). - Fixed bug when no annotation on parameters (
get_object_properties
oninspect_object.py
). - Made
export_as_json
more pythonic. - Added default filename when
Export as JSON
which is the module name plus.json
. - Added recursion when
create_object_properties_widgets
. inherits
property now it's an collapsible object.- Added row span to
module_content_widget
so it fills the screen.
- Added option to export object tree as a JSON file
- Bugs
- Object tree doesnt display some attributes. Example: Not displaying a = 1 from class Test3 (from example.py)
- Fixed bug when window get bigger and removed border on scrollarea.
- Added style to the menubar which won't change with the theme.
- Addded scrollarea on module collapsible area.
- Added dark theme.
- Changed files and folders from
PyApiReference
toPyAPIReference
.
- Optimized
inspect_object
by excluding modules from inspecting.-
How:
Onget_object_members
addedexclude_types
parameter which it's default value istuple: (ModuleType)
(types.ModuleType
), means exclude modules while getting object members. -
Example:
import PREFS def say_hi(name: str): print(f"Hi {name}")
Will only inspect
say_hi
and notPREFS
. -
Notes: You need to know that when importing classes or functions from libraries it does inspect them.
from PREFS import read_prefs_file def say_hi(name: str): print(f"Hi {name}")
Will inspect
say_hi
andread_prefs_file
.
-