[Qt-creator] Plugin to display compile errors warnings etc. inline
eike.ziller at nokia.com
eike.ziller at nokia.com
Fri Jul 9 10:13:58 CEST 2010
On Jul 9, 2010, at 9:04 AM, ext Liebe Markus (RtP2/TEF72) wrote:
> Hi,
>
>>> Is it possible for you to extend that a bit?
>
> I was hoping to be able to somehow add an Icon to the FIXME, TODOS.
>
>> So far there is only a string used. What do you want in
>> addition to that?
>
> I am fine with that.
>
>>
>> Icons are only used for the task types (Warning, Error and Unknown).
>> These types can not get extended at this time (and actually I do not
>> consider that a good idea to extend them;-), so we have not seen any
>> need to add icons at this time.
>
> I see. So there are multiple Categories like "QML,Compile,Build System".
> Those categories all belong to the "Build Issues".
>
> At the moment I created another category "todo" for the FIXME/TODOS/HACK etc.
> All comments are added into the "Build Issues" pane as well, just like the compiler
> warnings and errors and it would make it easier for the eye to have a "todo"-Icon
> for each entry.
>
> I am not quite sure right now if the "Build Issues" really is the correct place for it.
> In terms of functionality it is: I can navigate the todos like the warnings/errors
> which makes it consistent (and easy to implement ;) )
> But on the other hand TODOS and FIXME entries are not really "BuildIssues"...
We've got a similar problem to solve when talking about auto test integration and test results.
What is definitely not a solution is to add dozens of additional output tabs for the different things :)
I could imagine that a good way would be to rename the build issues tab to something like only "Issues" and use it for the different kind of things that need attention: TODOs/FIXMEs, failing test results, build issues, etc.
The classes for that output pane have already been called TaskHub and TaskWindow, not "BuildIssueHub" etc, maybe that's a hint ;)
Br, Eike
>> PS: Just curious: How are you parsing for the FIXMEs/TODOs? Are you
>> hooking into the C++ parser framework?
>
> No, I am using a quite simple minded approach. As I want to have all additional code
> in the plugin I do not want to modify QtCreators code if it is not necessary.
>
> I have three triggers that I use to start the parsing:
>
> 1.) Whenever a new editor is opened I read its contents and parse each line for comments
> starting with a given keyword like "TODO","FIXME","HACK" etc. to build up an internal
> list of the items and I add them to the taskwindow via the taskhub.
>
> 2.) Whenever the current file is changed (saved etc.) I do the same.
>
> 3.) Whenever the current text is changed I look on the current line where the TextCursor is
> and just parse that line. If it contains one of the searched comments I check if there
> already is a "Task" for that line. If so, then I just modify that task. If not I add a
> new one.
> If the line does not contain a comment but I already have a task for it, I remove that
> Task.
>
> At the moment I looks like the attached screenshot.
>
> Regards,
> Markus
>
> <todoDisplay.png><ATT00001..txt>
--
Eike Ziller
Software Engineer
Nokia, Qt Development Frameworks
Nokia gate5 GmbH
Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany
Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B
Umsatzsteueridentifikationsnummer: DE 812 845 193
Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori
More information about the Qt-creator-old
mailing list