mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 04:37:34 +00:00
LibCore: Introduce a C_OBJECT macro.
This macro goes at the top of every CObject-derived class like so: class SomeClass : public CObject { C_OBJECT(SomeClass) public: ... At the moment, all it does is create an override for the class_name() getter but in the future this will be used to automatically insert member functions into these classes.
This commit is contained in:
parent
d21a4f7518
commit
a599317624
56 changed files with 70 additions and 105 deletions
|
@ -4,6 +4,7 @@
|
|||
#include <LibDraw/StylePainter.h>
|
||||
|
||||
class GFrame : public GWidget {
|
||||
C_OBJECT(GFrame)
|
||||
public:
|
||||
explicit GFrame(GWidget* parent = nullptr);
|
||||
virtual ~GFrame() override;
|
||||
|
@ -20,8 +21,6 @@ public:
|
|||
Rect frame_inner_rect_for_size(const Size& size) const { return { m_thickness, m_thickness, size.width() - m_thickness * 2, size.height() - m_thickness * 2 }; }
|
||||
Rect frame_inner_rect() const { return frame_inner_rect_for_size(size()); }
|
||||
|
||||
virtual const char* class_name() const override { return "GFrame"; }
|
||||
|
||||
protected:
|
||||
void paint_event(GPaintEvent&) override;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue