1
0
mirror of https://github.com/s00500/ESPUI.git synced 2024-06-30 16:24:13 +00:00
Commit Graph

44 Commits

Author SHA1 Message Date
Ian Gray
12a3fb6c80 Fix bug with sliders getting out of sync. 2022-01-15 14:29:38 +00:00
Ian Gray
6a513e9f65 Allow Max control to add maxlength to text input. Update docs. 2022-01-14 20:24:23 +00:00
Ian Gray
3b8f71a0f5 Fix a bug where the Dark colour wasn't being correctly applied. 2022-01-13 18:26:50 +00:00
Ian Gray
a9460c8c69 Allow runtime updates to button controls. 2022-01-13 17:26:00 +00:00
Ian Gray
dd0fe3165f Fix bug with updating slider values programatically 2022-01-12 23:53:55 +00:00
Ian Gray
c059e30763 Fix issue with switchers getting out of sync with the DOM if updated. 2022-01-12 23:12:45 +00:00
Ian Gray
5909471962 Further improve the reliability of UI element transfer.
A protocol has been implemented between the server and client to acknowledge
each UI_INITIAL_GUI and UI_EXTEND_GUI from the client javascript. This
prevents the internal websocket buffers from becoming flooded when the
number of controls gets too high.
2022-01-12 20:12:20 +00:00
Ian Gray
f5dd757240 Add support for wide panels.
Allows for panels to be displayed in single column mode, regardless of screen width.
For more information, see updates to README.md
2022-01-08 21:25:10 +00:00
Ian Gray
9b228800f9 Implement separators, and grouped controls
This adds separator elements, and allows arbitrary grouping of controls. For details
see the updates to README.md
2022-01-08 20:58:22 +00:00
Ian Gray
ec1862cfe6 Support for dynamic custom inline styling.
Adds two functions in ESPUI.h:
setPanelStyle()
setElementStyle()
These allow for custom inline CSS styles to be applied to the panel and to
the specific UI element repectively.

For example:

```
char stylecol1[30]
sprintf(stylecol1, "background-color: #%06X;", (unsigned int) random(0x0, 0xFFFFFF));
ESPUI.setPanelStyle(switch1, stylecol1);
```
This will set the panel of the given control to a random hex colour.

This is supported by both the initial UI message, and by control update messages, so you
can change these styles dynamically in response to other events.

setElementStyle() is not perfect. Because CSS inline styles can only style one specific
DOM element, for controls made up of multiple elements (like the "pad") this is limited.
I have tried to make an appropriate choice for each supported control.
2022-01-02 21:56:32 +00:00
Ian Gray
78317ce5f2 Chunk updates 2022-01-01 22:04:32 +00:00
Ian Gray
aaea0fb877 Fixes #122 2021-12-29 17:52:03 +00:00
Ian Gray
eebefd915c Update minified and header files for previous commit 2021-12-29 10:29:24 +00:00
Ian Gray
777ceb2bed Fixes #127 2021-12-28 17:13:25 +00:00
Noctr
5bec1ed988
Update dataControlsJS.h 2021-08-01 23:50:26 +07:00
tecteun
9ab8a84ff0 slider sends (browser dependent) lots of events, throttle using only unique values. 2021-02-05 22:03:02 +00:00
Marcus Miess
02d981cc2b Changed the ascii arrow to the HTML equivalent. Fixes the problem, where the pad arrow strings got broken. 2021-01-02 00:23:13 +01:00
ericBcreator
1de52c939f
Add files via upload 2020-10-01 20:28:22 +02:00
6506f6fe1c
Fixing sliders not updating properly
Signed-off-by: Lukas Bachschwell <lukas@lbsfilm.at>
2020-08-26 22:16:02 +02:00
eec13e4934
No reload per default, just send JsonDom 2020-08-26 22:15:56 +02:00
ruslan.teliuk@aspose.com
81366af7f1
Add remControl() method for remove contols 2020-08-26 22:13:38 +02:00
585c1608b8
Fix update_gauge typo, Close #69 2020-06-01 18:09:15 +02:00
3afd518399
Connect to correct websocket on different port 2020-01-27 13:13:47 +01:00
9764db9789
Increase timeout for connecting existing network and add continuous slider mode #60 2019-12-28 14:54:41 +01:00
4b0f8e86b4
#10 Enable storing to localstorage 2019-12-27 16:57:11 +01:00
75ec2590f6
Update js stuff 2019-12-27 15:36:12 +01:00
79f509da74 #10 Graph points working
- timestap still not great
2019-04-15 15:32:14 +02:00
Christian Riggenbach
6873052b6e Added new features, removed dependency on unique labels
- added Min/Max/Step for numbers and sliders
- labels don't have to be unique anymore; controls can't be updated by labels
- new Slider: JS + CSS
2019-03-19 09:34:16 +01:00
Christian Riggenbach
7125374fa3 Color of elementes are now updateable, reformatted control.js 2019-03-08 22:24:20 +01:00
Christian Riggenbach
b987828a25 Preselect the right option in the select-input 2019-03-06 00:18:19 +01:00
Christian Riggenbach
6178e4fc22 Added the dropdown-Control
* added the Control
* added the frontend-code
* added the control to the examples "gui-newAPI.ino" and "tabbedGui.ino"
2019-03-04 21:07:39 +01:00
Christian Riggenbach
4ea7928fd5 Added Tabbed View
* new member of Control: parentControl
* changed addControl() to add children of elements
* added some styles in the css
* two new divs in index.html
* added frontend code to controls.js
* added new demo to demonstrate the tabbed view
2019-03-03 23:33:15 +01:00
Christian Riggenbach
50de3dad87 Added tabbedcontent.js (from https://github.com/elboletaire/tabbedcontent) 2019-03-03 23:27:11 +01:00
Christian Riggenbach
6810f7432f Moved examples/gui/data to data/ and adjusted tools/*.py 2019-03-03 21:23:39 +01:00
Christian Riggenbach
8865416331 Updated API
* Sourcecode reindented/reformated, added scopes to all the ifs
* Linked list for holding all the controls
* IDs are autogenerated, Control is now a class
* generalised API for creating controls, removed a lot of redundant code
* a lot of glue for the old API
* check if callback exists before calling it
* Instantation moved out of ESPUI.cpp, must be in the users application
* verbose printing on the serial line dependent of instantation ESPUI(...)
* streamlined begin(...), make authentification optional
2019-03-03 21:13:45 +01:00
2fae44f387 remove color dark, version bump 2019-02-26 16:04:41 +01:00
4f421c84d5 #47 Adding Dark Color, correcting wrong numbering for colors 2019-02-26 12:08:37 +01:00
f31575b50c #43 Sending Initial GUI as one big array
- Added new  INITIAL_GUI Type
- spliting GUI Blob to events in controls js
- formating the json in jsonDom into one big array
2018-12-26 12:35:35 +01:00
7d46a4de96 #9 #21 Adds Text input / Number input Support
also loads of reformating
2018-11-26 18:25:10 +01:00
Dave Kliczbor
d38dac9c4d Bugfix: Inserting htmlentities via jquery requires .html(), not .text() 2018-11-20 20:00:39 +01:00
Dave Kliczbor
3a905e646a Feature: UI reinit on page visible 2018-11-19 22:23:10 +01:00
11422a3b43 Changing text for no connection box 2018-10-28 22:19:14 +01:00
Dave Kliczbor
6219d4302b 'No Connection' label is now clickable to reinitialize 2018-10-28 13:27:31 +01:00
e771320e6a #9 adjusting labels for wraping
renaming datafiles
going on for numbers
2018-05-27 11:47:53 +02:00