-
Notifications
You must be signed in to change notification settings - Fork 1.3k
quest #11007 Is it possible to add usage relations to the collaboration diagrams for properties? #11008
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
Open
albert-github
wants to merge
1
commit into
doxygen:master
Choose a base branch
from
albert-github:feature/quest_11007
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
quest #11007 Is it possible to add usage relations to the collaboration diagrams for properties? #11008
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I find it hard to understand these options. Especially since the documentation now says what doxygen doesn't show, not what it does show. I think the original
NO
andYES
was meant to control if detailed information about type and arguments was shown or not. ThenNONE
was added to show no field data at all. With these new options, I'm a bit lost as to what will be shown.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some thoughts
When we look at the image:

We see here a number of items:
other
main
other
andmain
(along the edge):Currently (doxygen 1.11.0) the option
NONE
will remove the fields but not the attributes.With this proposed PR (derived from #11007) a more granular approach is possible:
NONE
unchanged for consistencty with the older versionsNONE_FLD
is identical toNON
, added for simularity / consistency with the other added optionsNONE_ATTR
the attributes are removedNONE_ATTR_FLD
both the attributes and fields are removed (so as actually requested in Is it possible to add usage relations to the collaboration diagrams for properties? #11007)When the
NONE
should also have removed the attributes in the past (and this is now considered as a bug) we can update the PR to reflect this (and not add the new options).I don't get the:
It is not that unclear to me.
Thinking about it we could change the formulation a bit
NONE
show only the attributes on the edges between the classes in the UML graphsNONE_ATTR
show just the fields of the classes in the in the UML graphs.Maybe a possibility to change the
NONE_ATTR
inFLD
,NONE_FLD
inATTR
but home to call the currentNONME
and the proposedNONE_ATTR_FLD
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What you call fields, in UML are called attributes, and what you call attributes, in UML are called dependencies 😉. See here for instance.
So I think we have the following (existing) levels of details:
For each of the detail levels, the relation labels could be shown or hidden. Instead of adding 3 new values to the existing option, it is then probably better to add a new option
DOT_UML_RELATIONS
. But I'm also not so sure that this actually solves the original problem. Didn't the user want to show the relations even whenEXTRACT_PRIVATE
is disabled?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for correcting the terminology, the terms I used were in respect to UML a bit confusing (when there is no explanation given. Maybe even
operations
should be introduced into the possibilities. Nice referenced page).the user stated:
But at the moment that
EXTRACT_PRIVATE=NO
there is "no" relation between the classesmain
andOther
anymore based ondependencies
but there are still relations betweenmain
andOther
namely based on the return types of someoperations
(her probablyother() would use the private member) and on the
Q_PROPERTY(and this is not the case in the example but it might also be that the arguments of the
operations` contain the other class name).DOT_UML_RELATIONS
is a nice idea but indeed doesn't solve the original request this setting though would give more flexibility (and probably less confusion compared to my implementation)operations
?