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

Depends style import list option #15

Closed
dlil opened this issue Apr 20, 2018 · 6 comments
Closed

Depends style import list option #15

dlil opened this issue Apr 20, 2018 · 6 comments

Comments

@dlil
Copy link

dlil commented Apr 20, 2018

Something that initially threw me off when I tried this utility out was that the import list (top right) behaves differently than the original Depends utility.

In the original Depends, when you select a module from the tree view (left), the import list shows those functions that are imported from the selected module by its parent in the tree. Modules would also be shaded red if any of the functions expected to be imported from them were missing.

In this Dependencies utility, when you select a module from the tree view or from the module list, the import list shows those functions that are imported by (i.e. exported to) the selected module from its child dependencies in the tree.

I actually prefer the old Depends behavior. From the tree view I can easily see the module dependencies of a particular parent. And from the import list I can easily see the parent's function dependencies from a particular module. In this Dependencies utility I have to select a parent, sort its imports by module, and search through the list to find out what it imports from a particular module.

I'd like to see a user setting to enable the old Depends behavior. In this mode, the Module and Delayed columns of the Import list might be removed, and selecting a module from the module list (bottom) would have no effect on the import/export lists.

@dlil
Copy link
Author

dlil commented Apr 22, 2018

I'm not too familiar with C# and especially not the XAML stuff, so I just tweaked the code a bit to get the behavior I wanted but didn't go as far as to make it a user setting. Here's the diff:

ParentImportMode.zip

@lucasg
Copy link
Owner

lucasg commented Apr 22, 2018

Thanks I'll look into it. The import style is currently different from Depends since originally Dependencies did not check API presence (only dll file resolution) but I agree this should be the default behaviour.

@ionescu007
Copy link

I strongly upvote this -- it's very confusing that it's showing the imports the 'other way around', and it makes it even worse when looking, for example, at API Sets that are non-present, because one cannot see which APIs the module is importing from the API set.

If you could merge this change it would be really great, I'm trying to get rid of using Depends in my courses/demos... I think this is my last blocker :)

@lucasg
Copy link
Owner

lucasg commented Nov 28, 2018

yeah it's definitively in the backlog of things I need to fix. I already laid the ground work to change it, but now I need to find time to actually implement it ....

Please be patient 😞

@ionescu007
Copy link

ionescu007 commented Nov 28, 2018 via email

@lucasg
Copy link
Owner

lucasg commented Dec 1, 2018

Commit 9c12652 have changed the default display style for imports/exports to match depends's style.

You can either grab a nightly from appveyor build results to try it out, or wait for the next release which should come out by the end of the year (I have to iron out the bugs I've probably introduced since last release).

Cheers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants