From a962c30df1f56c135be05db10328d81d6eff1cbf Mon Sep 17 00:00:00 2001
From: Kloen <jlcc20@gmail.com>
Date: Mon, 7 Sep 2015 10:33:18 +0200
Subject: [PATCH] citra-qt: Use monospace font on Disassembler and ARM
 Registers

---
 src/citra_qt/debugger/disassembler.cpp | 11 ++++++++++-
 src/citra_qt/debugger/registers.cpp    | 25 +++++++++++++++++++++++++
 2 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/src/citra_qt/debugger/disassembler.cpp b/src/citra_qt/debugger/disassembler.cpp
index d3629bbf67..f23d823e85 100644
--- a/src/citra_qt/debugger/disassembler.cpp
+++ b/src/citra_qt/debugger/disassembler.cpp
@@ -9,6 +9,8 @@
 #include "../bootmanager.h"
 #include "../hotkeys.h"
 
+#include "../util/util.h"
+
 #include "core/memory.h"
 
 #include "core/core.h"
@@ -17,7 +19,6 @@
 #include "core/arm/arm_interface.h"
 #include "core/arm/disassembler/arm_disasm.h"
 
-
 DisassemblerModel::DisassemblerModel(QObject* parent) :
     QAbstractListModel(parent), base_address(0), code_size(0), program_counter(0), selection(QModelIndex()) {
 }
@@ -78,6 +79,14 @@ QVariant DisassemblerModel::data(const QModelIndex& index, int role) const {
             break;
         }
 
+        case Qt::FontRole:
+        {
+            if (index.column() == 0 || index.column() == 1) { // 2 is the symbols column
+                return GetMonospaceFont();
+            }
+            break;
+        }
+
         default:
             break;
     }
diff --git a/src/citra_qt/debugger/registers.cpp b/src/citra_qt/debugger/registers.cpp
index 4174b3945d..97384d5e8e 100644
--- a/src/citra_qt/debugger/registers.cpp
+++ b/src/citra_qt/debugger/registers.cpp
@@ -4,6 +4,8 @@
 
 #include "registers.h"
 
+#include "../util/util.h"
+
 #include "core/core.h"
 #include "core/arm/arm_interface.h"
 
@@ -26,9 +28,32 @@ RegistersWidget::RegistersWidget(QWidget* parent) : QDockWidget(parent) {
         vfp_registers->addChild(child);
     }
 
+    QFont font = GetMonospaceFont();
+
     CreateCPSRChildren();
     CreateVFPSystemRegisterChildren();
 
+    // Set Registers to display in monospace font
+    for (int i = 0; i < core_registers->childCount(); ++i)
+        core_registers->child(i)->setFont(1, font);
+
+    for (int i = 0; i < vfp_registers->childCount(); ++i)
+        vfp_registers->child(i)->setFont(1, font);
+
+    for (int i = 0; i < vfp_system_registers->childCount(); ++i) {
+        vfp_system_registers->child(i)->setFont(1, font);
+        for (int x = 0; x < vfp_system_registers->child(i)->childCount(); ++x) {
+            vfp_system_registers->child(i)->child(x)->setFont(1, font);
+        }
+    }
+    // Set CSPR to display in monospace font
+    cpsr->setFont(1, font);
+    for (int i = 0; i < cpsr->childCount(); ++i) {
+        cpsr->child(i)->setFont(1, font);
+        for (int x = 0; x < cpsr->child(i)->childCount(); ++x) {
+            cpsr->child(i)->child(x)->setFont(1, font);
+        }
+    }
     setEnabled(false);
 }