Commit graph

216 commits

Author SHA1 Message Date
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
Andrii Doroshenko (Xrayez) ba68383706 Add AspectRatioContainer class
Co-authored-by: Ugis Brekis <ugis.brekis@productmadness.com>
2020-11-25 15:06:40 +02:00
Rémi Verschelde a7d610db16
Merge pull request #43408 from rcorre/path-gizmos-4.0
Make Path3D handles visible and consistent with 2D.
2020-11-12 13:12:49 +01:00
Ryan Roden-Corrent 8458ba0aef
Proposal 1246: Make Path3D handles more visible.
Resolves godotengine/godot-proposals#1246.

It is difficult to tell the difference between the handles for adjusting
curves and the points themselves when looking at a Path gizmo.
This re-uses the icons used for Path2D.

Unlike Path2D, this does not use a different icon for smooth vs sharp
points, as using a potentially different material for each point would
prevent batching the points in add_handles (and adding them out-of-order
messes up other logic based on handle indices).

This includes a public API change to allow specifying a texture for a
handle material. This allows spatial gizmo plugins to customize the way
a handle is rendered, if desired, but does not break existing behavior
(as providing no texture uses the default).

The path handle icons were resized as well.  16x16 is the standard icon
size. These icons were 10x10 rather than 16x16, and appeared rather
small in the editor.

To resize, I:

- Opened the original in Inkscape
- Resized the document to 16x16
- Opened the transform dialog
- Scaled by 160% proportionally
- Used Align/Distribute to center on the page
- Saved the document
- Cleaned with `svgcleaner --multipass`
2020-11-12 06:37:56 -05:00
Rémi Verschelde b1db71c9fb
Merge pull request #43220 from YeldhamDev/canvasgroup_codeedit_icons
Add icons for the 'CanvasGroup' and 'CodeEdit' nodes
2020-11-12 10:31:03 +01:00
Michael Alexsander a38b4fd8f2 Add icons for the new Light2D nodes 2020-11-07 13:55:09 -03:00
Michael Alexsander 0176fc2f32 Add icons for the 'CanvasGroup' and 'CodeEdit' nodes 2020-10-30 16:42:18 -03:00
Hugo Locurcio a1d9c67f43
Optimize SVG using svgcleaner --multipass
This decreases the editor binary size by about 8 KB.
2020-10-25 10:02:37 +01:00
Rémi Verschelde 11f362b510
Merge pull request #35766 from YeldhamDev/poly2d_uv_editor_improvements
Minor improvements to the Polygon 2D UV editor
2020-10-24 01:47:40 +02:00
Eric Tuvesson 8cf88f8ff4 fix(editor): Create new icon for TileMap Rectangle
ref: #42972
2020-10-22 13:28:34 +02:00
Rémi Verschelde eee7c4acc4
Revert "fix(editor): TileMap Fill Rectangle icon" 2020-10-22 10:28:37 +02:00
Eric Tuvesson 3fee970c62 fix(editor): TileMap Fill Rectangle icon
The default color was blue which is the active color, changed it to be gray by default.
2020-10-21 20:44:55 +02:00
Hugo Locurcio da906cade3
Replace AutoKey icon with a more universally understood "record" button
See discussion in
https://github.com/godotengine/godot-proposals/issues/169.
2020-09-25 11:43:17 +02:00
Hugo Locurcio 3e0226515e
Rename ShortCut to Shortcut which is more grammatically correct
See https://github.com/godotengine/godot/issues/16863#issuecomment-685236980.
2020-09-09 21:54:54 +02:00
Michael Alexsander 0c182ce8e8 Make the editor's 'CheckButton' icon be smaller 2020-08-14 10:13:18 -03:00
Andrii Doroshenko (Xrayez) d86de6c98e SCons: Refactor running commands through builders
A new `env.Run` method is added which allows to control the verbosity
of builders output automatically depending on whether the "verbose"
option is set. It also allows to optionally run any SCons commands in a
subprocess using the existing `run_in_subprocess` method, unifying
the interface. `Action` objects wrap all builder functions to include a
short build message associated with any action.

Notably, this removes quite verbose output generated by `make_doc_header`
and `make_editor_icons_action` builders.
2020-07-28 00:09:21 +03:00
Michael Alexsander c26b49fc17 Minor improvements to the Polygon 2D UV editor 2020-07-23 19:29:31 -03:00
Aaron Franke d8b65461e3
Commit only the SVG files changed by file_format.sh
There were a lot of SVG files changed by file_format.sh
2020-07-13 14:08:55 -04:00
Michael Alexsander 26381265b8 Prefer the highlight version of the "GuiTabIcon" icon for buttons, and make their width/height equal 2020-07-11 12:59:25 -03:00
Marcus Elg 9e24fa469a Remove unused interpolate camera icon 2020-06-23 09:29:20 +02:00
Hugo Locurcio b14b7e763d
Remove unused ToolButton editor icon
Left-over from 31b7f02a29.
2020-06-20 19:53:22 +02:00
Hugo Locurcio ebabedc615
Replace the AssetLib tab icon with a less confusing design
This closes https://github.com/godotengine/godot-proposals/issues/818.
2020-06-20 00:50:41 +02:00
Hugo Locurcio 4a542e0007
Restore previous mouse position when leaving the editor freelook mode
- Remove the crosshair as it no longer serves a purpose (the cursor will
  now appear where the user "expects" it to).

This closes https://github.com/godotengine/godot-proposals/issues/1076.
2020-06-17 20:02:46 +02:00
Andrii Doroshenko (Xrayez) a96f0e98d7 Add custom_modules build option to compile external user modules
This patch adds ability to include external, user-defined C++ modules
to be compiled as part of Godot via `custom_modules` build option
which can be passed to `scons`.

```
scons platform=x11 tools=yes custom_modules="../project/modules"
```

Features:

- detects all available modules under `custom_modules` directory the
same way as it does for built-in modules (not recursive);
- works with both relative and absolute paths on the filesystem;
- multiple search paths can be specified as a comma-separated list.

Module custom documentation and editor icons collection and generation
process is adapted to work with absolute paths needed by such modules.

Also fixed doctool bug mixing absolute and relative paths respectively.

Implementation details:

- `env.module_list` is a dictionary now, which holds both module name as
  key and either a relative or absolute path to a module as a value.
- `methods.detect_modules` is run twice: once for built-in modules, and
  second for external modules, all combined later.
- `methods.detect_modules` was not doing what it says on the tin. It is
  split into `detect_modules` which collects a list of available modules
  and `write_modules` which generates `register_types` sources for each.
- whether a module is built-in or external is distinguished by relative
  or absolute paths respectively. `custom_modules` scons converter
  ensures that the path is absolute even if relative path is supplied,
  including expanding user paths and symbolic links.
- treats the parent directory as if it was Godot's base directory, so
  that there's no need to change include paths in cases where custom
  modules are included as dependencies in other modules.
2020-05-25 15:33:32 +03:00
Michael Alexsander 50585e2cfa Add more missing node icons 2020-05-17 12:51:49 -03:00
Michael Alexsander 54ed1f63bf Add more missing icons 2020-05-15 16:20:35 -03:00
Hugo Locurcio c6afb9f6ea Update the editor icons README to remove outdated information
This closes #38684.
2020-05-12 09:46:56 +02:00
Hugo Locurcio 564f8ccc13
Use a different icon for the debugger tab with both warnings and errors
This makes it possible to see if both errors and warnings were
pushed without having to open the tab.
2020-05-09 15:29:13 +02:00
Michael Alexsander d239196fc7 Tweak Decal icon slightly 2020-04-24 22:40:06 -03:00
Michael Alexsander 0adbc43ab9 Add icon for the Decal node 2020-04-14 01:08:38 -03:00
Rémi Verschelde e383798327
Merge pull request #37344 from YeldhamDev/dialog_node_icons
Updade dialog node's icons
2020-04-10 13:13:24 +02:00
Thakee Nathees 1532eefd4e ARVR -> XR rename icon missing fixed
Fix: #37716
2020-04-10 02:11:21 +05:30
Michael Alexsander 0c6851ae53 Rename ViewportContainer to SubViewportContainer 2020-04-01 16:11:44 -03:00
Michael Alexsander 46a6751302 Register SubViewport class 2020-03-30 16:43:55 -03:00
Rémi Verschelde f3c74afd28
Merge pull request #37436 from akien-mga/doc-node-renames
doc: Update classref with node renames
2020-03-30 20:32:11 +02:00
Rémi Verschelde eaaee63b62 doc: Update classref with node renames
A few extra renames for classes which were missed in last week's PRs.
2020-03-30 18:23:02 +02:00
Rémi Verschelde cd4e46ee65 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.
2020-03-30 09:05:53 +02:00
Rémi Verschelde d1acbbce7f Rename more 2D and 3D nodes to follow convention
Rename editor plugins to match the new node names.
2020-03-27 16:26:34 +01:00
Juan Linietsky eaae4b6408 Renamed 2D and 3D nodes to make their types explicit
Fixes #30736.
2020-03-27 14:54:04 +01:00
Michael Alexsander d15e1dafbd Updade dialog node's icons 2020-03-26 22:44:49 -03:00
Rémi Verschelde 3d2dd79ecd SCons: Drop support for Python 2
We now require SCons 3.0+ (first version with Python 3 support),
and we set min required Python 3 version to 3.5 (3.4 and earlier are
EOL).
2020-03-25 15:25:37 +01:00
clayjohn 61a74739ca Working sky shader implementation 2020-03-21 20:43:44 -07:00
Rémi Verschelde e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Michael Alexsander 687f72ba28 Add more missing icons (and adjust a few) 2020-02-28 15:00:10 -03:00
Tomasz Chabora 225622e5e3 Add unique icon to Polygon2D 2020-02-28 12:01:39 +01:00
Andrea Catania 483994601d Renamed NavigationPolygonInstance to NavigationRegion2D 2020-02-28 08:28:53 +01:00
Andrea Catania 2e0fb66c6f Renamed PlaneShape to WorldMarginShape 2020-02-27 17:45:16 +01:00
Andrea Catania 3b64ecbc4b Renamed NavigationMeshInstance to NavigationRegion 2020-02-27 17:42:53 +01:00
Michael Alexsander 19d7428db6 Update PackedIint/FloatArray icons for the new types 2020-02-25 14:46:40 -03:00
bruvzg 1af06d3d46
Rename scancode to keycode.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00