Commit Graph

688 Commits

Author SHA1 Message Date
Roy Qu 4be629727d - enhancement: 3 compare mode for problem cases. 2023-08-19 18:01:16 +08:00
Roy Qu b16a85d033 - Retrieve sdcc predefined macros (hacking).
- Stop compiling if ihx file is not correct created.
 - Run/Debug/Generate assembly actions are correctly diabled.
2023-08-14 12:22:24 +08:00
Roy Qu 738faf0c90 - fix: Crash if close file while auto syntax checking.
- enhancement: support sdcc compiler.
2023-08-13 14:46:53 +08:00
Roy Qu 496421e97d - fix: Wrong compiler settings if xcode is not installed in mac os.
- enhancement: Name for new files will not be different from files openned.
2023-08-11 17:09:30 +08:00
Roy Qu 739f382f46 - change: Remove option "clear all symbols when current editor is hidden".
- fix: When opening multiple files, only the active file should be parsed.
2023-08-11 13:49:09 +08:00
Roy Qu 3a8e434399 - change: Git support is disabled in the distributed buildings. 2023-08-08 14:41:23 +08:00
Roy Qu 21b4494f3c - fix: english typos. (thanks for sangiye0@github) 2023-07-24 18:38:58 +08:00
Roy Qu 2c999dd8ed try to invoke set print characters when gdb starts 2023-07-14 08:30:21 +08:00
Roy Qu 7b741dfdb9 - enhancement: Don't show "\000" of string values in the debug local variables panel. 2023-07-13 11:01:11 +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 5240b1f01f Redesign find in files UI 2023-07-05 19:34:17 +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
Roy Qu 377a379554 fix: highlight for #define is not correct 2023-07-04 17:19:29 +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 48e6dbc024 - fix: Replace panel should be hidden after finding occurrencies. 2023-07-02 23:41:32 +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 9dd654cc48 - enhancement: When deleteing files in the files view, try moving to the trash bin instead.
- fix: GNU assembly files (.s) are not shown in the files view.
2023-06-29 00:27:06 +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 be8a5610a4 - fix: Use "/" as path seperator when starting app by double clicking c/c++ files in the explorer. 2023-06-16 17:57:24 +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 6736524380 - fix: Crash at startup when current problem in the problem set is connected with source file. 2023-05-03 12:55: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 fbe051f709 - fix: "Run all problem cases" with project is not correctly handled. 2023-03-26 12:34:11 +08:00
Roy Qu 584b970aec fix: last line not removed when it's not used in the Drag&Drop 2023-03-24 18:24:48 +08:00
Roy Qu d7293b48fc - fix: Remove multiple files in the project panel is not correctly handled. 2023-03-24 17:55:02 +08:00
Roy Qu 0730aa6c22 - enhancement: Drag the selection beyond the end of the document, and move/copy it beyond the last line.
- enhancement: Open Containing folder will auto select the file in windows file explore.
2023-03-23 22:33:04 +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 b4b41e43a1 - enhancement: Add option in the debug settings, to limit the length of the ouput generated by gdb for arrays. 2023-03-17 08:47:05 +08:00
Roy Qu f8076dd069 - fix: None initialized std::vector is not correctly displayed in the gdb of the gcc distributed with redpanda-c++ (Windows 64bit). 2023-03-16 18:11:05 +08:00
Roy Qu 627ff08d23 - fix: The comboxbox to input search keyword in the search dialog is case insensitive.
- fix: The comboxbox to input replace text in the search dialog is case insensitive.
  - fix: The comboxbox to input search keyword in the search in files dialog is case insensitive.
  - fix: The comboxbox to input address expression in the debug panel's memory view is case insensitive.
  - fix: The comboxbox to input evaluation expression in the debug panel is case insensitive.
  - fix: The comboxbox to input replace text in the search panel is case insensitive.
2023-03-14 17:49:36 +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 3a0d3f684a - enhancement: If no selection, Ctrl+C (Copy) auto selects the current line and put the cursor to the beginning. 2023-03-09 11:19:57 +08:00
Roy Qu 0c8f3a0f60 - fix: Cpu info window is auto openned, when debug using gdb-server. 2023-03-08 18:01:10 +08:00
Roy Qu f93d5cdd9e - enhancement: Open offline gnu as/x86 assembly manual if exists. 2023-03-05 08:56:11 +08:00
Cyano Hao bdfa4c066b
Linux package: bundled terminal in AppImage and minor adjustment (#104)
* AppImage: build Alacritty with from-scratch build environment

* enrich compatible terminal list; fix Linux terminal determination

* Linux: get rid of libicu
2023-03-04 18:44:39 +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 eac1077de1 - enhancement: Add "Close window" and "Move to other view" in the "Window" menu 2023-03-03 09:04:26 +08:00
Roy Qu 4ab15c2ee1 - enhancement: When first display two editor panes, auto make them the same width
- change: Don't rebuild the whole project when run/debug, if only
contents of project unit file is modified.
- fix: rebuild may not work, if project's parallel build option is
enabled.
2023-03-02 18:15:31 +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 c637ca3e4b - fix: Can't debug project when project is saved after it's compiled. 2023-03-01 18:46:43 +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 ca0e1b5593 work save 2023-02-27 20:08:24 +08:00
Roy Qu a768d74116 - enhancement: Syntax check for assembly files.
Don't show debug tips in cpu info dialog
2023-02-27 08:53:39 +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 511b6c679b - enhancement: Auto close other search/replace dialogs when start to search/replace.
- change: Remove "prompt when replace" in the replace.
  - fix: Search/replace with regex is not correctly handled.
2023-02-26 08:31:13 +08:00
Roy Qu a7c73200d5 - enhancement: Keep project compile warning & error infos in the issues table, before project file is edited. 2023-02-24 12:17:30 +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 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 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 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 4b54d3799a fix: Fold area is not correctly calculated after editing. 2023-02-17 17:33:48 +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 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 926802a8f5 - change: Don't confirm rebuild/recompile when run/debug. 2023-02-14 23:42:11 +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 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 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 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 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 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 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 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 edeb47d2c2 Let user choose if continue to save, if backup file creation failed. 2023-01-15 09:43:54 +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 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 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 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
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 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 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 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 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