Commit Graph

250 Commits

Author SHA1 Message Date
Vitaliy
4caf156be5
Rewrite touch event conversion (#10636) 2021-02-07 11:48:30 +01:00
k.h.lai
2072afb72b
Fix memory leak detected by address sanitizer (#10896) 2021-02-02 20:56:24 +01:00
Vincent Robinson
f227e40180
Fix list spacing and size (again) (#10869) 2021-02-02 20:55:13 +01:00
sfan5
c834d2ab25 Drop wide/narrow conversion functions
The only valid usecase for these is interfacing with OS APIs
that want a locale/OS-specific multibyte encoding.
But they weren't used for that anywhere, instead UTF-8 is pretty
much assumed when it comes to that.
Since these are only a potential source of bugs and do not fulfil
their purpose at all, drop them entirely.
2021-02-02 20:46:08 +01:00
SmallJoker
37a05ec8d6 Settings: Proper priority hierarchy
Remove old defaults system
Introduce priority-based fallback list
Use new functions for map_meta special functions
Change groups to use end tags

Unittest changes:
 * Adapt unittest to the new code
 * Compare Settings objects
2021-01-29 17:32:35 +01:00
Vitaliy
ed0882fd58
Include irrlichttypes.h first to work around Irrlicht#433 (#10872)
Fixes the PcgRandom::PcgRandom linker issue, caused by inconsistent data type definition.
2021-01-28 21:25:13 +01:00
Vincent Robinson
ad9adcb884
Fix formspec list spacing (#10861) 2021-01-23 14:49:13 -08:00
Vincent Robinson
6a55c03dab
Make hypertext and textarea have proper scroll event propagation. (#10860) 2021-01-23 14:48:57 -08:00
Vincent Robinson
009e39e73b
FormSpec: Add list spacing, slot size, and noclip (#10083)
* Add list spacing, slot size, and noclip

* Simplify StyleSpec

* Add test cases

Co-authored-by: rubenwardy <rw@rubenwardy.com>
2021-01-23 12:46:19 -08:00
rubenwardy
4c76239818
Remove dead code (#10845) 2021-01-22 15:09:26 +00:00
Loïc Blot
4b01282821
Factorize more guiEditBoxes code (#10789)
* Factorize more guiEditBoxes code
2021-01-13 09:05:09 +01:00
Loïc Blot
5fcc78a1fe
Refactor/gui editbox (#10787) 2021-01-07 13:21:12 +01:00
Loïc Blot
58a709096e
refacto: factorize multiple code parts from guiEditbox childs (#10782) 2021-01-04 20:19:20 +01:00
Jean-Patrick Guerrero
ff921f6989 Formspecs: Fix broken texture escaping with model[] 2021-01-01 17:03:34 +01:00
Lars Mueller
09d7fbd645 Fix item tooltip background color not working 2020-12-28 13:57:45 +01:00
sfan5
74762470b2 Fix some minor code issues all over the place 2020-12-24 13:44:54 +01:00
Thomas--S
d0a38f694d
Formspec: Allow to specify frame loop for model[] (#10679)
Add the ability to specify an animation frame loop range for the model[] formspec element.
2020-12-15 19:06:36 +01:00
SmallJoker
f2c8c6bf51 Revert "GUIFormSpecMenu: Shift+Click listring workaround for MacOS"
The commit caused Shift-Clicking issues on Linux due to another Irrlicht bug where
KeyInput.Shift released keys do not trigger OnEvent()

MacOS users should build using a recent Irrlicht 1.8 development version.
See also: https://sourceforge.net/p/irrlicht/patches/321/
2020-12-14 11:05:24 -08:00
SmallJoker
e18b6c5a21 GUIFormSpecMenu: Shift+Click listring workaround for MacOS
event.MouseInput.Shift is not implemented for MacOS
2020-12-12 20:55:06 +01:00
sfan5
9bb381ebd3 Change typedef to normal definitions in GUI code 2020-11-26 22:42:19 +01:00
Pierre-Yves Rollo
78273027bf Add sound to press event of some formspecs elements (#10402) 2020-11-23 21:28:25 +01:00
red-001
8eb2cbac61
Fix warnings about an unused variables and implicit conversion (#10586) 2020-11-12 21:05:47 +01:00
SmallJoker
3356da0151
Add model[] formspec element (#10320)
Formspec element to display models, written by @kilbith, rebased and tweaked.

Co-authored-by: Jean-Patrick Guerrero <jeanpatrick.guerrero@gmail.com>
Co-authored-by: sfan5 <sfan5@live.de>
2020-11-04 21:46:18 +01:00
DS
b2f3f66385
Fix box[]es not being clipped (#10473)
Fixes a regression of #8676.
2020-10-08 19:44:47 +02:00
SmallJoker
f46509d5e2
Remove unused functions reported by cppcheck (#10463)
Run unused functions reported by cppcheck

This change removes a few (but not all) unused functions.
Some unused helper functions were not removed due to their complexity and potential of future use.
2020-10-05 09:07:33 +02:00
random-geek
0750047919
Fix scroll bar overlapping text (again) (#9058) 2020-10-03 17:34:34 +01:00
HybridDog
9dc29a75b4
Reduce the FPS when the window is unfocused (#8837) 2020-10-03 17:33:51 +01:00
Hugues Ross
9976f36b18
Make bgcolor tint button background images (#9818) 2020-08-29 16:41:19 +01:00
Kezi
3e5bce2251
darken tabheader background color (#10299) 2020-08-23 22:50:45 +02:00
EvidenceB
287f3fb2e3
Avoid drawing clipped out formspec elements (#10095) 2020-08-23 22:50:14 +02:00
adrido
3c2890692b
Fix MSVC compiler warnings (#10197) 2020-08-23 15:41:04 +02:00
Pierre-Yves Rollo
71287894ad
Fix missing translation call in hypertext (#10296) 2020-08-20 12:25:02 +02:00
v-rob
83d0c360cc
Add gradients and borders to FormSpec boxes (#8676) 2020-08-19 18:14:47 -07:00
v-rob
471497fa91
Optimize formspec form size (#10144) 2020-08-19 16:13:29 -07:00
v-rob
cd0e213a36
Add font styling options to tables and textlists (#10203) 2020-08-11 20:07:17 +02:00
Maksim
76afde861d
Android: Fix ConfirmRegistration and PasswordChange input and scale size (#10182) 2020-07-21 13:16:25 +01:00
Zughy
cfaef5b1cf
Formspecs: volume and key settings windows can now be closed by doubleclicking/tapping (#10128)
Co-authored-by: Xx_Crazyminer_xX <carlo.digioia@hotmail.it>
Co-authored-by: Marco <4279489-marco_a@users.noreply.gitlab.com>
2020-07-14 22:37:28 +02:00
v-rob
2bec83eec0
Add FormSpec font styling options (#9763)
* Add FormSpec font styling options

* Change multiplication to stof

* Remove extraneous check
2020-07-12 09:48:50 +02:00
v-rob
e0499731a8
Allow FormSpec elements to be focused with set_focus (#9353)
This allows you to specify a FormSpec element to set the focus of with "set_focus[<name>;<always set>]".
2020-07-12 09:47:05 +02:00
v-rob
b1ff04e06d
Formspec: Make dropdowns optionally return event based on index, not value (#9496) 2020-07-10 12:11:26 +02:00
v-rob
da71313e1d
Don't stop style parsing on unknown property (#10143) 2020-07-03 18:33:23 +02:00
Pierre-Yves Rollo
ee6c499ff8
Fix wrong use of guiScalingImageButton in formspecs buttons (#10094) 2020-06-24 11:35:06 +02:00
rubenwardy
8ebeed53ad
Android: Fix only right strafe working (#10046) 2020-06-18 01:43:43 +01:00
MoNTE48
b9f618746c TouchScreenGUI: fix some bugs, cleanup 2020-06-09 19:35:25 +02:00
MoNTE48
0d8e5bf587 TouchScreen Control: fix some bugs, cleanup 2020-06-09 19:35:25 +02:00
Maksim
756dc89ede Fix real keyboard movements on touchscreen devices 2020-06-09 19:35:25 +02:00
MoNTE48
3cee55f2b4 Hide tooltip after ETIE_LEFT_UP (for touch control) 2020-06-09 19:35:25 +02:00
SmallJoker
a9b74f4c39
Add chat_font_size setting (#9736)
Default font sizes are used when the setting value is 0 or below (clamped by Settings).
2020-05-24 14:24:13 +02:00
Awkor
037422fdba
Modernize include guards and add missing ones (#9898) 2020-05-23 13:23:05 +02:00
Paul Ouellette
b6242498aa
Always use same default tabheader height (#9319)
Previously the default tabheader height was different when using
real coordinates. This resulted in the height of tabs changing when
switching tabs in sfinv if some tabs used real coordinates.
2020-05-09 17:14:29 +02:00
v-rob
664800b2ad
FormSpec: Add universal style selector * (#9718) 2020-05-06 19:36:02 +02:00
Loïc Blot
f1a05d0f71
Fix broken client if openal cannot be opened (#9804) 2020-05-05 08:38:18 +02:00
Hugues Ross
cb9a44ef89
Add 'content_offset' and 'padding' style properties for buttons (#9661)
* Add padding and content_offset style properties to buttons
2020-05-02 13:32:02 +02:00
v-rob
bc60e44d80
Add animated_image to clickthrough elements (#9724) 2020-04-25 16:55:21 +02:00
Pierre-Yves Rollo
6cc5c7cbb4
Simplify how parseElement splits element string (#9726) 2020-04-25 07:48:04 +02:00
DS
4fb6b6afa7
Formspec: allow lists to change size and existence while the formspec is open (#9700)
Fixes #9640.
2020-04-18 17:21:10 +02:00
DS
241bf44260
Apply a scrollbar's default value to scroll containers (#9699)
Fixes #9691.
2020-04-18 17:20:20 +02:00
Maksim
57038b3cb4
Android: fix formspec input for AArch64 devices (#9685) 2020-04-16 19:19:47 +02:00
DS
0ac999ded7
Add scroll_container formspec element (redo) (#9101)
New formspec elements:

 - `scroll_container[<X>,<Y>;<W>,<H>;<scrollbar name>;<orientation>;<scroll factor>]`
 - `scroll_container_end[]`

Other elements can be embedded in this element. Scrollbar must be placed manually.
2020-04-13 10:50:07 +02:00
SmallJoker
6cf15cf872
GUIFormSpecMenu: Add basic element highlighing debug feature (#9423)
Activated using F5
2020-04-12 12:02:32 +02:00
Hugues Ross
f780bae05c
Formspecs: Add state-selection to style elements (#9378) 2020-04-11 21:39:30 +01:00
SmallJoker
01b3f26c7b Formspec: No spec ID for static text labels
Fixes #9634
2020-04-11 15:31:02 +02:00
Pierre-Yves Rollo
0eb3072819
Hypertext: Fix hovercolor not working in global tag (#9582) 2020-04-05 15:04:41 +02:00
Pierre-Yves Rollo
86a0e991ef
Fix cursor still visible after closing formspec while on HyperText (#9583) 2020-04-04 16:17:15 +02:00
DS
d7825bca1b
Fix GUI element click-through by changing visibility (#9534)
This adds a vector that holds pointers to elements that should only be visible while being drawn.

In the guifsmenu's draw func, all elements in this vector are made visible and invisible again. Apart from there, they are always invisible. (Well they are still visible before the first drawn, does this matter? If yes, it could be fixed easily with some lines of code everywhere.)
2020-03-31 18:34:42 +01:00
Pierre-Yves Rollo
49a558574f
Hypertext: Fix alignment tags adding unwanted newlines (#9548) 2020-03-26 19:56:35 +01:00
Wuzzy
625b100593
Add comments for translators (#9510)
* Add translator comments for "special" strings

* Add translator comments for some "tricky" strings
2020-03-20 09:41:07 +01:00
sfan5
5a31d56c9f Fix mouse events sent to wrong GUI elements when dragging 2020-03-16 22:57:10 +01:00
v-rob
13ad8e2a09
Formspecs: Add starting frame to animated_image (#9411) 2020-03-16 22:56:48 +01:00
SmallJoker
766d160ffb guiHyperText: Fix blinky cursor on link hover (#9392)
Change legacy size/position calculations to 'textarea'
2020-03-11 19:09:50 +01:00
DS
b42493fb4c
Fix memory leak in GUIHyperText (#9489) 2020-03-10 20:32:38 +01:00
SmallJoker
7da4f9ef20
GUIFormSpecMenu: Remove field_close_on_enter warning (#9501) 2020-03-10 20:30:55 +01:00
Jean-Patrick Guerrero
0e88176db8
GUIHyperText: Fix bug with UTF8 chars in action name + simplify UTF8 stringw conversion (#9437)
Co-authored-by: Pierre-Yves Rollo <dev@pyrollo.com>
2020-03-07 14:01:11 +01:00
v-rob
7dffd08c1a
Add multiple element selection to style and style_type (#9380) 2020-03-01 14:39:57 +00:00
DS
0c08f948d7
GUIInventoryList: fix dropping items when clicking outside of formspec window (#9422) 2020-02-26 12:18:05 +01:00
sfan5
c657fb343f Refactor Script API's log_deprecated 2020-02-23 22:24:12 +01:00
Hugues Ross
7ce21788f8
Add animated_image[] formspec element (#9258) 2020-02-15 15:33:18 +00:00
SmallJoker
ee7d357602
Key settings: Clear with escape (#8282)
Key ESCAPE -> Cancel change
Key DELETE -> Remove entry
2020-02-14 20:36:58 +01:00
DS
1116918dbb
Formspec: Create a new class for inventorylists (#9287) 2020-02-01 13:55:13 +01:00
Hugues Ross
60544ac56f Add 9-slice background support to button formspec elements (#9290) 2020-01-26 19:35:26 +00:00
SmallJoker
1892ff3c0d
StaticText/EnrichedString: Styling support (#9187)
* StaticText/EnrichedString: Styling support

* Fix tooltip fg/bgcolor

* Fix default color for substr(), add unittests
2020-01-22 19:09:11 +01:00
Hugues Ross
3dfb6ecbb2 Formspec: Don't start a button click when the pointer isn't on top (#9332) 2020-01-22 10:18:09 +01:00
ANAND
e8fd1ce623 Replace stray tab with whitespace in guiFormSpecMenu.cpp (#9317) 2020-01-18 16:50:57 +00:00
Hugues Ross
680aaa1bd5 Make clipping of formspec elements more consistent (#9262) 2020-01-16 18:41:07 +00:00
DS
4c8af5492b Formspec: change the appeareance of the cursor on fields and co. (#8665) 2020-01-11 20:17:11 +01:00
DS
7c0e0c34ec Formspec: Fix clicking on tooltip-obstructed elements (#9266) 2020-01-04 15:45:22 +01:00
Hugues Ross
b50dc43f67 Don't override the FGIMG style property if the image parameter is null 2019-12-16 19:26:57 +01:00
Hugues Ross
e42faae8d9 Remove the dependency on FGIMG/BGIMG from the hovered/pressed variants
- Make guiButtonImage support null images properly
2019-12-16 19:26:57 +01:00
Hugues Ross
bd4b8d40b3 StyleSpec: 0-initialize the property_set array 2019-12-16 19:26:57 +01:00
SmallJoker
c3d0aab0bc GUIFormSpecMenu: Fix legacy sorting using std::stable_sort 2019-12-14 21:28:07 +01:00
rubenwardy
8e63d22d64 Fix spaces breaking formspec_version[] tag 2019-12-09 21:05:07 +00:00
Hugues Ross
9284313d17 Refactor to centralize GUIButton styling/rendering code (#9090) 2019-12-09 20:06:51 +00:00
SmallJoker
a462181e5f guiConfirmRegistration: Fix hidden error message 2019-12-09 20:01:16 +01:00
DS
8f73ec6c6c Formspec: make bgcolor element less confusing and allow setting fullscreen color (#8996) 2019-12-08 18:59:30 +01:00
rubenwardy
51f230895c Fix failing build due to code style error 2019-12-06 23:00:54 +00:00
v-rob
4f45bfd08b Add scrollbaroptions FormSpec element (#8530) 2019-12-06 20:51:10 +00:00
SmallJoker
b50a166bb0
Formspec: Fix priorities for version < 3 (#9121)
* Formspec: Fix priorities for version < 3

1) Introduce 'priority' to 'FieldSpec'
2) Sort elements based on 'priority'
3) Assign 'name' to the Item Image Button's image to show tooltips again
2019-11-20 19:39:10 +01:00
DS
5506e97ed8 Formspec: draw order and clipping for all elements (#8740) 2019-11-07 20:11:01 +01:00
SmallJoker
2907c0f3a2 Android: Fix broken double-tap after 49 days uptime 2019-11-03 12:59:12 +01:00
SmallJoker
388ea737f5 Clean up font caching, fix bitmap fonts 2019-11-03 11:45:33 +01:00