Commit Graph

291 Commits

Author SHA1 Message Date
b32e8d63d8 Add options to embolden and transform font outlines to simulate bold and italic typefaces. 2022-03-11 14:02:30 +02:00
760a95e86a Merge pull request #57877 from bruvzg/subpixel_gl_pos 2022-02-15 13:58:38 +01:00
15244e55bd Improve completion scroll bar visibility in the script editor
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 16:49:08 +01:00
29199579f7 Add sub-pixel glyph positioning support. 2022-02-12 19:55:52 +02:00
8ebecf5095 Increase checkerboard texture contrast 2022-02-12 14:55:07 +01:00
839b8cae1e Updated alpha value for disabled icons in default theme. 2022-02-09 01:16:39 +01:00
fc076ece3d Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
45553fd586 Merge pull request #56970 from YeldhamDev/rise_tabbar_rise 2022-01-31 21:46:07 +01:00
64c4a5b283 Bring TabBar to full parity with the TabContainer implementation. 2022-01-31 15:35:54 -03:00
1cd1df5dc3 Move placeholder color to theme item 2022-01-30 17:56:23 +00:00
84a69d7429 Improve the default project theme
The new default project theme uses StyleBoxFlat extensively for
a more modern design and better scalability to multiple resolutions.

SVG icons are now used in place of PNG icons. While this does not
allow for true vector-based icon drawing (icons are still rasterized
at load-time), this makes the design work easier for contributors
and opens the door to vector drawing in the future (e.g. with polygons
or SDFs).

Like for editor icons, the SVG header file is now built automatically
when a SVG file is changed. This removing the need for running
`make_header.py` manually (TODO).

The "Use Hidpi" project setting has been removed in favor of a
"Default Theme Scale" project setting, which allows creating the
default theme at a higher/lower scale than the default.
This can be used when designing GUIs with a high base resolution
to ensure crisp visuals.

Co-authored-by: Yuri Sizov <yuris@humnom.net>
2022-01-19 18:46:01 +03:00
030638e5b4 Merge pull request #56104 from Geometror/add-flow-layout-container
Add FlowContainer
2022-01-18 20:26:29 +01:00
e529803ef9 Merge pull request #56738 from YeldhamDev/improve_tab_consistency 2022-01-14 10:42:30 +01:00
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
a989dc019b Improve looks and consistency of tabs 2022-01-12 22:11:43 -03:00
f20ae16e0b Merge pull request #56323 from Gallilus/Update-default-port_grab_distance_vertical 2022-01-11 11:17:33 +01:00
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
40ee2b8953 Add FlowContainer 2022-01-07 15:51:49 +01:00
a2a4ec7cb5 Merge pull request #56376 from pycbouh/theme-tombe-les-theme-properties 2022-01-06 11:33:43 +01:00
fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
fe283fd07a Correctly use fallback Theme values as last resort 2021-12-31 18:53:43 +03:00
38ad72af44 Update default port_grab_distance_vertical 2021-12-29 19:14:28 +01:00
5f9cd9ccbc Fix Label and RichTextLabale text shadows and shadow outlines. 2021-11-06 10:22:09 +02:00
12838bd99d Add focus font color to Button and derivatives 2021-10-26 17:42:40 +03:00
ebbc25e89c Ignore empty Font resources as theme override.
Add range hint to font_size properties.
Remove excessive `base_size` Font property.
2021-10-25 14:05:37 +03:00
67acb7de6e Rename Tabs to TabBar 2021-10-19 11:37:31 -03:00
4a42a66cd9 Add the base scale factor to the Theme resource 2021-10-04 15:25:07 +03:00
663e480f24 Rename some elements of Tabs 2021-09-30 20:18:23 -03:00
cc51b045da Construct values only when necessary. 2021-09-23 22:26:07 +05:45
6c2fd03959 Added search colors to TextEdit and CodeEdit theme 2021-09-21 20:24:39 +01:00
f85426e8ad Merge pull request #51805 from skysphr/scrollbar-icons-pressed
Added increment_pressed and decrement_pressed icons to scrollbars
2021-09-13 14:57:21 +02:00
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
7cbf5a547f Merge pull request #51700 from Geometror/fix-color-picker
Reimplement ColorPicker presets
2021-08-22 08:23:09 -07:00
2daef0400a Merge pull request #51866 from requizm/fix/49455
Fix `line_separation` working incorrectly in `RichTextLabel`
2021-08-20 23:24:42 +02:00
39b90802d0 Fix line_separation constant working incorrectly in RichTextLabel 2021-08-20 23:03:13 +03:00
ff9901f51e Reimplement ColorPicker presets 2021-08-18 02:09:48 +02:00
e27ab2708f Added increment_pressed and decrement_pressed icons to scrollbars 2021-08-17 22:09:29 +03:00
75866c81e7 Added icons and API for indeterminate checkmarks for the Tree class. 2021-08-16 10:13:06 -07:00
61904d56ea Better port handling connection for GraphEdit 2021-08-12 09:09:24 +03:00
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
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
051234e84e Fix Gradient, Color Picker BG, Fix CanvasItem::draw_texture_rect p_tile 2021-08-07 16:40:50 -05:00
809a32c045 Clean up and complete CodeEdit inspector and docs 2021-08-01 12:24:19 +01:00
8f900ac178 Move line length guidelines into CodeEdit 2021-08-01 12:06:33 +01:00
d1a1ad127e Move brace matching into CodeEdit 2021-08-01 12:06:33 +01:00
79fc188fc4 Multiple cosmetic fixes for embedded windows 2021-07-27 23:55:06 -03:00
f4b361dd15 Add header theme type variations to labels 2021-07-13 15:42:09 +02:00
e28fd07b2b Rename instance()->instantiate() when it's a verb 2021-06-19 20:49:18 -06:00
5c618dd03d Move code folding into CodeEdit and hide line hiding API 2021-06-01 17:07:01 +01:00