Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign
CC plugin interface redesign
oBFusCATed:
Someone should spend some time to write a plugin that utilizes his code.
Alpha:
--- Quote from: oBFusCATed on July 15, 2013, 11:47:21 pm ---I don't think you need 3 functions, when you can get with 2.
--- End quote ---
Yes.
--- Quote from: dmoore on July 16, 2013, 03:54:34 pm ---When this is done, will I be able use my python CC plugin (after I port it to the new API) alongside the C/C++ CC plugin sharing the same UI?
--- End quote ---
That is the plan; to allow multiple CC plugins to easily coexist.
--- Quote from: MortenMacFly on July 16, 2013, 06:31:56 pm ---Make sure its also interface-compatible to Erans CC works.
--- End quote ---
Has anyone yet read into the source of his CC, and could give me some pointers? My priority is still mainly on converting the interface/CC plugin within Code::Blocks, but if time allows, I will look into that as well.
Also, people that have used alternate code completion plugins for Code::Blocks (Python, Fortran), do you have any tips as to what components I should be aware of?
Slightly less related: if I have code such as:
--- Code: ---int foo = 1;
int MyClass::MyFunction()
{
int bar = 4;
MyInheritedFunction(bar);
}
--- End code ---
If I click on foo so my cursor is outside of MyFunction(), hovering the mouse over MyInheritedFunction() usually fails to bring up a tooltip (due to failed lookup of the symbol). However, it (almost) always works if my cursor is, for example, on bar.
Ideas why?
(By the way, I have committed step one of calltips to my repo; if nothing else, it at least eliminates the annoying multiple blank lines in a row problem.)
MortenMacFly:
--- Quote from: Alpha on July 17, 2013, 03:04:08 pm ---Has anyone yet read into the source of his CC, and could give me some pointers? My priority is still mainly on converting the interface/CC plugin within Code::Blocks, but if time allows, I will look into that as well.
--- End quote ---
Last time I was in touch with Eran he pointed me to a test utility that covered all features you need to drive the CC engine. That was a good starting point for me, hence I need to look up the current sources to tell you the name again. Since Eran switched to GIT I did not follow the CC part any longer.
I could provide you with the core of the plugin I had started several times ago - not much, really, but it may point you into the direction. It doesn't compile anymore, since Eran also changed the dependencies and required libs since then... Send me an email address as PM and I can give you the sources.
Alpha:
I have replaced GetToolTips() with:
--- Code: ---struct CCToken
{
CCToken(int _id, const wxString& dispNm) : id(_id), displayName(dispNm) {}
int id;
wxString displayName;
};
virtual std::vector<CCToken> GetTokenAt(int pos, cbEditor* ed) = 0;
--- End code ---
I will add more fields to CCToken as they become needed.
--- Quote from: Alpha on July 17, 2013, 03:04:08 pm ---If I click on foo so my cursor is outside of MyFunction(), hovering the mouse over MyInheritedFunction() usually fails to bring up a tooltip (due to failed lookup of the symbol). However, it (almost) always works if my cursor is, for example, on bar.
--- End quote ---
Fixed.
oBFusCATed:
--- Quote from: Alpha on July 21, 2013, 06:10:55 pm ---Fixed.
--- End quote ---
I'm a bit worried that you're mixing CC interface changes with CC parser changes. Could you commit the parser fixes to the master branch/svn?
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version