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
Sasha Koshka
b9cbf83a18
Added the collapse behavior as an interface
2023-02-16 17:35:53 -05:00
Sasha Koshka
e3369ab3d4
AAAAART!
2023-02-16 14:57:46 -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
dcaf9919e4
Fix thos issue
2023-02-14 02:14:52 -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
7f0462d588
Changed the order of the Theme.Pattern method
2023-02-12 10:58:23 -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
a893831a21
Added a shatter function to subtract rectangles from a rectangle
2023-02-11 21:07:35 -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
a74f9809af
Awesome labels
2023-02-11 01:27:28 -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
6e7cf285cc
Fixed issue with X backend not recognizing key repeats
2023-02-09 17:26:36 -05:00
Sasha Koshka
e3aea7fc9e
Better piano keybinds
2023-02-09 16:36:38 -05:00
Sasha Koshka
5446ffe40b
h a r m o n y
2023-02-09 16:15:02 -05:00
Sasha Koshka
06e97461fa
Note.Octave returns an Octave
2023-02-09 15:06:41 -05:00
Sasha Koshka
b38232ee24
More documentation!
2023-02-09 15:05:13 -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
b15c260dfc
Improved piano styling
2023-02-09 11:38:01 -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
c5ee7c8cdb
The piano plays sound
2023-02-08 23:41:31 -05:00
bec8b817c8
Added a piano widget because why not really
2023-02-08 21:05:36 -05:00
6cc0f36000
Migrated the clock
2023-02-08 15:12:18 -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
0bdbaa39ca
Artist and test examples work
2023-02-03 18:32:22 -05:00
f8ebe5b1e4
Core provides convenience methods for easy theme access
2023-02-03 18:28:01 -05:00
8d90dbdc92
Element core now deals with Config and Theme objects
2023-02-03 18:07:10 -05:00
d79701d01b
X backend conforms to new API
2023-02-03 01:35:59 -05:00
bdf599f93c
Backends must now accept Config and Theme
2023-02-03 01:25:45 -05:00
8ccaa0faba
Added Themeable and Configurable element interfaces
2023-02-03 01:14:03 -05:00
892c74a9da
Updated everything else to match
2023-02-02 01:48:38 -05:00
04d2ea4767
Atomized the functionality of the base tomo package
2023-02-02 01:47:01 -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
d5028317ef
Fun and testing elements conform to new API
2023-01-31 14:57:02 -05:00
Sasha Koshka
ee424b9125
Basic elements conform to new API
2023-01-31 14:54:43 -05:00
Sasha Koshka
537d69b491
Removed Resize, added DrawTo
2023-01-31 14:29:35 -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
912f939f2e
The noise pattern can now be harsh
2023-01-24 18:27:36 -05:00
Sasha Koshka
c9c5f1d251
Added a pseudorandom noise pattern
2023-01-24 18:15:46 -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
Sasha Koshka
28701d01ab
Fixed gradient orientation
2023-01-24 16:02:35 -05:00
Sasha Koshka
d5cb1b27fe
Created an elliptical border pattern
2023-01-24 15:35:00 -05:00
Sasha Koshka
0281b1a203
Gradients!!!!!!!!!!! Holy fucking bingle!!
2023-01-24 14:24:30 -05:00
Sasha Koshka
3949f2af9e
Created a Tiled pattern
2023-01-24 14:08:47 -05:00
269c70ebb1
Fixed up the dotted pattern
2023-01-24 10:25:37 -05:00
31a261d530
Beveled is now structured like QuadBeveled
2023-01-24 00:02:11 -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
83d5064803
Created the split pattern
2023-01-20 23:19:54 -05:00
4c1bf070fe
Chiseled is now called Beveled
2023-01-20 23:00:26 -05:00
a273178a8e
Ellipses now draw properly
2023-01-20 22:13:14 -05:00
39ce5f9ee2
Half-working StrokeEllipse
2023-01-20 21:59:48 -05:00
775e7bd4ca
It is now possible to draw a filled ellipse
2023-01-20 20:52:06 -05:00
6967c40143
Made the drawing time thing better
2023-01-20 20:29:02 -05:00
723f0cf5ef
The artist test can now figure out how fast it took to draw
...
something.
2023-01-20 20:07:01 -05:00
a87d806e54
THICC LINES
2023-01-20 19:52:35 -05:00
268e7981b5
Added some line tests
2023-01-20 19:40:38 -05:00
a71e726016
Created simple bordered pattern
2023-01-20 19:24:21 -05:00
befec471db
Replaced artist.Border with artist.Stroke
2023-01-20 19:07:16 -05:00
8c0956b998
Striped patterns can have alternating weights
2023-01-20 18:57:02 -05:00
740999295e
Added striped patterns
2023-01-20 18:39:08 -05:00
cfbb031500
Created an artist test thingy
2023-01-20 18:05:48 -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
Sasha Koshka
8a72e8bf01
Mouse test now conforms to new API
2023-01-19 15:05:13 -05:00
Sasha Koshka
662d3464e2
Element core now conforms to the new API
2023-01-19 14:44:40 -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
9f91220842
Documented the clock
2023-01-17 17:13:01 -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
Sasha Koshka
99492874ca
Clock forces an aspect ratio
2023-01-17 14:47:07 -05:00
Sasha Koshka
375205a4d2
Core no longer naievely constrains canvas resize dimensions
2023-01-17 14:31:06 -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
21a1a35a26
Mouse test conforms to new API
2023-01-16 00:35:05 -05:00
c20db133fe
AnalogClock conforms to new API
2023-01-16 00:31:57 -05:00
5ca4d0be6e
Button now conforms to new API
2023-01-16 00:31:04 -05:00
0a6858b376
Moved the layouts directory out of elements because they aren't.
2023-01-16 00:03:02 -05:00
1378093c12
Improved some documentation wording regarding Core and CoreControl
2023-01-16 00:02:15 -05:00
88f5cf7749
I changed my mind, having core fulfill Element is a bad idea.
2023-01-15 23:58:23 -05:00
01d8b64b24
Core now conforms to new API
...
Core actually now fulfills the Element interface on its own which
is pretty cool.
2023-01-15 23:48:41 -05:00