Commit Graph

156 Commits

Author SHA1 Message Date
Roy Qu 8edbe5e9be update translations 2023-09-21 17:02:13 +08:00
Roy Qu 1e645d7770 Improvement of terminal support 2023-09-21 08:17:07 +08:00
Cyano Hao 52c5ea4caf
improve custom terminal settings (#137)
- custom terminal on Windows now require explicit enablement
- customizable terminal arguments pattern and its auto detection
- move hard-coded terminals to resource files
2023-09-20 10:52:54 +08:00
Cyano Hao 7cf5d21b48
Add runner args abstraction and fix shm on macOS/BSD (#134)
* add runner args abstraction to allow different args patterns in various terminal apps; fix macOS shm IPC

* extend platform support from Linux to XDG desktop

* update build docs for Unix

* improve terminal args pattern migration for macOS
2023-09-05 19:14:08 +08:00
Roy Qu 23a1a80890 more options for sdcc compiler 2023-08-21 22:03:21 +08:00
Roy Qu 6690599d60 fix: options are ignored when compile
add more compiler options for sdcc
 Support text input for compiler options
2023-08-21 11:48:23 +08:00
Roy Qu 4be629727d - enhancement: 3 compare mode for problem cases. 2023-08-19 18:01:16 +08:00
Roy Qu c63d0e7187 - update some project template icons.
- add icon info for project icon
2023-08-18 10:04:02 +08:00
Roy Qu 08693b81ec - enhancement: Use sdcc to generate bin files without linking sdcc startup codes. 2023-08-15 00:29:48 +08:00
Roy Qu bfc1b03ae3 use sdcc to create hex/bin files 2023-08-13 18:53:48 +08:00
Roy Qu d2b0653504 - enhancement: Autowrap tool output text. 2023-08-13 15:10:33 +08:00
Roy Qu d86f98b0ee update chinese translations 2023-08-12 22:25:30 +08:00
Roy Qu aa03dfc01d update Simplified Chinese translation 2023-08-11 14:10:04 +08:00
Roy Qu dd724e64c2 - enhancement: Show progress dialog if the time for searching compilers is too long. 2023-08-06 00:05:58 +08:00
Roy Qu 9076fb6ab9 refactor: fix typos 2023-07-25 09:41:20 +08:00
Roy Qu 21b4494f3c - fix: english typos. (thanks for sangiye0@github) 2023-07-24 18:38:58 +08:00
Roy Qu 73abcdbb23 update gcc 13.1 gdb scripts 2023-07-14 10:33:26 +08:00
Roy Qu 2c999dd8ed try to invoke set print characters when gdb starts 2023-07-14 08:30:21 +08:00
Roy Qu ab9524e134 - change: Don't print repeated values in gdb individually 2023-07-13 10:08:01 +08:00
Roy Qu d629a496ff - fix: Shouldn't auto indent lines starts with "\\".
- enhancement: When problem case's expected output is not too large (<= 5000 line), highlight text in the first different line in the expected output.
  - enhancement: Highlight text in the first different line using the error color.
  - enhancement: Add the option "redirect stderr to the Tools output panel" in the options dialog -> executor -> problem set page.
2023-07-12 12:08:26 +08:00
Roy Qu 595156e80f - enhancement: Folder mode in "File in files" dialog.
- enhancement: When open a file, test if it contains binary contains.
2023-07-05 15:02:39 +08:00
Cyano Hao e89f4400eb
Uniform look for Red Panda C++ under KDE/DDE (#119)
* KDE theme: fix visual problems with KDE dark mode; add system theme

* Make "Light" theme truly light under Breeze Dark theme.
  * With this fix also expose dark mode support on Windows.
* Add "Auto" (system) theme that follows system style and color.
* Add "Adaptive" color scheme for system theme (using transparent background).
* Add support for transparent background in color schemes.

* move `alphaBlend` to utils

* hide Auto (system) theme on Windows
2023-07-03 14:06:26 +08:00
Roy Qu e11a81d3c0 - enhancement: add "OI Wiki" and "turtle graphics tutorial" in help menu for zh_CN locale.
- change: rename "graphics.h" template to "ege" for zh_CN locale
  - change: update graphics.h/ege template's icon
2023-07-02 11:09:34 +08:00
Roy Qu 0e1decad65 check windows version and decide if the debug info in the executable files is utf8 encoded. 2023-06-27 11:50:43 +08:00
Roy Qu dfed4accf6 - enhancement: Tooltip support for '->' operator on std iterators.
- enhancement: Close other editors.
2023-06-13 17:16:09 +08:00
Roy Qu 72189f0a94 - enhancement: Add various menu items for cursor actions using Home/End/Page Up/Page Down keys.
- enhancement: Filter names in the shortcut config page of options dialog.
2023-05-31 08:52:59 +08:00
Roy Qu c066919e2e - enhancement: Just keeping two digits after the decimal point for file size in the file properties dialog. 2023-04-19 18:07:19 +08:00
Roy Qu d8f9cef762 - enhancement: Open project's option dialog instead of the option dialog, when click the compiler set settings button in the toolbar and the current editor is for project.
- enhancement: Reset project compile options when change compiler set in the project options dialog.
2023-04-03 09:39:45 +08:00
Roy Qu 799ce52460 - enhancement: Refine suggestion info when try debug and the compiler settings are not correct.
- enhancement: Open the options dialog/project options dialog when user want to correct compiler settings for debug.
2023-04-02 22:53:02 +08:00
Roy Qu 7a64538982 - change: Change compiler set option "Syntax error when object larger than" to "Syntax error when function frame larger than"
- fix: Projects created by some templates are not correct when editor's default encoding is not utf8.
2023-03-31 17:39:08 +08:00
Roy Qu fbe051f709 - fix: "Run all problem cases" with project is not correctly handled. 2023-03-26 12:34:11 +08:00
Roy Qu 7a8a239dfc - fix: Reformat code when select contents in column mode will mess up the document.
- enhancement: Add "save as" icon to the toolbar.
  - enhancement: Use key sequences as shortcut to actions in the options dialog's environment->shortcut page.
  - change: Use ctrl+shift+S as the shortcut for "save as".
  - change: Use ctrl+K,ctrl+S as the shortcut for "save all".
2023-03-25 10:16:49 +08:00
Roy Qu b951ac6636 - fix: Crash when a project is removed from the disk while it is openned in RedPanda-C++. 2023-03-19 20:51:12 +08:00
Roy Qu 56cd6c4d76 - fix: The option "Minimal indent for a continuous conditional beloning to a conditional header:" for formatter is not correct. 2023-03-18 21:37:11 +08:00
Roy Qu f4f67d0b91 update translations 2023-03-18 09:10:17 +08:00
Roy Qu eb93d8369e - enhancement: Show shortcut info in toolbar's tooltip. 2023-03-17 15:37:11 +08:00
Roy Qu e8a3c6b4bc typo in translations 2023-03-15 15:37:28 +08:00
Roy Qu a8695a96d0 - enhancement: Options in compiler set settings, to generate protection code for stack smashing attack. (Enable for Debug settings by default)
- enhancement: Options in compiler set settings, to enable address sanitizer. Not available in windows.(Enable for Debug settings by default)
2023-03-14 10:02:23 +08:00
Roy Qu 436a047821 - enhancement: Options in compiler set settings, to generate syntax error for large stack objects. 2023-03-13 21:57:15 +08:00
Roy Qu 16e45f1b9c - change: Remove compiler set options that's rarely used. 2023-03-13 09:15:05 +08:00
Roy Qu aaac2bfcf7 - enhancement: Warn user and stop compile if project has missing files.
- enhancement: Warn user when exit and save settings failed.
2023-03-12 09:19:02 +08:00
Roy Qu f0f9741220 minor change 2023-03-10 11:35:33 +08:00
Roy Qu 8af7576cd1 fix compile error in windows 2023-03-04 18:49:30 +08:00
Roy Qu 1504e6cb04 - enhancement: Show mousetip for numbers in the GNU assembly file. 2023-03-04 18:23:57 +08:00
Roy Qu b82336e176 - enhancement: Add X86_64 AVX/AVX instruction descriptions to asm syntaxer.
- enhancement: Update to the newest x86 Assembly manual.
2023-03-04 12:47:49 +08:00
Roy Qu da3dda97e3 - enhancement: Add "Close window" and "Move to other view" in the "Window" menu
- enhancement: Auto open CPU info dialog, if the program in debug is stopped at a position that have no source file.
  - enhancement: "add watchpoint" when debug. It's hitted when the watch variable is modified, or it's out of scope.
  - enhancement: Switch current call stack frame in the CPU info dialog
  - fix: Shouldn't try evaluate value of the selection in the cpu info dialog.
  - enhancement: Show oct/bin/bin value in the memory view's tooltip.
  - Don't set optimization level to -Og in the Debug compiler set. (Some variable can't be view in the memory view, because they are put in registers.)
2023-03-03 17:20:33 +08:00
Roy Qu c96209cc42 - fix: Icons for buttons in the cpu info dialog is not correctly set.
- enhancement: Add cfi directives for asm syntaxer in linux.
2023-03-01 19:39:09 +08:00
Roy Qu d3fde7ab53 - change: Merge search and replace to one dialog.
- fix: Search dialog's "Match whole word" option doesn't work with "Use Regular expresion".
  - fix:Search dialog's "Close after search" option doesn't work.
  - change: Fill the search dialog with the current selection if it's available.
2023-02-28 16:17:56 +08:00
Roy Qu 78739e388a - enhancement: Add "Languages" page group in the options dialog.
- enhancement: Add "ASM Generation" page in the options dialog.
  - change: Move "Custom C/C++ keywords" from group "Editor" to "Lanauges" in the options dialog.
  - change: Rename "Folder" page to "Folder / Reset default settings" in the options dialog.
  - enhancement: Generate asm with/without SEH directives.
  - enhancement: Generate asm using intel style/att style.
  - enhancement: make description for jump/cmov/setb instructions more explicit. (used for signed or unsigned)
2023-02-28 10:49:50 +08:00
Roy Qu c9bb03350d - enhancement: Show descriptions mouse tip for assebmly instructions. (editor / cpu info dialog)
- fix: When completing resigter names, an extra '%' is wrongly added.
2023-02-26 17:50:03 +08:00
Roy Qu 5d9ecea491 - enhancement: Add descriptions for x86 registers in the cpu info dialog. 2023-02-25 21:19:14 +08:00
Roy Qu e5c6ea1a43 - Enhancement: New file templates for C / C++ / GAS files 2023-02-22 22:18:21 +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 8254de68c8 - enhancement: Delay for tooltips.
- enhancement: "Tool tips delay" option in Options/editor/Tooltips
2023-02-17 09:03: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 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 02b64497d5 - enhancement: Keyword completion for asm/GAS files. 2023-02-12 18:13:24 +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 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 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 48788a189b - enhancement: Simplified chinese translations for encoding names. 2023-01-25 10:51:59 +08:00
Roy Qu 0ccec06f33 add project encoding 2023-01-24 11:31:30 +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 22e1339b1a - enhancement: Confirm before remove a compiler set. 2023-01-20 00:08:16 +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 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 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 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 32088a18d0 - change: Disable undo limit by default. 2023-01-06 11:59:21 +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 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 988afaac7a - enhancement: Add "Resources" in project option's dialog's custom compiler parameter page 2022-12-26 22:55:00 +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 dde47e0226 - fix: Makefile error when "Use precompiled header" is enabled in the project option dialog. 2022-12-22 22:01:55 +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 7196413dbc update translations 2022-12-19 09:06:40 +08:00
Roy Qu 3eb393c5b7 add translations 2022-12-19 08:48:17 +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 d60febaac8 - enhancement: Export FPS (free problem set) files. 2022-12-16 15:54:02 +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 16db14e761 - enhancement: "Remove trailing spaces" in options / editor / misc
- enhancement: show special chars
2022-12-16 01:03:57 +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 2520ddf8f5 - enhancement: Show memory usage for problem cases. 2022-12-13 08:49:20 +08:00
Roy Qu b1ca0bb600 - enhancement: Import FPS (free problem set) files. 2022-12-11 19:47:43 +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 f9fb966c38 - enhancement: Add "Generate Assembly" in "Run" Menu
- enhancement: Improve highlighter for asm
2022-12-01 22:10:44 +08:00
Roy Qu d86e93dc35 - enhancement: Options -> editor -> custom C/C++ type keywords page 2022-11-22 15:14:05 +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 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 36f94bbb33 update translations 2022-11-10 17:39:20 +08:00
Roy Qu dbc19c8e7f add translation 2022-11-07 21:46:26 +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 4fa490253e - enhancement: switch header/source 2022-11-05 19:39:33 +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 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 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 2417998ca0 update translations 2022-10-24 19:36:14 +08:00