mirror of
https://github.com/chris2511/xca.git
synced 2026-09-14 11:06:19 +05:00
Close #635: Inconsistent font size.
Don't use monospaced font for the table by default. Allow setting a different, especially a monospaced font for the table and remember it globally.
This commit is contained in:
parent
196219283b
commit
7428170b2d
@ -24,7 +24,6 @@ KeyDetail::KeyDetail(QWidget *w) : XcaDetail(w)
|
||||
{
|
||||
setupUi(this);
|
||||
|
||||
keyModulus->setFont(XcaApplication::tableFont);
|
||||
tabWidget->setCurrentIndex(0);
|
||||
init("keydetail", ":keyImg");
|
||||
}
|
||||
|
||||
@ -174,10 +174,14 @@ void MainWindow::init_menu()
|
||||
SLOT(exportIndexHierarchy()));
|
||||
acList += extra->addAction(tr("C&hange DataBase password"), this,
|
||||
SLOT(changeDbPass()));
|
||||
#if 0
|
||||
acList += extra->addAction(tr("&Undelete items"), this,
|
||||
SLOT(undelete()));
|
||||
#endif
|
||||
|
||||
extra->addSeparator();
|
||||
acList += extra->addAction(tr("Change table font"), this,
|
||||
SLOT(changeTableFont()));
|
||||
acList += extra->addAction(tr("Reset table font"), this,
|
||||
SLOT(resetTableFont()));
|
||||
extra->addSeparator();
|
||||
|
||||
extra->addAction(tr("Generate DH parameter"), this,
|
||||
SLOT(generateDHparam()));
|
||||
extra->addAction(tr("OID Resolver"), resolver, SLOT(show()));
|
||||
|
||||
@ -23,6 +23,7 @@
|
||||
#include <QThread>
|
||||
#include <QMimeData>
|
||||
#include <QInputDialog>
|
||||
#include <QFontDialog>
|
||||
|
||||
#include <openssl/err.h>
|
||||
|
||||
@ -72,6 +73,11 @@ void MainWindow::initResolver()
|
||||
resolver->searchOid(search);
|
||||
}
|
||||
|
||||
static QString tableFontFileName()
|
||||
{
|
||||
return getUserSettingsDir() + "/tablefont";
|
||||
}
|
||||
|
||||
MainWindow::MainWindow() : QMainWindow()
|
||||
{
|
||||
dbindex = new QLabel();
|
||||
@ -112,6 +118,13 @@ MainWindow::MainWindow() : QMainWindow()
|
||||
EVP_add_digest_alias(SN_sha512,SN_ecdsa_with_SHA512);
|
||||
|
||||
setAcceptDrops(true);
|
||||
tableFont = QApplication::font();
|
||||
QFile file(tableFontFileName());
|
||||
if (file.open(QIODevice::ReadOnly)) {
|
||||
QString line = QString::fromUtf8(file.readLine()).trimmed();
|
||||
bool res = tableFont.fromString(line);
|
||||
qDebug() << "Table font LOAD:" << line << res;
|
||||
}
|
||||
|
||||
searchEdit = new QLineEdit();
|
||||
searchEdit->setPlaceholderText(tr("Search"));
|
||||
@ -126,8 +139,10 @@ MainWindow::MainWindow() : QMainWindow()
|
||||
|
||||
pki_base::setupColors(palette());
|
||||
|
||||
foreach(XcaTreeView *v, views)
|
||||
foreach(XcaTreeView *v, views) {
|
||||
v->setMainwin(this, searchEdit);
|
||||
v->setFont(tableFont);
|
||||
}
|
||||
|
||||
XcaProgress::setGui(new XcaProgressGui(this));
|
||||
xcaWarning::setGui(new xcaWarningGui());
|
||||
@ -800,15 +815,17 @@ void MainWindow::keyPressEvent(QKeyEvent *e)
|
||||
QMainWindow::keyPressEvent(e);
|
||||
return;
|
||||
}
|
||||
int size = XcaApplication::tableFont.pointSize();
|
||||
int size = tableFont.pointSize();
|
||||
|
||||
switch (e->key()) {
|
||||
case Qt::Key_Plus:
|
||||
XcaApplication::tableFont.setPointSize(size +1);
|
||||
tableFont.setPointSize(size +1);
|
||||
updateTableFont(tableFont);
|
||||
break;
|
||||
case Qt::Key_Minus:
|
||||
if (size > 4) {
|
||||
XcaApplication::tableFont.setPointSize(size -1);
|
||||
tableFont.setPointSize(size -1);
|
||||
updateTableFont(tableFont);
|
||||
}
|
||||
break;
|
||||
case Qt::Key_V:
|
||||
@ -846,3 +863,41 @@ void MainWindow::default_database()
|
||||
{
|
||||
Database.as_default();
|
||||
}
|
||||
|
||||
void MainWindow::changeTableFont()
|
||||
{
|
||||
QFontDialog dlg(tableFont, this);
|
||||
connect(&dlg, SIGNAL(currentFontChanged(const QFont &)),
|
||||
this, SLOT(updateTableFont(const QFont &)));
|
||||
|
||||
if (dlg.exec() == QDialog::Accepted)
|
||||
tableFont = dlg.selectedFont();
|
||||
|
||||
qDebug() << tableFont.toString();
|
||||
|
||||
QFile file(tableFontFileName());
|
||||
if (file.open(QIODevice::WriteOnly))
|
||||
file.write(tableFont.toString().toUtf8());
|
||||
|
||||
updateTableFont(tableFont);
|
||||
}
|
||||
|
||||
void MainWindow::resetTableFont()
|
||||
{
|
||||
tableFont = QApplication::font();
|
||||
updateTableFont(tableFont);
|
||||
QFile file(tableFontFileName());
|
||||
file.remove();
|
||||
}
|
||||
|
||||
void MainWindow::updateTableFont(const QFont &font)
|
||||
{
|
||||
qDebug() << "New Font: " << font.pointSize() << font.family()
|
||||
<< font.styleName();
|
||||
foreach(XcaTreeView *v, views) {
|
||||
if (v) {
|
||||
v->setFont(font);
|
||||
v->update();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -84,6 +84,7 @@ class MainWindow: public QMainWindow, public Ui::MainWindow
|
||||
NIDlist *read_nidlist(QString name);
|
||||
QLabel *statusLabel;
|
||||
QString homedir;
|
||||
QFont tableFont;
|
||||
void keyPressEvent(QKeyEvent *e);
|
||||
void update_history_menu();
|
||||
void showDatabaseName();
|
||||
@ -133,6 +134,9 @@ class MainWindow: public QMainWindow, public Ui::MainWindow
|
||||
void exportIndexHierarchy();
|
||||
void openRemoteSqlDB();
|
||||
void generateDHparamDone();
|
||||
void changeTableFont();
|
||||
void resetTableFont();
|
||||
void updateTableFont(const QFont &font);
|
||||
|
||||
protected slots:
|
||||
void closeEvent(QCloseEvent * event);
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
#include <QFile>
|
||||
#include <QAction>
|
||||
|
||||
QFont XcaApplication::tableFont;
|
||||
QList<QLocale> XcaApplication::langAvail;
|
||||
|
||||
void XcaApplication::setMainwin(MainWindow *m)
|
||||
@ -62,13 +61,6 @@ XcaApplication::XcaApplication(int &argc, char *argv[])
|
||||
setLibraryPaths(libp);
|
||||
#endif
|
||||
|
||||
tableFont = QFont("Courier New", QApplication::font().pointSize()
|
||||
#if defined (Q_OS_WIN32)
|
||||
+1
|
||||
#else
|
||||
+2
|
||||
#endif
|
||||
);
|
||||
installEventFilter(this);
|
||||
}
|
||||
|
||||
|
||||
@ -42,7 +42,6 @@ class XcaApplication : public QApplication
|
||||
virtual ~XcaApplication();
|
||||
void setMainwin(MainWindow *m);
|
||||
void setupLanguage(const QLocale &lang);
|
||||
static QFont tableFont;
|
||||
static bool languageAvailable(const QLocale &l);
|
||||
bool eventFilter(QObject *watched, QEvent *ev);
|
||||
bool notify(QObject* receiver, QEvent* event);
|
||||
|
||||
@ -56,8 +56,6 @@ XcaTreeView::XcaTreeView(QWidget *parent)
|
||||
connect(&throttle, SIGNAL(timeout()), proxy, SLOT(invalidate()));
|
||||
setFocusPolicy(Qt::StrongFocus);
|
||||
setExpandsOnDoubleClick(false);
|
||||
|
||||
setFont(XcaApplication::tableFont);
|
||||
}
|
||||
|
||||
XcaTreeView::~XcaTreeView()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user