- fix possible memory leaks in ProjectAddTreeNode
- compiler: Use nullptr instead of 0L
* CC: Remove the :: at the end of classes/enums/namespaces in the CC toolbar
- CC: code refactoring, change AddPriorityHeaders() function name to AddPriorityHeader() as it only add one file. Add many comments in other places.
- CC: add comments.
- compiler: Fix memory leak at every call of CompilerGCC::DoSwitchProjectTemporarily
* CC: fix a bug in the one parser for the whole workspace mode. When a workspace contains many projects, if a project's files were already parsed by previous projects and the macros string is empty, then this project don't actually assign a parsing task to the thread pool, thus there is not ParserEnd event emitted, so we have no way to start parsing for the next project. The general logic are below:
1, Thread task pool done -> Send event to Parser object
2, Parser::OnAllThreadsDone(CodeBlocksEvent& event) -> Send a Parser End event
3, NativeParser::OnParserEnd -> m_TimerParsingOneByOne.Start(500, wxTIMER_ONE_SHOT);
4, NativeParser::OnParsingOneByOneTimer -> AddProjectToParser(projs->Item(i)); (parse the next project)
I simply let the AddProjectToParser() function return a boolean, if it is false, we try to parse the next project. The discussion can be found in http://forums.codeblocks.org/index.php/topic,18836.0.html