forked from qt-creator/qt-creator
CodeAssist: Move base position to interface.
Every proposal needs to have a base postion. Move it to the base class to reduce duplicated code. Change-Id: I0b1b8282dfe955d251646661f755bf9f585fbad1 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -30,7 +30,7 @@
|
|||||||
using namespace TextEditor;
|
using namespace TextEditor;
|
||||||
|
|
||||||
FunctionHintProposal::FunctionHintProposal(int cursorPos, IFunctionHintProposalModel *model)
|
FunctionHintProposal::FunctionHintProposal(int cursorPos, IFunctionHintProposalModel *model)
|
||||||
: m_basePosition(cursorPos)
|
: IAssistProposal(cursorPos)
|
||||||
, m_model(model)
|
, m_model(model)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
@@ -42,11 +42,6 @@ bool FunctionHintProposal::isFragile() const
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
int FunctionHintProposal::basePosition() const
|
|
||||||
{
|
|
||||||
return m_basePosition;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool FunctionHintProposal::isCorrective() const
|
bool FunctionHintProposal::isCorrective() const
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -39,14 +39,12 @@ public:
|
|||||||
~FunctionHintProposal();
|
~FunctionHintProposal();
|
||||||
|
|
||||||
bool isFragile() const override;
|
bool isFragile() const override;
|
||||||
int basePosition() const override;
|
|
||||||
bool isCorrective() const override;
|
bool isCorrective() const override;
|
||||||
void makeCorrection(TextEditorWidget *editorWidget) override;
|
void makeCorrection(TextEditorWidget *editorWidget) override;
|
||||||
IAssistProposalModel *model() const override;
|
IAssistProposalModel *model() const override;
|
||||||
IAssistProposalWidget *createWidget() const override;
|
IAssistProposalWidget *createWidget() const override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int m_basePosition;
|
|
||||||
IFunctionHintProposalModel *m_model;
|
IFunctionHintProposalModel *m_model;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -30,12 +30,12 @@
|
|||||||
namespace TextEditor {
|
namespace TextEditor {
|
||||||
|
|
||||||
GenericProposal::GenericProposal(int cursorPos, GenericProposalModel *model)
|
GenericProposal::GenericProposal(int cursorPos, GenericProposalModel *model)
|
||||||
: m_basePosition(cursorPos)
|
: IAssistProposal(cursorPos)
|
||||||
, m_model(model)
|
, m_model(model)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
GenericProposal::GenericProposal(int cursorPos, const QList<AssistProposalItemInterface *> &items)
|
GenericProposal::GenericProposal(int cursorPos, const QList<AssistProposalItemInterface *> &items)
|
||||||
: m_basePosition(cursorPos)
|
: IAssistProposal(cursorPos)
|
||||||
, m_model(new GenericProposalModel)
|
, m_model(new GenericProposalModel)
|
||||||
{
|
{
|
||||||
m_model->loadContent(items);
|
m_model->loadContent(items);
|
||||||
@@ -49,11 +49,6 @@ bool GenericProposal::isFragile() const
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
int GenericProposal::basePosition() const
|
|
||||||
{
|
|
||||||
return m_basePosition;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool GenericProposal::isCorrective() const
|
bool GenericProposal::isCorrective() const
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ public:
|
|||||||
~GenericProposal();
|
~GenericProposal();
|
||||||
|
|
||||||
bool isFragile() const override;
|
bool isFragile() const override;
|
||||||
int basePosition() const override;
|
|
||||||
bool isCorrective() const override;
|
bool isCorrective() const override;
|
||||||
void makeCorrection(TextEditorWidget *editorWidget) override;
|
void makeCorrection(TextEditorWidget *editorWidget) override;
|
||||||
IAssistProposalModel *model() const override;
|
IAssistProposalModel *model() const override;
|
||||||
@@ -51,7 +50,6 @@ protected:
|
|||||||
void moveBasePosition(int length);
|
void moveBasePosition(int length);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int m_basePosition;
|
|
||||||
GenericProposalModel *m_model;
|
GenericProposalModel *m_model;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -59,7 +59,8 @@ using namespace TextEditor;
|
|||||||
\sa IAssistProposalWidget, IAssistModel
|
\sa IAssistProposalWidget, IAssistModel
|
||||||
*/
|
*/
|
||||||
|
|
||||||
IAssistProposal::IAssistProposal()
|
IAssistProposal::IAssistProposal(int basePosition)
|
||||||
|
: m_basePosition(basePosition)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
IAssistProposal::~IAssistProposal()
|
IAssistProposal::~IAssistProposal()
|
||||||
@@ -79,6 +80,11 @@ IAssistProposal::~IAssistProposal()
|
|||||||
Returns the position from which this proposal starts.
|
Returns the position from which this proposal starts.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
int IAssistProposal::basePosition() const
|
||||||
|
{
|
||||||
|
return m_basePosition;
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\fn bool TextEditor::IAssistProposal::isCorrective() const
|
\fn bool TextEditor::IAssistProposal::isCorrective() const
|
||||||
|
|
||||||
|
|||||||
@@ -36,15 +36,18 @@ class TextEditorWidget;
|
|||||||
class TEXTEDITOR_EXPORT IAssistProposal
|
class TEXTEDITOR_EXPORT IAssistProposal
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
IAssistProposal();
|
IAssistProposal(int basePosition);
|
||||||
virtual ~IAssistProposal();
|
virtual ~IAssistProposal();
|
||||||
|
|
||||||
|
int basePosition() const;
|
||||||
virtual bool isFragile() const = 0;
|
virtual bool isFragile() const = 0;
|
||||||
virtual int basePosition() const = 0;
|
|
||||||
virtual bool isCorrective() const = 0;
|
virtual bool isCorrective() const = 0;
|
||||||
virtual void makeCorrection(TextEditorWidget *editorWidget) = 0;
|
virtual void makeCorrection(TextEditorWidget *editorWidget) = 0;
|
||||||
virtual IAssistProposalModel *model() const = 0;
|
virtual IAssistProposalModel *model() const = 0;
|
||||||
virtual IAssistProposalWidget *createWidget() const = 0;
|
virtual IAssistProposalWidget *createWidget() const = 0;
|
||||||
|
|
||||||
|
protected:
|
||||||
|
int m_basePosition;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // TextEditor
|
} // TextEditor
|
||||||
|
|||||||
Reference in New Issue
Block a user