Commit Graph

1857 Commits

Author SHA1 Message Date
Roy Qu e5c6ea1a43 - Enhancement: New file templates for C / C++ / GAS files 2023-02-22 22:18:21 +08:00
Roy Qu 410cb50b18 remove nasm templates
- fix: "Generate assembly" menu item is wrongly enabled for new GNU assembly files
2023-02-22 13:38:31 +08:00
Roy Qu 8ad1915acd - change: Don't stop debug when breakpoint can't be set 2023-02-22 10:39:20 +08:00
Roy Qu c204b39e00 - enhancement: Remove all breakpoints for a closed non-project file.
- enhancement: Check and remove all non-exist breakpoints before debug a project
2023-02-22 08:59:00 +08:00
Roy Qu c1f8489bfd Assert fail on parser in DEBUG mode, when multiparser working at the same time 2023-02-21 22:40:29 +08:00
Roy Qu f03c25a672 - fix: Enum value defines is not correctly parsed.
- enhancement: Use differenct source file for each language in project templates
2023-02-21 20:35:41 +08:00
Roy Qu 3ede3e4ce6 - change: Remove all breakpoints of the current non-project file, when it is closed. 2023-02-21 15:43:45 +08:00
Roy Qu 457e84f86a - Enhancement: Correctly init panel sizes when first run. 2023-02-21 09:47:59 +08:00
Roy Qu fcca49e9e5 - fix: Can't debug when debug a file while other file has breakpoints
- change: Don't save breakpoints for non-project files
2023-02-21 09:34:40 +08:00
Roy Qu 60db5a894b - Enhancement: Support C11 ano 2023-02-20 17:52:42 +08:00
Roy Qu 5bd1d92d53 remove no use code 2023-02-20 16:37:58 +08:00
Roy Qu 242f8a742e - Enhancement: Disable reformat code for non-C/C++ files. 2023-02-18 22:09:14 +08:00
Roy Qu 57c4c5bc98 - fix: Only C/C++/GAS files can set breakpoints.
- Enhancement: Don't show breakpoints/watch related menuitems in context menu for non-C/C++/GAS files.
2023-02-18 16:20:07 +08:00
Roy Qu 96aa836040 - enhancement: Auto create project custom executable folder if not existing. 2023-02-18 12:54:28 +08:00
Roy Qu 24734bfb28 - enhancement: If executable doesn't have symbol table, inform user and stop.
- enhancement: If breakpoint is setted but executable doesn't have debug info ,inform user and stop.
  - enhancement: If current compiler set has "strip addition infos(-s)" enabled, inform user and stop.
2023-02-18 12:08:03 +08:00
Roy Qu a91dc12519 - enhancement: Reduce flicker when editing big files. 2023-02-18 07:09:19 +08:00
Roy Qu f4b239e15d - enhancement: Greatly reduce time to open/edit big files. 2023-02-17 23:56:13 +08:00
Roy Qu 4b54d3799a fix: Fold area is not correctly calculated after editing. 2023-02-17 17:33:48 +08:00
Roy Qu 9f036d0d70 - enhancement: Correctly handle high-precision mouse wheel / touchpad in editors. 2023-02-17 16:16:57 +08:00
Roy Qu dbdf098b94 - enhancement: Limit max speed for mouse scroll (and touch pad?) 2023-02-17 15:33:33 +08:00
Roy Qu 52eb2960ac - change: Remove "Compile & Run" menu item. It's replaced by "Run". 2023-02-17 09:18:39 +08:00
Roy Qu a410226f46 Don't confirm recompiler when debug single file 2023-02-17 09:11:52 +08:00
Roy Qu 8254de68c8 - enhancement: Delay for tooltips.
- enhancement: "Tool tips delay" option in Options/editor/Tooltips
2023-02-17 09:03:35 +08:00
Roy Qu 3f971b34bb - enhancement: Improve auto indent for embedding no-brace statements like for-for-if. 2023-02-16 22:27:04 +08:00
Roy Qu 885470782c - enhancement: Parser not correctly released if save a c file to non-c file. 2023-02-16 18:36:15 +08:00
Roy Qu da3bcf1c6a - enhancement: Basic code completion for xmake.lua. 2023-02-16 17:49:55 +08:00
Roy Qu 46dd637770 - enhancement: Syntaxer for lua. 2023-02-16 12:26:35 +08:00
Roy Qu 25d0f5b782 - fix: Can't parse enum values.
- fix: Can't correctly show enum values in the class browser.
  - fix: Can't correctly create project, if template's encoding setting is not valid.
  - enhancement: Add "embed assembly" template.
2023-02-15 16:24:24 +08:00
Roy Qu 1b8ff37a60 update translations 2023-02-14 23:55:23 +08:00
Roy Qu 926802a8f5 - change: Don't confirm rebuild/recompile when run/debug. 2023-02-14 23:42:11 +08:00
Roy Qu 1eb7bdf549 fix: editor not parsed when first load
fix: TODO is wrongly parsed when new a file (that exists in the current folder)
2023-02-14 09:03:06 +08:00
Roy Qu a31bc6ef17 more keywords for asm 2023-02-13 21:49:19 +08:00
Roy Qu 08fdeca219 - fix: Can't compile files with chinese characters in filenames using winlibs mingw gcc 2023-02-13 19:21:11 +08:00
Roy Qu d484c790a2 minor change 2023-02-13 11:14:28 +08:00
Roy Qu aaae910c59 - change: The default disassemble style of CPU Dialog is "AT&T" now. 2023-02-13 10:24:35 +08:00
Roy Qu 57cbf3a49a - fix: New non-saved filenames is wrongly saved in the last openfiles list.
- fix: File is parsed before editor is fully created.
  - enhancement: New GAS File in the File Menu
  - change: rename "New File" to "New C/C++ File"
2023-02-12 22:33:34 +08:00
Roy Qu 9976ee248a - enhancement: If GAS source file has "_start" label, compile it with "-nostartfiles". 2023-02-12 18:15:41 +08:00
Roy Qu 5cc52ea9f9 Merge branch 'master' of github.com:royqh1979/RedPanda-CPP 2023-02-12 18:14:02 +08:00
Roy Qu 02b64497d5 - enhancement: Keyword completion for asm/GAS files. 2023-02-12 18:13:24 +08:00
Roy Qu 382da1d747 add -nostdlib when compile assembler program that has _start 2023-02-12 15:13:04 +08:00
Roy Qu 23d5bb85b6 Linux fix 2023-02-12 14:22:45 +08:00
Roy Qu 0e3441e604 - fix: Crash when debug project that has nasm files.
- enhancement: Generate debug info for nasm files in Linux/MacOS.
  - enhancement: Compile/Run/Debug GAS source files.
  - enhancement: Compile/Debug GAS source files in project.
2023-02-12 12:53:14 +08:00
Roy Qu ff86213aee - fix: Confirm if recompile, when start to debug and project files has modifications. 2023-02-11 11:31:54 +08:00
Roy Qu 7b52eff40d - enhancement: Code folding for #if/#endif
- enhancement: When folding "if", don't fold "else";
2023-02-10 22:27:36 +08:00
Roy Qu 6b4bfc3e64 - fix: Crash when create or open txt files in project. 2023-02-10 19:28:18 +08:00
Roy Qu 78f9aa8b3c - fix: Can't correctly load project's custom compile options, if it contains more than one line contents. 2023-02-10 09:42:55 +08:00
Roy Qu f91e35192f - fix: preprocessors is not correctly suggested.
- fix: javadoc-style docstring is not correctly suggested
  - enhancement: Better syntax color for asm files.
2023-02-09 21:01:01 +08:00
Roy Qu cc1e42193d - enhancement: Add "assembler" tab in the project options dialog's custom compiler parameters. 2023-02-09 16:33:25 +08:00
Roy Qu 0b7761fbc2 - fix: Project parser should not parse non-c/cpp files. 2023-02-09 09:45:09 +08:00
Roy Qu 78ff319a75 - enhancement: Support compile asm files using nasm in the project. 2023-02-08 21:07:41 +08:00
Roy Qu 62737d6716 - fix: Correctly handle files whose name contains spaces in the generated makefile.
- fix: Correctly handle custom obj folder in the generated makefile.
2023-02-08 17:32:52 +08:00
Roy Qu d8f237a10e - enhancement: Auto reload openned project files that use "Project Default" as the encoding, when the project encoding setting is changed in the project options dialog. 2023-02-08 12:20:20 +08:00
Roy Qu 5d3a933932 - enhancement: Change the way to calculate execution time. 2023-02-07 20:27:31 +08:00
Roy Qu dd5df6912c - enhancement: Improve auto indent. 2023-02-07 19:05:39 +08:00
Roy Qu 79ed9573d6 - fix: Respect encoding "Project default" when search/find occurrencies/open project units.
- enhancement: Show progress dialog when search/find occurrencies in large projects.
2023-02-07 10:46:06 +08:00
Roy Qu 32a29540bd fix: correctly handle "::" in using, using namespace and typedef 2023-02-06 20:32:29 +08:00
Roy Qu 377a2c8ba8 remove debug info 2023-02-06 19:43:09 +08:00
Roy Qu 1b15f3eb1d - fix: Parser can't correctly differentiate function and var initialization. 2023-02-06 19:37:01 +08:00
Roy Qu 6081054f89 fix: Don't expose functions who's parent can't be found in the global scope. 2023-02-06 16:50:24 +08:00
Roy Qu 4fc3900796 - enhancement: Improve parsing for operator overloading. 2023-02-06 14:04:38 +08:00
Roy Qu 7085318197 - enhancement: Auto suggest keyword "operator" when define functions.
- fix: Differentiate class and constructors.
2023-02-05 21:55:23 +08:00
Roy Qu ca5916a4b1 - fix: Can't correctly handle definitions for "operator," 2023-02-05 20:36:10 +08:00
Roy Qu 79bf453c6c - enhancement: Pause autosave timer when autosave new files. 2023-01-26 11:33:27 +08:00
Roy Qu 7b13d3a519 - enhancement: Pause autosave timer when autosave new files. 2023-01-26 11:23:24 +08:00
Roy Qu 629a90d521 - enhancement: Simplified chinese translations for encoding names.
- fix: Crash when there are preprocessing directives like '#if 0/0' or '#if 0%0'
2023-01-26 11:07:46 +08:00
Roy Qu 48788a189b - enhancement: Simplified chinese translations for encoding names. 2023-01-25 10:51:59 +08:00
Roy Qu 35e3c9af8d - fix: Can't correctly set project file's encoding back to 'UTF-8'/'ANSI' in the project options dialog/files setting page. 2023-01-25 10:28:55 +08:00
Roy Qu 0ccec06f33 add project encoding 2023-01-24 11:31:30 +08:00
Roy Qu 1f491fccfd - fix: Settings in Options/Tools/General is messed up when switching items in the list.
- fix: Infos in the status bar not correctly updated when editor closed.
  - change: Project's encoding shouldn't be set to "auto detect"
2023-01-24 10:21:19 +08:00
Roy Qu 4a941b63b4 - fix: Settings in Options/Tools/General is messed up when switching items in the list. 2023-01-24 09:17:27 +08:00
Roy Qu 580a88721f - enhancement: Set lldb-mi as the debugger program for clang, when finding compiler set in folders and gdb doesn't exist. 2023-01-23 19:34:09 +08:00
Roy Qu 7d2920198e - enhancement: Use lldb-mi as the debugger.
- enhancement: Set lldb-mi as the debugger program for clang, when finding compiler set in folders.
2023-01-22 22:19:19 +08:00
Roy Qu c5331f0597 - enhancement: If there is "cppreference.chm" or "cppreference-%locale_name%.chm"(like cppreference-zh_CN.chm) in the redpanda C++'s app folder, open it instead of the cppreference website. 2023-01-20 12:17:04 +08:00
Roy Qu 22e1339b1a - enhancement: Confirm before remove a compiler set. 2023-01-20 00:08:16 +08:00
Roy Qu b0be83b006 - fix: If buttons in the options dialog / compiler / compiler set page is pressed, they won't release. 2023-01-19 23:58:56 +08:00
Roy Qu 1c8ba68b78 remove debug info 2023-01-19 20:08:22 +08:00
Roy Qu c77a25f109 - enhancement: Save project files' real encoding;
- enhancement: Use project files' real encoding information when generating the makefile.
2023-01-19 20:04:05 +08:00
Roy Qu 4456772fa7 - enhancement: Code Completion now respect compiler set's language standard settings. 2023-01-19 11:08:32 +08:00
Roy Qu 8603fa10ee - enhancement: Add "Help"/"Submit Iusses".
- enhancement: Add "Help"/"Document" for Simplified Chinese users.
2023-01-16 15:42:03 +08:00
Roy Qu 73d527318c - fix: When restored from minimization, info on statusbar not correctly restored.
- enhancement: Changes of "auto backup editing contents" is applied immediately.
  - enhancement: Don't create temp backup for readonly files.
2023-01-16 11:35:55 +08:00
Roy Qu 00c19d1f4f disable save backup 2023-01-15 17:01:54 +08:00
Roy Qu dbc9a1829c - fix: Project's file encoding is wrongly set to 'AUTO' when load project. 2023-01-15 15:57:48 +08:00
Roy Qu 0f746957a5 - fix: rename project file will wrongly set it's encoding to 'ASCII';
- fix: can't make project
2023-01-15 15:47:08 +08:00
Roy Qu 48446aab02 minor change 2023-01-15 13:54:37 +08:00
Roy Qu aa62f95cad - enhancement: Auto backup editing contents. (Save editing contents 3 seconds after input stopped. Auto delete when editor successfully closed)
- enhancement: Add "Auto backup editing contents" option in options/editor/auto save
2023-01-15 13:32:33 +08:00
Roy Qu edeb47d2c2 Let user choose if continue to save, if backup file creation failed. 2023-01-15 09:43:54 +08:00
Roy Qu ac20a2c458 - enhancement: Create a temporary copy of the current file when saving files (it's removed after the saving sucessfully finished). 2023-01-14 22:52:04 +08:00
Roy Qu 6072944c23 - fix: Save may crash app if the encoding codec is failed to load.
- enhancement: support open and save utf-16/utf-32 BOM files. (but gcc can't compile)
2023-01-14 21:51:55 +08:00
Roy Qu d8fae209c6 - enhancement: set caret to the corresponding line in the editor after "run"/"generate assembly"
- fix: syntax highlighting for cpp style line comment is not correct.
2023-01-12 21:58:04 +08:00
Roy Qu 7503f553fc update version to 2.9 2023-01-12 17:00:46 +08:00
Roy Qu ea26548835 - enhancement: Add "Open files in editor" in the search panel
- enhancement: Auto disable the "in project" option in the "search in files" dialog, if no project is opened.
  - enhancement: Auto disable the "search again" button in the search panel if the current search history item is search in the project, and no project is opened.
2023-01-12 16:53:00 +08:00
Roy Qu 93a37a2bc6 rename symbol/batch replace correctly support undo 2023-01-12 13:46:09 +08:00
Roy Qu bc1b22ad25 - enhancement: Rename symbols won't remove all breakpoints/bookmarks
- enhancement: Batch replace won't remove all breakpoints/bookmarks
  - enhancement: Execute parameters can be used in debug.
2023-01-12 12:07:22 +08:00
Roy Qu 06a528313d refactor 2023-01-11 17:06:32 +08:00
Roy Qu 1761c66456 refactor 2023-01-11 16:22:26 +08:00
Roy Qu abf4a5985f - fix: In column mode, selection that contain lines with different length will cause error. 2023-01-11 11:05:34 +08:00
Roy Qu 9a5f97cc7a - fix: Function parameters that is pointer,reference or array can't be correctly parsed. 2023-01-11 09:51:05 +08:00
Roy Qu 5f75fd97cd - fix: Result of scope calculation not right if a for statement immediately follows another for statement. 2023-01-10 19:08:49 +08:00
Roy Qu 7324475277 - fix: alt+shift+left/right can't select
- fix: Input any content will exit column mode.
2023-01-10 16:52:39 +08:00
Roy Qu d75ffef9bb - fix: Can't save new file using filename with custom suffix. 2023-01-07 20:29:57 +08:00
Roy Qu 2ab5efc6fe - fix: "Goto declaration" / "Goto definition" / "Find occurences" not correctly disabled for non-c/c++ files. 2023-01-07 20:04:51 +08:00
Roy Qu 32088a18d0 - change: Disable undo limit by default. 2023-01-06 11:59:21 +08:00
Roy Qu b01a51ab91 - enhancement: Print current selection can be used in the print dialog.
- enhancement: Print syntax colored content.
  - enhancement: Correctly handle tab in the exported RTF.
2023-01-06 11:41:04 +08:00
Roy Qu 17160b7c3d - enhancement: Print current selection can be used in the print dialog. 2023-01-05 18:38:36 +08:00
Roy Qu 89ee9d8914 - fix: Crash when find occurrences in a project that has missing files.
rename FileEndType to NewlineType
2023-01-04 11:01:34 +08:00
Roy Qu 4f2fb8f540 - enhancement: Let encoding options in the statusbar more explicit.
change FileEndingType names
  applySettings shouldn't be called every time show event triggered.
2023-01-04 09:08:58 +08:00
Roy Qu f179f45cd9 - fix: Restore main window and cpu info window will set wrong font in the cpu info. 2023-01-03 22:34:38 +08:00
Roy Qu 562293c05d - enhancement: Waiting for syntax parsers to finish before saving files, to prevent data lost caused by syntax parsering crash. 2023-01-03 21:43:45 +08:00
Cyano Hao 375e990e0b
Add more Linux packaging format (#89)
* Arch Linux packaging; make LIBEXECDIR configurable

* update docs

* resolve libexec and share from relative path

* AppImage packaging

* allow build AppImage on Windows host
2023-01-03 12:18:02 +08:00
Roy Qu 9296877b86 - enhancement: "Toggle readonly" in the Edit menu.
- fix: Error When save project units' encoding settings.
2023-01-02 16:50:30 +08:00
Roy Qu 96f9a898d0 - enhancement: "Switch Header/Source" in editor title bar context menu. 2023-01-01 08:32:33 +08:00
Roy Qu 0caaad8436 - fix: Action "Run all problem cases" is triggered twice by one clicked. 2022-12-31 09:36:50 +08:00
Roy Qu 2041f813de - fix: Can't set project icon to "app.ico" in the project folder, if the project doesn't has icon.
- fix: Resource compilation items is missing in the auto generated makefile, if the project's icon is removed and re-added.
2022-12-30 19:48:12 +08:00
Roy Qu babecbd3bc change "ConsolePauser.exe" to "consolepauser.exe" in all codes 2022-12-30 09:06:39 +08:00
Roy Qu dd92cfa6da - enhancement: "Run" / "Generate Assembly" for project source files 2022-12-28 16:39:18 +08:00
Roy Qu bcb6069fe3 - fix: Crash while input using input method in makefile 2022-12-28 09:24:54 +08:00
Roy Qu 61a5d9f94f minor optimization 2022-12-27 14:34:57 +08:00
Roy Qu a1af733a53 minor optimization 2022-12-27 14:29:49 +08:00
Roy Qu 022f32a95f minor optimization 2022-12-27 13:26:16 +08:00
Roy Qu 988afaac7a - enhancement: Add "Resources" in project option's dialog's custom compiler parameter page 2022-12-26 22:55:00 +08:00
Roy Qu bd4478476d - fix: Crash when editing makefile 2022-12-26 18:20:26 +08:00
Roy Qu 52ed2b79f7 auto remove a.out generead by tcc 2022-12-25 12:01:51 +08:00
Roy Qu 0af113e2a1 auto remove a.exe generated by tcc 2022-12-25 12:00:09 +08:00
Roy Qu 151e5a6edc minor change 2022-12-24 12:09:28 +08:00
Roy Qu 84b09fe842 - enhancement: "Convert HTML for - Input" / "Convert HTML for - Expected" in "Options" - "Executor" - "Problem Set"
- fix: Unit for memory limit is not correctly loaded when open problem properties dialog.
  - enhancement: Auto open the properties dialog, after add a new problem.
2022-12-24 12:08:13 +08:00
Roy Qu 0ce717841b minor change for new project dialog 2022-12-23 09:52:10 +08:00
Roy Qu dde47e0226 - fix: Makefile error when "Use precompiled header" is enabled in the project option dialog. 2022-12-22 22:01:55 +08:00
Cyano Hao 7fcd73abfc
Disable Address Sanitizer on non-x86 64-bit Linux (#87)
* disable ASan on non-x86 64-bit linux

* add "debug with ASan" compiler set

* set default compiler set back to "debug"

* enable ASan compiler for linux only

* default to "debug with ASan" on x86-64 or 32-bit, "debug" for others
2022-12-21 19:35:38 +08:00
Roy Qu 4cb432da74 Improve the layout of the makefile auto generated. 2022-12-21 09:17:27 +08:00
Roy Qu e232ce77c9 - enhancement: Auto add "lib" to the output of static/dynamic library projects, if project name don't start with "lib". 2022-12-21 09:15:39 +08:00
Roy Qu 892b987894 - enhancement: "Line Spacing" in options / editor / font
- enhancement: "Show whitespaces" in options / editor / font
2022-12-20 20:38:02 +08:00
Roy Qu ed89690f7a - fix: Icon size not correct under macOS high DPI / zoom factor settings.
- enhancement: "Icon zoom" in options / environment / appearance
2022-12-20 11:01:04 +08:00
Roy Qu 0e9278e98a qt 5.11 compatibility 2022-12-19 09:35:48 +08:00
Roy Qu 7196413dbc update translations 2022-12-19 09:06:40 +08:00
Roy Qu b499a1ab44 translation 2022-12-19 08:51:53 +08:00
Roy Qu ea924d8742 update translations 2022-12-19 08:50:40 +08:00
Roy Qu 3eb393c5b7 add translations 2022-12-19 08:48:17 +08:00
Roy Qu 1da2961970 - fix: Project's "static link" option is overwrited by global compiler set settings, when project options dialog is opened. 2022-12-18 12:31:19 +08:00
Roy Qu fc07b4dcd4 - enhancement: Don't add "-g3" option when generate assembely.
- enhancement: Generate assembly is not correctly disabled when current file is not C/C++.
2022-12-17 17:20:33 +08:00
Roy Qu efc7af7f46 - enhancement: Run all cases button not correct disabled when no case exits. 2022-12-17 13:40:13 +08:00
Roy Qu 4b9e51a925 refactor: tool buttons for problem & cases 2022-12-17 13:34:11 +08:00
Roy Qu 88449a5381 refactor: context menus
refactor: tool buttons for problem and problem set
2022-12-17 11:37:33 +08:00
Roy Qu d2a2002629 fix: Compiler buttons not correctly disabled for non-c/c++ files 2022-12-16 18:31:48 +08:00
Roy Qu 68f4dcec3f fix: compile buttons not correctly disabled when no file opening. 2022-12-16 18:27:10 +08:00
Roy Qu 07f6b975f1 fix: auto find compilers failed. 2022-12-16 16:36:59 +08:00
Roy Qu d60febaac8 - enhancement: Export FPS (free problem set) files. 2022-12-16 15:54:02 +08:00
Roy Qu f4ca71803f work save 2022-12-16 14:41:24 +08:00
Roy Qu 492345b939 - enhancement: "Trim trailing spaces" in code menu
- change: Don't auto disable compile and debug buttons.
  - enhancement: Better error messages for missing compile/debug/make programs.
  - enhancement: "Show special chars" in options / editor / font
  - fix: Lost compiler set settings if a compiler set's bin dirs is empty.
  - enhancement: Better error message when trying to debug with Release compile set.
2022-12-16 11:10:46 +08:00
Roy Qu 7ddc30967d Merge branch 'master' of github.com:royqh1979/RedPanda-CPP 2022-12-16 09:10:57 +08:00
Roy Qu b6b046b0e2 warning user when make program no exists. 2022-12-16 09:10:39 +08:00
Roy Qu ff336ad5c3 work save 2022-12-16 01:44:20 +08:00
Roy Qu 16db14e761 - enhancement: "Remove trailing spaces" in options / editor / misc
- enhancement: show special chars
2022-12-16 01:03:57 +08:00
Roy Qu 4985191120 - enhancement: Remove multiple problems in the problem set view
- enhancement: Clear the proble view after a new problem set created
2022-12-15 16:33:17 +08:00
Roy Qu 02e6748db5 - fix: Buttons in options -> compiler -> compiler set -> programs are not usable.
- enhancement: Don't check existence of gcc/g++/make/gdb at startup.
  - enhancement: Auto disable "compile" button if gcc doesn't exist.
  - enhancement: Auto disable "debug" button if gdb doesn't exist.
  - enhancement: Auto disable "compile" button for project if make doesn't exist.
2022-12-13 15:58:27 +08:00
Roy Qu e81c08d6c8 refactor: correct var name 2022-12-13 12:40:54 +08:00
Roy Qu ea3b4ea8e5 - enhancement: Show memory usage after console program exited.
- fix: If clang and g++ are in the same folder, only the compiler sets for gcc are auto generated.
2022-12-13 12:36:16 +08:00
Roy Qu e37759b977 add memory usage info for console runner 2022-12-13 09:46:16 +08:00
Roy Qu 2520ddf8f5 - enhancement: Show memory usage for problem cases. 2022-12-13 08:49:20 +08:00
Roy Qu 325fe71567 simplify isTarget64Bit 2022-12-11 22:43:23 +08:00
Roy Qu 79931d73d5 Merge branch 'master' of github.com:royqh1979/RedPanda-CPP 2022-12-11 22:37:56 +08:00
Roy Qu 800d4c9e07
Merge pull request #83 from CyanoHao/aarch64-support
Handle non-x86 64-bit targets
2022-12-11 22:37:39 +08:00
Roy Qu 67f0e4dee2 support "url" in fps file 2022-12-11 21:46:51 +08:00
Roy Qu b1ca0bb600 - enhancement: Import FPS (free problem set) files. 2022-12-11 19:47:43 +08:00
Cyano Hao 23af39395e check 64-bit by comparing with a specific list 2022-12-11 18:22:44 +08:00
Roy Qu c4a41403bc refactor highlighters 2022-12-10 21:23:49 +08:00
Roy Qu 81d88fb5bd work save: refactor Highlighter 2022-12-10 20:45:13 +08:00
Roy Qu 51743799c8 refactor Highlighters 2022-12-10 20:41:07 +08:00
Roy Qu 5d0c49a0bc refactor: block start / end calculation 2022-12-10 18:48:48 +08:00
Cyano Hao 1983efdd2f handle non-x86 64-bit targets 2022-12-10 12:00:57 +08:00
Roy Qu b4e561cf83 improve makefile highlighter
fix: qsortfilterproxymodel not correctly cleared when exiting and project closed.
2022-12-07 09:48:10 +08:00
Roy Qu 8af963579a - enhancement: Highlighter for makefiles 2022-12-06 22:51:59 +08:00
Roy Qu 650e3b407c update version number 2022-12-05 12:04:48 +08:00
Roy Qu 9f2ab0479e minor fix 2022-12-03 11:02:33 +08:00
Roy Qu 77942999d5 - enhancement: Use asm highlighter in cpu window
- fix: "AT&T" radio button not correctly checked in cpu window
  - enhancement: Remove blank lines in the register list of cpu window.
  - fix: Cpu window's size not correctly saved, if it is not closed before app exits.
  - fix: Can't restore cpu window's splitter position.
2022-12-02 10:19:03 +08:00
Roy Qu f9fb966c38 - enhancement: Add "Generate Assembly" in "Run" Menu
- enhancement: Improve highlighter for asm
2022-12-01 22:10:44 +08:00
Roy Qu 164d766c75 - enhancement: Disable "run" and "debug" actions when current project is static or dynamic library 2022-11-30 21:05:08 +08:00
Roy Qu bb2532a2ef - change: Default value of option "Editors share one code analyzer" is ON
- change: Default value of option "Auto clear symbols in hidden editors" is OFF
  - minor fix
2022-11-30 09:54:23 +08:00
Roy Qu ba1e100ab4 - enhancement: support type deduce for std::pair 2022-11-29 18:30:00 +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 407f11aa22 fix: correctly handle For(const auto&) 2022-11-29 15:42:08 +08:00
Roy Qu e845c7474b correctly deduce type for stl container iterators 2022-11-29 12:17:41 +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 3a1bc97ca5 minor refactor 2022-11-28 11:28:02 +08:00
Roy Qu de23833992 - enhancement: Deduce type info for "auto" in some simple cases.
- fix: crash when no semicolon or left brace after the keyword "namespace"
2022-11-28 08:22:48 +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 8788e950dd - enhancement: show completion suggest for "namespace" after "using"
- fix: MinGW-w64 gcc displayed as "MinGW GCC"
2022-11-25 10:01:10 +08:00
Roy Qu 378cdeefd2 work save 2022-11-23 14:57:26 +08:00
Roy Qu b3a986f1ca refactor: highlighter, work save 2022-11-23 12:51:23 +08:00
Roy Qu e352ef345c - change: Default value of option "Editors share one code analyzer" is ON if available physical memory <= 32G
- change: Default value of option "Auto clear symbols in hidden editors" is ON if number of CPU cores > 8 and "Editors share one code analyzer" is on
  - refactor qsynedit's highlighter, work save
2022-11-23 11:41:16 +08:00
Roy Qu d86e93dc35 - enhancement: Options -> editor -> custom C/C++ type keywords page 2022-11-22 15:14:05 +08:00
Roy Qu 19785f9c14 fix: string index not checked 2022-11-16 11:51:50 +08:00
Roy Qu a9c266c39a clean up code 2022-11-16 10:29:20 +08:00
Roy Qu 7ab444fc06 clean up code 2022-11-16 09:38:55 +08:00
Roy Qu 82564239b9 - enhancement: project's custom compile include/lib/bin directory is under folder of the app, save them using the path relative to the app 2022-11-16 09:24:42 +08:00
Roy Qu 2123f1b297 change version number 2022-11-15 03:30:10 +08:00
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
Roy Qu 1301168135 - change: add/remove/new project file won't save all openned project files.
- fix: save all project files shouldn't trigger syntax check in inactive editors
2022-10-21 12:43:02 +08:00
Roy Qu 93ce54d688 remove debug info 2022-10-21 09:58:19 +08:00
Roy Qu 382ffffdc8 minor fix: uninitialized variable 2022-10-21 09:56:14 +08:00
Roy Qu 8e771bd322 minor change 2022-10-21 09:07:32 +08:00
Roy Qu 351c728cf0 minor change 2022-10-19 19:43:48 +08:00