12 : QDialog(parent),
m_ui(
new Ui::SchemaSettings)
13{
15 setObjectName("Settings");
16
18
19 for (auto entry : QStringList{"default/normal unhighlighted text",
20 "active_file/items associated with the active file",
21 "inherited/properties inherited from a parent class",
22 "highlight/highlighted class",
23 "readonly/items from a readonly file",
24 "error/error messages",
25 "note/notes on class diagrams",
26 "line/lines showing inheritance or relationships between classes"}) {
27 auto list = entry.split("/");
28 auto group = list.at(0);
31 for (auto fb: QStringList{"Foreground", "Background"}) {
32 auto item= new QListWidgetItem(group+" "+fb);
33 item->setForeground(fg_colour);
34 item->setBackground(bg_colour);
35 if (list.size()>1) {
36 item->setToolTip(fb+" color for "+list.at(1));
37 }
38 m_ui->color_list->addItem(item);
39 }
40 }
41
42 for (auto entry : QStringList{"default/normal unhighlighted text",
43 "highlight/highlighted class",
44 "abstract/abstract base class",
45 "note/notes on class diagrams",
46 "line/lines showing inheritance or relationships between classes"}) {
47 auto list = entry.split("/");
48 auto group = list.at(0);
49 auto item= new QListWidgetItem(group+" font");
51 if (list.size()>1) {
52 item->setToolTip("Font for "+list.at(1));
53 }
54 m_ui->font_list->addItem(item);
55 }
56
57 connect (
m_ui->color_list, SIGNAL(itemActivated(QListWidgetItem*)),
59 connect (
m_ui->font_list, SIGNAL(itemActivated(QListWidgetItem*)),
60 this, SLOT(
set_font(QListWidgetItem*)));
61
62 QSettings settings;
63 settings.beginGroup("view defaults");
64 m_ui->abstract_button->setChecked(settings.value(
"highlight_abstract",
false).toBool());
65 connect (
m_ui->abstract_button, SIGNAL(stateChanged(
int)),
67 m_ui->active_button->setChecked(settings.value(
"highlight_active",
false).toBool());
68 connect (
m_ui->active_button, SIGNAL(stateChanged(
int)),
70 m_ui->inherited_button->setChecked(settings.value(
"show_inherited",
false).toBool());
71 connect (
m_ui->inherited_button, SIGNAL(stateChanged(
int)),
73 m_ui->default_value_button->setChecked(settings.value(
"show_default",
false).toBool());
74 connect (
m_ui->default_value_button, SIGNAL(stateChanged(
int)),
76 settings.endGroup();
77
78 settings.beginGroup("MainWindow");
79 m_ui->save_settings->setChecked(settings.value(
"saveLayout",
false).toBool());
80 connect (
m_ui->save_settings, SIGNAL(stateChanged(
int)),
82 settings.endGroup();
83}
void toggle_abstract(int)
void toggle_inherited(int)
void set_color(QListWidgetItem *)
void set_font(QListWidgetItem *)
Ui::SchemaSettings * m_ui
static QColor get_color(const QString &item, const QString &group)
static QFont get_font(const QString &group)