Commit graph

93 commits

Author SHA1 Message Date
kobewi
4941d2001c
Add set_pressed_no_signal method to BaseButton
(cherry picked from commit 50c63bdc4c)
2021-07-15 10:52:22 +02:00
Jason Knight
7510e1c24b
Emit button_up signal after setting pressed to false.
(cherry picked from commit 4c6ad8abcd)
2021-06-17 12:47:53 +02:00
Gilles Roudière
472f7e9756
Adds a pressed signal to ButtonGroup
(cherry picked from commit 323f176915)
2021-05-09 17:47:37 +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
Rafał Mikrut
06976c3e84 [3.x] Fix crashes when using _input functions 2021-04-27 16:51:29 +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
FIF15
8311a37ed9 Deprecate Redundant property enabled_focus_mode
of BaseButton
see #41529 for details
this closes #41529
2020-10-16 14:14:04 +08:00
OverloadedOrama
bf4a0242ff Fixes BaseButton not triggering the "pressed" signal on "Button Press" Action Mode
This should fix #34935
2020-01-09 02:17:53 +02:00
fossegutten
b728d3bd18 Fixes button flashing when releasing mousebutton outside 2020-01-03 14:55:27 +01: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
qarmin
6cbaf7662f Changed some code showed in LGTM and Coverage 2019-07-20 08:09:57 +02:00
PouleyKetchoupp
1e6fa5d1a5 Fixed shortcut events in BaseButton (now acts the same as ui_accept action) 2019-06-20 09:13:23 +02:00
Rémi Verschelde
2cedf7173a BaseButton: Make shortcuts call virtual methods
When buttons are not in Toggle Mode, shortcuts used to only trigger the
`pressed` signal, without calling the `_pressed` virtual method,
contrarily to what happens when you click the button.

For Toggle Mode buttons, it did call the `_toggled` virtual method
together with emitting the `toggled` signal *twice*.

This commit harmonizes it all and makes shortcuts behave the same as
mouse clicks or `ui_accept`, for both toggle and non-toggle modes.

Fixes #29604.
2019-06-12 16:35:49 +02:00
volzhs
5c01e066e1 Fix BaseButton not emitting signal with virtual function
Fix #29258
2019-05-29 06:28:34 +09:00
volzhs
5e8017721a Refactor BaseButton event handling
also _toggled() function and "toggled" signal called  when unpressed by ButtonGroup
2019-05-21 22:14:01 +09:00
Rémi Verschelde
a72552367e
Merge pull request #25453 from nekomatata/button-keep-pressed-option
Add option to keep button pressed when moving cursor outside while pressing
2019-05-01 10:30:40 +02:00
Rémi Verschelde
4f10a08d1b
Merge pull request #27796 from Leytak/patch-2
Reset button state on exit tree
2019-04-30 11:05:09 +02:00
qarmin
856a8226a5 Small fixes, mostly dupicated code 2019-04-08 11:03:37 +02:00
Alexey Kashlakov
c7fbc63cc2 Reset button state on exit tree
Steps to reproduce a bug:
1) Hold / hover the button
2) Remove it (or parent node) from the tree
3) When we return the button back to the tree, it's pressed / hover
2019-04-08 15:11:07 +07:00
PouleyKetchoupp
43bd28bc14 Option for BaseButton to keep button down when moving the pointer outside while pressed 2019-04-03 14:19:33 +02:00
Kraus
ea211af412 ButtonGroup.get_pressed_button bugfix, fixes issue #25057 2019-01-21 16:46:09 +01: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
Michael Alexsander Silva Dias
c2fe5c0468 Expose ButtonGroup's "get_buttons()" to GDScript 2018-12-14 04:16:23 -02:00
lupoDharkael
d2b890ede5 BaseButton: add shortcut_in_tooltip
This flag disables the input related information in the tooltip.
It is exposed as a member variable in gdscript.
2018-11-19 23:48:05 +01:00
Juan Linietsky
f2e54057ae -Moved EditorDefaultValue to ClassDB, made it core
-Removed one and zero hints for properties, replaced by default value
2018-11-08 11:30:59 -03:00
Aaron Franke
4f7b33cdcf Remove redundant "== false" code
Some of this code has been re-organized.
f
2018-10-06 16:20:41 -04:00
Rémi Verschelde
08a24698eb
Merge pull request #22062 from Leytak/patch-1
Discard button pressing flags on disable
2018-10-02 09:49:17 +02:00
DualMatrix
99e3309296 Added hover_pressed style to CheckBox and CheckButton
Added hover_pressed style to CheckBox and CheckButton.
If no style is defined for this property it will default to the pressed property.
2018-09-24 02:31:03 +02:00
Alexey Kashlakov
1e65916241
Discard button pressing flags on disable
Is it a bug?
1) Click the button and hold
2) Disable it (for example I bind this action on keyboard)
3) Release the mouse and move it outside the button
4) Enable the button
5) It's still pressed, but shouldn't
2018-09-14 14:21:58 +07:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Rémi Verschelde
52466d57e9 Make some debug prints verbose-only, remove others 2018-08-24 14:59:01 +02:00
Juan Linietsky
7811156c4f
Merge pull request #17451 from Goutte/feat-base-button-mask
Allow configuration of which mouse buttons the BaseButton responds to
2018-05-07 18:24:17 -03:00
Rémi Verschelde
7e2782e177
Merge pull request #17081 from endragor/no-press-when-scroll
Make Button not emit press when container is scrolled
2018-04-10 07:56:37 +02:00
Ruslan Mustakov
dcf5be92a3 Make BaseButton not emit press when container is scrolled
This fixes the problem described in #13996 in a proper way.

This also adds "deadzone" property to ScrollContainer. It can be used
on mobile, where taps are not as precise as mouse clicks. Player could
slightly move their finger when tapping, in which case we still want
the button to be pressed rather than the container to be scrolled.
2018-04-09 20:34:52 +07:00
Goutte
ed69345a19 Add a binary mask to allow configuration of which mouse buttons the BaseButton will respond to. 2018-03-13 23:59:53 +01:00
bncastle
ceb079fa35 Fix BaseButton not always calling _pressed()
Fix "ui_accept" action in BaseButton.cpp not calling _pressed() func in
GDScript
2018-03-05 20:37:10 -05: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
Hein-Pieter van Braam
713f190a30 Allow focus on disabled buttons
This behavior better matches other gui toolkits. A selected disabled
button still can't be interacted with but it can now be selected. This
seems to be what QT and GTK do also.

This fixes #16131
2018-01-28 18:49:22 +01:00
Rémi Verschelde
4b6bef6524 Fix signal arguments shadowing member variables
Fixes #10212.
2018-01-09 16:51:19 +01:00
volzhs
13af5e8878 Remove button from button_group when free 2018-01-06 06:06:22 +09:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
poke1024
22d87f20fa Consistent display of shortcut names in tooltips 2017-12-21 20:17:30 +01:00
Ferenc Arn
9c516d8383 Fix toggle mode of BaseButton.
..which got broken with #11480.
2017-09-26 20:10:44 -04:00
Ferenc Arn
ca3061d9c2 Ensure pressed is set to false in BaseButton::_unpress_group. 2017-09-21 20:58:32 -04:00
Matthias Hoelzl
1bafc3c6cf Fix inconsistent toggle button behavior 2017-08-31 17:07:32 +02:00
Rémi Verschelde
7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00