Commit Graph

321 Commits

Author SHA1 Message Date
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
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 a62910e1a3 - fix: editor tooltip for #include_next is not correctly calculated
- fix: ctrl+click on #include_next header name doesn't open the right file
  - enhancement: parser used for non-project C files won't find header files in C++ include folders.
2022-10-18 12:24:59 +08:00
Roy Qu 984d10eaf1 - enhancement: project and non-project files use different breakpoint and watchvar view (auto switch when not debugging and editor switched)
- enhancement: save project's breakpoint and watchvar in it's own debug file.
  - enhancement: delete a watch expression don't reload who watch var view
2022-10-16 23:10:57 +08:00
Roy Qu 7883397409 - enhancement: set compilation stage in the options / compiler set pages
- enhancement: set custom compilation output suffix in the options / compiler set pages
2022-10-12 19:48:35 +08:00
Roy Qu 5f0371cb5b - enhancement: add option "max undo memory usage" in the options / editor / misc page 2022-10-11 22:33:09 +08:00
Roy Qu f67628863f - fix: minor memory leaks when set itemmodels
- fix: thread for parsing doesn't correctly released when parsing finished ( so and the parser)
2022-10-10 18:05:18 +08:00
Roy Qu 1e5a130def - fix: gliches in UI's left panel in some OS
- fix: correctly restore project layout when reopen it
  - fix: correctly handle rename unit
  - refactor: use filename as the primary key for project unit
2022-10-08 23:30:30 +08:00
Roy Qu e557a31848 refactor project 2022-10-01 08:54:44 +08:00
Roy Qu d946b9373e refactor: clean up QSynedit 2022-09-27 14:01:38 +08:00
Roy Qu ebf78dbecb work done: make qsynedit a standalone module 2022-09-26 14:54:28 +08:00
Roy Qu 15bbf15d38 work save 2022-09-26 12:01:45 +08:00
Roy Qu 00ea7ee773 create QSynedit namespace 2022-09-25 09:55:18 +08:00
Roy Qu 6b64eab16b - fix: can't correctly set project icon 2022-08-08 10:45:35 +08:00
Roy Qu 8d4411ee55 - enhancement: Portuguese Translation ( Thanks for crcpucmg@github) 2022-08-05 20:56:09 +08:00
Roy Qu d034089214 5.12 compatibility fix 2022-07-24 03:19:11 +00:00
Roy Qu fdbf86e774 linux compatibility fix 2022-07-24 10:02:36 +08:00
Roy Qu 2f8988cf91 - fix: "Timeout for problem case" can't be rechecked, in the Settings Dialog -> executor -> problem set panel. 2022-07-22 11:34:45 +08:00
Roy Qu 17eb0c1f94 - enhancement: add select current word command in the Selection menu
- change: add Selection menu
  - enhancement: add memory view rows/columns settings in the settings dialog -> debugger -> general panel
  - enhancement: add "Go to Line..." in the Code menu
2022-07-21 15:28:07 +08:00
Roy Qu a6f334f837 remove all warnings 2022-07-04 11:39:06 +08:00
Roy Qu b2585f567a - enhancement: autolink add "force utf8" property (mainly for raylib) 2022-06-23 19:07:48 +08:00
Roy Qu 20690b7e51 - enhancement: add the option "Set Encoding for the Executable" to project's compiler options
- fix: can't correctly compile when link params are seperated by line breaks
2022-06-22 17:08:35 +08:00
Roy Qu 3d6d3c5210 - fix: when run/debug the executable, add current compiler set's bin folders to path
- fix: when open in shell, add current compiler set's bin folders to path
2022-06-16 21:34:31 +08:00
Roy Qu 9545ad9b6f - fix: compiler settings not correctly saved 2022-06-13 16:31:41 +08:00
Roy Qu fb18a1f1a3 - enhancement: add 'run all problem cases' / 'run current problem case' / 'batch set cases' to the option dialog's shortcut panel 2022-06-13 09:38:32 +08:00
Roy Qu 5a31e1dd42 - fix: rename macro doesn't work in project
- fix: can't remove a shortcut
  - enhancement: hide all menu actions in the option dialog's shortcut panel
2022-06-12 22:54:34 +08:00
Roy Qu 06ee536431 - fix: tab icon not correct restore when hide and show a panel
- fix: the hiding state of the tools output panel is not correctly saved
2022-05-21 10:44:39 +08:00
Roy Qu 106bf4281a disable undo limit by default 2022-05-19 13:19:47 +08:00
Roy Qu 6340dbe299 - enhancement: show error message when user set a shortcut that's already being used. 2022-05-14 16:52:56 +08:00
Roy Qu 086dfd0865 finish: redesign compiler command line arguments 2022-05-14 11:21:59 +08:00
Roy Qu 58b7c55cd6 work save 2022-05-13 20:22:16 +08:00
Roy Qu 2f5f1346fd work save 2022-05-12 22:42:19 +08:00
Roy Qu 9867d0d931 update compiler set options 2022-05-12 15:28:08 +08:00
Roy Qu 7729ba0ebe - enhancement: support UTF-8 BOM files 2022-05-06 15:23:41 +08:00
Roy Qu 45744b43f0 - change: highlight whole #define statement using one color
- enhancement: don't highlight '\' as error
  - enhancement: hide add charset  option in project options dialog's compiler set page, when project compiler set is clang
  - fix: When generating project's makefile for clang, don't add -fexec-charset / -finput-charset command line options
2022-05-02 21:47:01 +08:00
Roy Qu f16d015fdd - fix: gcc compiler set name is not correct in Linux
- enhancement: hide add charset option when the currect compiler set is clang
  - enhancement: auto check the c project option in the new project dialog
  - change: use "app.ico" as default name for the project icon file
  - fix: c file should use CC to build in the auto generated makefile
2022-04-25 21:48:04 +08:00
Roy Qu 81f4d98d5f minor fix 2022-04-25 12:43:23 +08:00
Roy Qu 0a1c2aea98 refactor: SynDocument and SynDocumentLine 2022-04-19 21:18:41 +08:00
Roy Qu 331a5818c6 fix: add library files dialog not correctly 2022-04-18 11:48:51 +08:00
Roy Qu 512371a6d4 - fix: index of the longest line not correctly updated ( which will cause selection errors) 2022-04-18 11:38:30 +08:00
Roy Qu 0d2c842317 - fix: index of the longest line not correctly updated ( which will cause selection errors) 2022-04-18 11:35:42 +08:00
Roy Qu 1eb809b011 - enhancement: add Traditional Chinese translation 2022-04-18 11:01:42 +08:00
Roy Qu 94a99e983e add Portuguese translation file
update chinese translations
2022-04-13 17:15:30 +08:00
Roy Qu 39a0f87b94 - fix: can't build project that has source files in subfolders
- fix: can't build project that has custom object folder
  - fix: buttons in the project option dialog's output page don't work
2022-04-08 22:14:18 +08:00
Roy Qu 2e0357e652 - enhancement: don't show folders that doesn't contain files in the project view
work save:  - enhancement: redesigned new project unit dialog
2022-04-08 17:22:24 +08:00
Roy Qu 5e349ec21e - fix: when oj problem grabbed by competitive companion received,
the app is restored to normal state, no matter it's current state.
  - enhancement: input shortcut in the option dialog's general -> shortcut page by pressing keys.
2022-04-01 21:09:24 +08:00
Roy Qu 7bc5a2ee7a - fix: can't stop a freeze program that has stdin redirected.
- enhancement: context menu for problem cases table
2022-03-30 19:28:46 +08:00
Roy Qu facdb59c66 msvc compatibility 2022-03-29 09:43:24 +08:00
Roy Qu ac54496aeb - fix: auto syntax check use wrong charset, if a file in editing is not encoded with ANSI encoding
- enhancement: timeout for problem case test in
2022-03-27 11:44:52 +08:00
Roy Qu 4209241dea - fix: when size of undo items is greater than the limit, old items should be poped in group
- enhancement: max undo size in option dialog's editor->misc tab
2022-03-20 18:10:53 +08:00
Roy Qu d840622b58 - fix: only convert project icon file when it's filename doesn't end with ".ico" 2022-03-18 19:14:19 +08:00
Roy Qu 23f34af034 - enhancement: auto convert project icon to ico format 2022-03-17 17:07:28 +08:00
Roy Qu 0286043cd7 - fix: syntax color of #include header filenames not correct 2022-03-12 21:42:32 +08:00
Roy Qu 5789aeee45 - enhancement: auto detect "gbk" encoding when running in zh_CN locale under Linux
- enhancement: disable encoding submenu when editor closed
  - enhancement: clear infos in the status bar when editor closed
2022-03-12 17:37:53 +08:00
Roy Qu 416023dc60 - enhancement: optimize startup time 2022-03-11 20:51:33 +08:00
Roy Qu 82ecab9c90 - enhancement: reduce startup time by about 1 second.
- enhancement: add option "mouse selection/drag scroll speed" in the options dialog's "Editor" / "general" tab.
  - fix: scroll speed of mouse selection/drag is too fast.
2022-03-04 19:04:45 +08:00
Roy Qu ee59d80bdb - enhancement: enable group undo
- enhancement: add option "hide symbols start with underscore" and "hide synbols start with two underscore"
  - fix: can't rename project files that not openned in editor
  - fix: dpi changes in CPU window shouldn't affect main window
2022-03-01 22:03:54 +08:00
Roy Qu cc0b209e2f - enhancement: option "open files in the same red panda C++ instance", in options->environment->file associations
- enhancement: hide unsupported files in files view
2022-02-28 22:40:09 +08:00
Roy Qu 664922a301 - fix: convert to encoding setting in compiler set option not correctly handled
work save:
  git repository class
2022-02-15 00:01:50 +08:00
Roy Qu 0d71282a1a work save: icons for files tracked by git 2022-02-14 00:13:00 +08:00
royqh1979@gmail.com 4e16a2e186 - change: rename "compile log" panel to "tools output"
- fix: debug panel can't be correctly show/hide
  - enhancement: redesign tools output's context menu, add "clear" menu item
  - update translations
2022-02-10 12:03:56 +08:00
Roy Qu 18d5a6c1ab initial work
- settings for git execute path
 - a git manager
2022-02-08 23:38:29 +08:00
Roy Qu c7a9698c4b - enhancement: file system view mode for project 2022-02-08 12:33:10 +08:00
Roy Qu 9e5ce0a8ba work save 2022-02-08 00:24:08 +08:00
Roy Qu 7ebcc2d635 rename ProjectModel to ProjectLegacyModel 2022-02-07 22:05:19 +08:00