vnote/src/veditconfig.cpp

45 lines
1.1 KiB
C++

#include "veditconfig.h"
#include "vconfigmanager.h"
#include "utils/vutils.h"
extern VConfigManager *g_config;
void VEditConfig::init(const QFontMetrics &p_metric,
bool p_enableHeadingSequence)
{
update(p_metric);
// Init configs that do not support update later.
m_enableVimMode = g_config->getEnableVimMode();
if (g_config->getLineDistanceHeight() <= 0) {
m_lineDistanceHeight = 0;
} else {
m_lineDistanceHeight = g_config->getLineDistanceHeight() * VUtils::calculateScaleFactor();
}
m_highlightWholeBlock = m_enableVimMode;
m_enableHeadingSequence = p_enableHeadingSequence;
}
void VEditConfig::update(const QFontMetrics &p_metric)
{
if (g_config->getTabStopWidth() > 0) {
m_tabStopWidth = g_config->getTabStopWidth() * p_metric.width(' ');
} else {
m_tabStopWidth = 0;
}
m_expandTab = g_config->getIsExpandTab();
if (m_expandTab && (g_config->getTabStopWidth() > 0)) {
m_tabSpaces = QString(g_config->getTabStopWidth(), ' ');
} else {
m_tabSpaces = "\t";
}
m_cursorLineBg = QColor(g_config->getEditorCurrentLineBg());
}