---------------------------------------------
# Move hard coded CC from CodeLite to CTagsd
---------------------------------------------

- **DONE** `Add include file` should be moved to LSP via new event `wxEVT_LSP_FIND_HEADER`
- **DONE** `Outline Plugin` -> move to LSP
- **DONE** Fix code completion for header file names
- **DONE** All the content of the `Code Generation / Refactoring` should be moved to LSP
- **DONE** Remove parsing of files once saved (this is no longer needed)
- **DONE** Remove `symbols.db` creation (not needed anymore)
- **DONE** Navigation bar -> move to LSP
- **DONE** #include code completion
- **DONE** function calltip is not when another method call is inside the outer signature: `foo(GetName(),|` <-- will return calltip for GetName()
- **DONE** Remove ParseThread class
- **DONE** ctagsd: change the "Find Symbol" to use the "textDocument/definition" message
- **DONE** Open include file does not work
- **DONE** Fix Hyper Link navigation
- **DONE** Smart Completion Plugin - make it work with the LSP
- **DONE** Git Blame bar does not work for Remoty
- **DONE** Remoty: find-in-files: use the last used folder and not the current file's folder
- **DONE** Document `Rust` plugin
- **DONE** Test new installation
- **DONE** FIX: Quick outline dialog: make sure no text is displayed when the dialog is first shown
- **DONE** Colours and Fonts -> change to native toolbar
- **DONE** Implement "Find References" using the language server
- **DONE** `rls` -> make it disabled by default
- **DONE** `ctagsd` -> make it disabled by default
- **DONE** Support for remote "Find References"
- **DONE** ctagsd: highlight <TOKEN><::> as a class
- **DONE** debugger: step-out (shift-f11) -> causes to unwanted selection
- **DONE** Sort the results

- Implement: `lsp_rename_symbol`
- line margin: use the colours read from the theme

---------------------
New CTagsd CC engine:
---------------------

- **DONE** Support `auto` keywords
- **DONE** support nested `auto` keywords
- **DONE** Support typedef
- **DONE** Support `using namespace`
- **DONE** Support basic template`
- **DONE** Support `operator->`
- **DONE** Supoprt `this->`
- **DONE** Support `::` (global namespace typing)
- **DONE** Add recursive safety guards
- **DONE** Support template inheritance
- **DONE** Support for member variable
- **DONE** Support ref rvalue (`&&`)
- **DONE** Support for function arguments
- **DONE** Support for completion ("word completion") for locals
- **DONE** Support for lamda arguments
- **DONE** User types
- **DONE** CxxVariable::Map_t varsMap; varsMap.begin()-> // does not work
- **DONE** global function are not appearing (use: ProtocolHandler::get_files_to_parse() to get only files that are included and filter static methods)
- **DONE** Support for ranged `for`
- **DONE** function variables are not collected if the function is `const`
- **DONE** `for` variables should be discarded after exiting the for buffer
- **DONE** Use CxxCodeCompletion instead of WordCompletion & function tooltip
- **DONE** Fix: find-definition -> failed to jump from declaration -> definition
- **DONE** ::clGetManager()-> // fails to complete
- **DONE** template of templates are now working properly (e.g. vector<pair<wxString, wxString>>. does not code complete)
- **DONE** Support `operator[]`
- **DONE** operator-> and operator[] are not mutually exclusive. e.g. auto json = msg->toElement(); json["hello"].
- **DONE** Support macro completions
- **DONE** eAsciiColours:: <- no completion
- **DONE** Add keywords code completion
- **DONE** Support anonymous namespace
- **DONE** file completion fails to complete
- **DONE** optimization: only reparse the file if the line number changed
- **FIXED** only one local variabel is displayed by the completion box
- **DONE** on_did_save(): parse the files in the background
- **FIXED** overloaded functionn shouls all be displayed now
- **FIXED** provide calltip for constructors
- **FIXED** code completion of static member
- **FIXED** code completion for anonymous class
- **FIXED** better parsing of function arguments

TODO:
-----
- Change the open resource dialog to use clTerminalCtrl view similar to the LSPOutlineView dialog
