Commit Graph

414 Commits

Author SHA1 Message Date
Roy Qu e557a31848 refactor project 2022-10-01 08:54:44 +08:00
Roy Qu c1b414d10a - fix: project files that lies in project include folder is wrongly openned in Read-only mode 2022-09-30 17:51:26 +08:00
Roy Qu 58a8b7e6dd - fix: when "cleary symbol table of hidden editors" is turned on, content in the editor reshown is not correctly parsed 2022-09-27 18:53:42 +08:00
Roy Qu d946b9373e refactor: clean up QSynedit 2022-09-27 14:01:38 +08:00
Roy Qu a165efa7cf - fix: astyle.exe can't correctly format files that using non-ascii identifier 2022-09-26 16:17:02 +08:00
Roy Qu ebf78dbecb work done: make qsynedit a standalone module 2022-09-26 14:54:28 +08:00
Roy Qu 00ea7ee773 create QSynedit namespace 2022-09-25 09:55:18 +08:00
Roy Qu ca4687c7cd fix: don't clear symbol table when minimized 2022-08-27 11:07:48 +08:00
Roy Qu 4df3ba4f14 - enhancement: don't parse all openned files when start up
- enhancement: don't parse files when close all and exit
2022-08-24 17:05:16 +08:00
Roy Qu c7e8ee6072 - enhancement: don't show cpp defines when editing c files 2022-07-28 13:51:38 +08:00
Roy Qu 8acee3ed20 - fix: correctly update the start postion of selection after code completion 2022-07-20 16:57:42 +08:00
Roy Qu a6f334f837 remove all warnings 2022-07-04 11:39:06 +08:00
Roy Qu 2d7c2145e3 - enhancement: prevent group undo when caret position changed
- fix: undo link break may lose leading spaces
  refactor undo
2022-07-04 10:01:40 +08:00
Roy Qu 24a4f0e127 - change: just show one function hint for overloaded functions 2022-06-30 14:39:12 +08:00
Roy Qu 0985b6444b - fix: wrong auto indent calculation for comments 2022-06-28 09:37:18 +08:00
Roy Qu 5557d9c103 - change: position caret to (1,1) when create a new file using editor's new file template 2022-06-23 20:39:00 +08:00
Roy Qu 895a927ee0 - fix: select all shouldn't set file's modified flag
- enhancement: add (return)type info for functions/varaibles/typedefs in the class browser panel
2022-06-23 13:05:10 +08:00
Roy Qu 85c18d1f66 - enhancement: use different color to differenciate folder and headers in completion popup window
- enhancement: auto add "/" to folder when completing #include headers
2022-06-20 21:43:42 +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 5182e200fb - enhancement: when ctrl+mouse cursor hovered an identifier or header name, use underline to highlight it 2022-06-08 16:05:54 +08:00
Roy Qu c295649280 - fix: errors in the calculation of cut limit 2022-06-01 20:52:35 +08:00
Roy Qu 85f3a04bcf - fix: #define followed by tab not correctly parsed
- enhancement: don't auto add () when completing C++ io manipulators ( std::endl, std::fixed, etc.)
  - fix: can't goto to definition of std::endl
2022-06-01 17:02:03 +08:00
Roy Qu fbdd268484 - fix: cursor is wrongly positioned when insert code snippets that don't have placeholders 2022-05-25 18:41:56 +08:00
Roy Qu 67cd580539 - fix: delete & insert in column mode not correctly handled
- fix: input with ime in column mode not correctly handled
2022-05-18 23:17:06 +08:00
Roy Qu d9259fb9e4 - fix: index of the longest line not correctly updated when insert/delete multiple lines ( which will cause selection errors) 2022-04-24 09:50:30 +08:00
Roy Qu a64bbd0d4b - enhancement: add project templates for tcp server / tcp client
- enhancement: only show function tips when cursor is after ',' or '('.
  - enhancement: when auto complete function names, only append '(' if before identifier or "/'
2022-04-22 15:55:39 +08:00
Roy Qu 0a1c2aea98 refactor: SynDocument and SynDocumentLine 2022-04-19 21:18:41 +08:00
Roy Qu 076a92fb77 - fix: tab/shift+tab not correctly handled in options dialog's code template page 2022-04-16 20:14:47 +08:00
Roy Qu 9d401cce42 - enhancement: prefer local headers over system headers when complete #include header path 2022-04-14 22:25:49 +08:00
Roy Qu 8c99d28307 fix: can't convert encoding 2022-04-13 23:15:31 +08:00
Roy Qu 85026ad5bf remove debug output 2022-04-13 22:34:27 +08:00
Roy Qu 9254a13d84 - fix: parenthesis skip doesn't work when editing non-c/c++ files 2022-04-13 20:04:10 +08:00
Roy Qu ca0ad3249f - 功能增强:输入'('时,如果下一个非空白字符是'('或者标识符/数字,则不自动补全
- 功能增强:如果项目文件和项目的编码相同,则不保存它的编码信息
 - 修正:在保存文件时,会错误的使用缺省编码而不是文件原有的编码进行保存
2022-04-13 16:42:23 +08:00
Roy Qu fa0404117f fix: display bug 2022-04-12 07:48:06 +08:00
Roy Qu b1cc0457ea - fix: hide function tips, when move or resize the main window 2022-04-11 09:25:22 +08:00
Roy Qu 01662a95d1 - fix: auto syntax check doesn't work for new files
- change: don't auto jump to the first syntax error location when compile
2022-04-07 21:35:09 +08:00
Roy Qu 7e284b98f2 - fix: don't show tips in the editor, when selecting by mouse 2022-04-07 17:30:06 +08:00
Roy Qu 7d86c6e5b1 - fix: crash when editing txt file and input symbol at the beginning of a line 2022-04-03 11:54:07 +08:00
Roy Qu f7a6db7005 - change: only auto complete symbol '(' when at line end, or there are spaces or right ')' '}' ']'after it
- fix: mouse drag may fail when start drag at the right half of the selection's last character
2022-03-31 19:36:46 +08:00
Roy Qu 0fc995e56a - enhancement: draw cursor for column mode
- enahcnement: edit/delete in multiline ( column mode), press ese to exit
2022-03-25 22:13:00 +08:00
Roy Qu 8b224010e0 - enhancement: alt+shift+arrow do column selection
- fix: input may cause error, if selection in column mode and begin/end at the same column
  - enhancement: draw selection line if selection in column mode and begin/end at the same column
2022-03-25 12:59:53 +08:00
Roy Qu 090cccc033 refactor: remove ProjectUnit's mEditor field 2022-03-21 09:08:05 +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 12e772747c - enhancement: shortcut for goto definition/declaration
- change: ctrl+click symbol will goto definition, instead of got declaration
2022-03-19 15:33:15 +08:00
Roy Qu fc11f1223b - fix: corresponding '>' not correctly removed when deleting '<' in #include line 2022-03-19 14:26:06 +08:00
Roy Qu b0c8526d97 - fix: order for parameters generated by auto link may not correct 2022-03-19 14:19:32 +08:00
Roy Qu 2e77734d67 remove nouse debug output 2022-03-18 23:17:01 +08:00
Roy Qu ab4ca36fa4 - fix: hide function tip when scroll
- fix: short cut for goto definition/declaration doesn't work
2022-03-18 23:13:43 +08:00
Roy Qu 54592276c8 - fix: wrong font size of exported RTF file
- fix: correct tokenize statements like "using ::memcpy";
2022-03-15 21:33:27 +08:00
Roy Qu d45c0b87b3 - fix: "ok" button should be disabled when no template selected in new project dialog
- enhancement: auto add parentheis when complete function like MARCOs
2022-03-15 20:17:47 +08:00
Roy Qu dd5ce57608 - enhancement: disable "code completion" will disable enhanced syntax highlight 2022-03-13 18:31:05 +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 4c8bed0445 - fix: calculation for code snippets's tab stop positions is not correct 2022-03-10 15:05:16 +08:00
Roy Qu 4cf9c2845a - fix: calculation for code snippets's tab stop positions is not correct 2022-03-10 14:58:53 +08:00
Roy Qu 6a05496b6f - fix: calculation for code snippets's tab stop positions is not correct 2022-03-10 13:07:07 +08:00
Roy Qu dad39f6f74 - change: "locate in files view" won't change the working folder, if current file is in subfolders of the working folder
- enhancement: hide function tips, when input method is visible
2022-03-10 12:15:44 +08:00
Roy Qu 44d5453263 - enhancement: use expression processing in syntax highlighting for identifiers
- fix: if a function's declaration can't be found, it will be wrongly highlighted as variable
2022-03-08 22:29:15 +08:00
Roy Qu fa9916e28e - enhancement: symbol completion when editor has selection 2022-03-07 21:53:52 +08:00
Roy Qu b436312d19 - fix: undo one symbol completion as a whole operation 2022-03-07 20:51:56 +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 96de964484 - enhancement: better support of ligatures
- enhancement: use the expression evaluation logic to handle "goto declaration"/"goto definition"
2022-03-04 16:40:16 +08:00
Roy Qu 6a6f1a68e0 - enhancement: better processing of symbol completion 2022-03-02 15:45:43 +08:00
Roy Qu ecf567b13f update: redo/undo 2022-03-02 11:31:03 +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
royqh1979@gmail.com 18c9f62787 - fix: header completion error when header name contains '+' 2022-02-22 15:38:40 +08:00
Roy Qu b5acf15467 work save: commit 2022-02-15 17:22:44 +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 6cbab4a646 - fix: typo error in the parser
- fix: typing after symbols like 'std::string' shouldn't show code completion suggestions
2022-02-07 09:53:02 +08:00
Roy Qu bf422ad419 - fix: editor's font size set by ctrl+mouse wheel will be reset by open the option dialog 2022-02-03 07:45:59 +08:00
Roy Qu e58ca80282 - fix: failed to show function tip, when there are parameters having '[' and ']'
- refactor iconmanager
2022-01-28 19:30:50 +08:00
Roy Qu 771ccec745 - enhancement: code completion ui redesigned 2022-01-27 20:31:44 +08:00
Roy Qu b114eb216c - enhancement: code completion find words with char in the middle 2022-01-27 01:03:01 +08:00
Roy Qu 5a82da83fb fix: dead loop when parsing function tips 2022-01-26 14:45:21 +08:00
Roy Qu a7557899d1 - enhancement: setting non-ascii font for editors 2022-01-26 14:31:26 +08:00
Roy Qu 894e587f7d - enhancement: show parameter tips for class constructors
- enhancement: when there are tips showing, don't show mouse tips
2022-01-26 12:17:15 +08:00
Roy Qu 0e620381d3 remove debug output 2022-01-24 21:46:38 +08:00
Roy Qu ee9db9cdfd - enhancement: parser not called when open a file, if option "clean parser symbols when hidden" is turned on. 2022-01-24 20:59:02 +08:00
royqh1979@gmail.com 4797c15b04 - enhancement: add exec charset option to compiler set settings 2022-01-24 11:23:30 +08:00
royqh1979@gmail.com 722d02d688 - fix: project files' charset settings doesn't work correctly 2022-01-24 09:24:43 +08:00
Roy Qu 609f611e8f - enhancement: highlighter for GLSL (OpenGL Shading Language) 2022-01-23 23:27:48 +08:00
Roy Qu ebe2dbb95e - fix: editor crash when no highlighter is assigned (the editing file is a not c/cpp source file);
- fix: ')' not correctly skip in the editor when no highlighter is assigned (the editing file is a not c/cpp source file);
2022-01-23 21:04:08 +08:00
Roy Qu df323d30c8 - fix: ctrl+click on the enum value will jump to the wrong line in it's definition file
- fix: line info in the mouse tip of statement not correct
2022-01-22 21:07:41 +08:00
Roy Qu c595b6e9da - fix: app crash when ctrl+click on a #include statement that point to a directory instead of header file. 2022-01-21 19:32:12 +08:00
Roy Qu 39f8c98a66 work savw 2022-01-18 21:03:43 +08:00
Roy Qu 02813587fd - fix: when show function tips, can't correctly calcuate the current position in the function param list 2022-01-18 20:31:07 +08:00
Roy Qu 6be9190a8a - enhancement: better behavior of mouse tips 2022-01-15 11:33:41 +08:00
Roy Qu 04770a6fd8 - enhancement: better behavior of mouse tips 2022-01-15 11:22:20 +08:00
Roy Qu 1a6bd602c4 - fix: caret dispears when at '\t' under Windows 7 2022-01-12 22:25:57 +08:00
Roy Qu eefb65bcb4 - fix: parser can't correctly handle variable definitions that don't have spaces like 'int*x';
- fix: parser can't correctly handle function parameters like 'int *x'
2022-01-12 20:59:28 +08:00
Roy Qu 8edace1c1d - enhancement: add "minimum id length required to show code completion" to the options dialog's editor code completion page 2022-01-10 21:46:03 +08:00
Roy Qu 3d9edcad57 - enhancement: support ligatures in fonts like fira code ( disabled by default, can be turned on in options dialog's editor font page) 2022-01-10 20:16:26 +08:00
Roy Qu e30fa7bc0c - fix: crash when closing the options dialog under Ubuntu 20.04 LTS ( no memory leak now) 2022-01-09 17:42:23 -08:00
Roy Qu bb6a4ed9c8 qt 5.12 compatibility 2022-01-04 16:50:54 +08:00
Roy Qu 212fdc37b2 - enhancement: assign a not saved editor to a problem 2022-01-02 10:37:00 +08:00
Roy Qu 63e1b44fa5 - fix: can't reformat code
- enhancement: add option for setting astyle path
 - fix: wrong file wildcard (*.*) in linux
2021-12-27 22:46:54 +08:00
royqh1979@gmail.com 96ab0890ba - fix: watch and local infos not updated when changing current frame in the call stack panel
- enhancement: pause the debugging program (The debugger should work under gdb server mode, which is turned off by default in windows)
2021-12-27 10:59:04 +08:00
royqh1979@gmail.com 317db42876 add license information 2021-12-26 23:18:28 +08:00
Roy Qu 1fe9be9791 add app library path 2021-12-26 15:08:54 +08:00
Roy Qu b5a450312a - refactor: icon manager
- work save: icons in the dialogs
2021-12-23 00:24:52 +08:00
Roy Qu a806fe9389 - enhancement: use svg icons for class browser 2021-12-21 07:38:49 +08:00
Roy Qu 7687fc1cb7 - fix: symbol completion for '<>' in the preprocessor line not work 2021-12-20 13:00:47 +08:00
Roy Qu 74fdf1ebef - fix: left and right gutter offset settings not correctly saved
- enhancement: use svg icons for editor gutter, and they can zoom with font now
2021-12-20 09:36:18 +08:00
Roy Qu 6ab8ba9869 - fix: compiler set's custom link parameters not used when compiling
- fix: code completion doesn't work when input inside () or []
2021-12-19 16:54:31 +08:00
Roy Qu 33e8042944 - enhancement: use the new expression parser to implement rename symbol
- fix: rename symbol shouldn't remove empty lines
2021-12-19 10:16:46 +08:00
Roy Qu 41336cf31f add a function to find statement by expression in the parser 2021-12-18 23:36:58 +08:00
Roy Qu cd5b281c90 - enhancement: use the new expression parser to parse info for tips 2021-12-17 21:47:37 +08:00
Roy Qu 959cdab6cb use point as the unit for font size in configuration 2021-12-17 09:05:01 +08:00
Roy Qu b2caf38e89 - fix: use pixel size for fonts, to fit different dpi in multiple displays 2021-12-16 19:14:14 +08:00
Roy Qu 879f001d0c - fix: current line of the disassembly in the cpu window not correctly setted
- enhancement: add "step into one machine instruction" and "step over one machine instruction" in the cpu window
2021-12-16 10:46:38 +08:00
Roy Qu 2de2f1e162 work save 2021-12-12 13:02:00 +08:00
Roy Qu ee3864f565 work save 2021-12-08 22:47:28 +08:00
Roy Qu 095a0897f2 work save 2021-12-08 21:44:40 +08:00
Roy Qu 6f8096bc27 change: redesign code completion logic 2021-12-04 10:02:07 +08:00
Roy Qu 20782fc221 stage 1 finished: use the expression token list in the editor to completion,
instead of just the expression string
2021-12-03 21:07:40 +08:00
Roy Qu fd03ea4098 work save 2021-12-03 11:40:05 +08:00
Roy Qu 54443c20f8 done: find completion word 2021-12-02 18:29:37 +08:00
Roy Qu 9cdac8c3ef work save 2021-12-01 23:41:14 +08:00
Roy Qu de0f176284 breakpoint / run / evaluation / memory view ok 2021-11-24 22:16:40 +08:00
Roy Qu b17406eb07 work save 2021-11-24 17:53:25 +08:00
Roy Qu fdfa7c779f work save 2021-11-24 10:07:35 +08:00
Roy Qu d3abf822fb Merge branch 'master' into gdbmi 2021-11-23 18:16:53 +08:00
Roy Qu cd1e20c2d7 - fix: restore caret position after reformat code
- enhancement: ask user to rebuild project, when run/debug the project and it has been modified
 - fix: correct set the enabled state of "delete line"/"insert line"/"delete word"/"delete to BOL"/"delete to EOL" menu items
2021-11-23 10:32:33 +08:00
Roy Qu dda0f82b4d - fix: columns calculation not correct when paint lines containing chinese characters 2021-11-22 19:10:56 +08:00
royqh1979@gmail.com 6ba2d47c81 - enhancement: add "delete line"/"duplicate line"/"delete word"/"delete to EOL"/"delete to BOL" in the edit menu 2021-11-22 16:16:58 +08:00
royqh1979@gmail.com e044bb0703 Merge branch 'master' into gdbmi 2021-11-20 07:22:09 +08:00
royqh1979 1c9bb49799 - enhancement: save/load default projects folder
- enhancement: add editor general options "highlight current word" and "highlight matching braces"
2021-11-18 21:25:28 +08:00
royqh1979@gmail.com 177cd6e397 - enhancement: code completion suggestion for phrase after long/short/signed/unsigned 2021-11-18 12:51:05 +08:00
royqh1979@gmail.com c7748bf5b2 Merge branch 'master' into gdbmi
# Conflicts:
#	RedPandaIDE/qsynedit/SynEdit.cpp
2021-11-13 10:55:10 +08:00
royqh1979@gmail.com 664c8e752a work save 2021-11-13 09:05:02 +08:00
royqh1979@gmail.com d28805ea55 - fix: editor auto save settings not saved and applied
- fix: only auto save files that has new modifications
 - fix: correctly auto save files with it's own name
2021-11-12 12:40:47 +08:00
royqh1979@gmail.com 8b7d19f94e work save 2021-11-12 10:51:00 +08:00
royqh1979@gmail.com 3d2fb53388 - fix: can't show code completion popup if symbol is proceed with an operator '~' ( and it's not a destructor)
- fix: can't show code completion popup when define MACRO
 - fix: can't debug files with chinese characters in the path
2021-11-10 21:28:08 +08:00
royqh1979@gmail.com ad7fb23117 - fix: shouldn't auto add '()' when char succeeding the completed function name is '(' 2021-11-10 12:35:13 +08:00
royqh1979@gmail.com 4259480471 - fix: correct set the position of chinese input methods 2021-11-08 21:19:48 +08:00
royqh1979 93463c24ca work save 2021-11-08 14:51:20 +08:00
royqh1979 f167e10c12 - enhancement: auto clear parsed symbols when the editor is hidden ( to reduce memory usage of un-active editors) 2021-11-08 09:19:50 +08:00
royqh1979@gmail.com 3e0925ba70 - fix: when changing options in the option dialog's color scheme panle, color of the demo editor won't be not correctly updated
- enhancement: Add default color scheme to themes. Change theme option will change color scheme too.
2021-11-07 22:34:19 +08:00
royqh1979@gmail.com bca0a3abc1 - fix: indents calculation for the line succeeding "*/" 2021-11-07 11:39:52 +08:00
royqh1979@gmail.com c98e169fa3 - fix: Installer should install the app in "program files", not "program files (x86)"
- fix: symbol completion for '/*' not work
 - fix: javadoc-style docstring indents calculation
2021-11-07 10:48:09 +08:00
royqh1979 4d48cca3de - fix: multi-line comments indents calculation 2021-11-07 01:07:41 +08:00
royqh1979 bd26ad967d - enhancement: set problem's answer source file
- enhancement: open the problem's answer source file in editor
2021-11-06 14:49:11 +08:00
royqh1979 731a10a1d6 - enhancement: check syntax/parse symbols when modifed and cursor's line changed. 2021-11-04 00:38:40 +08:00
royqh1979 9638cbdd3f - enhancement: can use symbols' own foreground color to draw selection or the current line
- enhancement: can use different colors to highlight the current word and the selections
 - enhancement: can set editor's default background / foreground color. They must be setted to make the custom color schemes correctly.
 - enhancement: can set the color for the current line's number in the gutter
 - all predefined color schemes updated.
2021-11-03 23:27:05 +08:00
royqh1979@gmail.com 6ad87990c7 - fix: Custom editor colors shouldn't be tested for high contrast with the default background color
- fix: Custom color settings not correctly displayed in the options widget
 - enhancement: add hit counts in the search result view
 - fix: editor actions' state not correctly updated after close editors.
 - fix: When replace in the editor, "Yes to All" and "No" button doesn't work correctly.
 - fix: crash when editing non-c/c++ files
 - enhancement: set the alpha value of scheme colors
 - enhancement: can use symbols' own scheme color to draw selection
 - enhancement: can use different colors to highlight the current word and the selections
2021-11-03 18:09:12 +08:00
royqh1979@gmail.com f28aac649b - fix: remove the file change monitor if it's remove from the disk
- fix: don't test if a file is writable before save to it (because qt can't do that test reliably).
 - problem set ui almost done
2021-11-02 01:07:37 +08:00
royqh1979@gmail.com b8f5f43d23 - fix: When debugging, if value of the variable pointed by the mouse cursor is too long, tooltip will fill the whole screen. 2021-10-31 10:11:30 +08:00
royqh1979@gmail.com f9cefaf196 * unindent when input public: / private: / protected: 2021-10-29 21:22:41 +08:00
royqh1979@gmail.com fde31ce7b5 - enhancement: more accurate auto indent calculation
- change: remove "add indent" option in the editor general options widget ( It's merged with "auto indent" option)
2021-10-29 15:15:43 +08:00
royqh1979 b2e88c4c00 - fix: crash when create an empty project 2021-10-25 00:30:53 +08:00