13#include <QtCore/QAbstractItemModel>
14#include <QtCore/QString>
15#include <QtCore/QSize>
27 void addVariable(
const QString& str,
const QString& comment);
34 QModelIndex
index(
int row,
int column,
const QModelIndex&)
const override {
return createIndex(row, column,
nullptr); }
36 QModelIndex
parent(
const QModelIndex&)
const override {
return {}; }
50 size_t newline = all.find(
'\n');
51 if (newline != std::string::npos)
52 return QString::fromStdString(all.substr(0, newline));
54 return QString::fromStdString(all);
57 QVariant
data(
const QModelIndex&
index,
int role = Qt::DisplayRole)
const override;
59 QVariant
headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override {
60 Q_UNUSED(orientation);
61 if (role == Qt::SizeHintRole) {
63 return QVariant(QSize(100, 1));
65 return QVariant(QSize(200, 1));
QModelIndex index(int row, int column, const QModelIndex &) const override
std::vector< QString > local_variables
static QString getFirstLine(const std::string &all)
int columnCount(const QModelIndex &parent) const override
std::vector< QString > functions
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
std::vector< QString > variables
std::vector< QString > functions_comment
int rowCount(const QModelIndex &parent=QModelIndex()) const override
QString getDocString(const QString &s)
void syncExtras(const ExprCompletionModel &otherModel)
void addVariable(const QString &str, const QString &comment)
void addFunction(const QString &, const QString &)
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
std::vector< QString > variables_comment
std::vector< QString > builtins
QModelIndex parent(const QModelIndex &) const override
std::map< QString, int > functionNameToFunction