Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign
Clang CC
yvesdm3000:
I want to make the base functionality work without freezes and crashes first before the introduction of a thread. The threading is also why I'm not using it for any other coding just yet, only using it to develop the plugin itself.
I'm also missing the "Find declaration"/"Find implementation" context menu items that are available in the basic CC functionality. There is only a "Resolve symbol (clang)" or something which is not really what you'd expect.
Yves
yvesdm3000:
I have a reworked version that uses multi-threading now. Works pretty smoothly, but you need a long initial wait until you get code-completion, but that doesn't block the UI ! There is this bug where, initially, the file gets parsed a couple of times and you don't get code-completion when the file is being parsed. It's only when you load the project, after that it's fine. I'm aware of the issue.
https://github.com/yvesdm3000/ClangLib
I think I'll also need a separate configuration window to add Clang/Code-Completion specific compile flags and I figure having a configurable timeout on the code-completion operation might be handy for some people too.
As always constructive feedback is always welcome!
-Yves
scarphin:
That looks nice, thanks. I couldn't find much time to try it recently but my workload is less nowadays and I'll check it out before giving feedback.
Btw are you working on this on a 64 or 32-bit environment? Last time I checked there was a weird bug (a buffer overflow or something) that occurs only on a 64-bit build. 32-bit didn't exhibit this behavior. I'll give more information when I try it. Thanks again.
yvesdm3000:
64 bit with wxWindows 2.8
I'm now trying it on a Centos 5 with wxWindows 3.0 and it suffers from a couple of problems, mostly scintilla events not being received when editing the file so I advise you to use wx 2.8. It's mostly impacting the inline diagnostics not being updated. I'm looking at the c::b builtin codecompletion to see if I can take over their structure of c::b events to solve these problems.
Yves
scarphin:
I had the time to try your changes and they work quite well. Good job. The long parsing time bug is there as you've previously stated. Apart from that I get the errors attached when it's parsing a big project (I tried it on a Qt project). I don't get these errors with small projects so I think it's some kind of a buffer limitation but I have no idea where to look, any ideas?
I may contribute some changes starting with the coloring of the information boxes but I'm not sure if each code completion plugin needs to have its own set of colors. I think they do because of the different coloring schemes for different languages. What do you think? I'll submit patches using the name 'Clang Code Completion' under color settings in 'settings->environment->colors'.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version