Commit Graph

1462 Commits

Author SHA1 Message Date
Roy Qu e764c14286 - enhancement: auto save / load problem set 2022-11-14 19:10:32 +08:00
Roy Qu 0e76769c3b Merge branch 'master' of github.com:royqh1979/RedPanda-CPP 2022-11-14 12:00:02 +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 bbd10785c5 compilation error under linux 2022-11-12 20:01:43 +08:00
Roy Qu eed4cf2879 linux package script 2022-11-12 19:59:42 +08:00
Roy Qu ac23d89fbe update version 2022-11-12 15:58:17 +08:00
Roy Qu 6a6dc126a4 - enhancement: improve parse result for STL <random> 2022-11-12 12:14:19 +08:00
Roy Qu edfd09191c - change: the default value for UI font size : 11
- change:  the default value for add leading zeros to line numbers : false
2022-11-12 10:56:57 +08:00
Roy Qu a4cb52fb96 - fix: _Pragma is not correctly handled; 2022-11-12 10:45:53 +08:00
Roy Qu b085560743 - fix: Escape suquences like \uxxxx and \Uxxxxxxxx in strings are not correctly highlighted.
- enhancement: Search / replace dialogs redesigned.
  - fix: inline functions are not correctly parsed;
  - fix: &operator= functions are not correctly parsed;
  - fix: Code Formatter's "add indent to continueous lines" option is not correctly saved.
2022-11-11 21:20:57 +08:00
Roy Qu 1dbc0972ab - fix: Escape suquences like \uxxxx and \Uxxxxxxxx in strings are not correctly highlighted. 2022-11-11 09:00:06 +08:00
Roy Qu 36f94bbb33 update translations 2022-11-10 17:39:20 +08:00
Roy Qu ca9976e9e0 - enhancement: Use relative paths to save project settings
- fix: Layout for project options dialog's general page is not correct.
  - fix: modifitions in the project options dialogs's dll host page is not correctly saved.
  - enhancement: In the project options dialog, autoset the default folder in the openning dialog when choosing file/directory paths.
2022-11-10 14:47:44 +08:00
Roy Qu eceba8b8f2 - enhancement: show completion tips for when define a function that already has a declaration.
- clean up code
2022-11-10 13:35:13 +08:00
Roy Qu 9072e752a0 - fix: crash when alt+mouse drag selection 2022-11-10 09:16:30 +08:00
Roy Qu 052f4610ee - fix: crash when alt+mouse drag selection 2022-11-10 09:05:34 +08:00
Roy Qu ae7e914788 refactor code 2022-11-10 08:05:04 +08:00
Roy Qu 6a13d6462a clean up code 2022-11-10 07:47:57 +08:00
Roy Qu a1c80cc562 - fix: function pointers not correctly handle in code parser;
- fix: var assignment not correctly handled in code parser;
  - fix: function args not correctly handled in code parser;
2022-11-09 22:26:26 +08:00
Roy Qu bcc1b8dc09 - fix: function pointers not correctly handle in code parser;
- fix: var assignment not correctly handled in code parser;
  - fix: function args not correctly handled in code parser;
2022-11-09 22:22:33 +08:00
Roy Qu faf25f4f1d change version 2022-11-08 22:13:17 +08:00
Roy Qu f24c1e96db remove debug info 2022-11-08 22:12:33 +08:00
Roy Qu 4fad826899 - fix: macro defines parsed before not correctly applied in the succeeding parse. 2022-11-08 22:04:53 +08:00
Roy Qu 6fe1df8e6e - fix: Can't goto definition of classes and namespaces displayed in the class browser on whole project mode. 2022-11-08 08:24:44 +08:00
Roy Qu dbc19c8e7f add translation 2022-11-07 21:46:26 +08:00
Roy Qu e0c4ba201d - fix: Crash when editing a function at the end of file without ; or {
- enhancement: Add the "parsing TODOs" option in Options Dialog / Editor / Misc
  - enhancement: Remove todos/bookmarks/breakpoints when deleting file from project
  - enhancement: Rename filenames in todos/bookmarks/breakpoints  when renaming project file
2022-11-07 21:44:12 +08:00
Roy Qu a4ef5c6987 - fix: "check when open/save" and "check when caret line changed" in Options Dialog / Editor / Syntax Check don't work 2022-11-07 17:03:46 +08:00
Roy Qu ef1fbf3d8b - Class browser not correctly updated after create project file 2022-11-07 12:07:15 +08:00
Roy Qu fba7bd953c - fix: Contents in class browser not correctly updated when close the last editor for project.
- fix: When all editors closed, switch browser mode dosen't correct update the class browser;

  - stream line codes for project parser and  close browser
2022-11-07 11:24:23 +08:00
Roy Qu 93751d1b23 - fix: When start parsing and exit app, app may crash
- enhancement: add "Allow parallel build" option in project option dialog's custom compile options page
  - fix: crash when rename project file
  - fix: When remove project file, symbols in it not correctly removed from code parser
  - fix: infos in class browser (structure panel) not correctly updated when add/create/remove/rename project files
2022-11-06 22:51:14 +08:00
Roy Qu d4c7ec9bb9 - fix: Project Options Dialog's Files panel will crash app. 2022-11-06 12:38:53 +08:00
Roy Qu 4eec64939e - fix: Edting / show context menu when code analysis is turned on may crash app.
- fix: Show context menu when edting non c/c++ file may crash app.
2022-11-06 09:43:28 +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 4fa490253e - enhancement: switch header/source 2022-11-05 19:39:33 +08:00
Roy Qu 771d0d1456 basic support for lambda 2022-11-05 18:58:15 +08:00
Roy Qu d94125c262 streamline tokenizer 2022-11-05 16:17:46 +08:00
Roy Qu 8d9740dd57 - improve template parameters checker
- streamline cppparser
2022-11-05 08:42:54 +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 20917e3a8b work save 2022-11-03 00:49:22 +08:00
Roy Qu baab677fa1 work done: lambda support 2022-11-02 22:48:25 +08:00
Roy Qu bd04e013de work save 2022-11-02 13:38:26 +08:00
Roy Qu 7c7242c1a3 work save 2022-11-02 10:42:55 +08:00
Roy Qu ca59fd7d70 work save 2022-11-01 23:23:21 +08:00
Roy Qu ebfb631452 work save 2022-11-01 22:10:54 +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 f8ab38b634 work save 2022-10-31 19:37:24 +08:00
Roy Qu 4afe1f4315 - change: rename "file" Menu -> "New Source File" to "New File" 2022-10-30 19:27:29 +08:00
Roy Qu 01c1e96aeb - change: Don't turn on "Show some more warnings (-Wextra)" option by default for DEBUG compiler set
- fix: Changes mainwindows's compiler set combobox not correctly handled for project
  - change: Don't localize autogenerated name for new files and new project (new msys2 gcc compiler can't correctly handle non-ascii chars in filenames)
2022-10-30 11:58:42 +08:00
Roy Qu 819d217708 - change: Don't turn on "Show some more warnings (-Wextra)" option by default for DEBUG compiler set 2022-10-29 20:51:31 +08:00
Roy Qu b9aceb420b - fix: Before run a project's executable, we should check timestamp for project files AND modification states of files openned in editor. 2022-10-29 18:19:45 +08:00
Roy Qu 0fb49389fa Merge branch 'master' of github.com:royqh1979/RedPanda-CPP 2022-10-29 17:22:14 +08:00
Roy Qu 0c1402a386 - change: remove "Optimize for the following machine" and "Optimize less, while maintaining full compatibility" options in the compiler setting panel, which are obseleted.
- change: escape spaces in the executabe path under linux.
2022-10-29 17:21:38 +08:00
Roy Qu 662990e997 fix linux compatibility 2022-10-28 08:40:46 +00:00
Roy Qu 054a99b690 msvc compatibility 2022-10-28 16:34:26 +08:00
Roy Qu e987959551 - add default autolink for fmtlib in Windows
- reduce size of the executable of win-git-askpass tool
  - fix: memory size not correctly calculated when check if share parser.
  - fix: c/c++ file use different parser for share.
2022-10-28 12:43:47 +08:00
Roy Qu 2ce732cfa5 C/C++ use differnet parser 2022-10-28 09:47:34 +08:00
Roy Qu 833be397b0 - enhancement: add "editors share one code parser" in "options" / "editor" / "code completion", to reduce memory usage.
Turned off by default on PCs with memory > 4G; Force turned on PCs with memory < 1G.
  - enhancement: add "goto block start"/"goto block end" in "Code" menu
2022-10-27 15:18:57 +08:00
Roy Qu 0018ed5d7d - editors that not in the editing panel shouldn't trigger switch breakpoint
- editors that not in the editing panel shouldn't show context menu
2022-10-27 07:42:05 +08:00
Roy Qu 798607fba0 - fix: editors that not in the editing panel should not be syntax checked/ todo parsed/ code analyzed
- fix: editors that not in the editing panel should not trigger breakpoint/bookmark/watch switch
2022-10-26 22:39:40 +08:00
Roy Qu 04e11dbc3b - fix: selection's position not correctly set after input a char / insert string (and causes error under OVERWRITE mode) 2022-10-26 19:40:34 +08:00
Roy Qu 5bd8fedb2b - fix: Correctly set file's real encoding to ASCII after saving 2022-10-26 16:23:34 +08:00
Roy Qu fde8a868fa - enhancement: auto sort TODO items 2022-10-26 11:10:56 +08:00
Roy Qu da2a7549f1 - fix: Encoding info in the status bar not correctly updated when save a new file 2022-10-26 09:33:45 +08:00
Roy Qu 6bf443d3d8 - fix: Restore project's original compiler set if user choose 'No' in the confirm project compiler set change dialog. 2022-10-26 08:45:18 +08:00
Roy Qu 3cbd323f97 fix: syntax check issues for new file not correctly parsed 2022-10-26 08:12:00 +08:00
Roy Qu b4fbcbddb0 - enhancement: when create a new folder in the files view, auto select that folder and rename it 2022-10-25 22:10:38 +08:00
Roy Qu 4380470cef - enhancement: when create a new folder in the files view, auto select that folder and rename it
- enhancement: when new header in the project view, auto select basename in the filename dialog
  - enhancement: when add file in the project view, auto select basename in the filename dialog
  - change: Don't generate localized filename when new header/add file in the project view
2022-10-25 21:49:35 +08:00
Roy Qu 5edcad104e - enhancement: before run a project'executable, check if there's project file newer than the executable 2022-10-25 19:09:46 +08:00
Roy Qu 3f74a5fd10 - fix: rules for obj missed in the makefile generated for project 2022-10-25 17:38:37 +08:00
Roy Qu cab0c8ca24 - enhancement: add "auto reformat when saving codes" in "Options" / "Editor" / "Misc" (off by default)
- enhancement: use "todo" and "fixme" as the keyword for TODO comments
2022-10-25 10:13:51 +08:00
Roy Qu b958cdc00c - enhancement: when closing project, prevent all editors that belongs to the project check syntax and parse todos. 2022-10-24 22:53:46 +08:00
Roy Qu f20a979885 fix : issues tab hidden 2022-10-24 20:06:12 +08:00
Roy Qu 2e7391d870 - enhancement: auto locate current open file in the project view panel 2022-10-24 20:01:46 +08:00
Roy Qu 2417998ca0 update translations 2022-10-24 19:36:14 +08:00
Roy Qu 55b63a4f95 - 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
  - enhancement: auto locate the last opened file in the project view after project creation
  - enhancement: separate compiler's language standard option for C / C++
  - fix: compiler settings not correctly handled when create makefile
2022-10-24 19:23:43 +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 0d45cca2a5 - enhancement: reduce memory usage when deciding file type 2022-10-24 12:51:50 +08:00
Roy Qu fcb64a69af - fix: info not correctly update when open an editor 2022-10-24 10:58:30 +08:00
Roy Qu aa6951c2ca - fix: class browser not correctly displayed when "whole project" is checked 2022-10-23 23:24:26 +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 a42ec4e253 fix: crash when create project 2022-10-23 18:39:15 +08:00
Roy Qu f348f0782a - enhancement: keep current position in the class browser after contents modified 2022-10-23 16:43:26 +08:00
Roy Qu b4deb9299b - enhancement: keep current position in the class browser after contents modified 2022-10-23 16:31:05 +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 d38d986aef clear debug output 2022-10-23 00:40:25 +08:00
Roy Qu be0c9ad4f5 - fix: save/load bookmark doesn't work 2022-10-23 00:39:24 +08:00
Roy Qu e8300abd65 - redesign the project parser, more efficient and correct
- enhancement: todo parser for project
2022-10-22 23:29:12 +08:00
Roy Qu f0bdfed9b4 clean up code 2022-10-22 22:38:31 +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 8378857157 fix: crash when close editor 2022-10-21 21:20:02 +08:00
Roy Qu aadc8fd0f2 fix: crash when close editor that have issues 2022-10-21 19:12:18 +08:00