GUI: fonts now fully customizable (resolved issue #132)
This commit is contained in:
parent
4e0803882c
commit
bc3db1d2e2
|
@ -12,21 +12,8 @@ AbstractTableView::AbstractTableView(QWidget *parent) : QAbstractScrollArea(pare
|
||||||
data.activeButtonIndex=-1;
|
data.activeButtonIndex=-1;
|
||||||
mHeader = data;
|
mHeader = data;
|
||||||
|
|
||||||
QFont font("Lucida Console", 8, QFont::Normal, false);
|
fontsUpdated();
|
||||||
font.setFixedPitch(true);
|
colorsUpdated();
|
||||||
font.setStyleHint(QFont::Monospace);
|
|
||||||
setFont(font);
|
|
||||||
|
|
||||||
backgroundColor=ConfigColor("AbstractTableViewBackgroundColor");
|
|
||||||
textColor=ConfigColor("AbstractTableViewTextColor");
|
|
||||||
separatorColor=ConfigColor("AbstractTableViewSeparatorColor");
|
|
||||||
headerTextColor=ConfigColor("AbstractTableViewHeaderTextColor");
|
|
||||||
selectionColor=ConfigColor("AbstractTableViewSelectionColor");
|
|
||||||
|
|
||||||
int wRowsHeight = QFontMetrics(this->font()).height();
|
|
||||||
wRowsHeight = (wRowsHeight * 105) / 100;
|
|
||||||
wRowsHeight = (wRowsHeight % 2) == 0 ? wRowsHeight : wRowsHeight + 1;
|
|
||||||
mRowHeight = wRowsHeight;
|
|
||||||
|
|
||||||
mRowCount = 0;
|
mRowCount = 0;
|
||||||
|
|
||||||
|
@ -49,6 +36,7 @@ AbstractTableView::AbstractTableView(QWidget *parent) : QAbstractScrollArea(pare
|
||||||
// Signals/Slots Connections
|
// Signals/Slots Connections
|
||||||
connect(verticalScrollBar(), SIGNAL(actionTriggered(int)), this, SLOT(vertSliderActionSlot(int)));
|
connect(verticalScrollBar(), SIGNAL(actionTriggered(int)), this, SLOT(vertSliderActionSlot(int)));
|
||||||
connect(Config(), SIGNAL(colorsUpdated()), this, SLOT(colorsUpdatedSlot()));
|
connect(Config(), SIGNAL(colorsUpdated()), this, SLOT(colorsUpdatedSlot()));
|
||||||
|
connect(Config(), SIGNAL(fontsUpdated()), this, SLOT(fontsUpdatedSlot()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void AbstractTableView::colorsUpdatedSlot()
|
void AbstractTableView::colorsUpdatedSlot()
|
||||||
|
@ -65,6 +53,16 @@ void AbstractTableView::colorsUpdated()
|
||||||
selectionColor=ConfigColor("AbstractTableViewSelectionColor");
|
selectionColor=ConfigColor("AbstractTableViewSelectionColor");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AbstractTableView::fontsUpdatedSlot()
|
||||||
|
{
|
||||||
|
fontsUpdated();
|
||||||
|
}
|
||||||
|
|
||||||
|
void AbstractTableView::fontsUpdated()
|
||||||
|
{
|
||||||
|
setFont(ConfigFont("AbstractTableView"));
|
||||||
|
}
|
||||||
|
|
||||||
/************************************************************************************
|
/************************************************************************************
|
||||||
Painting Stuff
|
Painting Stuff
|
||||||
************************************************************************************/
|
************************************************************************************/
|
||||||
|
@ -837,7 +835,10 @@ int AbstractTableView::getColumnCount()
|
||||||
|
|
||||||
int AbstractTableView::getRowHeight()
|
int AbstractTableView::getRowHeight()
|
||||||
{
|
{
|
||||||
return mRowHeight;
|
int wRowsHeight = QFontMetrics(this->font()).height();
|
||||||
|
wRowsHeight = (wRowsHeight * 105) / 100;
|
||||||
|
wRowsHeight = (wRowsHeight % 2) == 0 ? wRowsHeight : wRowsHeight + 1;
|
||||||
|
return wRowsHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
int AbstractTableView::getColumnWidth(int index)
|
int AbstractTableView::getColumnWidth(int index)
|
||||||
|
|
|
@ -19,8 +19,9 @@ public:
|
||||||
// Constructor
|
// Constructor
|
||||||
explicit AbstractTableView(QWidget *parent = 0);
|
explicit AbstractTableView(QWidget *parent = 0);
|
||||||
|
|
||||||
//color updates
|
//config updates
|
||||||
virtual void colorsUpdated();
|
virtual void colorsUpdated();
|
||||||
|
virtual void fontsUpdated();
|
||||||
|
|
||||||
// Pure Virtual Methods
|
// Pure Virtual Methods
|
||||||
virtual QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h) = 0;
|
virtual QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h) = 0;
|
||||||
|
@ -87,6 +88,7 @@ signals:
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void colorsUpdatedSlot();
|
void colorsUpdatedSlot();
|
||||||
|
void fontsUpdatedSlot();
|
||||||
|
|
||||||
// Update/Reload/Refresh/Repaint
|
// Update/Reload/Refresh/Repaint
|
||||||
virtual void reloadData();
|
virtual void reloadData();
|
||||||
|
@ -138,7 +140,6 @@ private:
|
||||||
|
|
||||||
QList<Column_t> mColumnList;
|
QList<Column_t> mColumnList;
|
||||||
|
|
||||||
int mRowHeight;
|
|
||||||
int_t mRowCount;
|
int_t mRowCount;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
Disassembly::Disassembly(QWidget *parent) : AbstractTableView(parent)
|
Disassembly::Disassembly(QWidget *parent) : AbstractTableView(parent)
|
||||||
{
|
{
|
||||||
|
fontsUpdated();
|
||||||
mMemPage = new MemoryPage(0, 0);
|
mMemPage = new MemoryPage(0, 0);
|
||||||
|
|
||||||
mInstBuffer.clear();
|
mInstBuffer.clear();
|
||||||
|
@ -44,6 +45,11 @@ void Disassembly::colorsUpdated()
|
||||||
backgroundColor=ConfigColor("DisassemblyBackgroundColor");
|
backgroundColor=ConfigColor("DisassemblyBackgroundColor");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Disassembly::fontsUpdated()
|
||||||
|
{
|
||||||
|
setFont(ConfigFont("Disassembly"));
|
||||||
|
}
|
||||||
|
|
||||||
/************************************************************************************
|
/************************************************************************************
|
||||||
Reimplemented Functions
|
Reimplemented Functions
|
||||||
************************************************************************************/
|
************************************************************************************/
|
||||||
|
@ -397,7 +403,7 @@ QString Disassembly::paintContent(QPainter* painter, int_t rowBase, int rowOffse
|
||||||
else
|
else
|
||||||
BeaTokenizer::TokenToRichText(token, &richText, 0);
|
BeaTokenizer::TokenToRichText(token, &richText, 0);
|
||||||
int xinc = 4;
|
int xinc = 4;
|
||||||
RichTextPainter::paintRichText(painter, x + loopsize, y, getColumnWidth(col) - loopsize, getRowHeight(), xinc, &richText, QFontMetrics(this->font()).width(QChar(' ')));
|
RichTextPainter::paintRichText(painter, x + loopsize, y, getColumnWidth(col) - loopsize, getRowHeight(), xinc, &richText, getCharWidth());
|
||||||
token->x = x + loopsize + xinc;
|
token->x = x + loopsize + xinc;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -17,6 +17,7 @@ class Disassembly : public AbstractTableView
|
||||||
public:
|
public:
|
||||||
explicit Disassembly(QWidget *parent = 0);
|
explicit Disassembly(QWidget *parent = 0);
|
||||||
void colorsUpdated();
|
void colorsUpdated();
|
||||||
|
void fontsUpdated();
|
||||||
|
|
||||||
// Reimplemented Functions
|
// Reimplemented Functions
|
||||||
QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h);
|
QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h);
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
HexDump::HexDump(QWidget *parent) : AbstractTableView(parent)
|
HexDump::HexDump(QWidget *parent) : AbstractTableView(parent)
|
||||||
{
|
{
|
||||||
|
fontsUpdated();
|
||||||
SelectionData_t data;
|
SelectionData_t data;
|
||||||
memset(&data, 0, sizeof(SelectionData_t));
|
memset(&data, 0, sizeof(SelectionData_t));
|
||||||
mSelection = data;
|
mSelection = data;
|
||||||
|
@ -32,6 +33,11 @@ void HexDump::colorsUpdated()
|
||||||
reloadData();
|
reloadData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HexDump::fontsUpdated()
|
||||||
|
{
|
||||||
|
setFont(ConfigFont("HexDump"));
|
||||||
|
}
|
||||||
|
|
||||||
void HexDump::printDumpAt(int_t parVA, bool select)
|
void HexDump::printDumpAt(int_t parVA, bool select)
|
||||||
{
|
{
|
||||||
int_t wBase = DbgMemFindBaseAddr(parVA, 0); //get memory base
|
int_t wBase = DbgMemFindBaseAddr(parVA, 0); //get memory base
|
||||||
|
|
|
@ -83,6 +83,7 @@ public:
|
||||||
|
|
||||||
explicit HexDump(QWidget *parent = 0);
|
explicit HexDump(QWidget *parent = 0);
|
||||||
void colorsUpdated();
|
void colorsUpdated();
|
||||||
|
void fontsUpdated();
|
||||||
|
|
||||||
//QString getStringToPrint(int rowBase, int rowOffset, int col);
|
//QString getStringToPrint(int rowBase, int rowOffset, int col);
|
||||||
void mouseMoveEvent(QMouseEvent* event);
|
void mouseMoveEvent(QMouseEvent* event);
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
#include "ui_AppearanceDialog.h"
|
#include "ui_AppearanceDialog.h"
|
||||||
#include "Bridge.h"
|
#include "Bridge.h"
|
||||||
#include "Configuration.h"
|
#include "Configuration.h"
|
||||||
|
#include <QFontDialog>
|
||||||
|
|
||||||
AppearanceDialog::AppearanceDialog(QWidget *parent) : QDialog(parent), ui(new Ui::AppearanceDialog)
|
AppearanceDialog::AppearanceDialog(QWidget *parent) : QDialog(parent), ui(new Ui::AppearanceDialog)
|
||||||
{
|
{
|
||||||
|
@ -568,6 +569,7 @@ void AppearanceDialog::colorInfoListInit()
|
||||||
|
|
||||||
void AppearanceDialog::fontInit()
|
void AppearanceDialog::fontInit()
|
||||||
{
|
{
|
||||||
|
isInit=true;
|
||||||
//AbstractTableView
|
//AbstractTableView
|
||||||
QFont font=fontMap->find("AbstractTableView").value();
|
QFont font=fontMap->find("AbstractTableView").value();
|
||||||
ui->fontAbstractTables->setCurrentFont(QFont(font.family()));
|
ui->fontAbstractTables->setCurrentFont(QFont(font.family()));
|
||||||
|
@ -654,99 +656,276 @@ void AppearanceDialog::fontInit()
|
||||||
ui->fontHexEditSize->setCurrentIndex(index);
|
ui->fontHexEditSize->setCurrentIndex(index);
|
||||||
//Application
|
//Application
|
||||||
ui->labelApplicationFont->setText(fontMap->find("Application").value().family());
|
ui->labelApplicationFont->setText(fontMap->find("Application").value().family());
|
||||||
|
isInit=false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontAbstractTables_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontAbstractTables_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="AbstractTableView";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontAbstractTablesStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontAbstractTablesStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="AbstractTableView";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontAbstractTablesSize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontAbstractTablesSize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="AbstractTableView";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontDisassembly_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontDisassembly_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="Disassembly";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontDisassemblyStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontDisassemblyStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="Disassembly";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontDisassemblySize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontDisassemblySize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="Disassembly";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexDump_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontHexDump_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="HexDump";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexDumpStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontHexDumpStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="HexDump";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexDumpSize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontHexDumpSize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="HexDump";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontStack_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontStack_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="Stack";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontStackStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontStackStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="Stack";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontStackSize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontStackSize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="Stack";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontRegisters_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontRegisters_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="Registers";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontRegistersStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontRegistersStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="Registers";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontRegistersSize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontRegistersSize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="Registers";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexEdit_currentFontChanged(const QFont &f)
|
void AppearanceDialog::on_fontHexEdit_currentFontChanged(const QFont &f)
|
||||||
{
|
{
|
||||||
|
QString id="HexEdit";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setFamily(f.family());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexEditStyle_currentIndexChanged(int index)
|
void AppearanceDialog::on_fontHexEditStyle_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
|
QString id="HexEdit";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setBold(false);
|
||||||
|
font.setItalic(false);
|
||||||
|
if(index==1 || index==3)
|
||||||
|
font.setBold(true);
|
||||||
|
if(index==2 || index==3)
|
||||||
|
font.setItalic(true);
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_fontHexEditSize_currentIndexChanged(const QString &arg1)
|
void AppearanceDialog::on_fontHexEditSize_currentIndexChanged(const QString &arg1)
|
||||||
{
|
{
|
||||||
|
QString id="HexEdit";
|
||||||
|
QFont font=fontMap->find(id).value();
|
||||||
|
font.setPointSize(arg1.toInt());
|
||||||
|
(*fontMap)[id]=font;
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearanceDialog::on_buttonApplicationFont_clicked()
|
void AppearanceDialog::on_buttonApplicationFont_clicked()
|
||||||
{
|
{
|
||||||
|
QString id="Application";
|
||||||
|
QFontDialog fontDialog(this);
|
||||||
|
fontDialog.setCurrentFont(fontMap->find(id).value());
|
||||||
|
if(fontDialog.exec()!=QDialog::Accepted)
|
||||||
|
return;
|
||||||
|
(*fontMap)[id]=fontDialog.currentFont();
|
||||||
|
ui->labelApplicationFont->setText(fontDialog.currentFont().family());
|
||||||
|
if(isInit)
|
||||||
|
return;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
|
}
|
||||||
|
|
||||||
|
void AppearanceDialog::on_buttonFontDefaults_clicked()
|
||||||
|
{
|
||||||
|
(*fontMap)=Config()->defaultFonts;
|
||||||
|
isInit=true;
|
||||||
|
fontInit();
|
||||||
|
isInit=false;
|
||||||
|
Config()->writeFonts();
|
||||||
|
GuiUpdateAllViews();
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,6 +72,7 @@ private slots:
|
||||||
void on_fontHexEditStyle_currentIndexChanged(int index);
|
void on_fontHexEditStyle_currentIndexChanged(int index);
|
||||||
void on_fontHexEditSize_currentIndexChanged(const QString &arg1);
|
void on_fontHexEditSize_currentIndexChanged(const QString &arg1);
|
||||||
void on_buttonApplicationFont_clicked();
|
void on_buttonApplicationFont_clicked();
|
||||||
|
void on_buttonFontDefaults_clicked();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::AppearanceDialog *ui;
|
Ui::AppearanceDialog *ui;
|
||||||
|
@ -93,6 +94,8 @@ private:
|
||||||
QAction* defaultValueAction;
|
QAction* defaultValueAction;
|
||||||
QAction* currentSettingAction;
|
QAction* currentSettingAction;
|
||||||
|
|
||||||
|
bool isInit;
|
||||||
|
|
||||||
void colorInfoListAppend(QString propertyName, QString colorName, QString backgroundColorName);
|
void colorInfoListAppend(QString propertyName, QString colorName, QString backgroundColorName);
|
||||||
void colorInfoListInit();
|
void colorInfoListInit();
|
||||||
void fontInit();
|
void fontInit();
|
||||||
|
|
|
@ -703,6 +703,19 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="buttonFontDefaults">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>&Defaults</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="layoutWidget">
|
<widget class="QWidget" name="layoutWidget">
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
CPUStack::CPUStack(QWidget *parent) : HexDump(parent)
|
CPUStack::CPUStack(QWidget *parent) : HexDump(parent)
|
||||||
{
|
{
|
||||||
|
fontsUpdated();
|
||||||
setShowHeader(false);
|
setShowHeader(false);
|
||||||
int charwidth=getCharWidth();
|
int charwidth=getCharWidth();
|
||||||
ColumnDescriptor_t wColDesc;
|
ColumnDescriptor_t wColDesc;
|
||||||
|
@ -48,6 +49,11 @@ void CPUStack::colorsUpdated()
|
||||||
selectionColor=ConfigColor("StackSelectionColor");
|
selectionColor=ConfigColor("StackSelectionColor");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CPUStack::fontsUpdated()
|
||||||
|
{
|
||||||
|
setFont(ConfigFont("Stack"));
|
||||||
|
}
|
||||||
|
|
||||||
void CPUStack::setupContextMenu()
|
void CPUStack::setupContextMenu()
|
||||||
{
|
{
|
||||||
//Binary menu
|
//Binary menu
|
||||||
|
|
|
@ -16,6 +16,7 @@ class CPUStack : public HexDump
|
||||||
public:
|
public:
|
||||||
explicit CPUStack(QWidget *parent = 0);
|
explicit CPUStack(QWidget *parent = 0);
|
||||||
void colorsUpdated();
|
void colorsUpdated();
|
||||||
|
void fontsUpdated();
|
||||||
QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h);
|
QString paintContent(QPainter* painter, int_t rowBase, int rowOffset, int col, int x, int y, int w, int h);
|
||||||
void contextMenuEvent(QContextMenuEvent* event);
|
void contextMenuEvent(QContextMenuEvent* event);
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ HexEditDialog::HexEditDialog(QWidget *parent) :
|
||||||
|
|
||||||
//setup hex editor
|
//setup hex editor
|
||||||
mHexEdit = new QHexEdit(this);
|
mHexEdit = new QHexEdit(this);
|
||||||
|
mHexEdit->setEditFont(ConfigFont("HexEdit"));
|
||||||
mHexEdit->setHorizontalSpacing(6);
|
mHexEdit->setHorizontalSpacing(6);
|
||||||
mHexEdit->setOverwriteMode(true);
|
mHexEdit->setOverwriteMode(true);
|
||||||
mHexEdit->setTextColor(ConfigColor("HexEditTextColor"));
|
mHexEdit->setTextColor(ConfigColor("HexEditTextColor"));
|
||||||
|
|
|
@ -190,18 +190,8 @@ RegistersView::RegistersView(QWidget * parent) : QAbstractScrollArea(parent), mV
|
||||||
mRegisterMapping.insert(DR7,"DR7");
|
mRegisterMapping.insert(DR7,"DR7");
|
||||||
mRegisterPlaces.insert(DR7,Register_Position(offset+16,0, 4, sizeof(uint_t) * 2));
|
mRegisterPlaces.insert(DR7,Register_Position(offset+16,0, 4, sizeof(uint_t) * 2));
|
||||||
|
|
||||||
//set font
|
fontsUpdatedSlot();
|
||||||
QFont font("Monospace", 8, QFont::Normal, false);
|
connect(Config(), SIGNAL(fontsUpdated()), this, SLOT(fontsUpdatedSlot()));
|
||||||
font.setFixedPitch(true);
|
|
||||||
font.setStyleHint(QFont::Monospace);
|
|
||||||
QAbstractScrollArea::setFont(font);
|
|
||||||
|
|
||||||
|
|
||||||
int wRowsHeight = QFontMetrics(this->font()).height();
|
|
||||||
wRowsHeight = (wRowsHeight * 105) / 100;
|
|
||||||
wRowsHeight = (wRowsHeight % 2) == 0 ? wRowsHeight : wRowsHeight + 1;
|
|
||||||
mRowHeight = wRowsHeight;
|
|
||||||
mCharWidth = QFontMetrics(this->font()).averageCharWidth();
|
|
||||||
|
|
||||||
memset(&wRegDumpStruct, 0, sizeof(REGDUMP));
|
memset(&wRegDumpStruct, 0, sizeof(REGDUMP));
|
||||||
memset(&wCipRegDumpStruct, 0, sizeof(REGDUMP));
|
memset(&wCipRegDumpStruct, 0, sizeof(REGDUMP));
|
||||||
|
@ -237,6 +227,17 @@ RegistersView::~RegistersView()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RegistersView::fontsUpdatedSlot()
|
||||||
|
{
|
||||||
|
setFont(ConfigFont("Registers"));
|
||||||
|
int wRowsHeight = QFontMetrics(this->font()).height();
|
||||||
|
wRowsHeight = (wRowsHeight * 105) / 100;
|
||||||
|
wRowsHeight = (wRowsHeight % 2) == 0 ? wRowsHeight : wRowsHeight + 1;
|
||||||
|
mRowHeight = wRowsHeight;
|
||||||
|
mCharWidth = QFontMetrics(this->font()).averageCharWidth();
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief retrieves the register id from given corrdinates of the viewport
|
* @brief retrieves the register id from given corrdinates of the viewport
|
||||||
* @param line
|
* @param line
|
||||||
|
|
|
@ -90,6 +90,7 @@ protected:
|
||||||
void displayEditDialog();
|
void displayEditDialog();
|
||||||
|
|
||||||
protected slots:
|
protected slots:
|
||||||
|
void fontsUpdatedSlot();
|
||||||
void onIncrementAction();
|
void onIncrementAction();
|
||||||
void onDecrementAction();
|
void onDecrementAction();
|
||||||
void onZeroAction();
|
void onZeroAction();
|
||||||
|
|
Loading…
Reference in New Issue