From 3c1ed619002389ae20596be4d76279525d66d002 Mon Sep 17 00:00:00 2001 From: Johannes Sixt Date: Sat, 17 Jun 2000 11:52:33 +0000 Subject: [PATCH] Added file filters editable in the Global Settings. --- kdbg/dbgmainwnd.cpp | 20 -------------------- kdbg/dbgmainwnd.h | 2 -- kdbg/mainwndbase.cpp | 18 ++++++++++++++++++ kdbg/mainwndbase.h | 2 ++ kdbg/prefmisc.cpp | 34 ++++++++++++++++++++++++---------- kdbg/prefmisc.h | 12 ++++++++++++ 6 files changed, 56 insertions(+), 32 deletions(-) diff --git a/kdbg/dbgmainwnd.cpp b/kdbg/dbgmainwnd.cpp index d9cae21..c0254f1 100644 --- a/kdbg/dbgmainwnd.cpp +++ b/kdbg/dbgmainwnd.cpp @@ -17,7 +17,6 @@ #include #include "dbgmainwnd.h" #include "debugger.h" -#include "prefdebugger.h" #include "updateui.h" #include "commandids.h" #include "winstack.h" @@ -319,9 +318,6 @@ void DebuggerMainWnd::readProperties(KConfig* config) } const char WindowGroup[] = "Windows"; -const char PreferencesGroup[] = "Preferences"; -const char SourceFileFilter[] = "SourceFileFilter"; -const char HeaderFileFilter[] = "HeaderFileFilter"; void DebuggerMainWnd::saveSettings(KConfig* config) { @@ -329,10 +325,6 @@ void DebuggerMainWnd::saveSettings(KConfig* config) writeDockConfig(config); - config->setGroup(PreferencesGroup); - config->writeEntry(SourceFileFilter, m_sourceFilter); - config->writeEntry(HeaderFileFilter, m_headerFilter); - DebuggerMainWndBase::saveSettings(config); } @@ -342,18 +334,6 @@ void DebuggerMainWnd::restoreSettings(KConfig* config) readDockConfig(config); - config->setGroup(PreferencesGroup); - m_sourceFilter = config->readEntry(SourceFileFilter); - if (m_sourceFilter.isEmpty()) { - m_sourceFilter = - "*.c *.cc *.cpp *.c++ *.C *.CC"; - } - m_headerFilter = config->readEntry(HeaderFileFilter); - if (m_headerFilter.isEmpty()) { - m_headerFilter = - "*.h *.hh *.hpp *.h++"; - } - DebuggerMainWndBase::restoreSettings(config); emit setTabWidth(m_tabWidth); diff --git a/kdbg/dbgmainwnd.h b/kdbg/dbgmainwnd.h index 284f8f3..eb24d77 100644 --- a/kdbg/dbgmainwnd.h +++ b/kdbg/dbgmainwnd.h @@ -59,8 +59,6 @@ protected: QPopupMenu* m_menuWindow; QTimer m_backTimer; - QString m_sourceFilter; - QString m_headerFilter; protected: virtual void closeEvent(QCloseEvent* e); diff --git a/kdbg/mainwndbase.cpp b/kdbg/mainwndbase.cpp index 9dcb7dc..b094fa3 100644 --- a/kdbg/mainwndbase.cpp +++ b/kdbg/mainwndbase.cpp @@ -118,6 +118,8 @@ static void splitCmdStr(const QString& cmd, ValArray& parts) const char defaultTermCmdStr[] = "xterm -name kdbgio -title %T -e sh -c %C"; +const char defaultSourceFilter[] = "*.c *.cc *.cpp *.c++ *.C *.CC"; +const char defaultHeaderFilter[] = "*.h *.hh *.hpp *.h++"; DebuggerMainWndBase::DebuggerMainWndBase() : @@ -131,6 +133,8 @@ DebuggerMainWndBase::DebuggerMainWndBase() : m_popForeground(false), m_backTimeout(1000), m_tabWidth(0), + m_sourceFilter(defaultSourceFilter), + m_headerFilter(defaultHeaderFilter), m_debugger(0) { m_statusActive = i18n("active"); @@ -205,6 +209,8 @@ const char PreferencesGroup[] = "Preferences"; const char PopForeground[] = "PopForeground"; const char BackTimeout[] = "BackTimeout"; const char TabWidth[] = "TabWidth"; +const char SourceFileFilter[] = "SourceFileFilter"; +const char HeaderFileFilter[] = "HeaderFileFilter"; void DebuggerMainWndBase::saveSettings(KConfig* config) { @@ -222,6 +228,8 @@ void DebuggerMainWndBase::saveSettings(KConfig* config) config->writeEntry(PopForeground, m_popForeground); config->writeEntry(BackTimeout, m_backTimeout); config->writeEntry(TabWidth, m_tabWidth); + config->writeEntry(SourceFileFilter, m_sourceFilter); + config->writeEntry(HeaderFileFilter, m_headerFilter); } void DebuggerMainWndBase::restoreSettings(KConfig* config) @@ -246,6 +254,8 @@ void DebuggerMainWndBase::restoreSettings(KConfig* config) m_popForeground = config->readBoolEntry(PopForeground, false); m_backTimeout = config->readNumEntry(BackTimeout, 1000); m_tabWidth = config->readNumEntry(TabWidth, 0); + m_sourceFilter = config->readEntry(SourceFileFilter, m_sourceFilter); + m_headerFilter = config->readEntry(HeaderFileFilter, m_headerFilter); } bool DebuggerMainWndBase::debugProgram(const QString& executable) @@ -500,6 +510,8 @@ void DebuggerMainWndBase::doGlobalOptions() prefMisc.setPopIntoForeground(m_popForeground); prefMisc.setBackTimeout(m_backTimeout); prefMisc.setTabWidth(m_tabWidth); + prefMisc.setSourceFilter(m_sourceFilter); + prefMisc.setHeaderFilter(m_headerFilter); dlg.addTab(&prefDebugger, i18n("&Debugger")); dlg.addTab(&prefMisc, i18n("&Miscellaneous")); @@ -510,6 +522,12 @@ void DebuggerMainWndBase::doGlobalOptions() m_popForeground = prefMisc.popIntoForeground(); m_backTimeout = prefMisc.backTimeout(); m_tabWidth = prefMisc.tabWidth(); + m_sourceFilter = prefMisc.sourceFilter(); + if (m_sourceFilter.isEmpty()) + m_sourceFilter = defaultSourceFilter; + m_headerFilter = prefMisc.headerFilter(); + if (m_headerFilter.isEmpty()) + m_headerFilter = defaultHeaderFilter; } } diff --git a/kdbg/mainwndbase.h b/kdbg/mainwndbase.h index fe449a0..d679d4b 100644 --- a/kdbg/mainwndbase.h +++ b/kdbg/mainwndbase.h @@ -123,6 +123,8 @@ protected: bool m_popForeground; /* whether main wnd raises when prog stops */ int m_backTimeout; /* when wnd goes back */ int m_tabWidth; /* tab width in characters (can be 0) */ + QString m_sourceFilter; + QString m_headerFilter; // the debugger proper QString m_debuggerCmdStr; diff --git a/kdbg/prefmisc.cpp b/kdbg/prefmisc.cpp index f52f54d..6890d17 100644 --- a/kdbg/prefmisc.cpp +++ b/kdbg/prefmisc.cpp @@ -13,12 +13,16 @@ PrefMisc::PrefMisc(QWidget* parent) : QWidget(parent, "debugger"), - m_grid(this, 4, 2, 10), + m_grid(this, 6, 2, 10), m_popForeground(this, "pop_fore"), m_backTimeoutLabel(this, "back_to_lab"), m_backTimeout(this, "back_to"), m_tabWidthLabel(this, "tabwidth_lab"), - m_tabWidth(this, "tabwidth") + m_tabWidth(this, "tabwidth"), + m_sourceFilterLabel(this, "sourcefilter_lab"), + m_sourceFilter(this, "sourcefilter"), + m_headerFilterLabel(this, "headerfilter_lab"), + m_headerFilter(this, "headerfilter") { m_popForeground.setText(i18n("&Pop into foreground when program stops")); m_popForeground.setMinimumSize(m_popForeground.sizeHint()); @@ -32,16 +36,26 @@ PrefMisc::PrefMisc(QWidget* parent) : m_grid.addWidget(&m_backTimeoutLabel, 1, 0); m_grid.addWidget(&m_backTimeout, 1, 1); - m_tabWidthLabel.setText(i18n("&Tabstop every (characters):")); - m_tabWidthLabel.setMinimumSize(m_tabWidthLabel.sizeHint()); - m_tabWidthLabel.setBuddy(&m_tabWidth); - m_tabWidth.setMinimumSize(m_tabWidth.sizeHint()); - m_grid.addWidget(&m_tabWidthLabel, 2, 0); - m_grid.addWidget(&m_tabWidth, 2, 1); + setupEditGroup(i18n("&Tabstop every (characters):"), + m_tabWidthLabel, m_tabWidth, 2); + setupEditGroup(i18n("File filter for &source files:"), + m_sourceFilterLabel, m_sourceFilter, 3); + setupEditGroup(i18n("File filter for &header files:"), + m_headerFilterLabel, m_headerFilter, 4); - m_grid.setColStretch(0, 10); + m_grid.setColStretch(1, 10); // last (empty) row gets all the vertical stretch - m_grid.setRowStretch(3, 10); + m_grid.setRowStretch(5, 10); +} + +void PrefMisc::setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit& edit, int row) +{ + labWidget.setText(label); + labWidget.setMinimumSize(labWidget.sizeHint()); + labWidget.setBuddy(&edit); + edit.setMinimumSize(edit.sizeHint()); + m_grid.addWidget(&labWidget, row, 0); + m_grid.addWidget(&edit, row, 1); } static int readNumeric(const QLineEdit& edit) diff --git a/kdbg/prefmisc.h b/kdbg/prefmisc.h index 53b27a1..feccb24 100644 --- a/kdbg/prefmisc.h +++ b/kdbg/prefmisc.h @@ -26,6 +26,14 @@ protected: QLabel m_tabWidthLabel; QLineEdit m_tabWidth; + + QLabel m_sourceFilterLabel; + QLineEdit m_sourceFilter; + QLabel m_headerFilterLabel; + QLineEdit m_headerFilter; + + void setupEditGroup(const QString& label, QLabel& labWidget, QLineEdit& edit, int row); + public: bool popIntoForeground() const { return m_popForeground.isChecked(); } void setPopIntoForeground(bool pop) { m_popForeground.setChecked(pop); } @@ -33,6 +41,10 @@ public: void setBackTimeout(int to); int tabWidth() const; void setTabWidth(int tw); + QString sourceFilter() const { return m_sourceFilter.text(); } + void setSourceFilter(const QString& f) { m_sourceFilter.setText(f); } + QString headerFilter() const { return m_headerFilter.text(); } + void setHeaderFilter(const QString& f) { m_headerFilter.setText(f); } }; #endif // PREFMISC_H -- 2.11.4.GIT