volokh0x
034f31aa5c
Save clear action of TextEdit in history when used from context menu
2022-01-16 15:00:57 +02:00
Rémi Verschelde
f6792eacf5
Merge pull request #54956 from Calinou/lineedit-textedit-add-caret-width-theme-item
...
Add a theme constant to change LineEdit and TextEdit's caret width
2022-01-13 09:21:01 +01:00
Rémi Verschelde
b52f90e795
Merge pull request #56637 from KoBeWi/maxxxxxxcroll
...
Set max value of inactive TextEdit scrolls to 0
2022-01-10 22:15:57 +01:00
Rémi Verschelde
7faf02383c
Merge pull request #55225 from bruvzg/fix_ligature_cursor_and_ot_features
2022-01-10 13:32:54 +01:00
bruvzg
8c973f21ee
Fix glyph index for bitmap fonts.
...
Fix TextEdit glyph position rounding.
2022-01-10 08:00:27 +02:00
bruvzg
c89c515ccf
[TextServer] Improve ligature cursor handling.
...
Fix mid-grapheme hit test.
Fix OpenType features property handling, add default features override option.
Enable mid-grapheme cursor by default.
2022-01-09 19:03:48 +02:00
kobewi
892d93759c
Set max value of inactive TextEdit scrolls to 0
2022-01-09 01:45:07 +01:00
Hugo Locurcio
f6443beade
Add a theme constant to change LineEdit and TextEdit's caret width
...
This can be useful to improve caret visibility, especially at
larger font sizes. This can also be used for accessibility purposes.
2022-01-07 20:51:22 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
luz paz
a124f1effe
Fix various typos
...
Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
2022-01-02 01:03:58 -05:00
Rémi Verschelde
e8011be6f5
Merge pull request #55729 from cdemirer/fix-script-editor-unexpected-scroll-upon-resize
2021-12-12 20:54:53 +01:00
cdemirer
a361236526
Fix unexpected scroll on resize + consistent return value
2021-12-11 10:03:24 +08:00
Rémi Verschelde
7e32a27879
Merge pull request #55739 from Paulb23/text-edit-base-performance
2021-12-10 09:46:15 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
...
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Paulb23
bfe2cd2f03
Optimise TextEdit base operations
2021-12-08 18:23:07 +00:00
jmb462
81efebb3a1
Fix bad popups offset in editor with single window off
...
Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com>
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2021-12-06 14:29:48 +01:00
Paulb23
f9b66da748
Fixed TextEdit underline draw pos
2021-12-03 16:56:01 +00:00
ConteZero
0699941f07
Add drag and drop to TextEdit
2021-12-02 22:00:07 +01:00
Lightning_A
e078f970db
Rename remove()
to remove_at()
when removing by index
2021-11-23 18:58:57 -07:00
Rémi Verschelde
76aa1d0a43
Merge pull request #55151 from Chaosus/control_reset_size
2021-11-22 16:22:57 +01:00
Yuri Roubinsky
eabf8f5edf
Added reset_size
method to Control
and Window
classes
2021-11-22 16:55:21 +03:00
Yuri Sizov
e85e6ec7fc
Add methods to get position from column and line in TextEdit
2021-11-22 15:13:13 +03:00
Paulb23
2a302f7097
Fix TextEdit mouse interactions when the last line is hidden
2021-11-17 18:29:19 +00:00
Hugo Locurcio
8fb7e622a6
Rename built-in SGN()
macro to SIGN()
...
This matches the name of the GDScript function (except it's uppercase
here).
2021-11-16 20:40:49 +01:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums
2021-11-12 15:37:54 -06:00
Rémi Verschelde
b46a42b689
Merge pull request #54204 from Ev1lbl0w/bugfix-textedit_selection_mode_crash
2021-11-10 19:03:33 +01:00
Ev1lbl0w
1843662510
Fix crash with indexing array with bad values
2021-11-10 12:44:40 +00:00
Rémi Verschelde
21529c90f8
Merge pull request #54166 from ConteZero/unique_selection
2021-10-27 20:50:54 +02:00
ConteZero
fbee4efa5f
Add option to make selection unique
2021-10-27 19:45:52 +02:00
Rémi Verschelde
b2ab5cb504
Merge pull request #54045 from ConteZero/primary_clipboard_linux_fix_warning
2021-10-23 19:13:34 +02:00
ConteZero
8c48b4a7e0
Fix primary clipboard warning
2021-10-23 15:50:01 +02:00
Hugo Locurcio
abbc8facc6
Use TitleCase for CTL dialog menu options
...
This is more consistent with other actions exposed in the dialog.
2021-10-21 17:47:39 +02:00
Rémi Verschelde
8748247d6f
Merge pull request #53702 from ConteZero/primary_clipboard_linux
2021-10-20 16:35:04 +02:00
Murilo Gonçalves
94cba835eb
Fix: typo in TextParagraph class and docs
2021-10-19 16:38:58 -03:00
ConteZero
838c9d37b4
Added primary clipboard for Linux
2021-10-18 14:01:06 +02:00
Ricardo Subtil
88985cbf3a
Fix null crash with TextEdit
2021-10-16 18:24:46 +01:00
Rémi Verschelde
5ae569560d
Fix missing argument names in bindings
...
While at it, tweak some boolean setters to use `p_enabled` for the bool.
Also renames `draw_minimap()` to `set_draw_minimap()`.
2021-10-09 00:20:10 +02:00
Haoyu Qiu
45e943f4fe
Fix crash when tooltip_request_func object is freed
2021-10-06 15:00:31 +08:00
jmb462
fcb102a826
Fix caret position and viewport centering after deleting line (Ctrl-X)
2021-10-04 17:11:20 +02:00
Yuri Sizov
bdbb7b3999
Remove EDSCALE dependency from /scene/gui
2021-10-04 15:25:08 +03:00
bruvzg
0c0b5c84b0
Implement TextServer GDExtension interface, remove TextServer GDNative interface.
2021-10-01 15:13:29 +03:00
Rémi Verschelde
a662ca66aa
Merge pull request #53112 from EricEzaM/better-breakpoint-gutter
2021-09-30 14:57:23 +02:00
Eric M
e0f8410d16
Improved breakpoint gutter for CodeEdit.
...
Added preview of breakpoint placement on hover. Added override of icon for the Editor to use an SVG so it is no longer blurry.
2021-09-30 22:15:47 +10:00
Paulb23
7926d75d02
Fix TextOp setting to none when typing
2021-09-29 17:34:44 +01:00
jmb462
3f0fe0b8a3
Fix LineEdit and TextEdit double-click and triple-click selection
2021-09-26 19:56:48 +02:00
Anilforextra
cc51b045da
Construct values only when necessary.
2021-09-23 22:26:07 +05:45
Rémi Verschelde
d039f4af14
Merge pull request #52185 from Paulb23/nested-complex-ops
...
Allow nested complex ops in TextEdit
2021-09-14 11:57:42 +02:00
Rémi Verschelde
0b60b9f75c
Merge pull request #52443 from Paulb23/code-edit-indext-fixes
...
Fix brace placement with space auto indent
2021-09-13 21:52:38 +02:00
Gilles Roudière
321ee7bda1
Merge pull request #52106 from Paulb23/text-edit-optimisation
...
Optimise TextEdit get line height and width
2021-09-08 14:04:41 +02:00
Paulb23
9785167b39
Fix brace placement with space auto indent
2021-09-06 17:10:39 +01:00
Hugo Locurcio
c8949f21e7
Add visual feedback when hovering or dragging the code minimap grabber
...
This makes it more obvious that the minimap grabber can be dragged
to scroll.
2021-09-04 02:25:22 +02:00
Paulb23
c5d7ae7920
Allow nested complex ops in TextEdit
2021-08-28 12:49:55 +01:00
Paulb23
de009cb5ae
Optimise TextEdit get height and width
2021-08-28 11:27:23 +01:00
kobewi
a913ae8d56
Add support for internal nodes
2021-08-28 02:07:23 +02:00
bruvzg
4c3f7d1290
Makes FontData importable resource.
...
Adds multi-channel SDF font texture generation and rendering support.
Adds per-font oversampling support.
Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading.
Adds BMFont binary format and outline support.
2021-08-27 15:43:18 +03:00
Michael Alexsander
88db541705
Merge pull request #51947 from AnilBK/redundant-assignments
...
[cppcheck] Remove some redundant assignments.
2021-08-23 13:23:45 +00:00
reduz
5cecdfa8af
Entirely removes BIND_VMETHOD in favor of GDVIRTUAL
...
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.
Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-23 08:10:13 -03:00
reduz
3682978aee
Replace BIND_VMETHOD by new GDVIRTUAL syntax
...
* New syntax is type safe.
* New syntax allows for type safe virtuals in native extensions.
* New syntax permits extremely fast calling.
Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`.
These will require API rework on a separate PR as they work different than the rest of the functions.
Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-22 08:23:58 -03:00
Anilforextra
c86db8b710
Remove redundant assignments.
...
Use used_in_transfer instead of used_in_compute twice.
2021-08-21 19:20:07 +05:45
Haoyu Qiu
16c2d4ef22
Improve Undo/Redo menu items
...
* Make Undo/Redo menu items disabled when clicking it does nothing.
* Context menu of `TextEdit`
* Context menu of `LineEdit`
* Editor's Scene menu
* Script editor's Edit menu and context menu (for Script and Text)
* Make editor undo/redo log messages translatable.
* Mark `UndoRedo`'s `has_{un,re}do()` methods as `const`.
* Expose `TextEdit`'s `has_{un,re}do()` to scripts since `{un,re}do()` are already available.
2021-08-17 21:11:10 +08:00
requizm
37ad82a7f7
We can delete all text on TextEdit
...
While all text of TextEdit was selected, deletion with backspace did not occur. It can now be deleted.
2021-08-17 02:30:14 +03:00
Vignesh1-art
eb5b0d013f
Fixed crash executing TextEdit.new().set_draw_control_chars(true)
...
Fixes #51613 .
2021-08-16 12:36:14 +02:00
Rémi Verschelde
761eb7e06a
Merge pull request #51585 from Paulb23/theme-update-optimisation
2021-08-13 21:33:36 +02:00
Paulb23
273374957b
Only update TextEdit text cache when dirty
2021-08-13 17:47:53 +01:00
bruvzg
00381db2e7
[TextEdit] Improve block/insert caret drawing.
2021-08-13 19:28:47 +03:00
Paulb23
a736fb8ce9
Fix breakpoint toggle signal not firing when expected
2021-08-12 14:47:10 +01:00
Paulb23
a4606c2806
Cleanup and complete TextEdit inspector and docs
2021-08-12 11:43:35 +01:00
Paulb23
ae4dcb8918
Cleanup and bind remaing methods in TextEdit
2021-08-12 11:43:35 +01:00
Paulb23
0a32a6907b
Cleanup and expose viewport / scrolling methods
2021-08-12 09:29:58 +01:00
Paulb23
7dbb0f3233
Rename readonly to editable
2021-08-12 09:29:58 +01:00
Paulb23
b799e5583a
Rename insert mode to overtype mode
2021-08-12 09:29:58 +01:00
Paulb23
b700011314
Protect internal CodeEdit --> TextEdit API
2021-08-12 09:29:58 +01:00
Paulb23
9ec3e7f3d7
Cleanup TextEdit selection methods
2021-08-12 09:29:56 +01:00
Paulb23
7e70f9e0b9
Expose and cleanup TextEdit line wrap API
2021-08-12 09:29:16 +01:00
Paulb23
d5dcaee4c5
Cleanup and rename caret operations
2021-08-12 09:29:13 +01:00
Paulb23
e60900a353
Make TextEdit cut, copy and paste overridable
2021-08-12 09:27:10 +01:00
Paulb23
abbf14e7f5
Remove dead code from TextEdit
2021-08-12 09:27:10 +01:00
Rémi Verschelde
fba0c8e2e2
Merge pull request #51502 from codecat/fix-caret-selection
...
Move cursor to edge of selection when moving caret left/right
2021-08-12 10:07:12 +02:00
Melissa Geels
408401a642
Triple click in text editor now uses last mouse position for validity
...
Previously, you would be able to double click a word, followed by
single-clicking another word on the same line, which would select the
entire line. Now, it will only select the whole line if the mouse
position has remained the same after the double click. This mimicks the
behavior in most third party text editors.
Fixes #51312 .
2021-08-11 21:49:26 +02:00
Melissa Geels
ed4c3eb7b3
Move cursor to edge of selection when moving caret left/right
...
This is to mimic the behavior of many third party text editors. The
reason it's not doing it when moving by word is due to that behavior
being mostly the same on other editors.
2021-08-11 13:27:12 +02:00
Paulb23
dd5a37f556
Move symbol lookup into CodeEdit
2021-08-01 12:06:33 +01:00
Paulb23
8f900ac178
Move line length guidelines into CodeEdit
2021-08-01 12:06:33 +01:00
Paulb23
d1a1ad127e
Move brace matching into CodeEdit
2021-08-01 12:06:33 +01:00
Paulb23
12f0053555
Move auto brace completion to CodeEdit
2021-08-01 12:06:33 +01:00
Rémi Verschelde
a0bc2f359d
Merge pull request #50588 from bruvzg/menu_gen
...
Optimize LineEdit and TextEdit menu item generation.
2021-07-19 22:56:53 +02:00
Rémi Verschelde
dfc1ec7fb9
Merge pull request #50606 from Chaosus/textedit_fix_guttertype
...
Fixed typos in `TextEdit::GutterType` enum
2021-07-19 16:40:42 +02:00
Yuri Roubinsky
1597045b09
Fixed typos in TextEdit::GutterType
enum
2021-07-19 11:18:54 +03:00
bruvzg
1ac7a126f1
Optimize LineEdit and TextEdit menu item generation.
2021-07-19 08:19:09 +03:00
reduz
6631f66c2a
Optimize StringName usage
...
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
reduz
a3fb76cd45
Create many types of popups on demand
...
* LineEdit popups created on demand.
* TextEdit popups created on demand.
* SpinSlider popups created on demand.
* ResourcePicker popups created on demand.
Improves editor responsiveness.
2021-07-17 10:57:14 -03:00
Rémi Verschelde
9a1ce8e6c3
LineEdit: Respect max_length
by truncating text to append
...
When appending text (either via `set_text()` or by pasting from clipboard),
if the input would make the `LineEdit` exceed its configured `max_length`,
the input text is truncated to fit. The discard part is passed as a parameter
in the `text_change_rejected` signal.
Fixes #33321 .
Fixes #41278 .
Also cleaned up unimplemented `max_chars` property in `TextEdit`.
Co-authored-by: Tony-Goat <70238376+Tony-Goat@users.noreply.github.com>
2021-07-06 18:03:03 +02:00
Paulb23
1a0cfc219b
Move indent management to CodeEdit
2021-06-20 20:00:54 +01:00
Lightning_A
e28fd07b2b
Rename instance()
->instantiate()
when it's a verb
2021-06-19 20:49:18 -06:00
Paulb23
ab49ea032c
Remove redundant keywords from TextEdit
2021-06-19 13:56:54 +01:00
Paulb23
5c618dd03d
Move code folding into CodeEdit and hide line hiding API
2021-06-01 17:07:01 +01:00
Rémi Verschelde
c5f237eaf8
Merge pull request #45393 from Paulb23/code_edit_autocomplete
2021-06-01 17:58:19 +02:00
Paulb23
c1b9971ad8
Move and expose Code Hint in CodeEdit
2021-06-01 15:38:45 +01:00
Paulb23
1c16673798
Move and expose AutoComplete in CodeEdit
2021-06-01 15:38:45 +01:00
Paulb23
5f66dfa371
Fix TextEdit selection drawing behing minimap
2021-06-01 13:09:39 +01:00
Rémi Verschelde
9bc2ba3b64
Merge pull request #48955 from Calinou/editor-tweak-property-hints
...
Tweak dozens of editor property hints for consistency
2021-05-25 11:44:43 +02:00
Hugo Locurcio
87f503310b
Tweak dozens of editor property hints for consistency
...
- Update Viewport MSAA property hints to match the currently
exposed values.
- Add some performance hints to property hints.
2021-05-25 02:50:35 +02:00
Hugo Locurcio
80f4e407b2
Add a keyboard shortcut to select the word under cursor in TextEdit
...
This also acts as a general-purpose "deselect" shortcut since pressing
it a second time will deselect text.
This is available both in the script editor and in TextEdit fields
in use, both in the editor and projects.
The Duplicate Line script editor shortcut was moved to Ctrl + Shift + D
since it conflicts with the new shortcut (Ctrl + D). The rationale for
doing so is that Duplicate Line is a less commonly used action, and
its behavior can be replicated by copying and pasting the current line
anyway. (With no selection active, the whole line will be copied.)
2021-05-22 23:47:43 +02:00
Paulb23
00e10a842f
Add custom background line colour to TextEdit and remove marked lines
2021-05-22 14:41:55 +01:00
Rémi Verschelde
510030fedc
Merge pull request #48528 from sent44/textedit
...
Expose get_total_visible_rows method to GDScript
2021-05-18 09:06:24 +02:00
Rémi Verschelde
92c04fa727
Fix build after mismatch between #48168 and #48599
2021-05-17 17:50:42 +02:00
Rémi Verschelde
b3e3f0e34c
Merge pull request #48599 from Calinou/textedit-alt-scroll-faster
...
Scroll faster when holding Alt in TextEdit (and script editor)
2021-05-17 17:38:18 +02:00
Rémi Verschelde
6c367f8e0d
Merge pull request #48168 from LightningAA/control-to-ctrl-4.0
2021-05-17 17:38:02 +02:00
Hugo Locurcio
cf1cf6c6eb
Scroll faster when holding Alt in TextEdit (and script editor)
...
This feature is inspired by a similar feature found in
Visual Studio Code.
2021-05-10 01:27:54 +02:00
kobewi
c3967c80ab
Display arrow cursor if text is not editable
2021-05-07 23:08:00 +02:00
Lightning_A
97fecd1b69
Rename "Control" key to "Ctrl" and add "_pressed" suffix to all InputEventWithModifiers properties/methods
2021-05-07 14:00:50 -06:00
sent44
7bb12b0d6d
Expose get_total_visible_rows as get_visible_line_count
2021-05-07 20:54:05 +07:00
Aaron Franke
0de9a7d803
Rename doubleclick
to double_click
2021-05-04 04:38:08 -04:00
Koala
2c64008718
Fix indent left line selection
2021-04-25 22:31:29 +01:00
Eric M
92900bd490
Fixed ui_accept (spacebar + return) accepting auto-completion options.
2021-04-15 00:38:28 +10:00
PouleyKetchoupp
9d87bcdcde
Fix TextEdit cursor update when adding or deleting text
...
Updating the viewport while setting the line index before the column is
set could wrongly cause the text to be scrolled down.
2021-04-06 22:17:16 -07:00
Rafał Mikrut
504bc5cc67
Fix crashes in *_input functions
2021-04-05 08:52:21 +02:00
Aaron Franke
10d7fccb54
Rename ButtonList enum and members to MouseButton
2021-03-23 07:13:23 -04:00
Rémi Verschelde
7e86b4c0e4
Merge pull request #46280 from floppyhammer/AdjustCompletionPanelPosition
...
Improve Completion Panel Position in Shader Editor
2021-03-21 00:17:35 +01:00
Anshul7sp1
91181c2086
Fixes small typos and grammar correction
2021-03-12 19:05:16 +05:30
Fabio Alessandrelli
eda5ae9d75
Add IME support checks in LineEdit/TextEdit.
...
Avoid spamming "IME is unsupported" when the DisplayServer report it as
such.
2021-03-11 23:04:22 +01:00
Rémi Verschelde
9b853d7a7b
Merge pull request #46572 from jmb462/fix-selection-error-after-commenting-or-indenting
...
Fix selection error after commenting or indenting text (Fix #46477 issue)
2021-03-07 17:03:54 +01:00
Rémi Verschelde
dc2207d8e8
Merge pull request #46627 from jmb462/fix-incorrect-autoindentation-in-multiline-brackets
...
Fix incorrect auto-indentation in multiline brackets (fix #46384 )
2021-03-07 16:55:32 +01:00
jmb462
f05d6f66b0
fix incorrect iauto-indentation in mutliline bracket ( fix #46384 )
2021-03-03 18:59:59 +01:00
jmb462
5c58d3731c
fix selection error after commenting or indenting text
2021-03-01 21:57:26 +01:00
Mateo Kuruk Miccino
a3db2fd46b
LineEdit: Now double click to select a word, and triple click to select all the content using the new TextServer
...
TextEdit: Update the method to search words with the new TextServer
2021-03-01 08:38:08 -03:00
floppyhammer
e927a9fef0
ImproveCompletionPanelPositionInShaderEditor
2021-02-22 11:08:51 +08:00
Eric M
49714b0963
Removed hardcoded shortcuts from /scene and converted to input actions
...
This removes hardcoded actions from things like LineEdit and TextEdit.
Previously, things like copy, paste, etc were all hardcoded to Ctrl+C, Ctrl+V, etc. They could not be changed. This allows the possibility of them being changed, by making them use the action map. This has the added benefit of greatly simplifying the input handling logic in those controls. The logic which was previously in a huge and hard to follow switch statement has been extracted to individual methods.
2021-02-18 16:22:51 +01:00
bruvzg
d78336c65e
[CTL] Add missing font outline drawing routines and theme constants.
2021-02-14 14:11:44 +02:00
Rémi Verschelde
7128f09a5d
Merge pull request #45858 from nekomatata/text-edit-style-content-margins
...
TextEdit respects content margin from StyleBox
2021-02-13 17:41:53 +01:00
Rémi Verschelde
48e7cced9f
Merge pull request #45881 from nekomatata/textedit-wrap-autoscroll
...
Fix TextEdit autoscroll with wrapped lines
2021-02-13 17:41:20 +01:00
PouleyKetchoupp
121030940c
Fix TextEdit autoscroll with wrapped lines
...
Index to find the last line wrap index was off by one, which prevented the first wrapped line to trigger autoscroll.
2021-02-12 13:44:46 -07:00
PouleyKetchoupp
100fc26f39
TextEdit respects content margin from StyleBox
...
Now TextEdit adjusts x & y offset according to the corresponding
StyleBox when in normal or read-only mode.
In order to handle bottom content margin, wrapped lines that are entirely outside the stylebox content area are not drawn.
2021-02-12 13:22:06 -07:00
reduz
28537d8c84
Fix LineEdit minimum width
...
-Changed theme setting name to make more sense of what it does
-Reduced amount of minimum characters, so minimum size is smaller.
2021-02-12 17:04:38 +01:00
bruvzg
6c9e608a34
Use get_char_size(' ') to calculate space width.
2021-02-12 15:06:50 +02:00
reduz
1aa2823fa3
Removed _change_notify
...
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-10 19:31:24 -03:00
Rafał Mikrut
7961a1dea3
Initialize class variables with default values in scene/ [2/2]
2021-02-09 18:24:36 +01:00
Oliver Dick
8d598693fc
TextEdit: When left mouse is pressed to place the cursor, do not immediately adjust the viewport when cursor_set_line is called, but afterwards on cursor_set_column (effectively when the cursor reached its final position)
...
Fixes #45770
2021-02-07 00:28:57 +01:00
Rémi Verschelde
264504d76d
Merge pull request #45110 from fmazan/completion-panel-positioning
...
Fixed completion and hint panel positioning in TextExit
2021-02-01 20:50:17 +01:00
Marcel Admiraal
8eb39f4e8b
Change themes *_color_* to *_*_color
...
Changed:
font_color_accel -> font_accelerator_color
font_color_bg -> font_unselected_color
font_color_disabled -> font_disabled_color
font_color_fg -> font_selected_color
font_color_hover -> font_hover_color
font_color_hover_pressed -> font_hover_pressed_color
font_color_pressed -> font_pressed_color
font_color_readonly -> font_readonly_color
font_color_selected -> font_selected_color
font_color_shadow -> font_shadow_color
font_color_uneditable -> font_uneditable_color
icon_color_disabled -> icon_disabled_color
icon_color_hover -> icon_hover_color
icon_color_hover_pressed -> icon_hover_pressed_color
icon_color_normal -> icon_normal_color
icon_color_pressed -> icon_pressed_color
Also includes:
font_outline_modulate -> font_outline_color
tab_fg -> tab_selected
tab_bg -> tab_unselected
2021-01-24 06:28:49 +00:00
Paulb23
7666c1caf3
Fix TextEdit drawing Caret and icons out of bounds
2021-01-14 22:19:57 +00:00
Filip
de9e1e4540
Fixed completion and hint panel positioning in TextExit
2021-01-11 22:05:38 +01:00
David Kennedy
715cf48f81
Makes script editor not draw non existent spaces.
...
Fixes #44775 Editor is incorrectly drawing non existent space.
2021-01-05 20:20:41 -03:00
Rémi Verschelde
8b7f582f22
Revert "solved ctrl + alt + special character Issue #6851 "
2021-01-05 14:41:35 +01:00
Rémi Verschelde
b5334d14f7
Update copyright statements to 2021
...
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
Rémi Verschelde
c4c211c3b7
Merge pull request #44605 from madmiraal/rename-control-margin
...
Rename Control margin to offset
2020-12-23 18:24:00 +01:00
Marcel Admiraal
4b8b803931
Rename Control margin to offset
2020-12-23 06:25:56 +00:00
bruvzg
1adea98d07
Use integer text position in scroll container, TextEdit and canvas editor, to ensure sharp text rendering.
...
Use integer font align/advance with any font scaling, to ensure sharp text rendering.
2020-12-21 07:49:27 +02:00
Sergey Minakov
efeb9e4d08
GUI: use cursor in TextEdit for non selected text.
2020-12-16 05:41:14 +03:00
Yuri Roubinsky
2d4ef1c193
Fixed mouse scrolling in TextEdit's
2020-12-11 12:51:10 +03:00
bruvzg
644f739660
Static analyzer fixes:
...
Removes unused code in OS.
Fixes return types.
Fixes few typos.
2020-12-09 10:17:53 +02:00
bruvzg
0ef483e9a9
[Complex Text Layouts] Performance optimizations.
2020-12-07 08:53:02 +02:00
bruvzg
a458e90179
[Complex Text Layouts] Adds missing Font::SPACING_* to the Label, LineEdit, TextEdit, TextLine and TextParagraph.
...
Fixes oversized editor control height (default editor spacing is negative) and control size changing when text is set.
2020-12-06 20:30:59 +02:00
bruvzg
3be31c4960
[Complex Text Layouts] Refactor TextEdit and CodeEdit controls.
2020-11-26 14:25:50 +02:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
...
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Sergey Minakov
8894c64e54
GUI: send cursor data from TextEdit
2020-11-15 16:03:21 +03:00
reduz
127458ed17
Reorganized core/ directory, it was too fatty already
...
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
Yuri Roubinsky
c3df61a602
Removed redundant line from TextEdit
...
introduced in https://github.com/godotengine/godot/pull/43026
2020-10-28 12:56:20 +03:00
Devin Curry
b9c35af15d
ScriptEditor: Fix line number gutter drag select
...
Fixes issue #42722
2020-10-25 12:13:54 -07:00
Yuri Roubinsky
4c65dc975c
Shows ColorRect in Color constants autocompletion
2020-10-23 19:03:50 +03:00
Dominik 'dreamsComeTrue' Jasiński
99c8a07919
TextEdit - fix valid bounds in 'set_line'. Fixes #41967
2020-10-17 17:59:15 +02:00
Paulb23
33ab9cd621
Move safe line color into editor
2020-09-10 20:35:28 +01:00
Paulb23
d18a90b8f0
Move ConnectionGutter to editor code_editor
2020-09-10 20:35:28 +01:00
Paulb23
7829fdc1d0
Add folding gutter to code_edit
2020-09-10 20:35:28 +01:00
Paulb23
4d7df24d46
Add main_gutter (breakpoints, bookmarks, execution lines) to code_edit
2020-09-10 20:35:28 +01:00
Paulb23
907f9f2a84
Changed line_edited_from(from) to lines_edit_from(from, to)
2020-09-10 20:35:28 +01:00
Paulb23
1353ed5e44
Added Line numbers to CodeEdit
2020-09-10 20:35:28 +01:00
Paulb23
c13d9eb6e5
Added gutter system to TextEdit
2020-09-10 20:35:28 +01:00
bruvzg
80b8eff6aa
[Complex Test Layouts] Change String
to use UTF-32 encoding on all platforms.
2020-09-03 19:56:24 +03:00
Cheeseness
1f159306ed
Skip indentation of empty lines when indenting a selection.
2020-08-14 23:53:34 +10:00
Rémi Verschelde
044b3d0ed3
Merge pull request #37769 from HellonLegs/master
...
solved ctrl + alt + special character Issue #6851
2020-08-14 13:03:07 +02:00
PouleyKetchoupp
095331fae4
Add option to disable virtual keyboard for TextEdit
...
Adding support for disabling virtual keyboard on mobile platforms, in
order to make it consistent with LineEdit.
It allows implementing a custom virtual keyboard.
2020-08-09 11:06:36 +02:00
Paulb23
51dd4792d7
Fix TextEdit line width cache not being updated
2020-07-29 21:42:38 +01:00
PouleyKetchoupp
8c05dadcff
Fix Return key events in LineEdit & TextEdit on Android
...
Depending on the device implementation, editor actions could be
received with different action ids or not at all for multi-line.
Added a parameter to virtual keyboards to properly handle single-line
and multi-line cases in all situations.
Single-line:
Input type set to text without multiline to make sure actions are sent.
IME options are set to DONE action to force action id consistency.
Multi-line:
Input type set to text and multiline to make sure enter triggers new lines.
Actions are disabled by the multiline flag, so '\n' characters are
handled in text changed callbacks.
2020-07-26 20:06:07 +02:00
Paulb23
bc4cee4458
Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighter
...
- Extacted all syntax highlighting code from text edit
- Removed enable syntax highlighting from text edit
- Added line_edited_from signal to text_edit
- Renamed get/set_syntax_highlighting to get/set_syntax_highlighter
- Added EditorSyntaxHighligher
2020-07-11 17:09:58 +01:00
Paulb23
2f1080be9b
Convert syntax highlighters into a resource
2020-07-11 15:26:58 +01:00
Juan Linietsky
438c380458
Add a separate application focus/in notification out from Window focus notification.
2020-06-30 10:40:06 -03:00
Stijn Hinlopen
5f7499beac
No longer scroll vertically when scrollbars are unavailable
2020-06-20 20:56:17 +02:00
PouleyKetchoupp
242b94af1a
TextEdit search returns a dictionary instead of Vector
...
Easier to use than accessing elements in a Vector using indices given by an enum.
Breaks compatibility on existing scripts using this functionality.
2020-05-16 23:46:14 +02:00
Marcus Brummer
b048eb05ad
Fixed text editor drawing if smooth scrolling is disabled.
...
Fixes #38778
2020-05-16 16:31:43 +02:00
Rémi Verschelde
0ee0fa42e6
Style: Enforce braces around if blocks and loops
...
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14 21:57:34 +02:00
Rémi Verschelde
07bc4e2f96
Style: Enforce separation line between function definitions
...
I couldn't find a tool that enforces it, so I went the manual route:
```
find -name "thirdparty" -prune \
-o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \
-o -name "*.glsl" > files
perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files)
misc/scripts/fix_style.sh -c
```
This adds a newline after all `}` on the first column, unless they
are followed by `#` (typically `#endif`). This leads to having lots
of places with two lines between function/class definitions, but
clang-format then fixes it as we enforce max one line of separation.
This doesn't fix potential occurrences of function definitions which
are indented (e.g. for a helper class defined in a .cpp), but it's
better than nothing. Also can't be made to run easily on CI/hooks so
we'll have to be careful with new code.
Part of #33027 .
2020-05-14 16:54:55 +02:00
Rémi Verschelde
0be6d925dc
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
...
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.
This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.
There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).
Part of #33027 .
2020-05-14 16:54:55 +02:00
Rémi Verschelde
6dfea347b0
Merge pull request #38655 from ice-blaze/minimap-shifted-selection-by-one-line#38532
...
Fix minimap selection offset
2020-05-12 18:02:21 +02:00
etienne.frank
72ab355945
Fix minimap selection offset
...
The minimap selection was shifted of 1 line too late.
2020-05-11 10:02:16 +02:00
Rémi Verschelde
e956e80c1f
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
...
Part of #33027 , also discussed in #29848 .
Enforcing the use of brackets even on single line statements would be
preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10 13:12:16 +02:00
Rémi Verschelde
d7b85fbaa1
Merge pull request #31086 from volzhs/underline
...
Use underline position and thickness value in font file
2020-05-07 21:18:41 +02:00
Rémi Verschelde
b62218bbac
Merge pull request #38385 from ThakeeNathees/method-bind-text_edit-set_line
...
method bind TextEdit::set_line() added
2020-05-07 13:43:34 +02:00
Rémi Verschelde
4d50f747d5
Merge pull request #37293 from Janglee123/ctrl-click-improvements
...
Improved go-to definition (Ctrl + Click)
2020-05-05 16:49:15 +02:00
janglee
be7a353c70
Improved go-to definition (Ctrl + Click)
...
Co-Authored-By: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
2020-05-05 10:46:12 +05:30
Thakee Nathees
b9acf1cedf
method bind TextEdit::set_line() added
2020-05-01 18:37:12 +05:30
Rémi Verschelde
f6e29addd4
Merge pull request #37846 from CaptainProton42/text-edit-undo-stack-size
...
Add "undo_max_stack_size" property to TextEdit
2020-04-29 15:56:08 +02:00
volzhs
9f1de2cfdd
Use underline position and thickness value in font file
2020-04-29 21:56:15 +09:00
John Wigg
4a82390aaf
Limit undo stack size
...
The stack size of the undo history of a TextEdit was not limited leading
to potential memory leaks when doing lots of operations on a TextEdit.
This commit adds the option gui/common/text_edit_undo_stack_max_size
to the project settings. The first element of the undo stack is popped
if the stack's size exceeds this value ensuring limited memory usage.
The default stack size setting is 1024.
Fixes #37838 .
2020-04-29 11:31:01 +02:00
Tomasz Chabora
9dfb231e00
Remove unneccessary increment in TextEdit
2020-04-29 00:16:48 +02:00
Rémi Verschelde
fdf58a5858
Rename InputFilter back to Input
...
It changed name as part of the DisplayServer and input refactoring
in #37317 , with the rationale that input no longer goes through the
main loop, so the previous Input singleton now only does filtering.
But the gains in consistency are quite limited in the renaming, and
it breaks compatibility for all scripts and tutorials that access
the Input singleton via the scripting language. A temporary option
was suggested to keep the scripting singleton named `Input` even if
its type is `InputFilter`, but that adds inconsistency and breaks C#.
Fixes godotengine/godot-proposals#639 .
Fixes #37319 .
Fixes #37690 .
2020-04-28 15:19:49 +02:00
HellonLegs
f412237f38
solved control + alt issue
2020-04-10 19:49:51 +02:00
lupoDharkael
95a1400a2a
Replace NULL with nullptr
2020-04-02 13:38:00 +02:00
Juan Linietsky
a6f3bc7c69
Renaming of servers for coherency.
...
VisualServer -> RenderingServer
PhysicsServer -> PhysicsServer3D
Physics2DServer -> PhysicsServer2D
NavigationServer -> NavigationServer3D
Navigation2DServer -> NavigationServer2D
Also renamed corresponding files.
2020-03-27 15:21:27 -03:00
bruvzg
15a9f94346
Add macOS DisplayServer implementation.
...
Change global menu to use Callable, add support for check items and submenus.
2020-03-26 16:24:05 +01:00