Commit Graph

166 Commits

Author SHA1 Message Date
26787d8670 Fixed TextBox 2023-02-26 22:48:14 -05:00
cda2d1f0ae Default elements compile 2023-02-26 22:20:17 -05:00
0c39c2dd57 Button takes advantage of the rendering hints 2023-02-16 22:41:07 -05:00
Sasha Koshka
f8240fb518 Created FillRectangleShatter for convenience 2023-02-16 18:19:36 -05:00
56dc9ba54c this just j 2023-02-16 12:35:31 -05:00
a0e7bf1373 Integrated the new text drawer 2023-02-15 18:45:58 -05:00
Sasha Koshka
0c22977693 TextDrawer does not separate whitespace from printables 2023-02-14 18:11:11 -05:00
Sasha Koshka
4d87972235 Hot themeing tweaks 2023-02-14 17:21:05 -05:00
Sasha Koshka
d59b7d812d Stop some redundant rendering in the piano 2023-02-14 17:05:13 -05:00
Sasha Koshka
09f782953e Use FillRectangleClip in List and Container 2023-02-14 16:53:28 -05:00
d18da8b07a Rudimentary text selection with the mouse 2023-02-13 18:29:49 -05:00
21abd147bf Rudimentary text selection with keybaord keys 2023-02-13 12:55:51 -05:00
4bc8566820 Textmanip now operates on a dot instead of a cursor 2023-02-13 01:52:31 -05:00
8ac5108211 Elements are no longer images 2023-02-13 01:49:33 -05:00
9e8e986977 Changes to how scroll bars respond to the mouse
- Left clicking on the gutter jumps to that position
- Right clicking on the gutter scrolls incrementally towards that
  position
- Middle clicking on the gutter pages up or down to that position
2023-02-11 22:17:03 -05:00
2d9a941da8 Lists no longer have stale scroll values when enlarged 2023-02-11 21:45:04 -05:00
c64ce8da67 Container shatters its background before drawing 2023-02-11 21:17:43 -05:00
7f1c3ae870 Added documentation for the sliders 2023-02-11 17:04:50 -05:00
d7a6193c04 Added gain slider 2023-02-11 01:46:12 -05:00
0e3de11203 Fixed a focus issue with ScrollContainer 2023-02-11 00:58:54 -05:00
981c11bd44 Fixed the list widget 2023-02-11 00:18:21 -05:00
dce0321e9b Added a Select() method to List 2023-02-10 22:26:34 -05:00
5e448edb21 Added sliders and made the ADSR controllabe with them 2023-02-10 21:55:59 -05:00
Sasha Koshka
cfc2b5e130 Image element for showing images 2023-02-09 18:34:53 -05:00
Sasha Koshka
2cd670f4cd Improved element documentation 2023-02-09 14:50:24 -05:00
Sasha Koshka
c7bebabed5 Fixed issue where containers would not select themselves prperly 2023-02-09 14:25:55 -05:00
16ce15621e Moar waveforms!!!! 2023-02-09 02:04:58 -05:00
16a0e76145 Removed a bunch of redundant draw calls
Most were related to a but with the keynav api
2023-02-09 01:30:14 -05:00
a0e57921a4 Oh my jod 2023-02-08 14:36:14 -05:00
6936353516 asuhfdjkshlk 2023-02-08 00:22:40 -05:00
3998d842b1 Half-done migration of basic elements 2023-02-07 11:27:59 -05:00
892c74a9da Updated everything else to match 2023-02-02 01:48:38 -05:00
Sasha Koshka
9b22e80f05 Got scroll container working 2023-01-31 18:39:17 -05:00
Sasha Koshka
b0ff1ca0af Vertical stack example works 2023-01-31 18:04:12 -05:00
Sasha Koshka
2f9504b1e4 Fixed wierd inconsistency with element core 2023-01-31 16:18:10 -05:00
Sasha Koshka
ee424b9125 Basic elements conform to new API 2023-01-31 14:54:43 -05:00
801c3ef6f5 Hocus focus 2023-01-30 17:01:47 -05:00
35870951a2 The theming around List makes slightly more sense 2023-01-30 02:22:16 -05:00
174beba79f Added a case specifier to the theme API
This will allow themes to pull off some cool dirty tricks without
screwing anything up
2023-01-30 01:30:13 -05:00
44b9a1e717 List relies more on the bounds insetting from theme 2023-01-29 12:51:43 -05:00
92aeb48a1f Overhauled the theme system
Also added a toggle switch :)
2023-01-29 01:49:01 -05:00
9422ff6198 Added a selectability core to reduce complexity of selectables 2023-01-27 17:55:49 -05:00
Sasha Koshka
b2b2a80a06 Made the stripey sunken background optional 2023-01-26 18:37:44 -05:00
93019b1b38 Fixed Container.HandleSelection
It now handles nested containers properly.
2023-01-26 14:00:54 -05:00
9aea6d8c0f List element's events make more sense
Removed redundant selected entry change event, and added an event
that fires when the user deselects the current element.
2023-01-26 12:05:28 -05:00
48679c8ad2 Added keynav input for lists 2023-01-26 11:53:49 -05:00
Sasha Koshka
5edfbf8110 Added a list example 2023-01-24 16:41:12 -05:00
Sasha Koshka
68f1d052d2 Fixed list minimum bounds calculation when not collapsed 2023-01-24 16:10:25 -05:00
468d4e9dab Various improvements to list 2023-01-23 23:54:12 -05:00
9c24184f24 Added a basic List element 2023-01-23 02:05:09 -05:00
90067a6ded Stripes :))))) 2023-01-21 21:24:02 -05:00
5990496455 Clicking on the scroll gutter scrolls 2023-01-21 21:05:51 -05:00
09eede2c90 Small theming tweaks 2023-01-21 20:58:25 -05:00
92a9c9370d Scrollbars respond to mouse dragging more naturally 2023-01-21 01:24:24 -05:00
d435f5a6a9 Scrollbars can be dragged with the mouse 2023-01-21 01:15:30 -05:00
3e8523f37a TextBox contstrains scroll positions to max 2023-01-20 23:40:59 -05:00
72f604e819 Repeated keys are detected properly
The repeated bool was removed and instead key release events are
*only* sent when the key is actually let go. If an element wants to
listen to repeat presses, it can just listen to press events.
2023-01-20 17:40:28 -05:00
2f53c942ac The scroll wheel scrolls the scroll box 2023-01-20 16:44:07 -05:00
b85285f326 Scroll bars recalculate and draw properly 2023-01-20 15:52:46 -05:00
faf38b96c2 Scrollbar drawing 2023-01-20 15:35:43 -05:00
Sasha Koshka
afd543ce92 Fixed clock and checkbox 2023-01-20 00:42:57 -05:00
Sasha Koshka
4367bba602 Scroll bar background drawing 2023-01-19 18:29:57 -05:00
Sasha Koshka
9c37cb8fef Scroll container mouse pass through 2023-01-19 18:03:50 -05:00
Sasha Koshka
78fb934afe Ok this is overstepping the bounds of this branch 2023-01-19 17:35:19 -05:00
Sasha Koshka
7b8cdd9e04 Container now implements MouseTarget again oops 2023-01-19 16:55:46 -05:00
Sasha Koshka
6f6591f0d0 Layouts now conform to the new API 2023-01-19 16:54:49 -05:00
Sasha Koshka
c813463bb4 Basic elements now conform to the new API (largely untested) 2023-01-19 16:49:34 -05:00
dcc7fcb251 Ok thats it next commit im getting rid of parent hooks 2023-01-19 13:07:27 -05:00
2b45a8f8a0 TextBox is now scrollable 2023-01-18 17:52:05 -05:00
3889cb5252 Added scrollable element interface 2023-01-18 17:32:33 -05:00
b69eb6b62e Tweaked text box scrolling 2023-01-18 16:01:31 -05:00
89881247d0 Text boxes now scroll to their cursor position 2023-01-18 15:56:36 -05:00
873336e029 It is no longer possible to activate disabled buttons 2023-01-18 11:58:42 -05:00
36c5ed40e9 Added event callbacks to text box 2023-01-18 11:56:14 -05:00
48db645f9f Silliness increase 2023-01-18 01:29:59 -05:00
46268c8d02 Disabled inputs can no longer be selected 2023-01-18 01:21:49 -05:00
3ef13955be Placeholders show up again 2023-01-18 01:20:04 -05:00
2bf2baf69e More intelligent text editing with new textmanip system 2023-01-18 01:19:10 -05:00
b03cba57e1 Text drawer now takes in runes instead of a string 2023-01-18 00:42:04 -05:00
85ddb8ace1 Very basic text input 2023-01-18 00:38:58 -05:00
Sasha Koshka
5e3dfeaadd Progress bars
... And also the Do function works now
2023-01-17 20:16:03 -05:00
Sasha Koshka
bc4defac17 Spacers :D 2023-01-17 17:01:35 -05:00
Sasha Koshka
06e0396695 More silliness 2023-01-17 16:46:07 -05:00
Sasha Koshka
5d64788b68 Checkboxes! 2023-01-17 16:38:57 -05:00
7398f146ba Progress? 2023-01-17 10:55:38 -05:00
40bdffc8be Horizontal layouts work nearly perfectly 2023-01-17 01:40:49 -05:00
9459bcd942 Horizontal layouts now take into account flexible elements 2023-01-16 23:58:20 -05:00
e94e170a04 Half-working container flexibility propagation 2023-01-16 23:34:17 -05:00
d9281b139f Labels may request an expanding height change 2023-01-16 18:04:41 -05:00
7754679710 Selectable elements can now request the selection to be moved 2023-01-16 13:49:32 -05:00
93ab47cdc9 Whoops 2023-01-16 12:23:37 -05:00
fb0795ec7b Keynav works flawlessly 2023-01-16 12:21:47 -05:00
354d5f205d Container sort of conforms to the new API
Keynav is half working
2023-01-16 11:54:02 -05:00
410c65c072 Label conforms to new API 2023-01-16 00:36:23 -05:00
5ca4d0be6e Button now conforms to new API 2023-01-16 00:31:04 -05:00
e83dde2d21 Replaced the chiseled box with the chiseled pattern 2023-01-14 21:01:00 -05:00
34bf3038ac Replaced tomo.Image with tomo.Canvas and tomo.Pattern
This is the first step in transitioning the API over to the new
design. The new tomo.Canvas interface gives drawing functions
direct access to data buffers and eliminates overhead associated
with calling functions for every pixel.

The entire artist package will be remade around this.
2023-01-14 01:54:57 -05:00
4f8f80f142 Commented button 2023-01-13 13:51:22 -05:00
Sasha Koshka
1f3e925433 Fixed not setting text drawer max size properly 2023-01-12 18:00:36 -05:00
Sasha Koshka
588c52b30a Added a Warp method to Container for batch updates 2023-01-12 16:02:33 -05:00