Commit Graph

385 Commits

Author SHA1 Message Date
Roy Qu d0009d06d5 add tips for the font setting list 2024-03-13 20:48:08 +08:00
Cyano Hao e67e329ef1
Use font list (#269)
* add icons

* place text vertically center in qsynedit

* use font list
2024-03-13 19:17:25 +08:00
Roy Qu 30ed2fac79 - fix: Fallback font doesn't apply before restart
- fix: first indent line doesn't show
 = fix: Selection background not correctly drawn
2024-02-29 19:17:14 +08:00
Cyano Hao 18318653d7
Move from command line to argv array (#216)
* command line -> argv array

* update function names

* update directory structure

---------

Co-authored-by: Roy Qu <royqh1979@gmail.com>
2024-02-28 19:41:05 +08:00
Roy Qu 0bab75cfd6 enhancement: force fixed width 2024-02-28 11:51:02 +08:00
Roy Qu 255e09de89 fix: Fallback font combos in the editor font options panel are not correctly inited.
fix: Ascii control chars font not correctly loaded when app start.
2024-02-27 14:46:55 +08:00
Roy Qu 451e201881 enhancement: enable/disable fallback fonts 2024-02-27 13:05:38 +08:00
Roy Qu dfd7075dfb add more fall back fonts 2024-02-26 18:22:02 +08:00
Roy Qu 174808d416 font: work save 2024-02-26 16:43:40 +08:00
Roy Qu b57bbc34f9 Use fallback font instead of non-ascii font 2024-02-26 15:15:26 +08:00
XY0797 b18b431546
enhancement: Limit font size to no less than 5 (#208)
Co-authored-by: xy <eq_software@foxmail.com>
2024-02-22 10:29:01 +08:00
Roy Qu f9d8212712 - Enhancement: New option for compiler set "Don't localize gcc output messages" 2024-02-20 21:47:12 +08:00
Cyano Hao 2b561729f3
Add xmake as alternative build system (#181)
* add xmake as alternative build system

* add feature matrix test
2024-01-19 09:25:21 +08:00
Cyano Hao 69872c6f0b
allow compiler sets persist in auto-find (#170) 2024-01-18 10:41:18 +08:00
Roy Qu 8cdc678d38 SDCC feature can be disabled 2023-12-17 13:53:22 +08:00
Roy Qu 4b6fcd2e90 Change: Use gdb server is not checkable in linux/mac 2023-10-23 19:24:23 +08:00
Roy Qu c3352ad661 - refactor: for/catch processing
- fix: Link in the project options dialog / precompiled header pages is not clickable.
2023-10-22 18:33:53 +08:00
Cyano Hao a62acc2eb0
Add Windows XP support (#146)
* improve Qt 5.6 support

* switch registry API to Windows XP compatible Unicode API

* update docs

* add comment for `CONFIG += c++14 c++17` in qmake .pro files

* fix logic for lockFile
2023-10-21 13:38:12 +08:00
Roy Qu 814f3a28db - enhancement: After compiler settings changed, run/debug current file will auto recompile. 2023-10-15 16:28:55 +08:00
Roy Qu 33d4327443 update translations 2023-09-22 08:17:52 +08:00
Roy Qu f0d6787c9c remove all newlook24 icons 2023-09-21 19:21:42 +08:00
Roy Qu 8edbe5e9be update translations 2023-09-21 17:02:13 +08:00
Roy Qu 7b5fa255da Redesign terminal settings 2023-09-21 16:31:22 +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 4be629727d - enhancement: 3 compare mode for problem cases. 2023-08-19 18:01:16 +08:00
Roy Qu 6b2a800d37 - enhancement: Support SDCC Project. 2023-08-17 19:24:49 +08:00
Roy Qu c2c2e3c9b1 fix: Options are lost when compiling using sdcc 2023-08-14 18:03:25 +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 eb1a219de6 - fix: Press up/down arrow key in the option dialog's left panel won't switch page. 2023-08-13 23:26:31 +08:00
Roy Qu bfc1b03ae3 use sdcc to create hex/bin files 2023-08-13 18:53:48 +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 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 dd724e64c2 - enhancement: Show progress dialog if the time for searching compilers is too long. 2023-08-06 00:05:58 +08:00
Roy Qu d3a8a57cf5 - fix: Goto definition/declaration may choose wrong symbol is multiple files are opened and symbols have the same name. 2023-07-27 15:44:33 +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 2c999dd8ed try to invoke set print characters when gdb starts 2023-07-14 08:30:21 +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 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 7bc4365573 - change: Remove the compiler set option "Syntax error when object larger than" 2023-04-04 08:27:22 +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 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 5f1aa5f620 minor change 2023-03-27 08:41:12 +08:00
Roy Qu cdcf525157 - fix: The option "Open CPU info dialog when signal received" can't be correctly set in the options dialog's debugger page. 2023-03-21 17:11: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 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 99ca9796b1 fix typos. 2023-03-13 22:00:55 +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 60055107ca fix: '::' is not correctly handled when skip to : in the parser 2023-03-10 16:02:47 +08:00
Roy Qu 3b56bab68b refactor: Don't implement custom indent options for C/C++ for now. 2023-03-09 21:08:08 +08:00
Roy Qu 9c04759602 - enhancement: Syntax color support for binaray integer literals.
- enhancement: Syntax color support for suffix in integer/float literals.
2023-03-08 13:23:47 +08:00
Roy Qu d295ff8d11 remove null deleter 2023-03-07 17:18:35 +08:00
Roy Qu 683331e848 - change: Set optimization level to -Og for Debug compiler settings by default. 2023-03-01 21:45:17 +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 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 e5c6ea1a43 - Enhancement: New file templates for C / C++ / GAS files 2023-02-22 22:18:21 +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 dbdf098b94 - enhancement: Limit max speed for mouse scroll (and touch pad?) 2023-02-17 15:33:33 +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 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 cc1e42193d - enhancement: Add "assembler" tab in the project options dialog's custom compiler parameters. 2023-02-09 16:33:25 +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 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 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 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 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 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 1761c66456 refactor 2023-01-11 16:22:26 +08:00
Roy Qu 32088a18d0 - change: Disable undo limit by default. 2023-01-06 11:59:21 +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 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 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 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 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 d86e93dc35 - enhancement: Options -> editor -> custom C/C++ type keywords page 2022-11-22 15:14:05 +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 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 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 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 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 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 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 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 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