Commit Graph

88 Commits

Author SHA1 Message Date
Roy Qu a9295caff2 optimization: make parser methods inline 2024-04-09 22:12:03 +08:00
Roy Qu 37c7405311 refactor: openInclude 2024-04-09 19:39:35 +08:00
Roy Qu 35dccca91e refactor: PParsedFileInfo 2024-04-09 18:19:48 +08:00
Roy Qu 9ef6d1f3e6 refactor: ParsedFileInfo 2024-04-09 18:10:44 +08:00
Roy Qu edbe230bf7 refactor 2024-04-09 17:15:27 +08:00
Roy Qu fd062e2f34 refactor: rename FileIncludes to ParsedFileInfo 2024-04-06 17:45:02 +08:00
Roy Qu d3f2cd1dc1 refactor: name project options
fix: chinese translation for project options
2024-04-03 16:50:19 +08:00
Roy Qu 648e555fc5 refactor: enum to enum class 2024-04-03 10:37:29 +08:00
Roy Qu 1372ac774f - enhancement: Support "extern template" in parser. 2024-04-01 10:59:01 +08:00
Roy Qu 09a61c4c32 support lambda expression captures. 2024-03-23 09:03:20 +08:00
Roy Qu aad4050c25 - enhancement: Show "std::function" in the completion list. 2024-03-22 09:23:49 +08:00
Roy Qu f7eacaa048 minor update 2024-02-28 09:41:20 +08:00
Roy Qu 2743e6f682 - fix: Parser: invalidating file may lost class inheritance infos. 2024-02-28 09:17:30 +08:00
Roy Qu 13d81b1134 reduce memory usage 2023-10-27 20:16:44 +08:00
Roy Qu 4eca58b62a - enhancement: Basic support for parsing variadic macros. 2023-10-24 20:35:43 +08:00
Roy Qu 30cabe2faa - enhancement: Parse files that contains C++ 20 'concept' keyword. (No code suggesion for concepts now)
- enhancement: Parse files that contains C++ 20 'requires' keyword.
  - fix: Code suggestions in namespace.
  - enhancement: Code suggestions for namespace alias.
  - fix: Correctly handle statements like 'using xxx::operator()'.
2023-10-22 13:19:03 +08:00
Cyano Hao a62acc2eb0
Add Windows XP support (#146)
* improve Qt 5.6 support

* switch registry API to Windows XP compatible Unicode API

* update docs

* add comment for `CONFIG += c++14 c++17` in qmake .pro files

* fix logic for lockFile
2023-10-21 13:38:12 +08:00
Roy Qu 14ba74e705 - fix: Processing for #if/#elif/#else is not correct. 2023-10-01 10:45:43 +08:00
Roy Qu dd5640d334 - enhancement: False branches are displayed as comments. 2023-08-17 13:24:08 +08:00
Roy Qu 707358817c - enhancement: Autowrap tool output text. 2023-08-13 15:41:17 +08:00
Roy Qu 738faf0c90 - fix: Crash if close file while auto syntax checking.
- enhancement: support sdcc compiler.
2023-08-13 14:46:53 +08:00
Roy Qu 6a06b5b3d6 - fix: Dummy struct/enum symbols shouldn't be shown in the completion suggestion.
- enhancement: Support optional enum name.
  - enhancement: Support optional enum type.
  - enhancement: Support simple const expression evaluation for enum values.
  - fix: Accessibilty for inherited members are not correct calculated in multiple inheritance.
  - fix: Can't handle full class name when handle inheritance.
2023-08-07 14:23:57 +08:00
Roy Qu 56f03a52d5 - fix: Keyword asm is not correctly parsed. 2023-07-05 09:01:38 +08:00
Roy Qu e44b2999e1 - enhancement: show completion for return type of lambda expressions. 2023-05-26 08:55:21 +08:00
Roy Qu de406de236 refactor : member accessibility processing in the parser 2023-03-12 18:24:58 +08:00
Roy Qu f04c7c0221 refactor test for operator 2023-03-12 12:42:44 +08:00
Roy Qu b246e3d145 refactor check for struct/class/union defines in the parser 2023-03-12 10:50:47 +08:00
Roy Qu d29ec1ee0f refactor: make most expression evaluation funcs const 2023-03-11 17:32:57 +08:00
Roy Qu fec78d0045 - enhancement: Don't show operator overloading functions in the complete suggestions
- enhancement: Correctly hanlde operator overloading functions like "operator ClassA"
2023-03-10 20:13:52 +08:00
Roy Qu a6d5da07a3 - enhancement: show compltion suggest for std::pair::first and std::pair second 2022-11-29 16:48:40 +08:00
Roy Qu 0d0332aa7d - fix: can't correctly show completion suggest for type with template parameters
- enhancement: correctly evaluate auto variable of stl container iterator.
2022-11-29 12:06:29 +08:00
Roy Qu adb3d79b60 - enhancement: Deduce type info for "auto" in some simple cases. 2022-11-27 13:32:14 +08:00
Roy Qu a9c266c39a clean up code 2022-11-16 10:29:20 +08:00
Roy Qu ed8b0a4c55 - enhancement: new color scheme Monokai (contributed by 小龙Dev)
- enhancemnet: add "Reserve word for Types" item in color scheme
2022-11-14 11:56:38 +08:00
Roy Qu 1c3bf9000c - enhancement: base class dropdown list in new class dialog now works 2022-11-05 23:35:15 +08:00
Roy Qu ef79640eb0 work save 2022-11-04 23:44:11 +08:00
Roy Qu 585d7678d4 work save 2022-11-04 20:27:35 +08:00
Roy Qu 7c7242c1a3 work save 2022-11-02 10:42:55 +08:00
Roy Qu ab9aa75d1f work save 2022-11-01 09:02:17 +08:00
Roy Qu f78a4953ef work save 2022-11-01 00:01:46 +08:00
Roy Qu 2ce732cfa5 C/C++ use differnet parser 2022-10-28 09:47:34 +08:00
Roy Qu 09c7b5e791 fix: "." and ".." in included header paths not correctly handled 2022-10-23 23:06:55 +08:00
Roy Qu 471b3d6f26 - fix: namespace members defined in multiple places not correctly merged in the class browser
- fix: correctly display statements whose parent is not in the current file
  - fix: statements is the class browser is correctly sorted
  - enhancement: Weither double click on the class browser should goto definition/declaration,  depends on the current cursor position
2022-10-23 15:22:26 +08:00
Roy Qu 74b250c9d2 work save 2022-10-22 22:10:35 +08:00
Roy Qu d1d68758aa work done: refactor cpp parser for project 2022-10-22 19:33:20 +08:00
Roy Qu 51d0f2c2aa clean up code 2022-10-22 08:46:27 +08:00
Roy Qu d946b9373e refactor: clean up QSynedit 2022-09-27 14:01:38 +08:00
Roy Qu c7e8ee6072 - enhancement: don't show cpp defines when editing c files 2022-07-28 13:51:38 +08:00
Roy Qu cd6e5719b7 fix: autolink calculation not stable 2022-06-04 14:44:50 +08:00
Roy Qu 85f3a04bcf - fix: #define followed by tab not correctly parsed
- enhancement: don't auto add () when completing C++ io manipulators ( std::endl, std::fixed, etc.)
  - fix: can't goto to definition of std::endl
2022-06-01 17:02:03 +08:00