summaryrefslogtreecommitdiff
path: root/src/pmchart/settingsdialog.h
blob: 91a6df83593c465d9e66deeff5ab061dea915ce2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
/*
 * Copyright (c) 2014 Red Hat.
 * Copyright (c) 2007, 2009, Aconex.  All Rights Reserved.
 * 
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2 of the License, or (at your
 * option) any later version.
 * 
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * for more details.
 */
#ifndef SETTINGSDIALOG_H
#define SETTINGSDIALOG_H

#include "ui_settingsdialog.h"
#include "colorbutton.h"
#include "colorscheme.h"
#include <qmc_time.h>

class SettingsDialog : public QDialog, public Ui::SettingsDialog
{
    Q_OBJECT

public:
    SettingsDialog(QWidget* parent);
    void enableUi();
    void reset();

    void newScheme();
    int colorArray(ColorButton *** array);

public slots:
    virtual void settingsTab_currentChanged(int index);

    virtual void chartDeltaLineEdit_editingFinished();
    virtual void loggerDeltaLineEdit_editingFinished();
    virtual void chartDeltaUnitsComboBox_activated(int value);
    virtual void loggerDeltaUnitsComboBox_activated(int value);
    virtual void visible_valueChanged(int value);
    virtual void sample_valueChanged(int value);

    virtual void selectedHighlightButton_clicked();
    virtual void defaultBackgroundButton_clicked();
    virtual void colorButtonClicked(int);
    virtual void removeSchemeButton_clicked();
    virtual void updateSchemeButton_clicked();
    virtual void schemeComboBox_currentIndexChanged(int);

    virtual void familyLineEdit_editingFinished();
    virtual void familyListWidget_itemClicked(QListWidgetItem *);
    virtual void styleLineEdit_editingFinished();
    virtual void styleListWidget_itemClicked(QListWidgetItem *);
    virtual void sizeLineEdit_editingFinished();
    virtual void sizeListWidget_itemClicked(QListWidgetItem *);
    virtual void resetFontButton_clicked();
    virtual void applyFontButton_clicked();

    virtual void hostButton_clicked();
    virtual void savedHostsListWidget_itemSelectionChanged();
    virtual void removeHostButton_clicked();
    virtual void addHostButton_clicked();

    virtual void startupToolbarCheckBox_clicked();
    virtual void nativeToolbarCheckBox_clicked();
    virtual void toolbarAreasComboBox_currentIndexChanged(int);
    virtual void actionListWidget_itemClicked(QListWidgetItem *);

protected slots:
    virtual void languageChange();

    virtual void colorButton1_clicked() { colorButtonClicked(1); }
    virtual void colorButton2_clicked() { colorButtonClicked(2); }
    virtual void colorButton3_clicked() { colorButtonClicked(3); }
    virtual void colorButton4_clicked() { colorButtonClicked(4); }
    virtual void colorButton5_clicked() { colorButtonClicked(5); }
    virtual void colorButton6_clicked() { colorButtonClicked(6); }
    virtual void colorButton7_clicked() { colorButtonClicked(7); }
    virtual void colorButton8_clicked() { colorButtonClicked(8); }
    virtual void colorButton9_clicked() { colorButtonClicked(9); }
    virtual void colorButton10_clicked() { colorButtonClicked(10); }
    virtual void colorButton11_clicked() { colorButtonClicked(11); }
    virtual void colorButton12_clicked() { colorButtonClicked(12); }
    virtual void colorButton13_clicked() { colorButtonClicked(13); }
    virtual void colorButton14_clicked() { colorButtonClicked(14); }
    virtual void colorButton15_clicked() { colorButtonClicked(15); }
    virtual void colorButton16_clicked() { colorButtonClicked(16); }
    virtual void colorButton17_clicked() { colorButtonClicked(17); }
    virtual void colorButton18_clicked() { colorButtonClicked(18); }
    virtual void colorButton19_clicked() { colorButtonClicked(19); }
    virtual void colorButton20_clicked() { colorButtonClicked(20); }
    virtual void colorButton21_clicked() { colorButtonClicked(21); }
    virtual void colorButton22_clicked() { colorButtonClicked(22); }

private:
    // font preferences
    void setupFontLists();
    void updateFontList(QListWidget *, const QString &);

    // hosts preferences
    void setupSavedHostsList();
    void setupHostComboBox(const QString &);

    // toolbar preferences
    void setupActionsList();

    // colors preferences
    void setupSchemePalette();
    void setupSchemeComboBox();
    ColorScheme *lookupScheme(QString);
    void updateSchemeColors(ColorScheme *);

    // sampling preferences
    void displayTotalSlider();
    void displayVisibleSlider();
    void displayTotalCounter();
    void displayVisibleCounter();

    struct {
	QmcTime::DeltaUnits chartUnits;
	QmcTime::DeltaUnits loggerUnits;
	int visibleHistory;
	int sampleHistory;
	QString newScheme;
    } my;

    QBrush enabled, disabled; // brushes for painting action list backgrounds
};

#endif // SETTINGSDIALOG_H