ui: Fixes for code view
* set code font size as pixel value * properly hide line number area for overview stats in both snippets and single file view * fixed file title disabled for files in single file view in trial mode
This commit is contained in:
@@ -71,11 +71,13 @@ void QtCodeArea::LineNumberArea::paintEvent(QPaintEvent *event)
|
||||
m_codeArea->lineNumberAreaPaintEvent(event);
|
||||
}
|
||||
|
||||
|
||||
QtCodeArea::QtCodeArea(
|
||||
uint startLineNumber,
|
||||
const std::string& code,
|
||||
std::shared_ptr<SourceLocationFile> locationFile,
|
||||
QtCodeNavigator* navigator,
|
||||
bool showLineNumbers,
|
||||
QWidget* parent
|
||||
)
|
||||
: QtCodeField(startLineNumber, code, locationFile, parent)
|
||||
@@ -86,7 +88,7 @@ QtCodeArea::QtCodeArea(
|
||||
, m_setIDECursorPositionAction(nullptr)
|
||||
, m_eventPosition(0, 0)
|
||||
, m_isActiveFile(false)
|
||||
, m_lineNumbersHidden(false)
|
||||
, m_showLineNumbers(showLineNumbers)
|
||||
{
|
||||
setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Fixed);
|
||||
|
||||
@@ -191,7 +193,7 @@ int QtCodeArea::lineNumberDigits() const
|
||||
|
||||
int QtCodeArea::lineNumberAreaWidth() const
|
||||
{
|
||||
if (!m_lineNumbersHidden)
|
||||
if (m_showLineNumbers)
|
||||
{
|
||||
return fontMetrics().width(QLatin1Char('9')) * m_digits + 30;
|
||||
}
|
||||
@@ -299,12 +301,6 @@ QRectF QtCodeArea::getLineRectForLineNumber(uint lineNumber) const
|
||||
return blockBoundingGeometry(block);
|
||||
}
|
||||
|
||||
void QtCodeArea::hideLineNumbers()
|
||||
{
|
||||
m_lineNumberArea->hide();
|
||||
m_lineNumbersHidden = true;
|
||||
}
|
||||
|
||||
void QtCodeArea::resizeEvent(QResizeEvent *e)
|
||||
{
|
||||
QPlainTextEdit::resizeEvent(e);
|
||||
|
||||
@@ -54,6 +54,7 @@ public:
|
||||
const std::string& code,
|
||||
std::shared_ptr<SourceLocationFile> locationFile,
|
||||
QtCodeNavigator* navigator,
|
||||
bool showLineNumbers,
|
||||
QWidget* parent = nullptr
|
||||
);
|
||||
virtual ~QtCodeArea();
|
||||
@@ -79,8 +80,6 @@ public:
|
||||
|
||||
QRectF getLineRectForLineNumber(uint lineNumber) const;
|
||||
|
||||
void hideLineNumbers();
|
||||
|
||||
protected:
|
||||
virtual void resizeEvent(QResizeEvent* event) Q_DECL_OVERRIDE;
|
||||
virtual void mouseReleaseEvent(QMouseEvent* event) Q_DECL_OVERRIDE;
|
||||
@@ -126,7 +125,7 @@ private:
|
||||
// the position where the context menu is opened needs to be stored]
|
||||
|
||||
bool m_isActiveFile;
|
||||
bool m_lineNumbersHidden;
|
||||
bool m_showLineNumbers;
|
||||
|
||||
QtScrollSpeedChangeListener m_scrollSpeedChangeListener;
|
||||
};
|
||||
|
||||
@@ -63,7 +63,9 @@ QtCodeField::QtCodeField(
|
||||
m_highlighter->highlightDocument();
|
||||
|
||||
ApplicationSettings* appSettings = ApplicationSettings::getInstance().get();
|
||||
setFont(QFont(appSettings->getFontName().c_str(), appSettings->getFontSize()));
|
||||
QFont font(appSettings->getFontName().c_str());
|
||||
font.setPixelSize(appSettings->getFontSize());
|
||||
setFont(font);
|
||||
setTabStopWidth(appSettings->getCodeTabWidth() * fontMetrics().width('9'));
|
||||
}
|
||||
|
||||
|
||||
@@ -113,7 +113,7 @@ void QtCodeFileSingle::addCodeSnippet(const CodeSnippetParams& params)
|
||||
file.title = params.title;
|
||||
}
|
||||
|
||||
file.area = std::make_shared<QtCodeArea>(1, params.code, params.locationFile, m_navigator, this);
|
||||
file.area = std::make_shared<QtCodeArea>(1, params.code, params.locationFile, m_navigator, !params.reduced, this);
|
||||
connect(file.area->verticalScrollBar(), &QScrollBar::valueChanged, m_navigator, &QtCodeNavigator::scrolled);
|
||||
|
||||
m_fileDatas.emplace(file.filePath, file);
|
||||
|
||||
@@ -31,6 +31,8 @@ QtCodeFileTitleButton::~QtCodeFileTitleButton()
|
||||
|
||||
void QtCodeFileTitleButton::setFilePath(const FilePath& filePath)
|
||||
{
|
||||
setEnabled(true);
|
||||
|
||||
m_filePath = filePath;
|
||||
setText("");
|
||||
|
||||
@@ -89,6 +91,7 @@ void QtCodeFileTitleButton::setProject(const std::string& name)
|
||||
|
||||
if (Application::getInstance()->isInTrial())
|
||||
{
|
||||
setIcon(QIcon());
|
||||
setEnabled(false);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -68,7 +68,8 @@ QtCodeSnippet::QtCodeSnippet(const CodeSnippetParams& params, QtCodeNavigator* n
|
||||
, m_footerString(params.footer)
|
||||
, m_title(nullptr)
|
||||
, m_footer(nullptr)
|
||||
, m_codeArea(std::make_shared<QtCodeArea>(params.startLineNumber, params.code, params.locationFile, navigator, this))
|
||||
, m_codeArea(std::make_shared<QtCodeArea>(
|
||||
params.startLineNumber, params.code, params.locationFile, navigator, !params.reduced, this))
|
||||
{
|
||||
setObjectName("code_snippet");
|
||||
|
||||
@@ -107,11 +108,6 @@ QtCodeSnippet::QtCodeSnippet(const CodeSnippetParams& params, QtCodeNavigator* n
|
||||
}
|
||||
connect(m_footer, &QPushButton::clicked, this, &QtCodeSnippet::clickedFooter);
|
||||
}
|
||||
|
||||
if (params.reduced)
|
||||
{
|
||||
m_codeArea->hideLineNumbers();
|
||||
}
|
||||
}
|
||||
|
||||
QtCodeSnippet::~QtCodeSnippet()
|
||||
|
||||
Reference in New Issue
Block a user