Commit Graph

126 Commits

Author SHA1 Message Date
Rémi Verschelde a6e70f1f1c
Merge pull request #63250 from YuriSizov/toolbars-go-with-the-flow-3.x 2022-08-05 19:34:21 +02:00
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Yuri Sizov 842c3a644f Use FlowContainer to handle toolbar overflow more gracefully 2022-07-20 17:22:36 +03:00
Haoyu Qiu 95c672e1b4 Separate 2D grid visibility and grid snap 2022-03-15 08:52:21 +08:00
Rémi Verschelde ede7e68ab6
Merge pull request #56620 from timothyqiu/left-right-palette-3.x 2022-01-18 16:38:26 +01:00
Rémi Verschelde a627cdafc5
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
Haoyu Qiu 37a38ece59 Allow showing both left and right side panels 2022-01-08 20:20:36 +08:00
Marcel Admiraal 4d3690eba5 Remove unimplemented methods 2021-11-18 12:47:36 +00:00
kobewi 6611d24e74 Include locked nodes on selection list 2021-08-18 13:27:33 +02:00
Hugo Locurcio 1ed24ca548
Highlight context menu items at the top of the 2D/3D viewports
This makes it easier to notice that some menu items only appear when
specific nodes are selected.

This change applies to both 2D and 3D editors, including both plugin-based
menus and the hardcoded 2D layout/animation contextual menus.
2021-07-31 01:50:50 +02:00
Hugo Locurcio 44b01751e6
Prevent accidental drags by adding drag distance threshold
Co-authored-by: fox <12120644+foxydevloper@users.noreply.github.com>
2021-07-16 06:04:25 +02:00
Hugo Locurcio 477dfc5174
Improve 2D editor zoom logic
- Add 1-5 shortcuts to zoom between 100% and 1600% quickly
  (similar to GIMP).
- When holding down Alt, go through integer zoom values if above 100%
  or fractional zoom values with integer denominators if below 100%
  (50%, ~33.3%, 25%, …).
2021-07-15 17:15:02 +02:00
kobewi ff7cae4c4c Allow to create a node at specific position 2021-07-07 13:19:59 +02:00
Rémi Verschelde 140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rémi Verschelde 49646383f1
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 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
johan 48a4f7e3a7 2D Editor: modified zoom increment to the twelveth root of two
- properly visit power of 2 factors (50%, 100%, 200%...)
- index based zoom values to prevent floating point issues
- Fix 2d editor not able to reach min and max zoom values

(cherry picked from commit fea6ca20c9)
2020-06-05 12:44:45 +02:00
Rémi Verschelde a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Tomasz Chabora 7e5340261a Cancel drag when selection changes 2019-11-19 16:02:04 +01:00
PouleyKetchoupp 6d14251b0d Fixed "Add Sprite..." label overlapping with zoom controls 2019-11-18 11:52:01 +01:00
Rémi Verschelde 621dc7022f
Merge pull request #27742 from rxlecky/camera-replication
Game camera override
2019-11-08 10:02:18 +01:00
MCrafterzz 3a8a7fc31c Added snapping for scaling in 2D editor 2019-11-02 09:43:15 +01:00
Hugo Locurcio c7e5dd9ef0
Add primary grid lines to the 2D editor
A "primary" line is drawn every 8 steps by default,
which makes it easier to measure distances for snapping.

This value can be configured in the Configure Snap dialog.
2019-10-29 15:47:38 +01:00
Erik 8b0546d93b Implement game camera override
Implemented uniform API in Viewport class to override 2D and/or
3D camera.

Added buttons in 2D and 3D editor viewport toolbars that override
the running game camera transform with the editor viewport camera
transform. Implemented via remote debugger protocol and camera
override API.

Removed LiveEditFuncs function pointers from ScriptDebugger class.
Since the debugger got access to the SceneTree instance (if one
exists), there is no need to store the function pointers. The live
edit functions in SceneTree are used directly instead. Also removed
the static version of live edit functions in SceneTree for the same
reason. This reduced the SceneTree -> Debugger coupling too since
the function pointers don't need to be set from SceneTree anymore.

Moved script_debugger_remote.h/cpp from 'core/' to 'scene/debugger/'.
This is because the remote debugger is now using SceneTree directly
and 'core/' classes should not depend on 'scene/' classes.
2019-10-23 02:51:32 +01:00
Gilles Roudière fff953ac8b Move grid snapping to an independent button 2019-10-10 21:10:08 +02:00
Hugo Locurcio 95f6f81dc2
Display the current zoom percentage in the 2D editor
This makes it possible for the user to know precisely the current
zoom level. The zoom percentage can be clicked to reset it to 100%
(similar to Firefox).
2019-09-17 20:36:10 +02:00
Tomasz Chabora 05e5faa876 Add 2D ruler tool 2019-09-01 18:36:41 +02:00
Rémi Verschelde 1222df0ad0
Merge pull request #31585 from 2shady4u/removeguides
Added button/shortcut for removing all guides
2019-08-26 13:51:10 +02:00
shaderbeast c6fb6a6a21 Added button/shortcut for removing all guides
Added undo/redo


Correctly added has_meta
2019-08-24 22:58:16 +02:00
Rémi Verschelde 2e5ba32b4b
Merge pull request #31545 from groud/add_smart_snapping_display
Displays smart snapping guides when snapped
2019-08-22 13:12:09 +02:00
Gilles Roudière 692a78db19 Displays smart snapping guides when snapped 2019-08-21 22:15:51 +02:00
Tomasz Chabora 9520d9706a Edit TileMap only with TOOL_SELECT 2019-08-21 20:56:15 +02:00
IAmActuallyCthulhu 82b9557803
Remove redundant author doc comments 2019-08-12 04:26:38 -05:00
Bojidar Marinov 68b5f101c7
Make it so that 2D viewport does not pan while editing tilemaps
Fixes #30875
2019-07-28 17:00:05 +03:00
Hugo Locurcio 0fb80d7b0f
Use resize cursors when hovering or dragging guides in the 2D editor
This also tweaks the casing in undo/redo action names for consistency.

This closes #30550.

Co-authored-by: Emmanuel Barroga <emmanuelbarroga@gmail.com>
2019-07-15 14:24:45 +02:00
qarmin 4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Tomasz Chabora f472f0491c Allow to change 2D pan hotkey 2019-06-05 22:44:52 +02:00
Gilles Roudiere e875f05c3b Improve the anchors and margin workflow 2019-05-13 18:55:31 +02:00
Juan Linietsky 296c74072c Implement autokeying in Animation editor. 2019-04-15 00:49:03 -03:00
Tomasz Chabora 7abd0a3976 Allow panning while moving a node 2019-04-07 16:43:21 +02:00
Juan Linietsky 19a6a6286a Ability to make CanvasLayers have pseudo 3D depth. 2019-04-05 10:25:51 -03:00
Rémi Verschelde b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
groud 60f2e94c08 Fixes drag and drog of image files on scaled nodes 2018-11-16 16:55:28 +01:00
Ibrahn Sahir ed337085cf Fixed various uninitialised member variables in editor plugins. 2018-11-11 17:32:47 +00:00
groud 0c2ebbe626 Add an overlay on editor to display error messages 2018-10-30 18:53:58 +01:00
groud a05ef683a5 Allow the Container children selection but don't allow them to move 2018-10-30 14:56:55 +01:00
groud ced6f43455 Fixes viewport scrollbars not updating with plugins 2018-10-18 14:06:57 +02:00
Simon Wenner 10718b0961 Fix some cppcheck errors
cppcheck: fix broken pre-processor statement
cppcheck: fix Uninitialized struct members in canvas editor plugin
cppcheck: fix uninitialized struct member: method_api.is_virtual
2018-10-04 18:16:04 +02:00
Rémi Verschelde 540db0a0e7
Merge pull request #22329 from DualMatrix/no_select
Made children of Containers not selectable.
2018-10-02 16:39:00 +02:00