mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 13:17:35 +00:00
LibGUI: Remove parent parameter to GUI::Widget constructor
This commit is contained in:
parent
4ce28c32d1
commit
c5d913970a
114 changed files with 207 additions and 313 deletions
|
@ -31,14 +31,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
AbstractButton::AbstractButton(Widget* parent)
|
||||
: AbstractButton({}, parent)
|
||||
{
|
||||
}
|
||||
|
||||
AbstractButton::AbstractButton(const StringView& text, Widget* parent)
|
||||
: Widget(parent)
|
||||
, m_text(text)
|
||||
AbstractButton::AbstractButton(const StringView& text)
|
||||
: m_text(text)
|
||||
{
|
||||
m_auto_repeat_timer = add<Core::Timer>();
|
||||
m_auto_repeat_timer->on_timeout = [this] {
|
||||
|
|
|
@ -60,8 +60,7 @@ public:
|
|||
void set_auto_repeat_interval(int interval) { m_auto_repeat_interval = interval; }
|
||||
|
||||
protected:
|
||||
explicit AbstractButton(Widget* parent = nullptr);
|
||||
AbstractButton(const StringView&, Widget* parent = nullptr);
|
||||
explicit AbstractButton(const StringView& = {});
|
||||
|
||||
virtual void mousedown_event(MouseEvent&) override;
|
||||
virtual void mousemove_event(MouseEvent&) override;
|
||||
|
|
|
@ -39,8 +39,7 @@ namespace GUI {
|
|||
|
||||
static const int minimum_column_width = 2;
|
||||
|
||||
AbstractTableView::AbstractTableView(Widget* parent)
|
||||
: AbstractView(parent)
|
||||
AbstractTableView::AbstractTableView()
|
||||
{
|
||||
set_should_hide_unnecessary_scrollbars(true);
|
||||
}
|
||||
|
|
|
@ -72,7 +72,7 @@ public:
|
|||
|
||||
protected:
|
||||
virtual ~AbstractTableView() override;
|
||||
explicit AbstractTableView(Widget* parent = nullptr);
|
||||
AbstractTableView();
|
||||
|
||||
virtual void did_update_model() override;
|
||||
virtual void mouseup_event(MouseEvent&) override;
|
||||
|
|
|
@ -37,9 +37,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
AbstractView::AbstractView(Widget* parent)
|
||||
: ScrollableWidget(parent)
|
||||
, m_selection(*this)
|
||||
AbstractView::AbstractView()
|
||||
: m_selection(*this)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -73,7 +73,7 @@ public:
|
|||
NonnullRefPtr<Gfx::Font> font_for_index(const ModelIndex&) const;
|
||||
|
||||
protected:
|
||||
explicit AbstractView(Widget* parent = nullptr);
|
||||
AbstractView();
|
||||
virtual ~AbstractView() override;
|
||||
|
||||
virtual void mousedown_event(MouseEvent&) override;
|
||||
|
|
|
@ -36,13 +36,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
Button::Button(Widget* parent)
|
||||
: AbstractButton(parent)
|
||||
{
|
||||
}
|
||||
|
||||
Button::Button(const StringView& text, Widget* parent)
|
||||
: AbstractButton(text, parent)
|
||||
Button::Button(const StringView& text)
|
||||
: AbstractButton(text)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -62,8 +62,7 @@ public:
|
|||
void set_focusable(bool b) { m_focusable = b; }
|
||||
|
||||
protected:
|
||||
Button(const StringView& text, Widget* parent = nullptr);
|
||||
explicit Button(Widget* parent = nullptr);
|
||||
explicit Button(const StringView& text = {});
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -52,13 +52,8 @@ static const int s_checked_bitmap_height = 9;
|
|||
static const int s_box_width = 13;
|
||||
static const int s_box_height = 13;
|
||||
|
||||
CheckBox::CheckBox(Widget* parent)
|
||||
: AbstractButton(parent)
|
||||
{
|
||||
}
|
||||
|
||||
CheckBox::CheckBox(const StringView& text, Widget* parent)
|
||||
: AbstractButton(text, parent)
|
||||
CheckBox::CheckBox(const StringView& text)
|
||||
: AbstractButton(text)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -38,8 +38,7 @@ public:
|
|||
virtual void click() override;
|
||||
|
||||
private:
|
||||
CheckBox(const StringView&, Widget* parent = nullptr);
|
||||
explicit CheckBox(Widget* parent = nullptr);
|
||||
explicit CheckBox(const StringView& = {});
|
||||
|
||||
// These don't make sense for a check box, so hide them.
|
||||
using AbstractButton::auto_repeat_interval;
|
||||
|
|
|
@ -47,8 +47,7 @@ static const char* s_arrow_bitmap_data = {
|
|||
static const int s_arrow_bitmap_width = 9;
|
||||
static const int s_arrow_bitmap_height = 9;
|
||||
|
||||
ColumnsView::ColumnsView(Widget* parent)
|
||||
: AbstractView(parent)
|
||||
ColumnsView::ColumnsView()
|
||||
{
|
||||
set_fill_with_background_color(true);
|
||||
set_background_role(ColorRole::Base);
|
||||
|
|
|
@ -40,8 +40,8 @@ public:
|
|||
virtual ModelIndex index_at_event_position(const Gfx::Point&) const override;
|
||||
|
||||
private:
|
||||
ColumnsView(Widget* parent = nullptr);
|
||||
virtual ~ColumnsView();
|
||||
ColumnsView();
|
||||
virtual ~ColumnsView() override;
|
||||
void push_column(ModelIndex& parent_index);
|
||||
void update_column_sizes();
|
||||
|
||||
|
|
|
@ -35,8 +35,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ComboBox::ComboBox(Widget* parent)
|
||||
: Widget(parent)
|
||||
ComboBox::ComboBox()
|
||||
{
|
||||
m_editor = add<TextBox>();
|
||||
m_editor->on_change = [this] {
|
||||
|
@ -57,11 +56,11 @@ ComboBox::ComboBox(Widget* parent)
|
|||
open();
|
||||
};
|
||||
|
||||
m_list_window = Window::construct(this);
|
||||
m_list_window = add<Window>();
|
||||
// FIXME: This is obviously not a tooltip window, but it's the closest thing to what we want atm.
|
||||
m_list_window->set_window_type(WindowType::Tooltip);
|
||||
|
||||
m_list_view = ListView::construct(nullptr);
|
||||
m_list_view = ListView::construct();
|
||||
m_list_view->horizontal_scrollbar().set_visible(false);
|
||||
m_list_window->set_main_widget(m_list_view);
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ public:
|
|||
Function<void()> on_return_pressed;
|
||||
|
||||
protected:
|
||||
explicit ComboBox(Widget* parent = nullptr);
|
||||
ComboBox();
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -31,8 +31,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
Frame::Frame(Widget* parent)
|
||||
: Widget(parent)
|
||||
Frame::Frame()
|
||||
{
|
||||
set_frame_thickness(2);
|
||||
set_frame_shape(Gfx::FrameShape::Container);
|
||||
|
|
|
@ -49,7 +49,7 @@ public:
|
|||
Gfx::Rect frame_inner_rect() const { return frame_inner_rect_for_size(size()); }
|
||||
|
||||
protected:
|
||||
explicit Frame(Widget* parent = nullptr);
|
||||
Frame();
|
||||
void paint_event(PaintEvent&) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -32,14 +32,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
GroupBox::GroupBox(Widget* parent)
|
||||
: GroupBox({}, parent)
|
||||
{
|
||||
}
|
||||
|
||||
GroupBox::GroupBox(const StringView& title, Widget* parent)
|
||||
: Widget(parent)
|
||||
, m_title(title)
|
||||
GroupBox::GroupBox(const StringView& title)
|
||||
: m_title(title)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -39,8 +39,7 @@ public:
|
|||
void set_title(const StringView&);
|
||||
|
||||
protected:
|
||||
explicit GroupBox(Widget* parent = nullptr);
|
||||
GroupBox(const StringView& title, Widget* parent = nullptr);
|
||||
explicit GroupBox(const StringView& title = {});
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
|
|
|
@ -37,8 +37,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ItemView::ItemView(Widget* parent)
|
||||
: AbstractView(parent)
|
||||
ItemView::ItemView()
|
||||
{
|
||||
set_background_role(ColorRole::Base);
|
||||
set_foreground_role(ColorRole::BaseText);
|
||||
|
|
|
@ -48,7 +48,7 @@ public:
|
|||
virtual ModelIndex index_at_event_position(const Gfx::Point&) const override;
|
||||
|
||||
private:
|
||||
explicit ItemView(Widget* parent = nullptr);
|
||||
ItemView();
|
||||
|
||||
virtual void did_update_model() override;
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
|
|
@ -32,14 +32,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
Label::Label(Widget* parent)
|
||||
: Label({}, parent)
|
||||
{
|
||||
}
|
||||
|
||||
Label::Label(const StringView& text, Widget* parent)
|
||||
: Frame(parent)
|
||||
, m_text(text)
|
||||
Label::Label(const StringView& text)
|
||||
: m_text(text)
|
||||
{
|
||||
set_frame_thickness(0);
|
||||
set_frame_shadow(Gfx::FrameShadow::Plain);
|
||||
|
|
|
@ -52,8 +52,7 @@ public:
|
|||
void size_to_fit();
|
||||
|
||||
protected:
|
||||
explicit Label(Widget* parent = nullptr);
|
||||
Label(const StringView& text, Widget* parent = nullptr);
|
||||
explicit Label(const StringView& text = {});
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
|
|
|
@ -28,8 +28,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
LazyWidget::LazyWidget(Widget* parent)
|
||||
: Widget(parent)
|
||||
LazyWidget::LazyWidget()
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ public:
|
|||
Function<void(LazyWidget&)> on_first_show;
|
||||
|
||||
protected:
|
||||
explicit LazyWidget(Widget* parent = nullptr);
|
||||
LazyWidget();
|
||||
|
||||
private:
|
||||
virtual void show_event(ShowEvent&) override;
|
||||
|
|
|
@ -33,8 +33,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ListView::ListView(Widget* parent)
|
||||
: AbstractView(parent)
|
||||
ListView::ListView()
|
||||
{
|
||||
set_background_role(ColorRole::Base);
|
||||
set_foreground_role(ColorRole::BaseText);
|
||||
|
|
|
@ -33,7 +33,6 @@ namespace GUI {
|
|||
class ListView : public AbstractView {
|
||||
C_OBJECT(ListView)
|
||||
public:
|
||||
explicit ListView(Widget* parent = nullptr);
|
||||
virtual ~ListView() override;
|
||||
|
||||
int item_height() const { return 16; }
|
||||
|
@ -54,6 +53,8 @@ public:
|
|||
void set_model_column(int column) { m_model_column = column; }
|
||||
|
||||
private:
|
||||
ListView();
|
||||
|
||||
virtual void did_update_model() override;
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void doubleclick_event(MouseEvent&) override;
|
||||
|
|
|
@ -77,7 +77,7 @@ public:
|
|||
|
||||
virtual RefPtr<Widget> create_widget() override
|
||||
{
|
||||
auto textbox = TextBox::construct(nullptr);
|
||||
auto textbox = TextBox::construct();
|
||||
textbox->on_return_pressed = [this] {
|
||||
commit();
|
||||
};
|
||||
|
|
|
@ -32,8 +32,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ProgressBar::ProgressBar(Widget* parent)
|
||||
: Frame(parent)
|
||||
ProgressBar::ProgressBar()
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ public:
|
|||
void set_format(Format format) { m_format = format; }
|
||||
|
||||
protected:
|
||||
explicit ProgressBar(Widget* parent = nullptr);
|
||||
ProgressBar();
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
|
|
|
@ -33,13 +33,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
RadioButton::RadioButton(Widget* parent)
|
||||
: RadioButton({}, parent)
|
||||
{
|
||||
}
|
||||
|
||||
RadioButton::RadioButton(const StringView& text, Widget* parent)
|
||||
: AbstractButton(text, parent)
|
||||
RadioButton::RadioButton(const StringView& text)
|
||||
: AbstractButton(text)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -38,8 +38,7 @@ public:
|
|||
virtual void click() override;
|
||||
|
||||
protected:
|
||||
explicit RadioButton(Widget* parent = nullptr);
|
||||
explicit RadioButton(const StringView& text, Widget* parent = nullptr);
|
||||
explicit RadioButton(const StringView& text = {});
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -75,8 +75,7 @@ static Gfx::CharacterBitmap* s_resize_corner_highlights_bitmap;
|
|||
static const int s_resize_corner_bitmap_width = 16;
|
||||
static const int s_resize_corner_bitmap_height = 16;
|
||||
|
||||
ResizeCorner::ResizeCorner(Widget* parent)
|
||||
: Widget(parent)
|
||||
ResizeCorner::ResizeCorner()
|
||||
{
|
||||
set_background_role(ColorRole::Button);
|
||||
set_size_policy(SizePolicy::Fixed, SizePolicy::Fixed);
|
||||
|
|
|
@ -34,7 +34,7 @@ public:
|
|||
virtual ~ResizeCorner() override;
|
||||
|
||||
protected:
|
||||
explicit ResizeCorner(Widget* parent = nullptr);
|
||||
ResizeCorner();
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void mousedown_event(MouseEvent&) override;
|
||||
|
|
|
@ -86,14 +86,8 @@ static Gfx::CharacterBitmap* s_down_arrow_bitmap;
|
|||
static Gfx::CharacterBitmap* s_left_arrow_bitmap;
|
||||
static Gfx::CharacterBitmap* s_right_arrow_bitmap;
|
||||
|
||||
ScrollBar::ScrollBar(Widget* parent)
|
||||
: ScrollBar(Orientation::Vertical, parent)
|
||||
{
|
||||
}
|
||||
|
||||
ScrollBar::ScrollBar(Orientation orientation, Widget* parent)
|
||||
: Widget(parent)
|
||||
, m_orientation(orientation)
|
||||
ScrollBar::ScrollBar(Orientation orientation)
|
||||
: m_orientation(orientation)
|
||||
{
|
||||
m_automatic_scrolling_timer = add<Core::Timer>();
|
||||
if (!s_up_arrow_bitmap)
|
||||
|
|
|
@ -65,8 +65,7 @@ public:
|
|||
};
|
||||
|
||||
private:
|
||||
explicit ScrollBar(Widget* parent = nullptr);
|
||||
explicit ScrollBar(Orientation, Widget* parent = nullptr);
|
||||
explicit ScrollBar(Gfx::Orientation = Gfx::Orientation::Vertical);
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void mousedown_event(MouseEvent&) override;
|
||||
|
|
|
@ -29,17 +29,16 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ScrollableWidget::ScrollableWidget(Widget* parent)
|
||||
: Frame(parent)
|
||||
ScrollableWidget::ScrollableWidget()
|
||||
{
|
||||
m_vertical_scrollbar = ScrollBar::construct(Orientation::Vertical, this);
|
||||
m_vertical_scrollbar = add<ScrollBar>(Orientation::Vertical);
|
||||
m_vertical_scrollbar->set_step(4);
|
||||
m_vertical_scrollbar->on_change = [this](int) {
|
||||
did_scroll();
|
||||
update();
|
||||
};
|
||||
|
||||
m_horizontal_scrollbar = ScrollBar::construct(Orientation::Horizontal, this);
|
||||
m_horizontal_scrollbar = add<ScrollBar>(Orientation::Horizontal);
|
||||
m_horizontal_scrollbar->set_step(4);
|
||||
m_horizontal_scrollbar->set_big_step(30);
|
||||
m_horizontal_scrollbar->on_change = [this](int) {
|
||||
|
@ -47,7 +46,7 @@ ScrollableWidget::ScrollableWidget(Widget* parent)
|
|||
update();
|
||||
};
|
||||
|
||||
m_corner_widget = Widget::construct(this);
|
||||
m_corner_widget = add<Widget>();
|
||||
m_corner_widget->set_fill_with_background_color(true);
|
||||
}
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ public:
|
|||
Gfx::Point to_widget_position(const Gfx::Point& content_position) const;
|
||||
|
||||
protected:
|
||||
explicit ScrollableWidget(Widget* parent = nullptr);
|
||||
ScrollableWidget();
|
||||
virtual void custom_layout() override;
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
virtual void mousewheel_event(MouseEvent&) override;
|
||||
|
|
|
@ -33,14 +33,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
Slider::Slider(Widget* parent)
|
||||
: Slider(Orientation::Horizontal, parent)
|
||||
{
|
||||
}
|
||||
|
||||
Slider::Slider(Orientation orientation, Widget* parent)
|
||||
: Widget(parent)
|
||||
, m_orientation(orientation)
|
||||
Slider::Slider(Orientation orientation)
|
||||
: m_orientation(orientation)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -74,8 +74,7 @@ public:
|
|||
Function<void(int)> on_value_changed;
|
||||
|
||||
protected:
|
||||
explicit Slider(Widget* = nullptr);
|
||||
explicit Slider(Orientation, Widget* = nullptr);
|
||||
explicit Slider(Orientation = Orientation::Vertical);
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void mousedown_event(MouseEvent&) override;
|
||||
|
@ -106,8 +105,8 @@ public:
|
|||
virtual ~VerticalSlider() override {}
|
||||
|
||||
private:
|
||||
explicit VerticalSlider(Widget* parent = nullptr)
|
||||
: Slider(Orientation::Vertical, parent)
|
||||
VerticalSlider()
|
||||
: Slider(Orientation::Vertical)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
@ -118,8 +117,8 @@ public:
|
|||
virtual ~HorizontalSlider() override {}
|
||||
|
||||
private:
|
||||
explicit HorizontalSlider(Widget* parent = nullptr)
|
||||
: Slider(Orientation::Horizontal, parent)
|
||||
HorizontalSlider()
|
||||
: Slider(Orientation::Horizontal)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
|
|
@ -30,8 +30,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
SpinBox::SpinBox(Widget* parent)
|
||||
: Widget(parent)
|
||||
SpinBox::SpinBox()
|
||||
{
|
||||
m_editor = add<TextBox>();
|
||||
m_editor->set_text("0");
|
||||
|
|
|
@ -47,7 +47,7 @@ public:
|
|||
Function<void(int value)> on_change;
|
||||
|
||||
protected:
|
||||
explicit SpinBox(Widget* parent = nullptr);
|
||||
SpinBox();
|
||||
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
|
||||
|
|
|
@ -32,9 +32,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
Splitter::Splitter(Orientation orientation, Widget* parent)
|
||||
: Frame(parent)
|
||||
, m_orientation(orientation)
|
||||
Splitter::Splitter(Orientation orientation)
|
||||
: m_orientation(orientation)
|
||||
{
|
||||
set_background_role(ColorRole::Button);
|
||||
set_layout(make<BoxLayout>(orientation));
|
||||
|
|
|
@ -36,7 +36,7 @@ public:
|
|||
virtual ~Splitter() override;
|
||||
|
||||
protected:
|
||||
Splitter(Gfx::Orientation, Widget* parent = nullptr);
|
||||
explicit Splitter(Gfx::Orientation);
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
|
@ -68,8 +68,8 @@ public:
|
|||
virtual ~VerticalSplitter() override {}
|
||||
|
||||
private:
|
||||
explicit VerticalSplitter(Widget* parent = nullptr)
|
||||
: Splitter(Gfx::Orientation::Vertical, parent)
|
||||
VerticalSplitter()
|
||||
: Splitter(Gfx::Orientation::Vertical)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
@ -80,8 +80,8 @@ public:
|
|||
virtual ~HorizontalSplitter() override {}
|
||||
|
||||
private:
|
||||
explicit HorizontalSplitter(Widget* parent = nullptr)
|
||||
: Splitter(Gfx::Orientation::Horizontal, parent)
|
||||
HorizontalSplitter()
|
||||
: Splitter(Gfx::Orientation::Horizontal)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
|
|
@ -29,8 +29,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
StackWidget::StackWidget(Widget* parent)
|
||||
: Widget(parent)
|
||||
StackWidget::StackWidget()
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ public:
|
|||
Function<void(Widget*)> on_active_widget_change;
|
||||
|
||||
protected:
|
||||
explicit StackWidget(Widget* parent = nullptr);
|
||||
StackWidget();
|
||||
virtual void child_event(Core::ChildEvent&) override;
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
|
||||
|
|
|
@ -34,13 +34,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
StatusBar::StatusBar(Widget* parent)
|
||||
: StatusBar(1, parent)
|
||||
{
|
||||
}
|
||||
|
||||
StatusBar::StatusBar(int label_count, Widget* parent)
|
||||
: Widget(parent)
|
||||
StatusBar::StatusBar(int label_count)
|
||||
{
|
||||
set_size_policy(SizePolicy::Fill, SizePolicy::Fixed);
|
||||
set_preferred_size(0, 20);
|
||||
|
@ -54,7 +48,7 @@ StatusBar::StatusBar(int label_count, Widget* parent)
|
|||
for (auto i = 0; i < label_count; i++)
|
||||
m_labels.append(create_label());
|
||||
|
||||
m_corner = ResizeCorner::construct(this);
|
||||
m_corner = add<ResizeCorner>();
|
||||
}
|
||||
|
||||
StatusBar::~StatusBar()
|
||||
|
@ -63,7 +57,7 @@ StatusBar::~StatusBar()
|
|||
|
||||
NonnullRefPtr<Label> StatusBar::create_label()
|
||||
{
|
||||
auto label = Label::construct(this);
|
||||
auto label = add<Label>();
|
||||
label->set_frame_shadow(Gfx::FrameShadow::Sunken);
|
||||
label->set_frame_shape(Gfx::FrameShape::Panel);
|
||||
label->set_frame_thickness(1);
|
||||
|
|
|
@ -41,8 +41,7 @@ public:
|
|||
void set_text(int index, const StringView&);
|
||||
|
||||
protected:
|
||||
explicit StatusBar(Widget* parent = nullptr);
|
||||
explicit StatusBar(int label_count, Widget* parent = nullptr);
|
||||
explicit StatusBar(int label_count = 1);
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
private:
|
||||
|
|
|
@ -33,8 +33,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
TabWidget::TabWidget(Widget* parent)
|
||||
: Widget(parent)
|
||||
TabWidget::TabWidget()
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@ public:
|
|||
Bottom,
|
||||
};
|
||||
|
||||
explicit TabWidget(Widget* parent = nullptr);
|
||||
virtual ~TabWidget() override;
|
||||
|
||||
TabPosition tab_position() const { return m_tab_position; }
|
||||
|
@ -56,6 +55,8 @@ public:
|
|||
void add_widget(const StringView&, Widget*);
|
||||
|
||||
protected:
|
||||
TabWidget();
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void child_event(Core::ChildEvent&) override;
|
||||
virtual void resize_event(ResizeEvent&) override;
|
||||
|
|
|
@ -38,8 +38,7 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
TableView::TableView(Widget* parent)
|
||||
: AbstractTableView(parent)
|
||||
TableView::TableView()
|
||||
{
|
||||
set_background_role(ColorRole::Base);
|
||||
set_foreground_role(ColorRole::BaseText);
|
||||
|
|
|
@ -36,7 +36,7 @@ public:
|
|||
virtual ~TableView() override;
|
||||
|
||||
protected:
|
||||
explicit TableView(Widget* parent = nullptr);
|
||||
TableView();
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
};
|
||||
|
|
|
@ -28,8 +28,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
TextBox::TextBox(Widget* parent)
|
||||
: TextEditor(TextEditor::SingleLine, parent)
|
||||
TextBox::TextBox()
|
||||
: TextEditor(TextEditor::SingleLine)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ namespace GUI {
|
|||
class TextBox : public TextEditor {
|
||||
C_OBJECT(TextBox)
|
||||
public:
|
||||
explicit TextBox(Widget* parent = nullptr);
|
||||
TextBox();
|
||||
virtual ~TextBox() override;
|
||||
};
|
||||
|
||||
|
|
|
@ -49,14 +49,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
TextEditor::TextEditor(Widget* parent)
|
||||
: TextEditor(Type::MultiLine, parent)
|
||||
{
|
||||
}
|
||||
|
||||
TextEditor::TextEditor(Type type, Widget* parent)
|
||||
: ScrollableWidget(parent)
|
||||
, m_type(type)
|
||||
TextEditor::TextEditor(Type type)
|
||||
: m_type(type)
|
||||
{
|
||||
set_background_role(ColorRole::Base);
|
||||
set_foreground_role(ColorRole::BaseText);
|
||||
|
|
|
@ -130,8 +130,7 @@ public:
|
|||
void set_syntax_highlighter(OwnPtr<SyntaxHighlighter>);
|
||||
|
||||
protected:
|
||||
explicit TextEditor(Widget* parent = nullptr);
|
||||
explicit TextEditor(Type, Widget* parent = nullptr);
|
||||
explicit TextEditor(Type = Type::MultiLine);
|
||||
|
||||
virtual void did_change_font() override;
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
|
|
@ -34,14 +34,8 @@
|
|||
|
||||
namespace GUI {
|
||||
|
||||
ToolBar::ToolBar(Widget* parent)
|
||||
: ToolBar(Orientation::Horizontal, 16, parent)
|
||||
{
|
||||
}
|
||||
|
||||
ToolBar::ToolBar(Orientation orientation, int button_size, Widget* parent)
|
||||
: Widget(parent)
|
||||
, m_button_size(button_size)
|
||||
ToolBar::ToolBar(Orientation orientation, int button_size)
|
||||
: m_button_size(button_size)
|
||||
{
|
||||
if (orientation == Orientation::Horizontal) {
|
||||
set_size_policy(SizePolicy::Fill, SizePolicy::Fixed);
|
||||
|
@ -87,8 +81,7 @@ void ToolBar::add_action(Action& action)
|
|||
class SeparatorWidget final : public Widget {
|
||||
C_OBJECT(SeparatorWidget)
|
||||
public:
|
||||
SeparatorWidget(Widget* parent)
|
||||
: Widget(parent)
|
||||
SeparatorWidget()
|
||||
{
|
||||
set_size_policy(SizePolicy::Fixed, SizePolicy::Fixed);
|
||||
set_preferred_size(8, 22);
|
||||
|
@ -109,7 +102,7 @@ void ToolBar::add_separator()
|
|||
{
|
||||
auto item = make<Item>();
|
||||
item->type = Item::Type::Separator;
|
||||
new SeparatorWidget(this);
|
||||
add<SeparatorWidget>();
|
||||
m_items.append(move(item));
|
||||
}
|
||||
|
||||
|
|
|
@ -43,8 +43,7 @@ public:
|
|||
void set_has_frame(bool has_frame) { m_has_frame = has_frame; }
|
||||
|
||||
protected:
|
||||
explicit ToolBar(Widget* parent = nullptr);
|
||||
explicit ToolBar(Orientation, int button_size, Widget* parent = nullptr);
|
||||
explicit ToolBar(Gfx::Orientation = Gfx::Orientation::Horizontal, int button_size = 16);
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
|
||||
|
|
|
@ -51,8 +51,7 @@ TreeView::MetadataForIndex& TreeView::ensure_metadata_for_index(const ModelIndex
|
|||
return new_metadata_ref;
|
||||
}
|
||||
|
||||
TreeView::TreeView(Widget* parent)
|
||||
: AbstractTableView(parent)
|
||||
TreeView::TreeView()
|
||||
{
|
||||
set_background_role(ColorRole::Base);
|
||||
set_foreground_role(ColorRole::BaseText);
|
||||
|
|
|
@ -41,7 +41,7 @@ public:
|
|||
virtual int item_count() const override;
|
||||
|
||||
protected:
|
||||
explicit TreeView(Widget* parent = nullptr);
|
||||
TreeView();
|
||||
|
||||
virtual void paint_event(PaintEvent&) override;
|
||||
virtual void doubleclick_event(MouseEvent&) override;
|
||||
|
|
|
@ -70,7 +70,7 @@ static HashMap<String, WidgetClassRegistration*>& widget_classes()
|
|||
return *map;
|
||||
}
|
||||
|
||||
WidgetClassRegistration::WidgetClassRegistration(const String& class_name, Function<NonnullRefPtr<Widget>(Widget*)> factory)
|
||||
WidgetClassRegistration::WidgetClassRegistration(const String& class_name, Function<NonnullRefPtr<Widget>()> factory)
|
||||
: m_class_name(class_name)
|
||||
, m_factory(move(factory))
|
||||
{
|
||||
|
@ -93,8 +93,8 @@ const WidgetClassRegistration* WidgetClassRegistration::find(const String& class
|
|||
return widget_classes().get(class_name).value_or(nullptr);
|
||||
}
|
||||
|
||||
Widget::Widget(Widget* parent)
|
||||
: Core::Object(parent, true)
|
||||
Widget::Widget()
|
||||
: Core::Object(nullptr, true)
|
||||
, m_background_role(Gfx::ColorRole::Window)
|
||||
, m_foreground_role(Gfx::ColorRole::WindowText)
|
||||
, m_font(Gfx::Font::default_font())
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
#define REGISTER_GWIDGET(class_name) \
|
||||
extern WidgetClassRegistration registration_##class_name; \
|
||||
WidgetClassRegistration registration_##class_name(#class_name, [](Widget* parent) { return class_name::construct(parent); });
|
||||
WidgetClassRegistration registration_##class_name(#class_name, []() { return class_name::construct(); });
|
||||
|
||||
template<>
|
||||
inline bool Core::is<GUI::Widget>(const Core::Object& object)
|
||||
|
@ -75,18 +75,18 @@ class WidgetClassRegistration {
|
|||
AK_MAKE_NONCOPYABLE(WidgetClassRegistration)
|
||||
AK_MAKE_NONMOVABLE(WidgetClassRegistration)
|
||||
public:
|
||||
WidgetClassRegistration(const String& class_name, Function<NonnullRefPtr<Widget>(Widget*)> factory);
|
||||
WidgetClassRegistration(const String& class_name, Function<NonnullRefPtr<Widget>()> factory);
|
||||
~WidgetClassRegistration();
|
||||
|
||||
String class_name() const { return m_class_name; }
|
||||
NonnullRefPtr<Widget> construct(Widget* parent) const { return m_factory(parent); }
|
||||
NonnullRefPtr<Widget> construct() const { return m_factory(); }
|
||||
|
||||
static void for_each(Function<void(const WidgetClassRegistration&)>);
|
||||
static const WidgetClassRegistration* find(const String& class_name);
|
||||
|
||||
private:
|
||||
String m_class_name;
|
||||
Function<NonnullRefPtr<Widget>(Widget*)> m_factory;
|
||||
Function<NonnullRefPtr<Widget>()> m_factory;
|
||||
};
|
||||
|
||||
class Widget : public Core::Object {
|
||||
|
@ -259,7 +259,7 @@ public:
|
|||
void set_palette(const Gfx::Palette&);
|
||||
|
||||
protected:
|
||||
explicit Widget(Widget* parent = nullptr);
|
||||
Widget();
|
||||
|
||||
virtual void custom_layout() {}
|
||||
virtual void did_change_font() {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue