Added file filters editable in the Global Settings.
[kdbg.git] / kdbg / prefmisc.cpp
blob6890d17dbdeeddcf433111c2d2244278caa43e02
1 // $Id$
3 // Copyright by Johannes Sixt
4 // This file is under GPL, the GNU General Public Licence
6 #include "prefmisc.h"
7 #if QT_VERSION >= 200
8 #include <klocale.h> /* i18n */
9 #else
10 #include <kapp.h> /* i18n */
11 #endif
12 #include <stdlib.h> /* atoi */
14 PrefMisc::PrefMisc(QWidget* parent) :
15 QWidget(parent, "debugger"),
16 m_grid(this, 6, 2, 10),
17 m_popForeground(this, "pop_fore"),
18 m_backTimeoutLabel(this, "back_to_lab"),
19 m_backTimeout(this, "back_to"),
20 m_tabWidthLabel(this, "tabwidth_lab"),
21 m_tabWidth(this, "tabwidth"),
22 m_sourceFilterLabel(this, "sourcefilter_lab"),
23 m_sourceFilter(this, "sourcefilter"),
24 m_headerFilterLabel(this, "headerfilter_lab"),
25 m_headerFilter(this, "headerfilter")
27 m_popForeground.setText(i18n("&Pop into foreground when program stops"));
28 m_popForeground.setMinimumSize(m_popForeground.sizeHint());
29 m_grid.addMultiCellWidget(&m_popForeground, 0, 0, 0, 1);
30 m_grid.addRowSpacing(0, m_popForeground.sizeHint().height());
32 m_backTimeoutLabel.setText(i18n("Time until window goes &back (in milliseconds):"));
33 m_backTimeoutLabel.setMinimumSize(m_backTimeoutLabel.sizeHint());
34 m_backTimeoutLabel.setBuddy(&m_backTimeout);
35 m_backTimeout.setMinimumSize(m_backTimeout.sizeHint());
36 m_grid.addWidget(&m_backTimeoutLabel, 1, 0);
37 m_grid.addWidget(&m_backTimeout, 1, 1);
39 setupEditGroup(i18n("&Tabstop every (characters):"),
40 m_tabWidthLabel, m_tabWidth, 2);
41 setupEditGroup(i18n("File filter for &source files:"),
42 m_sourceFilterLabel, m_sourceFilter, 3);
43 setupEditGroup(i18n("File filter for &header files:"),
44 m_headerFilterLabel, m_headerFilter, 4);
46 m_grid.setColStretch(1, 10);
47 // last (empty) row gets all the vertical stretch
48 m_grid.setRowStretch(5, 10);
51 void PrefMisc::setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit& edit, int row)
53 labWidget.setText(label);
54 labWidget.setMinimumSize(labWidget.sizeHint());
55 labWidget.setBuddy(&edit);
56 edit.setMinimumSize(edit.sizeHint());
57 m_grid.addWidget(&labWidget, row, 0);
58 m_grid.addWidget(&edit, row, 1);
61 static int readNumeric(const QLineEdit& edit)
63 QString str = edit.text();
64 #if QT_VERSION < 200
65 const char* s = str;
66 #else
67 const char* s = str.latin1();
68 #endif
69 return atoi(s);
72 int PrefMisc::backTimeout() const
74 return readNumeric(m_backTimeout);
77 void PrefMisc::setBackTimeout(int to)
79 QString str;
80 str.setNum(to);
81 m_backTimeout.setText(str);
84 int PrefMisc::tabWidth() const
86 return readNumeric(m_tabWidth);
89 void PrefMisc::setTabWidth(int tw)
91 QString str;
92 str.setNum(tw);
93 m_tabWidth.setText(str);