From 2ba777415b3b1222adb4b7d1633f1ec993aa90c9 Mon Sep 17 00:00:00 2001 From: hjk <qtc-committer@nokia.com> Date: Fri, 12 Feb 2010 14:15:20 +0100 Subject: [PATCH] debugger/texteditor: Add font and size option to debugger panels, QTCREATORBUG-189 --- src/plugins/debugger/debuggermanager.cpp | 22 ++++++++++++++++++++++ src/plugins/debugger/debuggermanager.h | 2 ++ src/plugins/debugger/debuggerplugin.cpp | 6 ++++++ 3 files changed, 30 insertions(+) diff --git a/src/plugins/debugger/debuggermanager.cpp b/src/plugins/debugger/debuggermanager.cpp index 61d0ba1ce74..06fad14ba01 100644 --- a/src/plugins/debugger/debuggermanager.cpp +++ b/src/plugins/debugger/debuggermanager.cpp @@ -68,6 +68,7 @@ #include <cplusplus/CppDocument.h> #include <cpptools/cppmodelmanagerinterface.h> #include <qt4projectmanager/qt4projectmanagerconstants.h> +#include <texteditor/fontsettings.h> #include <texteditor/itexteditor.h> #include <QtCore/QDebug> @@ -1877,6 +1878,27 @@ QDebug operator<<(QDebug d, DebuggerState state) return d << DebuggerManager::stateName(state) << '(' << int(state) << ')'; } +static void changeFontSize(QWidget *widget, int size) +{ + QFont font = widget->font(); + font.setPointSize(size); + widget->setFont(font); +} + +void DebuggerManager::fontSettingsChanged(const TextEditor::FontSettings &settings) +{ + int size = settings.fontZoom() * settings.fontSize() / 100; + changeFontSize(d->m_localsWindow, size); + changeFontSize(d->m_watchersWindow, size); + changeFontSize(d->m_breakWindow, size); + changeFontSize(d->m_modulesWindow, size); + changeFontSize(d->m_outputWindow, size); + changeFontSize(d->m_registerWindow, size); + changeFontSize(d->m_stackWindow, size); + changeFontSize(d->m_sourceFilesWindow, size); + changeFontSize(d->m_threadsWindow, size); +} + ////////////////////////////////////////////////////////////////////// // // AbstractDebuggerEngine diff --git a/src/plugins/debugger/debuggermanager.h b/src/plugins/debugger/debuggermanager.h index 782dec318f3..55f03a055f6 100644 --- a/src/plugins/debugger/debuggermanager.h +++ b/src/plugins/debugger/debuggermanager.h @@ -59,6 +59,7 @@ class FancyMainWindow; namespace TextEditor { class ITextEditor; +class FontSettings; } namespace CPlusPlus { @@ -321,6 +322,7 @@ private: Q_SLOT void loadSessionData(); Q_SLOT void saveSessionData(); Q_SLOT void dumpLog(); + Q_SLOT void fontSettingsChanged(const TextEditor::FontSettings &settings); public: // stuff in this block should be made private by moving it to diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 54a70bbbee7..67788f74ed9 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -72,6 +72,7 @@ #include <texteditor/basetextmark.h> #include <texteditor/itexteditor.h> #include <texteditor/texteditorconstants.h> +#include <texteditor/texteditorplugin.h> #include <utils/qtcassert.h> #include <utils/styledbar.h> @@ -994,6 +995,11 @@ bool DebuggerPlugin::initialize(const QStringList &arguments, QString *errorMess // Connections // + // TextEditor + connect(TextEditor::TextEditorPlugin::instance(), + SIGNAL(fontSettingsChanged(TextEditor::FontSettings)), + m_manager, SLOT(fontSettingsChanged(TextEditor::FontSettings))); + // ProjectExplorer connect(sessionManager(), SIGNAL(sessionLoaded()), m_manager, SLOT(sessionLoaded())); -- GitLab