3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
6 * \author Michael Koziarski
8 * Full author contact details are available in file CREDITS.
17 #include <gtkmm/radiobutton.h>
18 #include <gtkmm/button.h>
21 : GnomeCB<ControlERT>("GERT")
31 // Connect the buttons.
32 close_btn()->signal_clicked().connect(SigC::slot(*this, &GERT::OKClicked));
35 // Make sure everything is in the correct state.
38 // Manage the read-only aware widgets.
39 bc().addReadOnly(open());
40 bc().addReadOnly(inlined());
41 bc().addReadOnly(collapsed());
46 void GERT::connect_signals()
48 slot_open = open()->signal_clicked().connect(
49 SigC::slot(*this, &GERT::ApplyClicked)
51 slot_collapsed = collapsed()->signal_clicked().connect(
52 SigC::slot(*this, &GERT::ApplyClicked)
54 slot_inlined = inlined()->signal_clicked().connect(
55 SigC::slot(*this, &GERT::ApplyClicked)
60 void GERT::disconnect_signals()
62 slot_open.disconnect();
63 slot_collapsed.disconnect();
64 slot_inlined.disconnect();
71 if (open()->get_active())
72 controller().params().status = InsetERT::Open;
73 else if (collapsed()->get_active())
74 controller().params().status = InsetERT::Collapsed;
76 controller().params().status = InsetERT::Inlined;
84 switch (controller().params().status) {
86 open()->set_active(true);
88 case InsetERT::Collapsed:
89 collapsed()->set_active(true);
91 case InsetERT::Inlined:
92 inlined()->set_active(true);
99 Gtk::Button * GERT::close_btn() const
101 return getWidget<Gtk::Button>("r_close_btn");
103 Gtk::RadioButton * GERT::open() const
105 return getWidget<Gtk::RadioButton>("r_open");
107 Gtk::RadioButton * GERT::collapsed() const
109 return getWidget<Gtk::RadioButton>("r_collapsed");
111 Gtk::RadioButton * GERT::inlined() const
113 return getWidget<Gtk::RadioButton>("r_inlined");