Changeset View
Changeset View
Standalone View
Standalone View
shell/problemmodel.cpp
Show First 20 Lines • Show All 60 Lines • ▼ Show 20 Line(s) | |||||
61 | { | 61 | { | ||
62 | explicit ProblemModelPrivate(KDevelop::ProblemStore *store) | 62 | explicit ProblemModelPrivate(KDevelop::ProblemStore *store) | ||
63 | : m_problems(store) | 63 | : m_problems(store) | ||
64 | , m_features(KDevelop::ProblemModel::NoFeatures) | 64 | , m_features(KDevelop::ProblemModel::NoFeatures) | ||
65 | , m_fullUpdateTooltip(i18nc("@info:tooltip", "Re-parse all watched documents")) | 65 | , m_fullUpdateTooltip(i18nc("@info:tooltip", "Re-parse all watched documents")) | ||
66 | { | 66 | { | ||
67 | } | 67 | } | ||
68 | 68 | | |||
69 | QScopedPointer<KDevelop::ProblemStore> m_problems; | 69 | QScopedPointer<KDevelop::ProblemStore> m_problems; | ||
mwolff: rename to `createPlaceholdreProblem`, make const | |||||
70 | KDevelop::ProblemModel::Features m_features; | 70 | KDevelop::ProblemModel::Features m_features; | ||
71 | QString m_fullUpdateTooltip; | 71 | QString m_fullUpdateTooltip; | ||
72 | }; | 72 | }; | ||
73 | 73 | | |||
74 | namespace KDevelop | 74 | namespace KDevelop | ||
75 | { | 75 | { | ||
76 | 76 | | |||
77 | ProblemModel::ProblemModel(QObject * parent, ProblemStore *store) | 77 | ProblemModel::ProblemModel(QObject * parent, ProblemStore *store) | ||
▲ Show 20 Lines • Show All 142 Lines • ▼ Show 20 Line(s) | 219 | { | |||
220 | ProblemStoreNode *node = reinterpret_cast<ProblemStoreNode*>(index.internalPointer()); | 220 | ProblemStoreNode *node = reinterpret_cast<ProblemStoreNode*>(index.internalPointer()); | ||
221 | if (!node) { | 221 | if (!node) { | ||
222 | return {}; | 222 | return {}; | ||
223 | } else { | 223 | } else { | ||
224 | return node->problem(); | 224 | return node->problem(); | ||
225 | } | 225 | } | ||
226 | } | 226 | } | ||
227 | 227 | | |||
228 | void ProblemModel::setPlaceHolderText( | ||||
229 | const QString& text, | ||||
230 | const QString& source, | ||||
231 | const KDevelop::DocumentRange& location) | ||||
232 | { | ||||
233 | IProblem::Ptr placeholderProblem(new DetectedProblem); | ||||
234 | | ||||
235 | placeholderProblem->setSeverity(KDevelop::IProblem::Hint); | ||||
236 | placeholderProblem->setDescription(text); | ||||
237 | placeholderProblem->setSource(IProblem::Plugin); | ||||
238 | placeholderProblem->setPluginName(source); | ||||
239 | placeholderProblem->setFinalLocation(location); | ||||
240 | | ||||
241 | setProblems({ placeholderProblem }); | ||||
242 | } | ||||
243 | | ||||
228 | ProblemModel::Features ProblemModel::features() const | 244 | ProblemModel::Features ProblemModel::features() const | ||
229 | { | 245 | { | ||
230 | return d->m_features; | 246 | return d->m_features; | ||
231 | } | 247 | } | ||
232 | 248 | | |||
233 | void ProblemModel::setFeatures(Features features) | 249 | void ProblemModel::setFeatures(Features features) | ||
234 | { | 250 | { | ||
235 | d->m_features = features; | 251 | d->m_features = features; | ||
Show All 9 Lines | 260 | { | |||
245 | if (d->m_fullUpdateTooltip == tooltip) { | 261 | if (d->m_fullUpdateTooltip == tooltip) { | ||
246 | return; | 262 | return; | ||
247 | } | 263 | } | ||
248 | 264 | | |||
249 | d->m_fullUpdateTooltip = tooltip; | 265 | d->m_fullUpdateTooltip = tooltip; | ||
250 | emit fullUpdateTooltipChanged(); | 266 | emit fullUpdateTooltipChanged(); | ||
251 | } | 267 | } | ||
252 | 268 | | |||
253 | void ProblemModel::addProblem(const IProblem::Ptr &problem) | 269 | void ProblemModel::addProblem(const IProblem::Ptr &problem) | ||
mwolff: join lines, follow the surrounding code style | |||||
254 | { | 270 | { | ||
255 | int c = d->m_problems->count(); | 271 | int c = d->m_problems->count(); | ||
256 | beginInsertRows(QModelIndex(), c, c); | 272 | beginInsertRows(QModelIndex(), c, c); | ||
257 | d->m_problems->addProblem(problem); | 273 | d->m_problems->addProblem(problem); | ||
258 | endInsertRows(); | 274 | endInsertRows(); | ||
259 | } | 275 | } | ||
260 | 276 | | |||
261 | void ProblemModel::setProblems(const QVector<IProblem::Ptr> &problems) | 277 | void ProblemModel::setProblems(const QVector<IProblem::Ptr> &problems) | ||
262 | { | 278 | { | ||
if (d->m_isPlaceholderShown || d->m_problems->count() == 0) { // clearing will show/update the new placeholder clearProblems(); } mwolff: ```
if (d->m_isPlaceholderShown || d->m_problems->count() == 0) {
// clearing will… | |||||
263 | beginResetModel(); | 279 | beginResetModel(); | ||
264 | d->m_problems->setProblems(problems); | 280 | d->m_problems->setProblems(problems); | ||
265 | endResetModel(); | 281 | endResetModel(); | ||
266 | } | 282 | } | ||
267 | 283 | | |||
268 | void ProblemModel::clearProblems() | 284 | void ProblemModel::clearProblems() | ||
269 | { | 285 | { | ||
270 | beginResetModel(); | 286 | beginResetModel(); | ||
the begin/end reset is not needed anymore, done internally by setProblems already mwolff: the begin/end reset is not needed anymore, done internally by setProblems already | |||||
271 | d->m_problems->clear(); | 287 | d->m_problems->clear(); | ||
272 | endResetModel(); | 288 | endResetModel(); | ||
273 | } | 289 | } | ||
274 | 290 | | |||
275 | QVector<IProblem::Ptr> ProblemModel::problems(const KDevelop::IndexedString& document) | 291 | QVector<IProblem::Ptr> ProblemModel::problems(const KDevelop::IndexedString& document) | ||
276 | { | 292 | { | ||
277 | return d->m_problems->problems(document); | 293 | return d->m_problems->problems(document); | ||
278 | } | 294 | } | ||
▲ Show 20 Lines • Show All 111 Lines • Show Last 20 Lines |
rename to createPlaceholdreProblem, make const