Commit Graph

217 Commits

Author SHA1 Message Date
Chaosus 66c25d4829 Added possibility to change color of 2d editor grid 2018-08-19 10:04:16 +03:00
Rémi Verschelde 2062d6126d
Merge pull request #20587 from groud/fix_2deditor_scrollable_zone
Fixes bugs on the 2D editor scrollable area
2018-08-13 09:03:34 +02:00
Hugo Locurcio 1368bcfc53
Use a standard "OK" text for confirmation buttons in error dialogs
[ci skip]
2018-08-05 16:49:22 +02:00
groud eb7f4ddcce Fixes bugs on the 2D editor scrollable area 2018-07-30 01:05:13 +02:00
Hein-Pieter van Braam 0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Max Hilbrunner 9f82368d40
Merge pull request #19475 from YeldhamDev/animplayer_cosmetic
Minor changes to the AnimationPlayer editor
2018-07-05 04:25:04 +02:00
Max Hilbrunner b21c1f64cd
Merge pull request #18634 from groud/fix_control_child_of_node2d
Fixes the bad calculation of margin & anchors when child of Node2D
2018-07-03 18:06:15 +02:00
Michael Alexsander Silva Dias 02181292b8 Minor changes to the AnimationPlayer editor. 2018-06-30 00:12:05 -03:00
Guilherme Felipe 7c52824504 Remove shortcut conflict 2018-06-18 16:24:01 -03:00
groud 71cea6b515 Fixes a crash on draw_hover 2018-06-12 11:01:24 +02:00
groud 4d78e16bc1 Fixes the bad calculation of margin & anchors when child of Node2D 2018-06-07 21:25:15 +02:00
Juan Linietsky b659fd6d74 Entirely new (and much improved) animation editor. 2018-06-07 12:52:00 -03:00
Michael Alexsander Silva Dias 589f18a374 Minor changes to the Scene and Canvas editors' tooltips. 2018-05-29 13:21:26 -03:00
volzhs 6a28bfe09c Don't draw bones if it's not visible 2018-05-25 13:01:15 +09:00
Gilles Roudiere 0021df3da3 Bring back 2D bone selection 2018-05-15 15:18:46 +02:00
Gilles Roudiere e614789882 Fixes hovered Nodes2D display in the editor (remove duplicates) 2018-05-15 09:37:23 +02:00
groud 7331ca6f63 Fixes some 2d bones display problems 2018-05-05 15:45:26 +02:00
groud 3962862ea3 Fixes several selection problems in the 2D editor 2018-05-05 11:50:23 +02:00
Juan Linietsky af9a6202eb Fix bone refresh logic, closes #18564 2018-05-04 18:11:28 -03:00
Juan Linietsky bf561c4946 Made bone handling for actual Bone2D a special case. Make custom bones appear like a custom (less important) option now. 2018-05-04 16:46:32 -03:00
Juan Linietsky e68cbec1fa Make bones have more contrast with outline 2018-05-04 11:54:21 -03:00
groud 845a898f37 Fixes locks and groups on 2d editor 2018-05-02 10:37:37 +02:00
Rémi Verschelde de97339a2d
Merge pull request #18291 from akien-mga/coverity-uninitialized-scalar-var
Fix Coverity reports of uninitialized scalar variable
2018-05-01 19:14:07 +02:00
Rémi Verschelde e1ef2f538f
Merge pull request #18380 from groud/fix_spacebar_panning
Fixes 2d editor panning not working
2018-05-01 08:56:13 +02:00
Max Hilbrunner f274c8b74b
Merge pull request #18381 from groud/fix_hard_to_select_node2d
Fixes hard to select Node2D
2018-04-30 18:58:27 +02:00
Gilles Roudiere 8dcd39c3c4 Adds shortcuts for zooming in the 2D editor 2018-04-26 10:28:56 +02:00
groud e8a4c4fa4c Fixes hard to select Node2D 2018-04-23 19:48:15 +02:00
groud 9c5a44aeee Fixes 2d editor panning not working 2018-04-23 19:34:03 +02:00
Rémi Verschelde bf7ca623a6 Fix Coverity reports of uninitialized scalar variable
Fixes most current reports on Coverity Scan of uninitialized scalar
variable (CWE-457): https://cwe.mitre.org/data/definitions/457.html

These happen most of the time (in our code) when instanciating structs
without a constructor (or with an incomplete one), and later returning
the instance. This is sometimes intended though, as some parameters are
only used in some situations and should not be double-initialized for
performance reasons (e.g. `constant` in ShaderLanguage::Token).
2018-04-19 15:20:45 +02:00
Juan Linietsky 1d15c5d726
Merge pull request #17502 from groud/2Deditor_rect
Remove the rect surrounding 2D nodes in 2D editor when it's not pertinent
2018-04-13 10:21:44 -03:00
Juan Linietsky 7dedb22f0b
Merge pull request #17809 from RandomShaper/menu-item-on-release
Improve popup menus usability
2018-04-07 16:22:00 -03:00
Pedro J. Estébanez 259ed1d400 Improve popup menus usability
It seems that popups were intended to "grab" the mouse click that triggered them, but their intent was being lost. This commit does the necessary changes to let it happen and updates items that were trying to get advantage of it, because the semantics of `Control::grab_click_focus()` have changed a bit. Namely, it must be called **before** showing the modal.

This allows to popup a menu and activate an item in it in a single click-point-release cycle, instead of having to click once to open the menu and once more to pick an item.

This ability is extended even to context menus activated with the RMB (or any other mouse button, for that matter). The editor benefits from this in the context menu of the tree dock, which has been patched to opt-in for this feature.

This improves UX a bit by saving unnecessary clicks.

From now on, `PopupMenu` always grabs the click and also invalidates the first button release unless the mouse has moved (that's what `set_invalidate_click_until_motion()` was doing and now it's removed), so there is no longer the need of doing both things at every point a pop-up menu is shown.
2018-04-07 01:06:02 +02:00
Gilles Roudiere a724f34ef3 Displays node icon on hover 2018-04-03 23:56:37 +02:00
Gilles Roudiere 0251b08afa Display nodes without rect's position 2018-04-03 22:04:19 +02:00
Gilles Roudiere 72ed1e4244 Remove the selection rect for nodes that do not require it 2018-04-03 22:04:19 +02:00
Gilles Roudiere 6435894275 Fixes issues with selectable children and locks 2018-04-03 21:31:15 +02:00
Gilles Roudiere 4b4ed9b724
Merge pull request #17785 from Rubonnek/simplify-canvas-item-logic
Simplify CanvasItemEditor anchor drag logic
2018-03-28 11:56:29 +02:00
Chaosus 9a6b4a3f11 Enable snapping in 2D when control key pressed 2018-03-28 10:07:21 +03:00
Wilson E. Alvarez bc9ef5461b
Simplify CanvasItemEditor anchor drag logic 2018-03-26 14:30:51 -04:00
Gilles Roudiere 038de54b1f Fixes scrollbars in Canvas Item Editor 2018-03-17 12:18:33 +01:00
Rémi Verschelde fcd81c9627
Merge pull request #17172 from StateOff/add_show_axis_options
Add "Show Origin" and "Show Viewport" options to 2D Editor Viewport
2018-03-13 12:53:11 +01:00
Ranoller 2aae6fc2ec
FIX to broken item select list (zoom and RMB)
FIX to #17346. Compiled and tested.
2018-03-07 21:39:55 +01:00
Bernhard Liebl ced694e9cd In CanvasItemEditor, prioritize selected items 2018-03-05 19:09:59 +01:00
Blazej Floch 934498d37a Add "Show Origin" and "Show Viewport" options to 2D Editor Viewport 2018-03-02 21:27:32 -05:00
luz.paz 612ab4bbc6 Fix typos with codespell
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Rémi Verschelde b93d6a001b
Merge pull request #16566 from groud/gui_input_rework
2D Editor GUI input rework
2018-02-19 20:05:35 +01:00
Gilles Roudiere 8dad41e395 2D editor GUI input rework. Changes are:
- The input handling is done into several distinct functions, and the
  code is more consistent.
- The actions' history is more precise ("Edited CanvasItem"
  is now "Rotated CanvasItem","Moved CanvasItem",etc...)
- Fixed a little bug about input key events not forwarded correctly to plugins
- IK is followed by default when you move a bone node, the alt-key allow
  you to move it normally
2018-02-16 10:14:52 +01:00
George Marques da69a06253
Add a function to remove controls from containers
Closes #5968
2018-02-13 19:35:10 -02:00
Michael Alexsander Silva Dias b507eeddcc Capitalized "View" menu options. 2018-02-02 17:27:57 -02:00
volzhs 48611afb80 Rotate Control node with respecting pivot offset 2018-01-24 15:44:28 +09:00