TextEditor: Give access to m_toolBarWidget

The TextEditor doesn't export its actual toolbar via IEditor::toolBar(),
but an internal container widget. This forces other editors that want to
reuse TextEditorWidget to poke into internal details of TextEditorWidget
if they want to provide the full toolbar including line number button.

By giving access to m_toolBarWidget, other editors like the Markdown
editor can show the full toolbar including line numbers without risking
to break, if TextEditorWidget should refactor its toolbar container.

Task-number: QTCREATORBUG-30166
Change-Id: Ic54f21be1897f00801c6a3cfe29c89131d61e3a5
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Mathias Hasselmann
2024-01-08 16:54:15 +01:00
parent 5be8110137
commit 2e353aa1b2
2 changed files with 9 additions and 3 deletions

View File

@@ -8762,7 +8762,7 @@ IDocument *BaseTextEditor::document() const
QWidget *BaseTextEditor::toolBar() QWidget *BaseTextEditor::toolBar()
{ {
return editorWidget()->d->m_toolBarWidget; return editorWidget()->toolBarWidget();
} }
QAction * TextEditorWidget::insertExtraToolBarWidget(TextEditorWidget::Side side, QAction * TextEditorWidget::insertExtraToolBarWidget(TextEditorWidget::Side side,
@@ -8923,7 +8923,12 @@ void TextEditorWidget::setCursorPosition(int pos)
setTextCursor(tc); setTextCursor(tc);
} }
QToolBar *TextEditorWidget::toolBar() QWidget *TextEditorWidget::toolBarWidget() const
{
return d->m_toolBarWidget;
}
QToolBar *TextEditorWidget::toolBar() const
{ {
return d->m_toolBar; return d->m_toolBar;
} }

View File

@@ -179,7 +179,8 @@ public:
using QPlainTextEdit::cursorRect; using QPlainTextEdit::cursorRect;
QRect cursorRect(int pos) const; QRect cursorRect(int pos) const;
void setCursorPosition(int pos); void setCursorPosition(int pos);
QToolBar *toolBar(); QWidget *toolBarWidget() const;
QToolBar *toolBar() const;
void print(QPrinter *); void print(QPrinter *);