mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 14:37:46 +00:00
LibGUI: Convert GRadioButton to ObjectPtr
This commit is contained in:
parent
870bc2a4d1
commit
f8d751440b
3 changed files with 11 additions and 6 deletions
|
@ -107,8 +107,8 @@ ObjectPtr<GWindow> create_settings_window(TerminalWidget& terminal, RefPtr<CConf
|
||||||
radio_container->set_size_policy(SizePolicy::Fill, SizePolicy::Fixed);
|
radio_container->set_size_policy(SizePolicy::Fill, SizePolicy::Fixed);
|
||||||
radio_container->set_preferred_size(100, 70);
|
radio_container->set_preferred_size(100, 70);
|
||||||
|
|
||||||
auto* sysbell_radio = new GRadioButton("Use (Audible) System Bell", radio_container);
|
auto sysbell_radio = GRadioButton::construct("Use (Audible) System Bell", radio_container);
|
||||||
auto* visbell_radio = new GRadioButton("Use (Visual) Terminal Bell", radio_container);
|
auto visbell_radio = GRadioButton::construct("Use (Visual) Terminal Bell", radio_container);
|
||||||
sysbell_radio->set_checked(terminal.should_beep());
|
sysbell_radio->set_checked(terminal.should_beep());
|
||||||
visbell_radio->set_checked(!terminal.should_beep());
|
visbell_radio->set_checked(!terminal.should_beep());
|
||||||
sysbell_radio->on_checked = [&terminal](const bool checked) {
|
sysbell_radio->on_checked = [&terminal](const bool checked) {
|
||||||
|
@ -181,8 +181,13 @@ int main(int argc, char** argv)
|
||||||
auto app_menu = make<GMenu>("Terminal");
|
auto app_menu = make<GMenu>("Terminal");
|
||||||
app_menu->add_action(GAction::create("Settings...", load_png("/res/icons/gear16.png"),
|
app_menu->add_action(GAction::create("Settings...", load_png("/res/icons/gear16.png"),
|
||||||
[&](const GAction&) {
|
[&](const GAction&) {
|
||||||
if (!settings_window)
|
if (!settings_window) {
|
||||||
settings_window = create_settings_window(*terminal, config);
|
settings_window = create_settings_window(*terminal, config);
|
||||||
|
settings_window->on_close_request = [&] {
|
||||||
|
settings_window = nullptr;
|
||||||
|
return GWindow::CloseRequestDecision::Close;
|
||||||
|
};
|
||||||
|
}
|
||||||
settings_window->show();
|
settings_window->show();
|
||||||
settings_window->move_to_front();
|
settings_window->move_to_front();
|
||||||
}));
|
}));
|
||||||
|
|
|
@ -33,9 +33,9 @@ int main(int argc, char** argv)
|
||||||
auto* checkbox2 = new GCheckBox("GCheckBox 2", main_widget);
|
auto* checkbox2 = new GCheckBox("GCheckBox 2", main_widget);
|
||||||
checkbox2->set_enabled(false);
|
checkbox2->set_enabled(false);
|
||||||
|
|
||||||
auto* radio1 = new GRadioButton("GRadioButton 1", main_widget);
|
auto radio1 = GRadioButton::construct("GRadioButton 1", main_widget);
|
||||||
(void)radio1;
|
(void)radio1;
|
||||||
auto* radio2 = new GRadioButton("GRadioButton 2", main_widget);
|
auto radio2 = GRadioButton::construct("GRadioButton 2", main_widget);
|
||||||
radio2->set_enabled(false);
|
radio2->set_enabled(false);
|
||||||
|
|
||||||
auto* button1 = new GButton("GButton 1", main_widget);
|
auto* button1 = new GButton("GButton 1", main_widget);
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
class GRadioButton : public GAbstractButton {
|
class GRadioButton : public GAbstractButton {
|
||||||
C_OBJECT(GRadioButton)
|
C_OBJECT(GRadioButton)
|
||||||
public:
|
public:
|
||||||
GRadioButton(const StringView& text, GWidget* parent);
|
|
||||||
virtual ~GRadioButton() override;
|
virtual ~GRadioButton() override;
|
||||||
|
|
||||||
virtual void click() override;
|
virtual void click() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
GRadioButton(const StringView& text, GWidget* parent);
|
||||||
virtual void paint_event(GPaintEvent&) override;
|
virtual void paint_event(GPaintEvent&) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue