Commit Graph

379 Commits

Author SHA1 Message Date
Roy Qu f78a4953ef work save 2022-11-01 00:01:46 +08:00
Roy Qu f8ab38b634 work save 2022-10-31 19:37:24 +08:00
Roy Qu 2ce732cfa5 C/C++ use differnet parser 2022-10-28 09:47:34 +08:00
Roy Qu 6d2ce9035d - reduce memory usage when deciding file types
- enhancement: refresh project view for git status won't redraw project structure
  - enhancement: auto save project options after the compilerset option for project resetted
  - enhancement: "." and ".." in paths of issues not correctly handled
2022-10-24 17:23:37 +08:00
Roy Qu fcb64a69af - fix: info not correctly update when open an editor 2022-10-24 10:58:30 +08:00
Roy Qu 09c7b5e791 fix: "." and ".." in included header paths not correctly handled 2022-10-23 23:06:55 +08:00
Roy Qu e13217a395 - fix: headers included by project files not correctly analyzed
- fix: class members not correctly displayed in the class browser
 - fix: when project is opened with no file opened, class browser not correctly updated
2022-10-23 21:42:11 +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 012628aef3 - fix: editor & class browser not correct updated when editor is switched but not focused
- fix: when invalidating a c/c++ source file, statements that not declared in it are wrongly removed.
2022-10-23 10:40:00 +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 dbf34548d8 work save: clean up CppPreprocessor clear & reset 2022-10-22 10:59:39 +08:00
Roy Qu 6ba6030af7 work save: CppPreprocessor clean 2022-10-22 10:44:10 +08:00
Roy Qu 921a6b41c5 clean up CppPreprocessor::addDefinesInFile 2022-10-22 10:19:47 +08:00
Roy Qu 51d0f2c2aa clean up code 2022-10-22 08:46:27 +08:00
Roy Qu eed7fdcf56 fix: click a non-existing header name will get an error 2022-10-18 23:22:29 +08:00
Roy Qu 29da40bb14 - fix: toggle block comment/delete to word begin/delete to word end are not correctly disabled when editor not open 2022-10-18 19:09:46 +08:00
Roy Qu a62910e1a3 - fix: editor tooltip for #include_next is not correctly calculated
- fix: ctrl+click on #include_next header name doesn't open the right file
  - enhancement: parser used for non-project C files won't find header files in C++ include folders.
2022-10-18 12:24:59 +08:00
Roy Qu f67628863f - fix: minor memory leaks when set itemmodels
- fix: thread for parsing doesn't correctly released when parsing finished ( so and the parser)
2022-10-10 18:05:18 +08:00
Roy Qu 25ac4d5048 refactor: open/create project
refactor: save/load project layout
2022-10-09 22:19:18 +08:00
Roy Qu d946b9373e refactor: clean up QSynedit 2022-09-27 14:01:38 +08:00
Roy Qu 15bbf15d38 work save 2022-09-26 12:01:45 +08:00
Roy Qu 00ea7ee773 create QSynedit namespace 2022-09-25 09:55:18 +08:00
Roy Qu 4df3ba4f14 - enhancement: don't parse all openned files when start up
- enhancement: don't parse files when close all and exit
2022-08-24 17:05:16 +08:00
Roy Qu 829e73895b - fix: files in network drive is opened in readonly mode 2022-08-06 08:51:53 +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 d034089214 5.12 compatibility fix 2022-07-24 03:19:11 +00:00
Roy Qu a6f334f837 remove all warnings 2022-07-04 11:39:06 +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
Roy Qu 631da69d84 - enhancement: auto complete '#undef' 2022-05-11 20:34:13 +08:00
Roy Qu e3d7af019d - fix: keyword 'final' in inhertid class definition is not correctly processed 2022-05-06 19:20:26 +08:00
Roy Qu 81f4d98d5f minor fix 2022-04-25 12:43:23 +08:00
Roy Qu 2056d42286 fix valgrind problems 2022-04-25 10:47:19 +08:00
Roy Qu 354f375f67 - enhancement: improve the matching of function declaration and definitions
- fix: research button doesn't show find in files dialog
2022-04-19 19:17:49 +08:00
Roy Qu 56c71f321f - fix: parse error for definition of functions whose return type is pointer 2022-04-18 16:56:31 +08:00
Roy Qu 312d282501 - fix: crash when eval statements like "fsm::stack fsm;" 2022-04-17 19:49:04 +08:00
Roy Qu a211992256 - enhancement: slightly reduce memory usage for code parser 2022-03-23 14:45:10 +08:00
Roy Qu 5fb877b2ef work save 2022-03-23 14:13:10 +08:00
Roy Qu e80a92c30a make simple functions inline 2022-03-23 12:30:58 +08:00
Roy Qu 373117f277 work save 2022-03-22 21:19:54 +08:00
Roy Qu 59ada398be work save 2022-03-22 20:04:34 +08:00
Roy Qu fad84b23f9 work save 2022-03-22 20:03:53 +08:00
Roy Qu 6e4d36aade - fix: disable code completion doesn't correctly disable project parser 2022-03-22 19:08:26 +08:00
Roy Qu b0c8526d97 - fix: order for parameters generated by auto link may not correct 2022-03-19 14:19:32 +08:00
Roy Qu 69ca9f3a79 fix: definite loop when show tip for rand 2022-03-16 16:36:25 +08:00
Roy Qu 47212c2716 - fix: parse error in avxintrin.h
- fix: infinite loop when searching for using alias
2022-03-16 16:24:39 +08:00
Roy Qu 54592276c8 - fix: wrong font size of exported RTF file
- fix: correct tokenize statements like "using ::memcpy";
2022-03-15 21:33:27 +08:00
Roy Qu 44d5453263 - enhancement: use expression processing in syntax highlighting for identifiers
- fix: if a function's declaration can't be found, it will be wrongly highlighted as variable
2022-03-08 22:29:15 +08:00
Roy Qu 409091d52b - enhancement: custome icons for project view 2022-02-13 20:08:18 +08:00
Roy Qu bf25853da1 - fix: wrong code completion font size, when screen dpi changed
- enhancement: replace Files View Panel's path lineedit control with combo box
2022-02-11 20:19:48 +08:00
Roy Qu d81740257a fix: crash when there are catch block in the upper most scope 2022-02-09 20:50:01 +08:00
Roy Qu 6cbab4a646 - fix: typo error in the parser
- fix: typing after symbols like 'std::string' shouldn't show code completion suggestions
2022-02-07 09:53:02 +08:00
Roy Qu 771ccec745 - enhancement: code completion ui redesigned 2022-01-27 20:31:44 +08:00
Roy Qu 620bdc8266 - fix: code folding calcuation not correct when some codes are folded and editing after them 2022-01-27 18:34:18 +08:00
Roy Qu b114eb216c - enhancement: code completion find words with char in the middle 2022-01-27 01:03:01 +08:00
Roy Qu 894e587f7d - enhancement: show parameter tips for class constructors
- enhancement: when there are tips showing, don't show mouse tips
2022-01-26 12:17:15 +08:00
Roy Qu 83a4277e68 - fix: static members are not correct showed after Classname + '::' 2022-01-25 16:11:16 +08:00
Roy Qu ca9006ff4f - fix: can't show private & protected members of 'this'
- fix: function name like 'A::B' is not correctly parsed
2022-01-25 13:53:55 +08:00
Roy Qu eff521ed21 - fix: code completion popup won't show members of 'this' 2022-01-25 13:09:36 +08:00
Roy Qu 609f611e8f - enhancement: highlighter for GLSL (OpenGL Shading Language) 2022-01-23 23:27:48 +08:00
Roy Qu df323d30c8 - fix: ctrl+click on the enum value will jump to the wrong line in it's definition file
- fix: line info in the mouse tip of statement not correct
2022-01-22 21:07:41 +08:00
Roy Qu bf17e494fd fix: variable names containing '_' are not correctly handled 2022-01-15 11:01:01 +08:00
Roy Qu eefb65bcb4 - fix: parser can't correctly handle variable definitions that don't have spaces like 'int*x';
- fix: parser can't correctly handle function parameters like 'int *x'
2022-01-12 20:59:28 +08:00
Roy Qu bb6a4ed9c8 qt 5.12 compatibility 2022-01-04 16:50:54 +08:00
royqh1979@gmail.com 317db42876 add license information 2021-12-26 23:18:28 +08:00
Roy Qu 9fc4b0ff09 - enhancement: run programs in terminal (under Linux)
- fix:  monospace font doesn't exists under Debian Linux
 - fix: files are readonly when opened in editor
2021-12-25 08:23:52 +08:00
Roy Qu 33e8042944 - enhancement: use the new expression parser to implement rename symbol
- fix: rename symbol shouldn't remove empty lines
2021-12-19 10:16:46 +08:00
Roy Qu 41336cf31f add a function to find statement by expression in the parser 2021-12-18 23:36:58 +08:00
Roy Qu 2de2f1e162 work save 2021-12-12 13:02:00 +08:00
Roy Qu 095a0897f2 work save 2021-12-08 21:44:40 +08:00
Roy Qu 63d0321fcf work save 2021-12-08 19:55:15 +08:00
Roy Qu e8644dfd0b work save 2021-12-08 19:13:47 +08:00
Roy Qu f10bc14f3b work save 2021-12-07 14:48:20 +08:00
Roy Qu 8db5c531ab work save 2021-12-07 08:23:27 +08:00
royqh1979@gmail.com d554e6dba5 work save 2021-12-06 11:37:37 +08:00
Roy Qu b0f608a360 work save 2021-12-06 09:02:39 +08:00
Roy Qu 0360d704ed work save 2021-12-05 20:27:09 +08:00
Roy Qu 3d8084c489 work save 2021-12-05 16:45:48 +08:00
royqh1979@gmail.com 4d6f78b0fc work save 2021-12-05 10:52:17 +08:00
Roy Qu 2e54b4460d work save 2021-12-04 18:38:54 +08:00
Roy Qu 6f8096bc27 change: redesign code completion logic 2021-12-04 10:02:07 +08:00
Roy Qu fdfa7c779f work save 2021-11-24 10:07:35 +08:00
royqh1979@gmail.com e044bb0703 Merge branch 'master' into gdbmi 2021-11-20 07:22:09 +08:00
royqh1979@gmail.com 177cd6e397 - enhancement: code completion suggestion for phrase after long/short/signed/unsigned 2021-11-18 12:51:05 +08:00
royqh1979@gmail.com e60b909294 - enhancement: code completion suggestion for "__func__" variable 2021-11-17 17:18:02 +08:00
royqh1979@gmail.com 8b7d19f94e work save 2021-11-12 10:51:00 +08:00
royqh1979 58ba490f32 work save 2021-11-12 07:26:13 +08:00
royqh1979 b3e5ddc94c - enhancement: greatly reduces memory usage for symbol parsing ( memory needed for bits/stdc++.h reduced from 150m+ to 50m+)
- fix: currect compiler set not correctly updated when switch between normal file and project file
2021-11-12 02:20:13 +08:00
royqh1979@gmail.com 02d935fb32 - change: turn on gcc compiler's "-pipe" option by default, to use pipe instead of temp files in compiliation (and make the life of SSD longer)
- fix: correctly save input histories for the find combo box in the Find dialog
 - add installer scripts
2021-11-05 10:44:23 +08:00
royqh1979@gmail.com d27f8c1c50 - fix: can't parse old c-style enum variable definition like "enum Test test;" 2021-11-01 23:29:03 +08:00
royqh1979 e5e7635d1f - change: Don't use 'pause' in the console pauser, in case of privilege problems.
- fix: parser use it's one keywords set , to prevent crash when exit
2021-10-30 21:15:07 +08:00
royqh1979@gmail.com 2ceb95e4cc - fix: "tab to spaces" option in the editor general options widget doesn't work 2021-10-27 16:39:23 +08:00
royqh1979 3529e8dfea - fix: can't correctly handle '&&' and '||' in the #if directive (and correctly parse windows.h header file) 2021-10-24 23:31:26 +08:00
royqh1979 d7cbd855ff - fix: function declaration's parameters not correctly parsed, if it have a definition which have different parameter names 2021-10-23 16:35:36 +08:00
royqh1979 a5acb077fc - fix: correctly handle integer with 'L' suffix in #if directives ( so <thread> can be correctly parsed )
- fix: correctly fill indents if it's not multiples of tab width
2021-10-20 20:15:16 +08:00
royqh1979 5c9ef2035e clean up compile warnings 2021-10-20 18:05:43 +08:00
royqh1979@gmail.com 443aa541fc - fix: can't correctly find definition of the symbols in namespace 2021-10-10 00:46:19 +08:00
royqh1979@gmail.com 3ed5701621 fix: #include_next processing 2021-10-04 22:32:34 +08:00
royqh1979@gmail.com 77e8eda8a3 - enhancement: support #include_next (and clang libc++) 2021-10-04 21:59:48 +08:00
royqh1979@gmail.com 8ebe9174bb - implement: symbol usage count
- implement: user code snippet / template
 - implement: auto generate javadoc-style docstring for functions
 - enhancement: use up/down key to navigate function parameter tooltip
 - enhancement: press esc to close function parameter tooltip
 - enhancement: code suggestion for unicode identifiers
2021-10-02 15:34:18 +08:00
royqh1979@gmail.com 22341d11fa work save 2021-10-02 14:54:49 +08:00
royqh1979@gmail.com c59e2c6667 work save 2021-09-30 20:10:48 +08:00
royqh1979 a0ea72071c work save: code snippet edit 2021-09-30 12:52:22 +08:00
royqh1979 b518304f56 - implement: symbol usage count
work save: code snippets
2021-09-30 11:20:43 +08:00
royqh1979@gmail.com 2d393cb509 - enhancement: more charset selection in the edit menu
- fix: can't correctly get system default encoding name when save file
 - fix: Tokenizer can't correctly handle array parameters
 - fix: debug actions enabled states not correct updated when processing debug mouse tooltips
2021-09-28 22:26:12 +08:00
royqh1979@gmail.com 60759cef9b - enhancement: support C++ using type alias; 2021-09-28 10:40:19 +08:00
royqh1979@gmail.com 3afe034aa1 - fix: crash when load last opens
- enhancement: when a system/project header file is saved to non-system folders, un-readonly the editor
 - minor speedup when processing tooltips
2021-09-28 10:01:13 +08:00
royqh1979@gmail.com 22acab0950 fix : header file completion stop work when input '.' 2021-09-27 00:52:25 +08:00
royqh1979@gmail.com 6ec3cfbfca fix: enum values no correctly displayed 2021-09-26 19:40:52 +08:00
royqh1979@gmail.com 3a6097c40f class browser color ok 2021-09-25 23:12:36 +08:00
royqh1979@gmail.com dc807f527c - function tips done 2021-09-25 21:34:10 +08:00
royqh1979@gmail.com b38f75b732 work save 2021-09-24 18:02:42 +08:00
royqh1979@gmail.com 6fc5f5995f work save:
- fix: left panel size not correctly saved
  - fix: cant run programs not statically linked
  - project files option widget
2021-09-14 23:56:08 +08:00
royqh1979@gmail.com 6335991ccf work save: compile & run project 2021-09-13 22:45:50 +08:00
royqh1979@gmail.com f0530d6737 work save: auto link 2021-09-04 14:06:48 +08:00
royqh1979@gmail.com cda37802ae - feature: file properties dialog
- fix: included file's using namespace list not correctly handled
2021-09-04 00:13:42 +08:00
royqh1979 72b8d51092 - feature: watch external file modifications
- fix: crash when load history file that doesn't exist
 - fix: only highlight fully selected word
2021-08-31 14:40:41 +08:00
royqh1979 d3f7c872dd - feature done: editor info tooltips 2021-08-29 22:08:43 +08:00
royqh1979@gmail.com 3d103ddee9 work save: hint 2021-08-29 17:23:40 +08:00
royqh1979@gmail.com 7207994d57 work save: header completion suggestion done 2021-08-29 10:14:07 +08:00
royqh1979@gmail.com f1ae5bfdfd work save: header completion 2021-08-29 00:48:23 +08:00
royqh1979@gmail.com 05f686d61e work save 2021-08-28 09:01:40 +08:00
royqh1979@gmail.com a8445dc039 work save 2021-08-28 01:20:32 +08:00
royqh1979@gmail.com 19e37b6ae7 work save 2021-08-27 23:51:42 +08:00
royqh1979@gmail.com a5239aea48 work save 2021-08-27 16:38:55 +08:00
royqh1979@gmail.com 61d1430a58 work save: parser and code completion done 2021-08-27 08:52:20 +08:00
royqh1979@gmail.com 6c8c100074 work save 2021-08-27 00:49:50 +08:00
royqh1979@gmail.com f8fae59dcc work save 2021-08-26 17:48:23 +08:00
royqh1979@gmail.com 9066bc4897 work save 2021-08-25 00:20:07 +08:00
royqh1979@gmail.com ea77b45661 work save 2021-08-24 15:05:10 +08:00
royqh1979@gmail.com ed7da7b487 work save 2021-08-24 03:42:56 +08:00
royqh1979@gmail.com 60a4e8c468 work save 2021-08-23 17:27:17 +08:00
royqh1979@gmail.com efef9c35f4 work save 2021-08-23 10:16:06 +08:00
royqh1979@gmail.com 13b4b9804c work save 2021-08-23 03:47:28 +08:00
royqh1979@gmail.com 41b9c53146 work save: cpp parser done 2021-08-22 23:48:00 +08:00
royqh1979 9da351dfda work save 2021-08-22 21:23:58 +08:00
royqh1979 52eed2f34d work save 2021-08-22 16:08:46 +08:00
royqh1979@gmail.com da157eb218 work save 2021-08-22 05:50:26 +08:00
royqh1979@gmail.com 7b59e6a9ea work save 2021-08-21 22:15:44 +08:00
royqh1979@gmail.com 9f3d50d6a2 work save 2021-08-20 01:06:10 +08:00
royqh1979@gmail.com 24a22ec264 work save 2021-08-19 23:49:23 +08:00
royqh1979@gmail.com 95129e8859 work save 2021-08-19 17:08:01 +08:00
royqh1979@gmail.com 33b47c3d80 work save 2021-08-19 12:01:01 +08:00
royqh1979@gmail.com c9a21b8a03 work save 2021-08-18 21:57:42 +08:00
royqh1979@gmail.com d18347c44e work save 2021-08-18 17:02:57 +08:00
royqh1979@gmail.com 0c6be9b93c work save 2021-08-18 13:42:32 +08:00
royqh1979@gmail.com 9272b767d5 work save 2021-08-18 05:34:04 +08:00
royqh1979@gmail.com 25e0245146 work save 2021-08-17 23:30:14 +08:00
royqh1979@gmail.com 83116306a9 work save 2021-08-16 23:17:48 +08:00
royqh1979@gmail.com 7225a25a65 work save 2021-08-16 00:47:35 +08:00
royqh1979@gmail.com fafe45cb41 work save 2021-08-15 20:25:54 +08:00
royqh1979@gmail.com 347260cc4d work save 2021-08-15 17:52:39 +08:00
royqh1979@gmail.com 2376a09d73 work save 2021-08-15 16:49:37 +08:00
royqh1979@gmail.com 5174823cb8 work save 2021-08-15 04:31:57 +08:00
royqh1979@gmail.com 821aaee3e7 work save 2021-08-14 22:52:37 +08:00
royqh1979@gmail.com 8a4a397e17 work save 2021-08-14 18:55:42 +08:00
royqh1979@gmail.com 78ad4e3324 work save 2021-08-14 12:59:54 +08:00
royqh1979@gmail.com a5c4ceec7a work save 2021-08-14 12:33:02 +08:00
royqh1979@gmail.com a169306e86 work save: cpp parser tokenizer 2021-08-13 22:53:26 +08:00
royqh1979@gmail.com 34dd3eb474 work save
- add: cpu window blend mode
 - fix: asm parser can't correctly parse numbers
 - fix: disassembly code in the cpu window not correctly updated
2021-08-13 11:18:42 +08:00
royqh1979@gmail.com 7d30690227 work save 2021-08-12 21:25:13 +08:00
royqh1979@gmail.com 9c42a11c0b work save: cpp parser preprocessor
- remove comments before preprocess
  - pass stringlist instead of text stream as buffered content
2021-08-12 11:33:40 +08:00
royqh1979@gmail.com dcf37eca8a work save: cpp parser - preprocessor : remove comments before preprocess 2021-08-12 11:29:26 +08:00
royqh1979@gmail.com 00da3303ac work save 2021-08-11 20:06:28 +08:00
royqh1979@gmail.com 5ee6988acc work save 2021-08-11 11:47:47 +08:00
royqh1979@gmail.com 1050526a2c work save 2021-08-10 21:27:24 +08:00
royqh1979@gmail.com 2692d77fb1 work save: cpp parser preprocessor : handle branches 2021-08-10 17:23:15 +08:00
royqh1979@gmail.com b1062f24af work save 2021-08-10 12:09:48 +08:00
royqh1979@gmail.com 562f599c4f work save 2021-08-09 09:47:36 +08:00
royqh1979@gmail.com 3c3b606cc5 work save 2021-08-09 09:11:10 +08:00
royqh1979@gmail.com 00cc0f0a72 work save 2021-08-08 22:11:09 +08:00
royqh1979@gmail.com 91a63648d5 work save 2021-08-08 17:22:37 +08:00
royqh1979@gmail.com f9c3fb8dd5 work save 2021-08-07 23:30:01 +08:00
royqh1979@gmail.com f0a0ae44b7 work save: parser - preprocessor 2021-08-07 18:02:57 +08:00
royqh1979@gmail.com 3a019a7180 work save 2021-08-07 14:08:51 +08:00
royqh1979 447b1fee15 work save 2021-08-06 11:28:02 +08:00
royqh1979@gmail.com 31ace6b981 work save 2021-08-06 10:58:24 +08:00
royqh1979@gmail.com 0b2fd71df6 work save: start to write parser 2021-08-05 23:13:21 +08:00