forked from qt-creator/qt-creator
Editor: Allow setting the optional action mask per editor
Instead of just enable actions that were disabled from the beginning you can no disable optional actions. Change-Id: I986b8a72523a8aeec9f4ccf76cd4921018ffc003 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -7828,15 +7828,22 @@ void TextEditorWidget::appendStandardContextMenuActions(QMenu *menu)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uint TextEditorWidget::optionalActionMask()
|
uint TextEditorWidget::optionalActions()
|
||||||
{
|
{
|
||||||
return d->m_optionalActionMask;
|
return d->m_optionalActionMask;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TextEditorWidget::setOptionalActions(uint optionalActionMask)
|
||||||
|
{
|
||||||
|
if (d->m_optionalActionMask == optionalActionMask)
|
||||||
|
return;
|
||||||
|
d->m_optionalActionMask = optionalActionMask;
|
||||||
|
emit optionalActionMaskChanged();
|
||||||
|
}
|
||||||
|
|
||||||
void TextEditorWidget::addOptionalActions( uint optionalActionMask)
|
void TextEditorWidget::addOptionalActions( uint optionalActionMask)
|
||||||
{
|
{
|
||||||
d->m_optionalActionMask |= optionalActionMask;
|
setOptionalActions(d->m_optionalActionMask | optionalActionMask);
|
||||||
emit optionalActionMaskChanged();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BaseTextEditor::BaseTextEditor()
|
BaseTextEditor::BaseTextEditor()
|
||||||
@@ -8734,6 +8741,7 @@ BaseTextEditor *TextEditorFactoryPrivate::createEditorHelper(const TextDocumentP
|
|||||||
textEditorWidget->setMarksVisible(m_marksVisible);
|
textEditorWidget->setMarksVisible(m_marksVisible);
|
||||||
textEditorWidget->setParenthesesMatchingEnabled(m_paranthesesMatchinEnabled);
|
textEditorWidget->setParenthesesMatchingEnabled(m_paranthesesMatchinEnabled);
|
||||||
textEditorWidget->setCodeFoldingSupported(m_codeFoldingSupported);
|
textEditorWidget->setCodeFoldingSupported(m_codeFoldingSupported);
|
||||||
|
textEditorWidget->setOptionalActions(m_textEditorActionHandler->optionalActions());
|
||||||
|
|
||||||
BaseTextEditor *editor = m_editorCreator();
|
BaseTextEditor *editor = m_editorCreator();
|
||||||
editor->setDuplicateSupported(m_duplicatedSupported);
|
editor->setDuplicateSupported(m_duplicatedSupported);
|
||||||
|
@@ -204,8 +204,9 @@ public:
|
|||||||
|
|
||||||
void appendStandardContextMenuActions(QMenu *menu);
|
void appendStandardContextMenuActions(QMenu *menu);
|
||||||
|
|
||||||
uint optionalActionMask();
|
uint optionalActions();
|
||||||
void addOptionalActions(uint optionalActionMask);
|
void setOptionalActions(uint optionalActions);
|
||||||
|
void addOptionalActions(uint optionalActions);
|
||||||
|
|
||||||
void setAutoCompleter(AutoCompleter *autoCompleter);
|
void setAutoCompleter(AutoCompleter *autoCompleter);
|
||||||
AutoCompleter *autoCompleter() const;
|
AutoCompleter *autoCompleter() const;
|
||||||
|
@@ -543,9 +543,8 @@ void TextEditorActionHandlerPrivate::updateActions()
|
|||||||
|
|
||||||
void TextEditorActionHandlerPrivate::updateOptionalActions()
|
void TextEditorActionHandlerPrivate::updateOptionalActions()
|
||||||
{
|
{
|
||||||
uint optionalActions = m_optionalActions;
|
const uint optionalActions = m_currentEditorWidget ? m_currentEditorWidget->optionalActions()
|
||||||
if (m_currentEditorWidget)
|
: m_optionalActions;
|
||||||
optionalActions |= m_currentEditorWidget->optionalActionMask();
|
|
||||||
m_followSymbolAction->setEnabled(
|
m_followSymbolAction->setEnabled(
|
||||||
optionalActions & TextEditorActionHandler::FollowSymbolUnderCursor);
|
optionalActions & TextEditorActionHandler::FollowSymbolUnderCursor);
|
||||||
m_followSymbolInNextSplitAction->setEnabled(
|
m_followSymbolInNextSplitAction->setEnabled(
|
||||||
@@ -622,6 +621,11 @@ TextEditorActionHandler::TextEditorActionHandler(Core::Id editorId,
|
|||||||
d->m_findTextWidget = TextEditorWidget::fromEditor;
|
d->m_findTextWidget = TextEditorWidget::fromEditor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint TextEditorActionHandler::optionalActions() const
|
||||||
|
{
|
||||||
|
return d->m_optionalActions;
|
||||||
|
}
|
||||||
|
|
||||||
TextEditorActionHandler::~TextEditorActionHandler()
|
TextEditorActionHandler::~TextEditorActionHandler()
|
||||||
{
|
{
|
||||||
delete d;
|
delete d;
|
||||||
|
@@ -65,6 +65,7 @@ public:
|
|||||||
uint optionalActions = None,
|
uint optionalActions = None,
|
||||||
const TextEditorWidgetResolver &resolver = {});
|
const TextEditorWidgetResolver &resolver = {});
|
||||||
|
|
||||||
|
uint optionalActions() const;
|
||||||
~TextEditorActionHandler();
|
~TextEditorActionHandler();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
Reference in New Issue
Block a user