1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 14:07:46 +00:00

Demos+DevTools+Games: Fix visibility of Object-derivative constructors

Derivatives of Core::Object should be constructed through
ClassName::construct(), to avoid handling ref-counted objects with
refcount zero. Fixing the visibility means that misuses like this are
more difficult.
This commit is contained in:
Ben Wiederhake 2021-10-31 23:38:04 +01:00 committed by Andreas Kling
parent 465af4c4d4
commit 3796d417e0
6 changed files with 9 additions and 5 deletions

View file

@ -218,6 +218,8 @@ class Mandelbrot : public GUI::Frame {
void reset(); void reset();
private: private:
Mandelbrot() = default;
virtual void paint_event(GUI::PaintEvent&) override; virtual void paint_event(GUI::PaintEvent&) override;
virtual void mousedown_event(GUI::MouseEvent& event) override; virtual void mousedown_event(GUI::MouseEvent& event) override;
virtual void mousemove_event(GUI::MouseEvent& event) override; virtual void mousemove_event(GUI::MouseEvent& event) override;

View file

@ -18,11 +18,12 @@ class ClassViewWidget final : public GUI::Widget {
C_OBJECT(ClassViewWidget) C_OBJECT(ClassViewWidget)
public: public:
virtual ~ClassViewWidget() override { } virtual ~ClassViewWidget() override { }
ClassViewWidget();
void refresh(); void refresh();
private: private:
ClassViewWidget();
RefPtr<GUI::TreeView> m_class_tree; RefPtr<GUI::TreeView> m_class_tree;
}; };

View file

@ -14,10 +14,9 @@ namespace HackStudio {
class EvaluateExpressionDialog : public GUI::Dialog { class EvaluateExpressionDialog : public GUI::Dialog {
C_OBJECT(EvaluateExpressionDialog); C_OBJECT(EvaluateExpressionDialog);
public: private:
explicit EvaluateExpressionDialog(Window* parent_window); explicit EvaluateExpressionDialog(Window* parent_window);
private:
void build(Window* parent_window); void build(Window* parent_window);
void handle_evaluation(const String& expression); void handle_evaluation(const String& expression);
void set_output(const StringView& html); void set_output(const StringView& html);

View file

@ -14,7 +14,7 @@ namespace LanguageServers::Cpp {
class ClientConnection final : public LanguageServers::ClientConnection { class ClientConnection final : public LanguageServers::ClientConnection {
C_OBJECT(ClientConnection); C_OBJECT(ClientConnection);
public: private:
ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id) ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id)
: LanguageServers::ClientConnection(move(socket), client_id) : LanguageServers::ClientConnection(move(socket), client_id)
{ {

View file

@ -15,6 +15,7 @@ namespace LanguageServers::Shell {
class ClientConnection final : public LanguageServers::ClientConnection { class ClientConnection final : public LanguageServers::ClientConnection {
C_OBJECT(ClientConnection); C_OBJECT(ClientConnection);
private:
ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id) ClientConnection(NonnullRefPtr<Core::LocalSocket> socket, int client_id)
: LanguageServers::ClientConnection(move(socket), client_id) : LanguageServers::ClientConnection(move(socket), client_id)
{ {

View file

@ -43,7 +43,6 @@ class Field final : public GUI::Frame {
friend class SquareLabel; friend class SquareLabel;
public: public:
Field(GUI::Label& flag_label, GUI::Label& time_label, GUI::Button& face_button, Function<void(Gfx::IntSize)> on_size_changed);
virtual ~Field() override; virtual ~Field() override;
size_t rows() const { return m_rows; } size_t rows() const { return m_rows; }
@ -58,6 +57,8 @@ public:
void reset(); void reset();
private: private:
Field(GUI::Label& flag_label, GUI::Label& time_label, GUI::Button& face_button, Function<void(Gfx::IntSize)> on_size_changed);
virtual void paint_event(GUI::PaintEvent&) override; virtual void paint_event(GUI::PaintEvent&) override;
void on_square_clicked(Square&); void on_square_clicked(Square&);