summaryrefslogtreecommitdiff
path: root/LibGUI/GButton.cpp
AgeCommit message (Collapse)Author
2019-02-28LibGUI: Clip to paint event rect in most widgets.Andreas Kling
2019-02-20LibGUI: Implement enter/leave events (with WindowServer support.)Andreas Kling
Windows now learn when the mouse cursor leaves or enters them. Use this to implement GWidget::{enter,leave}_event() and use that to implement the CoolBar button effect. :^)
2019-02-20LibGUI: Support different button styles.Andreas Kling
I want to try an MS Office 97 "CoolBar" inspired look for my toolbars. This is only the painting support, we still need hover events to implement the actual effect.
2019-02-19WindowServer: Support windows with alpha channels. And per-WSWindow opacity.Andreas Kling
This patch also adds a Format concept to GraphicsBitmap. For now there are only two formats: RGB32 and RGBA32. Windows with alpha channel have their backing stores created in the RGBA32 format. Use this to make Terminal windows semi-transparent for that comfy rice look. There is one problem here, in that window compositing overdraw incurs multiple passes of blending of the same pixels. This leads to a mismatch in opacity which is obviously not good. I will work on this in a later patch. The alpha blending is currently straight C++. It should be relatively easy to optimize this using SSE instructions. For now I'm just happy with the cute effect. :^)
2019-02-11WindowServer: More work on menus.Andreas Kling
2019-02-10LibGUI: Share code for widget rendering styles in a GStyle class.Andreas Kling
Since GScrollBar wants its internal buttons to look like GButtons, let's share the painting code between them.
2019-02-07Start working on a simple Launcher app.Andreas Kling
Let GButton have an optional icon (GraphicsBitmap) that gets rendered in the middle of the button if present. Also add GraphicsBitmap::load_from_file() which allows mmap'ed RGBA32 files. I wrote a little program to take "raw" files from GIMP and swizzle them into the correct byte order.
2019-02-05SharedGraphics: Add some useful painting helpers and make use of them.Andreas Kling
2019-02-05Rename LizaBold to LizaRegular and LizaBlack to LizaBold.Andreas Kling
LizaRegular is quickly becoming my favorite bitmap font. It's so pretty :^)
2019-02-04LibGUI: Use LizaBold as the default button font.Andreas Kling
2019-01-27LibGUI: GButton should only react to the left mouse button (for pushing.)Andreas Kling
2019-01-27Make buttons unpress when the cursor leaves the button rect.Andreas Kling
Implement this functionality by adding global cursor tracking. It's currently only possible for one GWidget per GWindow to track the cursor.
2019-01-25Kernel: Implement lazy FPU state restore.Andreas Kling
2019-01-21LibGUI: Mass coding style fixes.Andreas Kling
2019-01-21guitest2: Add a simple launcher so I can easily spawn more Terminals.Andreas Kling
Also update GButton coding style.
2019-01-20Rename all the LibGUI classes to GClassName.Andreas Kling