code-completion, options

Jens Dagerbo jens.dagerbo at swipnet.se
Thu May 11 19:37:01 UTC 2006


On Thursday 11 May 2006 15:35, David Nolden wrote:
> Ok, I've given it another workover, and now it really works perfectly for
> example with stl-classes. It's really good now, so I think about trying to
> submit it into svn.

I ran your last patch for a few days, and it's already far better than what we 
have. Please commit. :)

I had some minor issues with your old patch:

line 6471 of cppcodecompletion.cpp needs to be:
CppEvaluation::ExpressionEvaluation obj( this, expr, ctx, AllOperators );
instead of
ExpressionEvaluation obj( this, expr, ctx, AllOperators );
to build for me.

X-KDE-ServiceType=KDevelop/KDevCodeBrowserFrontend
should probably be:
X-KDE-ServiceType=KDevelop/CodeBrowserFrontend
to preserve style. 
Not really important, but consistent with the other plugins.

Also, the parameter tooltips seems to have disappeared altogether. At least I 
can't make them appear anymore (but they were just barely useful as it were).


> The only thing really missing now is the ability to configure the
> completion through the project-options-menu.
>
> The current options "include enumerations", "include global functions",
> "include typedefs", "include types" are not used at the moment and I'd
> propose to replace them with more useful options:
> "evaluate template-parameters" this should generally shut on/off the
> evaluation of template-params(default should be "on" since it alone doesn't
> cost much performance)
> "depth of return-type-evaluation in the completion-list": A dropdown-box
> where one should at least be able to choose "none", "short", "complete",
> where "none" means that just the raw type-strings are showed like before,
> "short" means that types should be evaluated, but only shown when the
> result is short(not implemented yet, but with the current complete
> evaluation the list can become VERY wide with my complex test-cases :), and
> "complete" means that the type is evaluated as far as possible(like I
> currently do)
> "depth of argument-type-evaluation in the completion-list": The same like
> above, but for the function-arguments. Since there can be really many
> function-arguments, this should be turned to "none" by default to respect
> slow computers.
>
> Maybe someone else could change the menu and the configuration-file for me
> and tell me how to extract the settings? Currently I don't know much about
> the KDevelop's GUI- und configuration-stuff.. for someone experienced in it
> that just might be a few clicks and a few lines of code. :)

Not a problem, I can do that. I have some other changes I mean to do to the 
c++ options dialog anyway. Just tell me what you need.

One option I would like (if it should be an option at all..) would be to not 
put entries to unaccessible methods in the code completion popup. Since 
Protected and private methods/members of other classes or private 
methods/members of base classes aren't accessible, it's very unlikely you 
want to complete them.

Maybe the classview synch should happen also when selecting a method using the 
navigator combo as well? The synch should be optional, however.

I wasn't crazy about the methods names in bold, they ended up in smaller type 
than the non-bold text which made them harder to read. But I haven't looked 
yet on how you did it, so maybe it's just a problem with the font I'm 
using...


// jens





More information about the KDevelop-devel mailing list