Commit Graph

3756 Commits

Author SHA1 Message Date
Max Hilbrunner 99ffbbfc44
Merge pull request #52339 from jmb462/fix-fold-function-with-comment-fail
Fix wrong folding behaviour of last block if containing comment
2021-09-07 20:40:33 +02:00
Max Hilbrunner da31873e2c
Merge pull request #52359 from williamd67/fix-autocomplete-merge
Fix incorrectly removing two characters by auto brace
2021-09-07 20:37:39 +02:00
Max Hilbrunner 06b4a48444
Merge pull request #52436 from daniel-mcclintock/fix-out-of-bounds-completion-crash
Fix crash during completion lookback
2021-09-07 19:25:40 +02:00
Gilles Roudière 88c3e3180a
Merge pull request #52050 from nobuyukinyuu/bind-get-tab-idx-at-point-40
Bind TabContainer::get_tab_idx_at_point() to ClassDB
2021-09-07 11:09:35 +02:00
Anilforextra a1f616dcfc Use builtin Vector2 functions for calculation of angles.
.
2021-09-07 08:30:26 +05:45
Paulb23 9785167b39 Fix brace placement with space auto indent 2021-09-06 17:10:39 +01:00
Gilles Roudière 1f97d57384
Merge pull request #35859 from Calinou/minimap-add-hover-pressed-feedback
Add visual feedback when hovering or dragging the code minimap grabber
2021-09-06 16:22:36 +02:00
daniel-mcclintock 8a8c172b93 Fix crash during completion lookback 2021-09-06 23:10:06 +10:00
Awkor 3aa2a7fc18 Prevent editing properties managed by parent container 2021-09-05 23:23:53 +02:00
jmb462 752e2bcee0 Fix comment causes content of folded methods to not hide 2021-09-05 12:30:27 +02:00
Silc 'Tokage' Renew facf8f1883 Apply set_read_only() to child classes of EditorProperty elements 2021-09-05 18:22:17 +09: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
William Deurwaarder b92347c220 Fix incorrectly removing two characters by auto brace
In some situations when there were no braces auto brace still removed two
characters.  This has been fixed by adding a test that a brace is found.
2021-09-03 00:33:50 +02:00
William Deurwaarder b54b0bc580 Fix documentation viewer to scroll to end
Extra `line separation` height was not taken into account when the offset for
the different paragraphs (lines) was calculated.
2021-09-02 22:11:14 +02:00
Paulb23 dd0988f027 Fix getting deliminator start over empty lines and blank start keys 2021-09-02 18:22:49 +01:00
Michael Alexsander ee4b0108e0 Make some enhancements to the POT generation 2021-09-02 11:12:54 -03:00
Paulb23 ce064348fa Add CodeEdit breakpoint unit tests 2021-09-01 16:46:04 +01:00
Gilles Roudière ace19bd4c6 Cache TreeItem minimum size for performance. 2021-09-01 16:26:41 +02:00
Gilles Roudière c97afc033f
Merge pull request #38722 from KoBeWi/proposition
Add offset for TextureProgress progress texture
2021-09-01 16:20:05 +02:00
kobewi e78ee616f7 Add offset for TextureProgress progress texture 2021-09-01 14:39:08 +02:00
kleonc 3311a5b593 TabContainer Fix drawing current tab when it's disabled 2021-09-01 03:59:45 +02:00
menip 4f4c9a5f57 Make Color Picker, Menu Button, Option Button consider camera position scale for popup position. 2021-08-30 08:42:33 -07:00
Juan Linietsky 72bf79186e
Merge pull request #30391 from KoBeWi/hiding_children
Add support for internal nodes
2021-08-29 19:36:30 -03:00
nobuyuki_nyuu 65d83cc99b Bind TabContainer::get_tab_idx_at_point() to ClassDB 2021-08-29 09:10:44 -05:00
Michael Alexsander 565ba91d28
Merge pull request #51906 from requizm/fix/49077
Fix tooltips don't appear for PopupMenus
2021-08-28 15:43:02 +00: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
LeaoLuciano c50c5b9bef LinkButton's text now is automatically translated 2021-08-27 20:11:58 -03:00
Max Hilbrunner 701195937d
Merge pull request #52096 from kleonc/tree-item-drag-drop-drawing
Tree Fix line rendering when drag and dropping TreeItem
2021-08-27 20:55:37 +02:00
Ellen Poe 3598d300cb Do all audio mixing in the AudioServer 2021-08-27 10:41:57 -07: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
Haoyu Qiu eba7265a1c Fix misspelled "overriden"
In recent GDVIRTUAL PR and SkeletonModification3DJiggle doc.
2021-08-26 01:44:01 +08:00
kleonc d35ef5fab0 Tree Fix line rendering when drag and dropping TreeItem 2021-08-25 13:29:54 +02:00
JFonS c334989e00
Merge pull request #51821 from Calinou/builtin-shaders-add-comments
Add comments at the top of each built-in shader to ease debugging
2021-08-25 11:37:57 +02:00
William Deurwaarder d875706e01 RichTextLabel returns member (Array) for custom effects for Editor
As RichTextLabel returned a copy of the member (Vector) the editor was notified
that the value had changed which caused the dropdown menu to be immediately
closed after opening.

The fix is to return the member (Array) in stead of a copy which is the same
instance and thereby does not notify the editor that the value has changed.
2021-08-24 22:02:24 +02:00
Haoyu Qiu d12cceadd2 Make RichTextLabel honour default cursor shape property 2021-08-24 22:07:42 +08: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
bruvzg 54345f11fb Fix label outline overlaps. 2021-08-23 14:13:13 +03: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
Jummit 856d0b52e5 Fix GraphEdit connection colors 2021-08-22 21:09:16 +02:00
Michael Alexsander 2f8a58ad46
Merge pull request #51886 from Geometror/fix-layout-editor-file-dialog
Fix ItemList layout (+EditorFileDialog)
2021-08-22 16:47:11 +00:00
K. S. Ernest (iFire) Lee 7cbf5a547f
Merge pull request #51700 from Geometror/fix-color-picker
Reimplement ColorPicker presets
2021-08-22 08:23:09 -07:00
K. S. Ernest (iFire) Lee 51ec46e10f
Merge pull request #51975 from Jummit/consistent-graphedit-connections
Make GraphEdit connections consistent on zoom
2021-08-22 07:37:26 -07: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
Jummit 7c1181116f Make GraphEdit connections consistent on zoom 2021-08-22 11:08:37 +02:00
K. S. Ernest (iFire) Lee 51800eebc6
Merge pull request #51965 from theoway/fix_node_arranger_origin_bug
Fixes position offset of node groups set by arrange_nodes() in GraphEdit
2021-08-22 01:52:30 -07:00
Umang Kalra aee3de7b79 Fixes position offset of node groups set by arrange_nodes() in GraphEdit 2021-08-22 03:57:58 +05:30
Jummit e9ef6f9815 Refactor GraphEdit connections
Remove duplicate bezier code and use Curve instead.
Add an overridable method for retrieving the points of a connection line, which
makes it posible to create custom connections lines.
2021-08-21 22:15:26 +02:00
Anilforextra c86db8b710 Remove redundant assignments.
Use used_in_transfer instead of used_in_compute twice.
2021-08-21 19:20:07 +05:45
Hendrik Brucker 72e49eadec Fix ItemList layout (+EditorFileDialog) 2021-08-21 00:22:09 +02:00
Menderes 31face36e7 Fix line_separation working incorrectly in find_click of RichTextLabel
Apply suggestions from code review

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2021-08-21 00:59:44 +03:00
Hugo Locurcio 2daef0400a
Merge pull request #51866 from requizm/fix/49455
Fix `line_separation` working incorrectly in `RichTextLabel`
2021-08-20 23:24:42 +02:00
requizm 6f3d8fa228 Fix tooltip message working incorrectly in PopupMenu
fix
2021-08-20 23:06:00 +03:00
requizm 39b90802d0 Fix line_separation constant working incorrectly in RichTextLabel 2021-08-20 23:03:13 +03:00
jmb462 54de7114c5 Add missing SNAME macro optimization for StringName in some functions 2021-08-20 14:50:24 +02:00
Rémi Verschelde 93dac1c7db
Merge pull request #51804 from ThreeRhinosInAnElephantCostume/fixundoredo 2021-08-19 17:49:01 +02:00
ThreeRhinosInAnElephantCostume 0aa13ecd30 fixed popup_menu buttons getting triggered by lmb press instead of release. 2021-08-19 15:56:33 +02:00
Michael Alexsander 9819be7562 Minor tweaks/fixes for the Command Palette 2021-08-18 13:12:14 -03:00
Rémi Verschelde a031579286
Merge pull request #50752 from Phischermen/indeterminate_checkmark_api
Added icons and API for indeterminate checkmarks for the Tree class.
2021-08-18 10:31:06 +02:00
Hugo Locurcio a139e58f8c
Add comments at the top of each built-in shader to ease debugging
When a shader error is printed about a built-in shader, the origin
of the shader will now be recognizable immediately by looking at
the top of the printed shader code.
2021-08-18 03:09:22 +02:00
Hendrik Brucker ff9901f51e Reimplement ColorPicker presets 2021-08-18 02:09:48 +02:00
skysphr e27ab2708f Added increment_pressed and decrement_pressed icons to scrollbars 2021-08-17 22:09:29 +03:00
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
Rémi Verschelde c4e03672e8
Merge pull request #51760 from requizm/fix/deleteallselection
Deletion occurs when all text is selected
2021-08-17 09:58:57 +02: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
Kevin Fischer 75866c81e7 Added icons and API for indeterminate checkmarks for the Tree class. 2021-08-16 10:13:06 -07:00
Rémi Verschelde cfdac0973c
Merge pull request #51698 from Paulb23/text-editor-settings
Reorganise text editor settings
2021-08-16 18:48:58 +02:00
Paulb23 bcfc591f86 Reorganise text editor settings 2021-08-16 17:18:49 +01:00
Haoyu Qiu 6ca476b406 Fix MenuButton not emitting about_to_popup signal 2021-08-16 20:53:10 +08: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 2edc47caea
Merge pull request #51249 from kleonc/tab_container-fix-disconnecting-errors
TabContainer: Fix error on removing top-level Control child, Remove _get_tab method
2021-08-16 10:35:20 +02:00
Rémi Verschelde 966559c3bd
Merge pull request #51512 from Bhu1-V/PR/cmd-fix
command palette improvements
2021-08-15 16:01:49 +02:00
Bhuvan Vemula a0205e4f34 command palette improvements 2021-08-15 11:40:44 +05:30
Rémi Verschelde 14a2e59875
Merge pull request #51642 from akien-mga/cleanup-use_single_quotes 2021-08-13 21:49:06 +02:00
Rémi Verschelde 761eb7e06a
Merge pull request #51585 from Paulb23/theme-update-optimisation 2021-08-13 21:33:36 +02:00
Rémi Verschelde 84461a5c91
Merge pull request #50609 from bruvzg/te_block_caret
[TextEdit] Improve block/insert caret drawing.
2021-08-13 21:33:02 +02:00
Rémi Verschelde 81512a3732
Style: Cleanup code using `text_editor/completion/use_single_quotes` 2021-08-13 21:27:57 +02:00
Paulb23 273374957b Only update TextEdit text cache when dirty 2021-08-13 17:47:53 +01:00
Paulb23 b6f5912174 Move CodeEdit theme overrides into EditorTheme 2021-08-13 17:47:53 +01:00
Yuri Roubinsky 6e87ff28ed Fix incorrect completion popup size of `CodeEdit` 2021-08-13 19:34:18 +03:00
bruvzg 00381db2e7 [TextEdit] Improve block/insert caret drawing. 2021-08-13 19:28:47 +03:00
Paulb23 b73983340d Add bulk theme overrides to Control 2021-08-13 16:41:36 +01:00
Aaron Franke eb4902a455
Fix some unnecessary includes 2021-08-13 00:27:38 -05:00
Paulb23 a736fb8ce9 Fix breakpoint toggle signal not firing when expected 2021-08-12 14:47:10 +01:00
Rémi Verschelde a695a6764e
Merge pull request #50371 from Paulb23/text_edit_cleanup 2021-08-12 15:30:12 +02: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
Yuri Roubinsky 810c30dc09
Merge pull request #51517 from Chaosus/precise_graphedit_port_handling
Better port handling connection for `GraphEdit`
2021-08-12 11:40:52 +03: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
Yuri Roubinsky 61904d56ea Better port handling connection for `GraphEdit` 2021-08-12 09:09:24 +03: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
Rémi Verschelde c00303ff55
Merge pull request #47378 from aaronfranke/use-input-enums
Use key enum instead of plain integers for input code
2021-08-11 11:20:45 +02:00
Rémi Verschelde 2c88e1c15d
Merge pull request #51178 from Geometror/layout-options-textline-textparagraph
Various text layout improvements (TextLine, TextParagraph, Label, TextServer)
2021-08-11 07:51:57 +02:00
Hendrik Brucker 403f4902d0 Various text layout improvements (TextLine, TextParagraph, Label, TextServer) 2021-08-11 00:09:48 +02:00
Aaron Franke fa3a32a2d6
Use Key enum instead of plain integers 2021-08-10 16:26:55 -05:00
K. S. Ernest (iFire) Lee 18bd0fee5a
Merge pull request #49343 from theoway/node_auto_arrangement_graph_edit
Node Auto Arrangement in GraphEdit/VisualScript/VisualShader
2021-08-10 15:42:04 -04:00
Umang Kalra 12fc3f1eef Automatic arrangement of nodes in VisualScript/VisualShaders editors
This PR and commit adds the functionality to arrange nodes in VisualScript/VisualShader editor. The layout generated by this 
feature is compact, with minimum crossings between connections
& uniform horizontal & vertical gaps between the nodes. 

This work has been sponsored by GSoC '21.

Full list of additions/changes:
• Added arrange_nodes() method in GraphEdit module.
    • This method computes new positions for all the selected
      nodes by forming blocks and compressing them.
      The nodes are moved to these new positions. 
    • Adding this method to GraphEdit makes it available for 
      use in VisualScript/VisualShaders editors and its other
      subclasses. 
• Button with an icon has been added to call arrange_nodes() in GraphEdit. 
    • This button is inherited by VisualScript/VisualShaders editors
       to invoke the method.
• Undo/redo is functional with this method.
    • By using signals in arrange_nodes(), position changes are registered 
       in undo/redo stack of the subclass that is using the method. 
• Metadata of the method has been updated in ClassDB
• Method description has been added to class reference of GraphEdit
2021-08-11 00:44:28 +05:30
Rémi Verschelde dce488d8f7
Merge pull request #49417 from Bhu1-V/gsoc-cmd-plt
Command Palette For Godot
2021-08-10 18:55:22 +02:00
Rémi Verschelde 536950f9f3
Merge pull request #21922 from aaronfranke/double
Some work on double-precision support
2021-08-10 07:41:46 +02:00
Nathan Franke b57b8453b1
Follow-Up Add SNames to get theme icon 2021-08-09 17:50:26 -05:00
Aaron Franke 430ad75963
Some work on double support 2021-08-09 17:43:48 -05:00
Aaron Franke 84f720966c
Use doubles for time in many other places 2021-08-09 14:05:42 -05:00
Rémi Verschelde 0a38d5c8f7
Merge pull request #43158 from nathanfranke/fix-gradient-and-draw-tile
Fix Gradient and Color Picker checkerboard, Fix tile parameter for CanvasItem.draw_texture_rect
2021-08-09 16:47:58 +02:00
Bhuvan Vemula a0a019a998 Added EditorCommandPalette 2021-08-09 17:41:50 +05:30
bruvzg 7c3c5603d0 [Text Server] Improve object (image/table) inline alignment. 2021-08-08 22:35:47 +03:00
Nathan Franke 051234e84e
Fix Gradient, Color Picker BG, Fix CanvasItem::draw_texture_rect p_tile 2021-08-07 16:40:50 -05:00
Paulb23 738b0fdae5 Redraw on item list custom bg/fg colour change 2021-08-07 12:08:46 +01:00
Rémi Verschelde de2c2be19b
Shortcut: Rename `shortcut` property to `event`
Having a property which has the same name as its class leads to confusing
situations (e.g. `BaseButton` has a `shortcut` property of type `Shortcut`
which has a `shortcut` property of type `InputEvent`).

Also renames `is_event` to `matches_event`, and `is_valid` to `has_valid_event`
to better reflect what the methods check.
2021-08-05 13:48:43 +02:00
kleonc fd483c729f TabContainer: Fix error on removing top-level Control child, Remove _get_tab method 2021-08-04 21:13:10 +02:00
Rémi Verschelde e0b560fb6f
Merge pull request #51177 from kleonc/tab_container-drop-tab-index-fix
TabContainer Fix moving dropped tab to incorrect child index
2021-08-03 09:34:51 +02:00
Hugo Locurcio 3ea3addc79
Improve CodeEdit's callhint highlight visibility
This makes the currently edited parameter more visible in the
script editor's code completion hint.
2021-08-02 23:16:16 +02:00
Rémi Verschelde c620ede327
Merge pull request #50122 from Paulb23/code_edit_auto_brace_completion 2021-08-02 20:44:39 +02:00
kleonc a5a4532378 TabContainer Fix moving dropped tab at incorrect child index 2021-08-02 14:15:51 +02:00
Gilles Roudière ad8b5cd5a4 Implements TileMap layers and move TileSetPlugins's functions to the TileMap node instead 2021-08-02 13:54:39 +02:00
Paulb23 809a32c045 Clean up and complete CodeEdit inspector and docs 2021-08-01 12:24:19 +01: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
Yuri Sizov 7137ebdaf6 Make theme item overrides more obvious in the Inspector 2021-07-31 23:46:24 +03:00
Michael Alexsander b70b9c4ede Fix "Custom *" theme sections being inside "Auto Translate" 2021-07-30 13:55:07 -03:00
Michael Alexsander 94a64d557e Add `auto_translate` toggle for automatic translation 2021-07-29 18:30:34 -03:00
Michael Alexsander 79fc188fc4 Multiple cosmetic fixes for embedded windows 2021-07-27 23:55:06 -03:00
Michael Alexsander 478b6d6a13 Make `switch_on_hover` work on embedded windows 2021-07-26 14:45:26 -03:00
Rémi Verschelde 738205d923
Merge pull request #50835 from bruvzg/optimize_is_rtl
Optimise `is_layout_rtl`.
2021-07-25 12:55:46 +02:00
Rémi Verschelde ff0b5f8fa1
Merge pull request #50809 from akien-mga/iterators-const-references 2021-07-25 12:52:58 +02:00
Rémi Verschelde ac3322b0af
Use const references where possible for List range iterators 2021-07-25 12:22:25 +02:00
luz paz 3564c16cb8
Fix various typos with codespell
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
2021-07-25 11:21:51 +02:00
bruvzg 9bb03e60d9 Optimise `is_layout_rtl` by caching its return value. 2021-07-25 10:33:00 +03:00
Aaron Franke 4e6efd1b07
Use C++ iterators for Lists in many situations 2021-07-23 17:38:28 -04:00
jfons 944b5ee639 Fix popup submenu in single-window mode
The internal processing code only works for OS windows, since it takes
the mouse position relative to the window and not the viewport. Now we
make sure it's not called in single-window mode.
2021-07-23 19:45:30 +02:00
Michael Alexsander a690cd9251 Make `MenuButton`'s `switch_on_hover` work again 2021-07-22 14:27:30 -03:00
PouleyKetchoupp 0b4037fe64 Fix logic for Popup closing when parent is focused
The member popped_up is used to avoid closing a Popup before it had a
chance to be focused. It wasn't reset properly when the popup is hidden,
causing the Popup to close right after showing in some random cases
(spotted on X11, might not happen on Windows).
2021-07-21 12:03:03 -07:00
Rémi Verschelde 693f9b4e20
Merge pull request #50655 from JFonS/sname_opt
Editor StringName and Viewport optimizations
2021-07-20 21:49:32 +02:00
Joan Fons a6adb58493 Editor StringName and Viewport optimizations
* Added explicit return type to the SNAME macro.
* Add some extra SNAME usages.
* Change some ClassDB methods to use const StringName & arguments.
* Cache the Window parent in Control because it's used in
  is_layout_rtl(), which is called often.
* Only enable internal processing for viewports that need it.
* Change CanvasItem::group to be a StringName because it's only used as
  that.
2021-07-20 20:35:41 +02:00
Rémi Verschelde 394191c02f
Merge pull request #50605 from Calinou/tweak-shader-code-style
Use C++11 raw literals for shader code to improve readability
2021-07-20 10:05:13 +02: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
Hugo Locurcio abc38b8d66
Use C++11 raw literals for shader code to improve readability
In files that have lots of branching, `\t` was replaced with a
tab character instead.
2021-07-19 08:19:50 +02: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 29c56f33a4
Merge pull request #48502 from KoBeWi/visual_button
Add set_pressed_no_signal method to BaseButton
2021-07-14 15:05:50 +02:00
kobewi f4b361dd15 Add header theme type variations to labels 2021-07-13 15:42:09 +02:00
Rémi Verschelde b44b277f6f
Merge pull request #50169 from pycbouh/theme-type-variations 2021-07-13 15:13:00 +02:00
kobewi 50c63bdc4c Add set_pressed_no_signal method to BaseButton 2021-07-13 13:57:26 +02:00
Rémi Verschelde aab6dc301c
Merge pull request #50086 from Geometror/label-improve-layout-options
Improvements to Label's layout options
2021-07-13 13:10:42 +02:00
Rémi Verschelde 3adb129a54
Merge pull request #50135 from KoBeWi/🌲.update()
Update Tree when modified
2021-07-13 09:03:40 +02:00
Yuri Sizov 4ee0e6ddf5 Add type variations to Theme 2021-07-13 02:26:28 +03:00
Francois Belair 94a464f555 Add cache to color picker for presets
This prevents loading from the project metadata more than once,
significantly saving performance with nodes that have color pickers.
2021-07-07 14:17:44 -04:00
Rémi Verschelde e4c940ee6a
Merge pull request #50208 from kleonc/accept_dialog-remove_button
Add AcceptDialog::remove_button method
2021-07-07 09:12:03 +02:00
Hugo Locurcio ce941397e5
Merge pull request #49890 from voxelv/fix_tree_range_click_timeout_crash_46648
Avoid using a nullptr root in Tree._range_click_timeout().
2021-07-07 01:21:32 +02:00
kleonc 714e6a595d Add AcceptDialog::remove_button method 2021-07-06 18:14:20 +02: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
reduz f4379cbc82 Clean up Tree
Fixes some problems introduced by #49917

* Tree used minimum size as a stretch ratio, so it forced a minimum size of 1.
* Minimum size redone, stretch ratio moved to a separate setting
* Fitting to contents was enforced, this is more intuitive, but in many situations this is undesired.
* Added a clip content option for situations where fit to contents does not apply.
* Icon would scroll with the item, making it invislbe if the item is too long.
* Made icon always appear to the right (or left if RTL is enabled) of the visible item space.
2021-07-04 13:13:53 -03:00
Hendrik Brucker 56a8d3f30c Improvements to Label's layout options
- Added options to trim the text in case it overruns
- Added more autowrap modes
- Improved line breaking, which ignores trailing spaces
2021-07-04 16:43:55 +02:00
kobewi 9569729888 Update Tree when modified 2021-07-04 15:28:39 +02:00
Rémi Verschelde a525e77740
Merge pull request #49468 from menip/FixGetScreenPosition
Fix Control::get_screen_position() not considering viewport scale
2021-07-03 14:29:20 +02:00
Michael Alexsander e4d56e4c62 Make invisible `SplitContainer` nodes correctly calculate the minimal size of its children 2021-07-02 14:39:50 -03:00
reduz 75688772b3 Fix editor suffixes and degrees conversion
* Functions to convert to/from degrees are all gone. Conversion is done by the editor.
* Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees.
* Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m"
* In general, can add suffixes for EditorSpinSlider
Not covered by this PR, will have to be addressed by future ones:

* Ability to switch radians/degrees in the inspector for angle properties (if actually wanted).
* Animations previously made will most likely break, need to add a way to make old ones compatible.
* Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes.
* Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
2021-06-30 12:38:25 -03:00
voxelv f17f3f8830 Avoid using a nullptr root in Tree._range_click_timeout().
Fixes #46648
2021-06-30 00:27:44 -07:00
Rémi Verschelde 90982d60cb
Merge pull request #37181 from jitspoe/master.button_icon_alignment 2021-06-29 13:31:53 +02:00
Rémi Verschelde 9c6d7f840f
Merge pull request #49970 from trollodel/graphnode_fix_port_position
Fix GraphNode port position when the control has the Expand flag
2021-06-29 12:41:58 +02:00
jitspoe e192eb05db
Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Fixes #11380.
2021-06-29 12:31:40 +02:00
Rémi Verschelde 8fb7a9f023
Merge pull request #49719 from LightningAA/rename-node-is-ancestor-of
Rename `is_a_parent_of()` to `is_ancestor_of()`
2021-06-29 12:07:25 +02:00
Gilles Roudière c5b65236d8 Fixes crash in case no column in tree is expanded and has minimum size 2021-06-29 11:27:09 +02:00
trollodel 07c3b40aa2 Fix GraphNode port position when the control has the Expand flag 2021-06-28 18:52:13 +02:00
Rémi Verschelde 89f270f4c5
Merge pull request #49917 from groud/tree_disable_scroll
Allow disabling scrolling in Tree and implement horizontal scrolling
2021-06-28 18:41:23 +02:00
Gilles Roudière d7d32ced5b Implement Tree's internal minimum width calculation 2021-06-28 15:54:31 +02:00
reduz b1d15c51bc Implement native extension system
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
2021-06-25 17:32:45 -03:00
Gilles Roudière b2dddc3c82 Allow disabling scrolling in Tree 2021-06-25 21:19:46 +02:00
Rémi Verschelde c8444c3ee0
Merge pull request #49908 from KoBeWi/📎🔫
Remove clips_input() method and use clip_content
2021-06-25 16:53:00 +02:00
kobewi 452e10ba7b Remove clips_input() method and use clip_content 2021-06-25 15:46:37 +02:00
Eric M cfbdaa2eb7 Fix RichTextLabel custom_effects export to be properly filtered in the Editor 2021-06-25 22:58:46 +10:00
Rémi Verschelde b9bf01a9b0
Merge pull request #49798 from pycbouh/tree-lines-items-draw-order
Make relationship lines draw on top of `TreeItem`s
2021-06-21 20:54:51 +02:00
Lightning_A 899e5f8685 Rename `is_a_parent_of()` to `is_ancestor_of()` 2021-06-21 08:39:28 -06:00
Yuri Sizov 483f8ffbe4 Make relationship lines draw on top of TreeItems 2021-06-21 16:46:43 +03:00
Haoyu Qiu a57a51750a Update min size on Label::set_text 2021-06-21 19:54:40 +08:00
Rémi Verschelde 9da7f06900
Merge pull request #49665 from Paulb23/code_edit_indent
Move indentation into CodeEdit
2021-06-21 09:13:15 +02:00
floppyhammer b08dc1ea35 Improve nine patch behavior of TextureProgressBar 2021-06-21 10:07:49 +08:00
Paulb23 1a0cfc219b Move indent management to CodeEdit 2021-06-20 20:00:54 +01:00
Rémi Verschelde 953de68cfc
Merge pull request #35608 from golfinq/master 2021-06-20 18:51:15 +02:00
Aaron Franke 0ce49800ac
Use mouse and joypad enums instead of plain integers
Also MIDIMessage
2021-06-20 11:54:24 -04:00
golfinq 0c1d10d1ca Rich Text Label now allows for foreground colors and background colors 2021-06-20 11:29:37 -04:00
Lightning_A e28fd07b2b Rename `instance()`->`instantiate()` when it's a verb 2021-06-19 20:49:18 -06:00
Rémi Verschelde 60dcc4f39c
Merge pull request #49742 from Paulb23/remove_keywords_textedit
Remove redundant keywords from TextEdit
2021-06-20 00:39:18 +02:00
Rémi Verschelde 4effadc0ba
Merge pull request #48696 from madmiraal/fix-48692
Fix `InputMap.action_erase_event()` failing to erase events correctly.
2021-06-20 00:29:42 +02:00
Paulb23 ab49ea032c Remove redundant keywords from TextEdit 2021-06-19 13:56:54 +01:00
Aaron Franke 8b692e8872
Add PROPERTY_USAGE_NONE and use it 2021-06-17 19:10:26 -04:00
Lightning_A 13ba788b63 Scrollwheel (w/o ctrl) to zoom, mouse warping when panning
Now uses Ctrl + Scrollwheel for vertical scrolling
Ctrl + Shift Scrollwheel for horizontal scrolling
Also converts some macros to constants
2021-06-17 08:21:32 -06:00
Rémi Verschelde 74850b3511
Merge pull request #38261 from pycbouh/adjust-graph-edit-zoom-levels
Make zoom limits and step adjustable in `GraphEdit`
2021-06-17 12:12:34 +02:00
Rémi Verschelde bb4c464fec
Merge pull request #49258 from megalobyte/editor-fix
Fixes for documentation search
2021-06-17 02:25:41 +02:00
Rémi Verschelde 341cb8da31
Merge pull request #49238 from Paulb23/code_edit_code_folding
Move code folding into CodeEdit and hide line hiding API
2021-06-16 20:11:39 +02:00
Gregory Basile 8ab13f8ace Documentation search fixes
Updates rich_text_label so that the built-in documentation can be searched
Previously, it would only find the first result and would not select other results
Renames "_entered" functions to "_submitted"
2021-06-16 09:43:34 -07:00
Haoyu Qiu bf5f13e6a0 Fix typo in CodeEdit methods 2021-06-16 22:15:29 +08:00
Yuri Sizov 0a82a669e3 Make zoom limits and step adjustable in GraphEdit 2021-06-16 16:39:18 +03:00
Rémi Verschelde 1129439f09
Merge pull request #49011 from KoBeWi/totally_h
Fix valign with stylebox borders
2021-06-15 16:25:49 +02:00
Rémi Verschelde e479abeb98
Merge pull request #49437 from Calinou/graphedit-allow-higher-lower-zoom-values
Allow higher and lower maximum zoom values in GraphEdit
2021-06-15 15:18:17 +02:00
Rémi Verschelde 7efde449b2
Merge pull request #49508 from kleonc/texture_button-updating-min_size
TextureButton Update min size on any texture change
2021-06-15 15:01:16 +02:00
Rémi Verschelde 5da885e1f7
Merge pull request #49582 from timothyqiu/codeedit-update-cache
Update cache after clearing delimiters in CodeEdit
2021-06-15 00:05:59 +02:00
Rémi Verschelde 16027e7cf4
Merge pull request #49572 from azagaya/fix_grabber_area
Fix vertical slider grabber_area height calculation
2021-06-14 19:22:25 +02:00
Haoyu Qiu a1db7088ed Update cache after clearing delimiters in CodeEdit 2021-06-14 21:23:01 +08:00
azagaya be8667944d Fix vertical slider grabber_area height calculation 2021-06-13 11:23:26 -03:00
Rémi Verschelde ef7974f3d9
Merge pull request #49526 from Chaosus/fix_textureregion_errors 2021-06-13 14:44:50 +02:00
Yuri Roubinsky 19afaa0203 Fixed a bunch of connection errors in TextureEditorPlugin 2021-06-12 08:01:02 +03:00
kobewi 7ff135b015 Consistently prefix bound virtual methods with _ 2021-06-12 00:55:52 +02:00
Pedro J. Estébanez 04688b92ff Rename Reference to RefCounted 2021-06-11 18:48:42 +02:00
Rémi Verschelde 9e328bb5b7
Core: Move DirAccess and FileAccess to `core/io`
File handling APIs are typically considered part of I/O, and we did have most
`FileAccess` implementations in `core/io` already.
2021-06-11 14:52:39 +02:00
kleonc 6c3c269f24 TextureButton Update min size on any texture change 2021-06-11 13:39:51 +02:00
Marcel Admiraal f38fe846f4 Move default values from definition to declaration in GraphEdit 2021-06-10 17:22:56 +01:00
menip ae324444ba Fix Control::get_screen_position() not considering viewport scale 2021-06-09 12:05:04 -07:00
Rémi Verschelde fbe53a7064
Merge pull request #49155 from winterpixelgames/button-pressed-during-button-up-signal
Emit button_up signal after setting pressed to false.
2021-06-09 13:46:39 +02:00
Rémi Verschelde 0cbb19a246
Merge pull request #47280 from winterpixelgames/focus_doesnt_change_hover
Dont Change Hovering during Control Focus Events
2021-06-09 09:18:26 +02:00
Hugo Locurcio 74c584472c
Allow higher and lower maximum zoom values in GraphEdit
Low zoom values result in unreadable text, but it can still be
useful for previewing purposes.

Eventually, characters could be replaced by rectangles at very low
zoom levels to improve the visual appearance.
2021-06-08 20:33:07 +02:00
Rémi Verschelde 3041becc64
Merge pull request #49307 from pycbouh/tabs-update-on-theme-changes
Make sure `Tabs` reflect theme changes
2021-06-07 13:29:34 +02:00
Rémi Verschelde c1c76850cb
Style: Cleanup uses of double spaces between words
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
2021-06-07 11:03:08 +02:00
Yuri Sizov f7da0698d0 Make sure Tabs reflect theme changes 2021-06-04 16:22:09 +03:00
Aaron Franke bc5c10e0f8
Use a more specific type for AcceptDialog register_text_enter 2021-06-03 19:57:03 -04:00
Rémi Verschelde d7f1718742
Merge pull request #46482 from KoBeWi/size_warning_the_sequel
Warn about changing size only when it's relevant
2021-06-03 11:21:33 +02:00
reduz d95bc3fa67 Use bold fonts in editor
* Labels are now bold
* Categories in trees are bold
* Main editor buttons are bold
* Fixed section folding arrows in inspector
2021-06-02 12:47:57 -03: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 680dc9e81a Add comment and string tracking to CodeEdit 2021-06-01 15:38:45 +01:00
Rémi Verschelde cb4635f260
Merge pull request #49241 from floppyhammer/fix-tree-item-dragging
Make tree item dragging not affected by touch dragging
2021-06-01 15:29:35 +02:00
floppyhammer d202cf6899 fix-tree-item-dragging 2021-06-01 20:46:17 +08:00
Paulb23 5f66dfa371 Fix TextEdit selection drawing behing minimap 2021-06-01 13:09:39 +01:00
Rémi Verschelde 4c1d555b9a
Merge pull request #48770 from LightningAA/scrollcontainer-ensure-item-visible-4.0
ScrollContainer: Expose `_ensure_focused_visible` to the scripting API and rename it to `ensure_control_visible`
2021-06-01 11:01:40 +02:00
Lightning_A 6d5b5ba89f ScrollContainer: Expose `_ensure_focused_visible` to the API
Was renamed to `ensure_control_visible`
2021-05-31 17:14:57 -10:00
Jason Knight 4c6ad8abcd Emit button_up signal after setting pressed to false. 2021-05-27 15:06:53 -06:00
Eric M 471f7f1a75 Fixed implementation of RTL remove_line(), which fixed issues in EditorLog.
There were some issues in RichTextLabel `remove_line()` method, where items were not correctly removed, and line decremending for items in later lines was not correctly done.
This also fixed several headaches with EditorLog, which relied on the `remove_line()` method for collapsing of duplicate messages. The fix to RTL also fixed the issues with EditorLog.

Fixes #49030
2021-05-26 15:08:13 +10:00
Yuri Sizov 231daa6025 Fix disappearing relationship lines in Tree when item is out of view 2021-05-26 00:44:04 +03:00
Rémi Verschelde 6a64a98039
Merge pull request #48546 from pycbouh/tree-highlight-selected-relationships 2021-05-25 19:42:55 +02:00
Rémi Verschelde f1abfbbeb1
Merge pull request #48837 from Soupstraw/shader-pi
Added constants PI, TAU and E to the shader language
2021-05-25 18:07:15 +02:00
Yuri Sizov 9c92e9d849 Add highlight to the relationship lines of selected Tree items 2021-05-25 18:56:06 +03: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
Joosep Jääger 16567321ba Added constants PI, TAU and E to the shader language 2021-05-25 12:15:08 +03: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
kobewi 47108202c6 Fix valign with stylebox borders 2021-05-23 22:39:38 +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 4219a4cb6f
Fix typos with codespell
Using codespell 2.0.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2021-05-20 12:38:56 +02:00
Marcel Admiraal 7104229a85 Fix InputMap.action_erase_event() failing to erase events correctly. 2021-05-19 11:43:02 +01:00
Rémi Verschelde 66dac8bda0
Merge pull request #47544 from pycbouh/control-expose-theme-type 2021-05-18 10:52:51 +02:00
Rémi Verschelde 95bb7207f3
Merge pull request #46773 from trollodel/TreeItem+
Improve TreeItem API and allow to move nodes
2021-05-18 10:49:45 +02: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
trollodel bca0d36fe6 Improve TreeItem API and allow to move nodes 2021-05-17 22:06:46 +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
Yuri Sizov 9eaa139c1f Add theme_custom_type property to Control and Window 2021-05-17 17:20:42 +03:00
Rémi Verschelde 9cc17a8439
Merge pull request #48690 from KoBeWi/static_shader_picker
Create ColorPicker shaders statically
2021-05-17 14:51:12 +02:00
kobewi 877dbda209 Create ColorPicker shaders statically 2021-05-17 11:39:20 +02:00
Rémi Verschelde 2dadcde361
Merge pull request #48760 from timothyqiu/tree-crash
Fix Tree::get_column_at_position crash
2021-05-16 23:05:37 +02:00
Rémi Verschelde 8e7b17429e
Merge pull request #48650 from AnilBK/graph-node-setters
Added GraphNode missing setters.
2021-05-16 17:37:12 +02:00
Haoyu Qiu c8efcf81d2 Fix Tree::get_column_at_position crash 2021-05-16 19:42:28 +08:00
Eoin O'Neill c4f976b38b Attempt to fix rich text label effects processing even when
the node is invisible.

ISSUE:47687
2021-05-13 19:59:08 -07:00
Anilforextra 2c3c3b2829 -Added missing setters to GraphNode.
-Improved various GraphNode documentation.
2021-05-13 17:45:07 +05:45
Andrii Doroshenko (Xrayez) c9a3d13bd9 Fix variable names for "usage" flags in `Control::_get_property_list()`
Renamed incorrect "hint" variable names to "usage" in
`_get_property_list()`, as "hint" implies one of the PROPERTY_HINT_*
values, which is not the case here.
2021-05-13 12:51:38 +03:00
Hugo Locurcio 1e063595c3
Implement reverting to the old color when clicking it in ColorPicker 2021-05-10 18:13:33 +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
Rémi Verschelde 726715b1e1
Merge pull request #48579 from Calinou/tree-fix-bg-focus-section-overlap
Fix Tree's background focus outline displaying behind section headings
2021-05-09 14:40:50 +02:00
Rémi Verschelde 73e5f6f673
Merge pull request #48539 from KoBeWi/cant_edit_this
Display arrow cursor if text is not editable
2021-05-09 14:18:56 +02:00
Hugo Locurcio 63897f16b1
Fix Tree's background focus outline displaying behind section headings 2021-05-09 13:27:20 +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
Rémi Verschelde c3f7465b7e
Merge pull request #48535 from groud/tiles_squashed
TileSet and TileMap rework (squashed)
2021-05-07 20:46:06 +02:00
Gilles Roudière a3dda2df85 Rework the TileSet resource and TileMap nodes:
- Move most properties from TileMap to TileSet,
- Make TileSet more flexible, supporting more feature (several
  collision layers, etc...),
- Fusion both the TileMap and TileSet editor,
- Implement TileSetSources, and thus a new way to index tiles in the TileSet,
- Rework the TileSet and TileMap editors completely,
- Implement an editor zoom widget (and use it in several places)
2021-05-07 18:06:17 +02:00
sent44 7bb12b0d6d Expose get_total_visible_rows as get_visible_line_count 2021-05-07 20:54:05 +07:00
besh81 e7e7aa7d12
Fixed bug in tab_container with hidden tabs
Fix a bug that occour when there are hidden tabs in tab_container. 
The visualization isn't correct due to missing values in tab_widths array.
2021-05-07 13:01:27 +02:00
Rémi Verschelde 94f6fb6d24
Merge pull request #34840 from Calinou/colorpicker-display-old-color
Display the old color in ColorPicker for easier comparison
2021-05-06 23:55:47 +02:00
Rémi Verschelde 89e6f6ca2e
Merge pull request #48500 from groud/add_buttongroup_pressed_signal
Adds a pressed signal to ButtonGroup
2021-05-06 23:20:33 +02:00
Rémi Verschelde 6e621441ca
Merge pull request #45607 from Calinou/improve-editor-theme
Improve the editor theme
2021-05-06 16:45:07 +02:00
Gilles Roudière 323f176915 Adds a pressed signal to ButtonGroup 2021-05-06 12:16:27 +02:00
Rémi Verschelde 605e33cf39
Merge pull request #44831 from gongpha/dont-update-tree-if-selected
Blocking updating in SceneTreeEditor when an item was selected
2021-05-06 08:45:41 +02:00
Hugo Locurcio 9e1bfe2e9e
Display the old color in ColorPicker for easier comparison
This only affects ColorPickerButton nodes that spawn a ColorPicker,
not standalone ColorPickers.

This partially addresses #7366.
2021-05-06 03:08:05 +02:00
Eric M 87ffb213c8 Fixed issues with Editor Log after recent changes
Fixed #48446, Fixed #48443
2021-05-05 00:25:14 +10:00
Rémi Verschelde 4e7ca279fc
Merge pull request #47855 from aaronfranke/doubleclick
Rename `doubleclick` to `double_click`
2021-05-04 13:12:17 +02:00
Rémi Verschelde 56316b27ab
Merge pull request #41321 from EricEzaM/output-log-enhancements 2021-05-04 12:59:02 +02:00
Rémi Verschelde 9a8ef54b5a
Merge pull request #48008 from LightningAA/scrollcontainer-hide-scrollbars-4.0
Add the ability to hide `ScrollContainer`'s scrollbars
2021-05-04 12:58:12 +02:00
Rémi Verschelde ab09a62249
Merge pull request #35893 from KoBeWi/a_tree_pr
Calculate __focus_rect when TreeItem is focused
2021-05-04 12:57:43 +02:00
Aaron Franke 0de9a7d803
Rename `doubleclick` to `double_click` 2021-05-04 04:38:08 -04:00
Eric M 77fd9e4dd3 Improve output log performance.
Added method to create a new line in RichTextLabel without adding an ItemNewline to the previous line. Previously, removing a line then adding a newline was adding unnecessary ItemNewline instances to the previous line, significantly the remove_line method.
2021-05-04 16:21:33 +10:00
Rémi Verschelde a36c084f75
Merge pull request #48198 from KoalasinTraffic/fix-indent-left-line-selection
Fix start line selection for indent_selected_lines_left
2021-05-03 20:26:16 +02:00
Yuri Sizov 980cf73bbc Fix autocompletion for Control's Theme properties 2021-04-30 20:47:01 +03:00
Tomasz Chabora 2035992a07 Calculate __focus_rect when TreeItem is focused 2021-04-28 18:09:19 +02:00
Lightning_A bb6bdcee1a Add the ability to hide scrollcontainer's scrollbars 2021-04-28 09:28:31 -06:00
EricEzaM de5387ab82 Fixed issues with LineEdit Delete Word & Backspace Word.
Backspace word was deleting all text before the cursor, and delete word was no updating until another action was performed on the LineEdit (in order to update it)
2021-04-28 17:15:28 +10:00
Hugo Locurcio 60b70c77e0
Improve the editor theme
The editor theme now makes use of rounded corners and less borders
to follow modern visual trends.

The default theme's colors were also tweaked to make the blue hue
more subtle (similar to the Arc theme, which was removed as a
consequence). The Alien theme was replaced by a Breeze Dark theme,
which should blend in well with the KDE theme.
2021-04-27 22:38:26 +02:00
Koala 2c64008718 Fix indent left line selection 2021-04-25 22:31:29 +01:00
Marcel Admiraal 86822b187e Rename LineEdit caret_* properties getters and setters to match property 2021-04-17 12:41:23 +01:00
Rémi Verschelde 916bff471a
Merge pull request #47728 from ray90514/bug#47562
Fix LineEdit undo behaves strangely
2021-04-16 10:28:57 +02:00
Eric M 92900bd490 Fixed ui_accept (spacebar + return) accepting auto-completion options. 2021-04-15 00:38:28 +10:00
Rémi Verschelde 5535cf5c22
Merge pull request #47689 from nekomatata/textedit-fix-cursor-update
Fix TextEdit cursor update when adding or deleting text
2021-04-14 08:25:34 +02:00
Nathan Franke 2a8c59c171
Use Array for node configuration warnings
Previously, the warnings were passed as a string and delimitation of which were hard coded at each implementation.
2021-04-11 23:25:38 -05:00
Rémi Verschelde 8b6e3d6375
Merge pull request #46340 from gongpha/various-color-picker
Add Various ColorPicker shapes
2021-04-10 13:29:50 +02:00
ray90514 7501c7f48a Fix LineEdit undo behaves strangely 2021-04-08 23:47:54 +08:00
Kongfa Waroros ce126d4b79 Fix ColorPicker's RGB bars are show in RAW mode and other 2021-04-07 18:39:37 +07: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
Kongfa Waroros 6294507acb Add Various ColorPicker shapes 2021-04-06 22:48:03 +07:00
Lightning_A d514949755 Make scrollwheel zoom based on mouse position 2021-04-05 23:00:56 -06:00
Rafał Mikrut 504bc5cc67 Fix crashes in *_input functions 2021-04-05 08:52:21 +02:00
Kevin Smith a7d12920f2 Make ColorPicker button text and tooltips appear in exported projects 2021-04-01 11:06:24 -04:00
Rémi Verschelde 5d0cc7c15f Merge pull request #47252 from KoBeWi/themecide
Add methods to remove theme overrides
2021-03-31 20:52:19 +02:00
Rémi Verschelde 995ce158dd
Merge pull request #46702 from HaSa1002/fix-min-size-resize
Fix removal of `rect_min_size` not triggering resize
2021-03-30 20:46:04 +02:00
Gilles Roudière 898a2a7cf3 Implement Tabs minimum size 2021-03-30 16:11:35 +02:00
bruvzg 9f73abfa9f
RichTextLabel: On custom effect change, parse bbcode only if it's enabled and not empty. 2021-03-30 10:20:39 +03:00
Rémi Verschelde c6ff6707a4
Merge pull request #47457 from bruvzg/rtl_spacing
RichTextLabel: fix font extra spacing and style box size usage.
2021-03-29 17:07:38 +02:00
bruvzg 9f4893c70b
Use extra font spacing in the RichTextLabel line height calculation, and stylebox size in the minimum size calculation. 2021-03-29 17:26:53 +03:00
Rémi Verschelde bc29f4bca1
Merge pull request #47435 from madmiraal/rename-texture-get_data
Rename Texture.get_data() to get_image()
2021-03-29 10:41:22 +02:00
Rémi Verschelde b253aca53f
Merge pull request #47351 from volzhs/graphedit-boxselection
Fix drawing boxselection on GraphEdit
2021-03-28 20:56:07 +02:00
Marcel Admiraal fd30c36985 Rename Texture.get_data() to get_image() 2021-03-28 13:00:46 +01:00
Rémi Verschelde c6b9ceadf2
Merge pull request #47163 from bruvzg/macos_sandbox_file_dialog
FileDialog: add Back/Forward buttons, add message for inaccessible folders.
2021-03-26 00:00:25 +01:00
volzhs 990c88f24c Fix typo 'previus_selected' 2021-03-25 20:08:38 +09:00
volzhs 1bdc14acea Fix drawing boxselection on GraphEdit 2021-03-25 13:21:34 +09:00
Johannes c8868fcaab
Fix removal of `rect_min_size` not triggering resize
fixes #46672
2021-03-23 23:06:50 +01:00
Rémi Verschelde 036a50e8b9
Merge pull request #37755 from KoBeWi/check_down
Add disabled theme icons for CheckBox
2021-03-23 13:06:02 +01:00
Aaron Franke 10d7fccb54
Rename ButtonList enum and members to MouseButton 2021-03-23 07:13:23 -04:00
bruvzg b202a0dd2a
FileDialog: add Back/Forward buttons, add message for inaccessible folders. 2021-03-23 08:03:41 +02:00
Jason Knight edcbe88389 Removed the alteration of status.hovering during Focus Enter and Focus Exit events. This is incorrect and not fully implemented, and results in inconsistency in the UI and in the hovering variable. 2021-03-22 18:47:59 -06:00
kobewi 5950482b86 Remove the clearing behavior from add_override 2021-03-23 00:55:02 +01:00
kobewi ecff5bc42f Add methods to remove theme overrides 2021-03-23 00:51:16 +01:00
Rémi Verschelde 6fa24729ae
Merge pull request #45571 from aaronfranke/node2d-real_t
Use real_t in 2D nodes
2021-03-23 00:10:53 +01:00
Rémi Verschelde 4bacb86f56
Merge pull request #46735 from fabriceci/fix-dialog-translation
Fix translations update in window & Dialogs (AcceptDialog/ConfirmationDialog/FileDialog) (Fix 39320, 39258 &  45887)
2021-03-23 00:03:31 +01:00
Rémi Verschelde bb8340302c
Merge pull request #47180 from YeldhamDev/popupmenu_width_fix
Fix wrong width with PopupMenus on first opening in the editor
2021-03-22 23:51:57 +01:00
Juan Linietsky 97a3a66220 Improved 3D Scene Importer
* Added option for importers to show an Advanced settings dialog
* Created advanced settings dialog for Scene Importer
* Cleaned up importers (remove many old/unused options)
* Added the ability to customize every node, material, mesh and animation individually
* Saving to animations and meshes to files is now a manual process, making it more predictable
* Added the ability for materials to be replaced by external files (or to be made external, up to you).
* When doubleclicking an impoted scene in the filesystem dock, it automatically shows the import settings instead of asking to open it.

WARNING: Lightmap UV unwrap is not working, it needs to be re-made.
2021-03-22 12:16:40 -03: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
jmb462 045f55ec00 Prevent resizing minimap bigger than GraphEdit (Fix #47189)
Minimap size couldn't be resized back after been resized bigger than GraphEdit cause the grabber was out of GraphEdit.
This commit prevents resizing minimap bigger than GraphEdit and fix this issue.
2021-03-20 15:09:50 +01:00
Michael Alexsander 1bece0da7c Fix wrong width with PopupMenus on first opening in the editor 2021-03-20 00:37:09 -03:00
Aaron Franke 6811a45b59
Use real_t in non-physics 2D nodes 2021-03-19 13:04:45 -04:00
Rémi Verschelde 3b380f4cdc
Merge pull request #47156 from LightningAA/graph-edit-scroll-zoom-4.0
Enable zooming in graph_edit with Ctrl + scrollwheel
2021-03-19 09:19:41 +01:00
Lightning_A d752482e7a Enable zooming graph_edit with scrollwheel 2021-03-18 18:34:29 -06:00
Justin Ho fa6fd3a2d0
Check for null pointer in get_column_width(0) 2021-03-18 10:25:55 -07:00
Rémi Verschelde 888051889e
Merge pull request #46674 from cmd410/fix-tab-container
Fix TabContainer _get_tab_width for localized node names
2021-03-17 21:05:20 +01:00
Rémi Verschelde e57f6e2cca
Merge pull request #47050 from jmb462/fix-bbcode-tables-overlap-with-bottom-text
Fix BBCode tables overlap with bottom text (Fix #47012)
2021-03-17 17:54:01 +01:00
Rémi Verschelde 4c56fcd6cd
Merge pull request #39810 from christinoleo/master
Make GraphNode handle children with EXPAND flag
2021-03-16 18:10:08 +01:00
jmb462 25af026d9e Fix BBCode tables overlap with bottom text
New row height was added only if all the column was full.
2021-03-16 10:45:16 +01:00
Rémi Verschelde 6eef187a81
Merge pull request #46993 from gongpha/check-if-edit-called-via-editor
Check if _edit_set_position and _edit_set_rect was used outside an editor
2021-03-15 08:57:45 +01:00
Kongfa Waroros b80406770f Check if _edit_set_position and _edit_set_rect was used outside an editor 2021-03-15 14:34:24 +07:00
Yuri Sizov 0c41411fe8 Fix stale tab names in TabContainer 2021-03-14 22:54:46 +03:00
bruvzg 48698ccb9f
Fix RTL BBCode range regression and selection issues. 2021-03-14 19:54:48 +02:00
Pop0p c8538153b0 trims_whitespaces_when_creating_folder_windows
When creating a Windows folder via a Godot's dialog, the extra spaces are not removed which causes problems with Windows. We now remove leading and trailing whitespace when creating a dir.
2021-03-13 17:09:25 +01:00
fabriceci 697c594cd8 fix translation not updating in ConfirmationDialog (and Window by inheritance) 2021-03-12 17:51:33 +01:00
Anshul7sp1 91181c2086 Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
Rémi Verschelde 08767a16fd
Merge pull request #46913 from Faless/js/4.x_vk
[HTML5] Experimental (opt-in) virtual keyboard support.
2021-03-12 09:48:34 +01:00
Rémi Verschelde 02ae0afe63
Merge pull request #46699 from sps1112/fix-control.edit_set_state-crash
Add size and dictionary check in Control::_edit_set_state() to fix crash
2021-03-12 09:46:03 +01:00
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
Kongfa Waroros d295d53b4a Add interpolation bar on each channel in ColorPicker 2021-03-09 14:58:19 +07:00
Leonardo Christino 5d574d980d Make GraphNode handle children with EXPAND flag 2021-03-08 13:52:19 -04:00
jmb462 3bd44f3cb6 fix Label visible_characters bad precision 2021-03-07 23:18:16 +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
Rémi Verschelde c487f1e854
Merge pull request #46643 from YeldhamDev/hide_all_the_things
Hide more options of disabled properties
2021-03-07 15:12:15 +01:00
kobewi 83f6c6b360 Release mouse when SpinBox leaves scene tree 2021-03-06 22:22:24 +01:00
sps1112 05f5a43cad Fix Control._edit_set_state crash 2021-03-05 21:52:34 +05:30
Crystal Melting Dot 89baf02fb6 Fix TabContainer _get_tab_width
Now it translates node name before calculating tab width
2021-03-04 22:10:28 +03:00
Rémi Verschelde 372b1b8f68 Revert "Add size check in Control._edit_set_state to prevent crash"
This reverts commit ef1d58f034.
2021-03-04 12:06:58 +01:00
Rémi Verschelde dd1881ae19
Merge pull request #46524 from kuruk-mm/lineedit_triple_click
LineEdit: Now double click to select a word, and triple click to sele…
2021-03-04 10:18:20 +01:00
Rémi Verschelde 8ff25ffb78
Merge pull request #46620 from sps1112/fix-control.edit_set_state-crash
Add size check in Control::_edit_set_state()  to fix crash
2021-03-04 07:46:16 +01:00
sps1112 ef1d58f034 Add size check in Control._edit_set_state to prevent crash 2021-03-04 10:55:42 +05:30
Michael Alexsander 4be282a269 Hide more options of disabled properties 2021-03-03 20:51:35 -03:00
kobewi 5cd5722f6a Deselect column only if belongs to deselected item 2021-03-03 19:39:29 +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
Rémi Verschelde 09b5d6886f
Merge pull request #46563 from pycbouh/graph-edit-hide-minimap-properly
Properly hide GraphEdit's minimap
2021-03-01 17:26:50 +01:00
Yuri Sizov 2ff1c48e0c Properly hide GraphEdit's minimap 2021-03-01 18:19:48 +03:00
Rémi Verschelde ec7053259b
Merge pull request #41437 from KoBeWi/put_it_here
Allow to create a node at specific position
2021-03-01 15:48:53 +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
kobewi 5e4ab20296 Warn about changing size only when it's relevant 2021-02-27 19:24:59 +01:00
Yuri Roubinsky e3131adc1c Fix GraphEdit connects when graph is zoomed/unzoomed 2021-02-27 20:26:35 +03:00
Tomasz Chabora 8df22a03c4 Allow to create a node at specific position 2021-02-26 14:40:28 +01:00
Rémi Verschelde 494e1cb148
Merge pull request #38918 from EricEzaM/fix-slider-focus-on-scroll-input
Fixed issue with slider focus and scroll input
2021-02-25 18:09:04 +01:00
Eric M d91e915d79 Fixed 'nonexistent action' errors spammed at startup on OSX 2021-02-24 23:16:22 +10:00
reduz d6a9cff8b7 Add preview Sun and Environment
* Adds both a preview sun and preview environment to the 3D editor.
* They are valid as long as a DirectionalLight3D and WorldEnvironment are not in the scene.
* If any is added to the scene, the respective preview is disabled.
* Changed WorldEnvironment to better handle multiple node versions.
* Added a function in SceneTree to get the first node in a group.
* Fixed button minimum size to also consider font height if no text is there, this broke with the TextSever PR.
2021-02-22 16:56:29 -03:00
Rémi Verschelde cb29e6c49c
Merge pull request #45994 from Jummit/expose-edit-selected
Expose edit_selected in Tree
2021-02-22 16:29:03 +01:00
Jummit 13fb24cb6f expose edit_selected in Tree 2021-02-22 15:50:21 +01:00
floppyhammer e927a9fef0 ImproveCompletionPanelPositionInShaderEditor 2021-02-22 11:08:51 +08:00
Rémi Verschelde 14f6f92a72
Merge pull request #46230 from gongpha/keep-hue-value
Keep Hue value when Saturation or Value is zero
2021-02-21 23:36:19 +01:00
kleonc d7bb7cad47 Label::set_lines_skipped Fail if passed a negative value 2021-02-21 14:23:57 +01:00
Tomasz Chabora 84da090a69 Warn when setting Control size inside ready() 2021-02-19 18:32:24 +01:00
Kongfa Waroros 27749711b2 Keep Hue value when Saturation or Value is zero 2021-02-19 23:53:00 +07: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
reduz 64140eaf42 Reorganize Project Settings
-Advanced Settings toggle also hides advanced properties when disabled
-Simplified Advanced Bar (errors were just plain redundant)
-Reorganized rendering quality settings.
-Reorganized miscelaneous settings for clean up.
2021-02-18 11:23:34 -03:00
Kongfa Waroros 7c6646c8ac Avoid signal methods in ColorPicker to access the tree when it isn't in the tree 2021-02-18 20:30:22 +07:00
Rémi Verschelde bab06c9d06
Merge pull request #46081 from YeldhamDev/popupmenu_fixes
Fix various small issues with PopupMenu
2021-02-16 13:59:30 +01:00
Rémi Verschelde ba8b95a2a1
Merge pull request #46088 from groud/fix_line_edit
Fix minimum_character_width in LineEdit
2021-02-16 11:11:03 +01:00
Rémi Verschelde 584240b0d7
Merge pull request #45899 from nekomatata/richtextlabel-get-selection
Expose RichTextLabel selection to script
2021-02-16 10:56:37 +01:00
Gilles Roudière 737dd5ee8c Fix minimum_character_width in LineEdit 2021-02-16 10:51:17 +01:00
Michael Alexsander 96fa719026 Fix various small issues with PopupMenu 2021-02-16 01:12:08 -03:00
kobewi 282639d653 Select TreeItem if none is selected 2021-02-16 01:36:16 +01:00
PouleyKetchoupp 4586357dde Expose RichTextLabel selection to script
Expose existing get_selection_text and add methods to get the current
selection index from and index to.
2021-02-15 17:26:58 -07:00
Eric M 26c29cc0d7 Improved PopupMenu visuals. Removed x-y margin, made it 'padding' instead. 2021-02-15 15:45:25 +10:00
kleonc a4afdd4a77 RichTextLabel::add_image Fail if passed image has no area 2021-02-14 16:09:55 +01:00
Rémi Verschelde cdfd3ffe15
Merge pull request #44747 from bruvzg/missing_outlines
[CTL] Add missing theme properties for outlines, fix underline scaling, and RTL cell padding.
2021-02-14 13:49:14 +01:00
bruvzg 1f60ac1e08
[CTL] Fix RichTextLabel cell horizontal padding. 2021-02-14 14:11:49 +02:00
bruvzg d78336c65e
[CTL] Add missing font outline drawing routines and theme constants. 2021-02-14 14:11:44 +02:00
Rémi Verschelde 6fb1ed2bca
Merge pull request #45942 from YeldhamDev/label_height_empty
Keep Label's min height when empty
2021-02-14 13:10:54 +01: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
Michael Alexsander 85dc55a82c Keep Label's min height when empty 2021-02-12 21:13:49 -03: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
Rémi Verschelde 604188c411
Merge pull request #45870 from gongpha/graphedit-connection-update
Update GraphEdit when GraphNode's slot is updated
2021-02-11 13:11:50 +01: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
Kongfa Waroros fe6c8d48e6 Update GraphEdit when GraphNode's slot is updated 2021-02-11 01:07:54 +07:00
Rafał Mikrut 7961a1dea3 Initialize class variables with default values in scene/ [2/2] 2021-02-09 18:24:36 +01:00
Rémi Verschelde df9c98e107
Merge pull request #45812 from RandomShaper/keep_selected_visible
Keep selected node visible after filter change
2021-02-09 10:43:21 +01:00
Rémi Verschelde 59924a09e8
Merge pull request #45806 from KoBeWi/forest_of_deselection
Set selected Tree item to null when deselected
2021-02-08 22:22:52 +01:00
Kanabenki 03d4ebf129 Update ColorPicker controls when entering tree 2021-02-08 19:25:50 +01:00
Pedro J. Estébanez 177b804f30 Expose Tree::scroll_to_item() 2021-02-08 02:19:13 +01:00
kobewi ef8ec59f2f Set selected Tree item to null when deselected
Co-authored-by: Brody Eller <wviper3@gmail.com>
2021-02-07 22:12:52 +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 69152af45d doc: Don't bind argument names with p_ prefix
This prefix is used in the C++ codebase, not in the scripting API.
2021-02-04 14:45:06 +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
Rémi Verschelde c4811ab525
Merge pull request #45549 from flyingpimonster/graphnode-icon
GraphNode: Add properties for custom icons
2021-02-01 20:49:19 +01:00
bruvzg c75923498e
Use integer coordinates for the font glyphs rendering. 2021-01-31 20:10:50 +02:00
James Westman 08e1453d7f
GraphNode: Add properties for custom icons
Add properties for the slots' icon textures, so they can be set easily
in the editor.

Fixes #45487.
2021-01-28 21:22:25 -06:00
Volka ae2cf8eb38 Fix unintended SpinBox mouse capture 2021-01-26 21:17:31 -05:00
Rémi Verschelde eda5f4ea31
Merge pull request #44349 from KoBeWi/drop_the_data!
Allow to override drop data in LineEdit
2021-01-26 16:03:07 +01:00
Rémi Verschelde b84729f848
Merge pull request #45220 from Calinou/range-ratio-equal-min-max-no-error
Make Range return 1.0 ratio if minimum and maximum values are equal
2021-01-26 15:24:58 +01:00
Rémi Verschelde bdfc7a6b40
Merge pull request #45369 from naithar/fix/line_edit_clear-4.0
[4.0] [GUI] Fix LineEdit clearing
2021-01-26 12:30:34 +01:00
Sergey Minakov ba6aa76992 [GUI] Enforce virtual keyboard redisplay on clear 2021-01-26 13:17:20 +03:00
Nils Reid 3e94c23fa5 Exposed find_next_valid_focus and find_prev_valid_focus. 2021-01-26 08:19:20 +01:00
Rémi Verschelde 6cba658934
Merge pull request #44194 from madmiraal/fix-font_selected_color
Change themes font_color_selected to font_selected_color
2021-01-26 00:03:40 +01:00
Yuri Sizov 9d9d0f0bc9 Fix minimap capturing events and improve its theme
Add an editor setting for minimap opacity in visual editors
2021-01-25 21:49:07 +03: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
bruvzg e4651a44ab
RichTextLabel: adds separate `get_total_x_count`, `get_visible_x_count` and `scroll_to_x` functions for wrapped lines and paragraphs (newlines). 2021-01-18 11:26:55 +02:00
Hugo Locurcio 44204ec32d
Make Range return 1.0 ratio if minimum and maximum values are equal
An error message is also no longer printed.
This matches the behavior found in most UI frameworks where having
equal minimum and maximum values is considered acceptable.

This closes #43179.
2021-01-15 23:14:50 +01:00
Rémi Verschelde 1ffe3ed47a
Merge pull request #33685 from Scony/improve-item-lists-add-item-methods
ItemList's add_(icon_)item method returns id of added item
2021-01-15 16:24:20 +01:00
Rémi Verschelde 86e2d4c593
Merge pull request #45196 from Paulb23/text_edit_draw_behind_gutter
Fix TextEdit drawing Caret and icons out of bounds
2021-01-15 16:08:45 +01:00
Rémi Verschelde 274db4aa64
Merge pull request #45149 from pycbouh/ge-disconnect-crash
Prevent signal disconnection attempts on invalid references
2021-01-15 12:48:56 +01:00
Rémi Verschelde 64ba83a096
Merge pull request #44870 from alexpech12/fix-rich-text-label-set-visible-characters
Keep RichTextLabel visible character properties in sync
2021-01-15 00:59:26 +01:00
Paulb23 7666c1caf3 Fix TextEdit drawing Caret and icons out of bounds 2021-01-14 22:19:57 +00:00
Yuri Sizov 5e8e9fc601 Prevent signal disconnection attempts on invalid references 2021-01-14 15:19:32 +03:00
Alexander Pech 463e2002ab Keep RichTextLabel visible character properties in sync
The RichTextLabel class is inconsistent in how it updates the
visible_characters and percent_visible properties when either is changed.

To keep both properties consistent, update percent_visible when setting the
visible_characters property.
For both properties, when setting one, notify change for the other.

Docs updated for member set_visible_characters on RichTextLabel class.
2021-01-14 21:32:41 +11:00
Rafał Mikrut 56734f44e5 Fix errors when removing non Control node from TabContainer 2021-01-12 10:48:18 +01:00
Filip de9e1e4540 Fixed completion and hint panel positioning in TextExit 2021-01-11 22:05:38 +01:00
Rémi Verschelde 50f7314329
RichTextLabel: Fix build after #35505
Should have rebased before merging.
2021-01-08 09:18:19 +01:00
Rémi Verschelde 9349a5507f
Merge pull request #35505 from dalexeev/rtl_colors
Unified named colors in RichTextLabel
2021-01-08 09:03:55 +01:00
gongpha bb867d41ee Blocking updating in SceneTreeEditor when editing an item 2021-01-06 14:46:48 +07: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 321a4d5e79
Merge pull request #44906 from EricEzaM/PR/popup-menu-fix-not-matching-button-size
Fixed PopupMenu not matching parent MenuButton/OptionButton width
2021-01-04 14:47:32 +01:00
Eric M 056fcf3d75 Fixed PopupMenu not matching parent MenuButton/OptionButton width 2021-01-04 18:47:09 +10:00
Eric M e5aaa7d890 Fixed hover highlight style rect of items being cut off.
This was caused by an incorrect calculation of the height of each item when determining the minimum size, plus a few things which were leftover after the PopupMenu rework.
2021-01-04 18:35:40 +10: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
Rémi Verschelde 3a9777cb3f
Merge pull request #44724 from Chaosus/popup_separator
Added optional id parameter to `PopupMenu::add_separator`
2020-12-29 17:39:44 +01:00
Rémi Verschelde 09212fba1e
Fix missed renamings from empty() to is_empty()
Those were missed in #44401 or added by later PRs.
2020-12-29 09:55:07 +01:00
Rémi Verschelde c6e9d912e1
Merge pull request #44781 from mrushyendra/scroll_container_ready_fix
Allow ScrollBar params of a ScrollContainer to be modified from _ready()
2020-12-29 09:44:08 +01:00
Rémi Verschelde 652bdd573e
Merge pull request #43691 from bruvzg/ctl_dropcap
[Complex Text Layouts] Add drop-cap support to RTL.
2020-12-29 09:14:46 +01:00
Maganty Rushyendra b8610dbd31 Allow ScrollBar params of a ScrollContainer to be modified in _ready()
Initializes the sizes of the ScrollContainer and its associated
ScrollBars in _ready() to allow scroll values to be set in GDScript
initially.
2020-12-29 13:02:02 +08:00
Rémi Verschelde 6cebb8c117
Merge pull request #44586 from madmiraal/rename-stepify
Rename Math::stepify to snapped
2020-12-28 21:46:43 +01:00
Rémi Verschelde feb4e5ed2c
Merge pull request #44569 from madmiraal/rename-unselect-deselect
Rename unselect to deselect
2020-12-28 14:53:43 +01:00
Rémi Verschelde 891b1cdf28
Merge pull request #44607 from madmiraal/rename-control-rotation
Rename Control rotation to rotation_degrees
2020-12-28 14:42:06 +01:00
Marcel Admiraal b743a2ef3c Rename Math::stepify to snapped 2020-12-28 13:01:30 +00:00
Marcel Admiraal 5b937d493f Rename empty() to is_empty() 2020-12-28 10:39:56 +00:00
Yuri Roubinsky ca8c794d04 Added optional id parameter to `PopupMenu::add_separator` 2020-12-27 15:18:47 +03:00
Marcel Admiraal dc8c29ee95 Update GraphEdit connection to reflect new signal name 2020-12-26 09:48:40 +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 b832003c6b Rename Control rotation to rotation_degrees 2020-12-23 07:06:30 +00:00
Marcel Admiraal 4b8b803931 Rename Control margin to offset 2020-12-23 06:25:56 +00:00
Marcel Admiraal 7b293eddfb Rename unselect to deselect 2020-12-21 10:26:41 +00:00
bruvzg 784f869f0f
Fix RichTextLabel content height and scrollbar calculations. 2020-12-21 07:49:27 +02: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
Rémi Verschelde f7ddcbf446
Merge pull request #44328 from gongpha/tabs-label-incorrect
Refresh TextLine buffer when moving a tab
2020-12-21 00:26:08 +01:00
Rémi Verschelde 153c132a7e
Merge pull request #44300 from KoBeWi/🧹🧹
Move initialization of some classes to headers
2020-12-21 00:24:36 +01:00
Yuri Roubinsky 52e44ed3ef Added GraphEdit properties to control lines thickness and antialiasing 2020-12-18 16:41:45 +03:00
Yuri Sizov f5bcbd8325 FIx visual issues with GraphEdit minimap 2020-12-17 22:59:04 +03:00
Rémi Verschelde c83d1b2526
Merge pull request #43416 from pycbouh/graph-minimap
Add a minimap to the GraphEdit
2020-12-17 17:34:36 +01:00
Rémi Verschelde 3d7b01723b
Merge pull request #44412 from DanielZTing/rename
Rename neighbour in Control to neighbor
2020-12-16 14:16:28 +01:00
Sergey Minakov efeb9e4d08 GUI: use cursor in TextEdit for non selected text. 2020-12-16 05:41:14 +03:00
Daniel Ting aea7fde241 Rename neighbour in Control to neighbor
This keeps things consistent with the rest of Godot, which uses the
American English spelling of Color.
2020-12-15 16:42:21 -06:00
Rémi Verschelde 7e3424e3ab
Merge pull request #44377 from Calinou/rename-textureprogressbar
Rename the TextureProgress node to TextureProgressBar
2020-12-15 13:34:32 +01:00
Hugo Locurcio 57dcc83152
Rename the TextureProgress node to TextureProgressBar
Advantages:

- When searching for "progressbar", you'll see both nodes in the
  search results.
- More consistent with Button/TextureButton.
2020-12-14 21:35:13 +01:00
Marcel Admiraal 8509c8c8fc Rename AcceptDialog get_ok() to get_ok_button()
Also renames:
- AcceptDialog add_cancel() to add_cancel_button()
- ConfirmationDiaglog get_cancel() to get_cancel_button()
2020-12-14 18:43:52 +00:00
bruvzg 62927383ed
[Complex Text Layouts] Add drop-caps support to TextParagraph and RTL. 2020-12-13 22:20:02 +02:00
kobewi a3a31591b5 Allow to override drop data in LineEdit 2020-12-13 20:16:56 +01:00
Rémi Verschelde bbf7bb3838
Merge pull request #42595 from bruvzg/ctl_rich_text
[Complex Text Layouts] Refactor RichTextLabel.
2020-12-13 13:42:00 +01:00
gongpha 0394ff3c99 Refresh TextLine buffer when moving tab 2020-12-13 02:38:53 +07:00
Tomasz Chabora 31cb04fbdd Move initialization of some classes to headers 2020-12-11 18:20:03 +01:00
Yuri Roubinsky 2d4ef1c193 Fixed mouse scrolling in TextEdit's 2020-12-11 12:51:10 +03:00
bruvzg 6b6f101983
[Complex Text Layouts] Refactor RichTextLabel. 2020-12-11 09:48:49 +02:00
Michael Alexsander bb39088201 Allow to circle back in 'PopupMenu' even if the first/last item is non-selectable 2020-12-10 09:32:02 -03:00
Rémi Verschelde 2a325f3888
Merge pull request #44233 from YeldhamDev/popupmenu_circle_back
Re-add circle back scrolling to 'PopupMenu'
2020-12-10 11:16:38 +01:00
Rémi Verschelde 67259d07db
Merge pull request #44070 from YeldhamDev/popupmenu_separator_font_color
Add "font_color_separator" theme property to 'PopupMenu'
2020-12-10 11:13:07 +01:00