1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2026-01-17 20:41:00 +00:00
serenity/SharedGraphics/Size.h
Andreas Kling 887b4a7a1a Start working on a simple Launcher app.
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-07 23:17:06 +01:00

33 lines
675 B
C++

#pragma once
struct GUI_Size;
class Size {
public:
Size() { }
Size(int w, int h) : m_width(w), m_height(h) { }
Size(const GUI_Size&);
bool is_empty() const { return !m_width || !m_height; }
int width() const { return m_width; }
int height() const { return m_height; }
int area() const { return width() * height(); }
void set_width(int w) { m_width = w; }
void set_height(int h) { m_height = h; }
bool operator==(const Size& other) const
{
return m_width == other.m_width &&
m_height == other.m_height;
}
operator GUI_Size() const;
private:
int m_width { 0 };
int m_height { 0 };
};