Commit graph

27 commits

Author SHA1 Message Date
Andreas Kling
bb28c31531 Get rid of the "root widget" concept in WindowManager.
Instead just create a GraphicsBitmap wrapper around the display framebuffer
and teach Painter how to draw directly into a GraphicsBitmap.
2019-01-12 03:42:50 +01:00
Andreas Kling
f603c17136 Merge EventLoopSDL into EventLoop. 2019-01-10 05:28:37 +01:00
Andreas Kling
3e908abfca Start separating out the SDL-related stuff in Widgets. 2019-01-10 05:21:19 +01:00
Andreas Kling
077f1007eb More window manager hacking. Get rid of TerminalWidget for now. 2019-01-10 05:11:07 +01:00
Andreas Kling
ceb373cf71 More window manager hacking. FocusIn/FocusOut events. 2019-01-09 05:40:04 +01:00
Andreas Kling
959a1b0750 Close the MsgBox when clicking the OK button.
This feels vaguely crashy. I haven't tested window/widget destruction
before so there's sure to be bugs.
2018-10-14 01:23:01 +02:00
Andreas Kling
3ebea05996 Add a simple MsgBox() :^) 2018-10-14 00:21:42 +02:00
Andreas Kling
d305c316e1 Add TextBox::onReturnPressed. 2018-10-13 23:19:44 +02:00
Andreas Kling
7a0a7abc52 Try out a signal-like system like this:
auto* b = new Button;
b->onClick = [] (Button&) {
    printf("The button was clicked!\n");
};
2018-10-13 23:01:06 +02:00
Andreas Kling
dfb70ed234 Start working on a simple TextBox widget. 2018-10-13 22:46:34 +02:00
Andreas Kling
1929cb6b71 Implement basic focus. 2018-10-13 17:52:47 +02:00
Andreas Kling
f20977c65f Add a basic Listbox widget. 2018-10-13 00:20:44 +02:00
Andreas Kling
b5ff34174d Label should respect background/foreground color. 2018-10-12 21:00:17 +02:00
Andreas Kling
16576112b0 Add a CheckBox widget. 2018-10-12 14:16:40 +02:00
Andreas Kling
73895ce043 Add a clock widget. 2018-10-12 12:18:59 +02:00
Andreas Kling
6637dec958 Put the font test into its own Window. 2018-10-12 10:06:50 +02:00
Andreas Kling
6f6f9bd84d Window contents move along with the window! 2018-10-12 02:41:27 +02:00
Andreas Kling
02f4d6ef8e Move windowing stuff from AbstractScreen to WindowManager. 2018-10-12 01:11:38 +02:00
Andreas Kling
415c4b90c5 Start adding a Window class. 2018-10-12 01:03:22 +02:00
Andreas Kling
a4491e9630 More hacking on Widgets. 2018-10-11 16:52:40 +02:00
Andreas Kling
c61cbf4234 Start poking at a TerminalWidget. 2018-10-11 02:50:08 +02:00
Andreas Kling
f337616741 More hacking on Widgets. 2018-10-11 01:48:09 +02:00
Andreas Kling
e810120260 Peanut8x8 can paint all the ASCII characters! 2018-10-11 00:56:28 +02:00
Andreas Kling
cb64ff229a More work on the bitmap font. 2018-10-11 00:10:36 +02:00
Andreas Kling
77bac7216c More rage hacking on Widgets. Some very basic text drawing. :^) 2018-10-10 20:06:58 +02:00
Andreas Kling
6f37429f57 Intense hacking on Widgets. 2018-10-10 16:49:36 +02:00
Andreas Kling
8c84f9749e Start working on a Widgets library. 2018-10-10 15:12:38 +02:00