[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kate/frameworks] part: port away from QAbstractItemModel::reset()
From: Michal Humpula <michal.humpula () seznam ! cz>
Date: 2013-12-19 17:58:25
Message-ID: E1Vthrd-0002PE-OM () scm ! kde ! org
[Download RAW message or body]
Git commit e6374518f5a966b8badda3a5e90fb873cd7ec08e by Michal Humpula.
Committed on 19/12/2013 at 17:54.
Pushed by michalhumpula into branch 'frameworks'.
port away from QAbstractItemModel::reset()
see
http://qt-project.org/doc/qt-5/qabstractitemmodel-compat.html#reset
M +4 -1 part/completion/kateargumenthintmodel.cpp
M +20 -13 part/completion/katecompletionmodel.cpp
M +4 -1 part/snippet/snippetcompletionmodel.cpp
http://commits.kde.org/kate/e6374518f5a966b8badda3a5e90fb873cd7ec08e
diff --git a/part/completion/kateargumenthintmodel.cpp \
b/part/completion/kateargumenthintmodel.cpp index f56248d..2f0c38d 100644
--- a/part/completion/kateargumenthintmodel.cpp
+++ b/part/completion/kateargumenthintmodel.cpp
@@ -62,6 +62,8 @@ void KateArgumentHintModel::parentModelReset() {
}
void KateArgumentHintModel::buildRows() {
+ beginResetModel();
+
m_rows.clear();
QMap<int, QList<int> > m_depths; //Map each hint-depth to a list of \
functions of that depth for( int a = 0; a < group()->filtered.count(); a++ \
) { @@ -80,7 +82,8 @@ void KateArgumentHintModel::buildRows() {
m_rows.push_front( -it.key() );
}
- reset();
+ endResetModel();
+
emit contentStateChanged(!m_rows.isEmpty());
}
diff --git a/part/completion/katecompletionmodel.cpp \
b/part/completion/katecompletionmodel.cpp index 9f8dd28..33ed695 100644
--- a/part/completion/katecompletionmodel.cpp
+++ b/part/completion/katecompletionmodel.cpp
@@ -507,6 +507,9 @@ QModelIndex KateCompletionModel::indexForGroup( Group * \
g ) const
void KateCompletionModel::clearGroups( bool shouldReset )
{
+ if (shouldReset)
+ beginResetModel();
+
clearExpanding();
m_ungrouped->clear();
m_argumentHints->clear();
@@ -539,7 +542,7 @@ void KateCompletionModel::clearGroups( bool shouldReset \
) m_groupHash.insert(BestMatchesProperty, m_bestMatches);
if(shouldReset)
- reset();
+ endResetModel();
}
QSet<KateCompletionModel::Group*> KateCompletionModel::createItems(const \
HierarchicalModelHandler& _handler, const QModelIndex& i, bool notifyModel) \
{ @@ -582,6 +585,8 @@ void KateCompletionModel::createGroups()
//new groups.
clearGroups(true);
+ beginResetModel();
+
bool has_groups=false;
foreach (CodeCompletionModel* sourceModel, m_completionModels) {
has_groups|=sourceModel->hasGroups();
@@ -602,7 +607,7 @@ void KateCompletionModel::createGroups()
updateBestMatches();
- reset();
+ endResetModel();
emit contentGeometryChanged();
}
@@ -939,27 +944,25 @@ void KateCompletionModel::setCurrentCompletion( \
KTextEditor::CodeCompletionModel
m_currentMatch[model] = completion;
- bool needsReset = false;
+ beginResetModel();
if (!hasGroups()) {
- needsReset |= changeCompletions(m_ungrouped, changeType);
+ changeCompletions(m_ungrouped, changeType);
} else {
foreach (Group* g, m_rowTable) {
if(g != m_argumentHints)
- needsReset |= changeCompletions(g, changeType);
+ changeCompletions(g, changeType);
}
foreach (Group* g, m_emptyGroups) {
if(g != m_argumentHints)
- needsReset |= changeCompletions(g, changeType);
+ changeCompletions(g, changeType);
}
}
// NOTE: best matches are also updated in resort
resort();
- qCDebug(LOG_PART)<<"needsReset"<<needsReset;
- if(needsReset)
- reset();
+ endResetModel();
clearExpanding(); //We need to do this, or be aware of expanding-widgets \
while filtering. emit contentGeometryChanged();
@@ -1258,7 +1261,9 @@ const QList< QList < int > > & \
KateCompletionModel::columnMerges( ) const void \
KateCompletionModel::setColumnMerges( const QList< QList < int > > & \
columnMerges ) {
m_columnMerges = columnMerges;
- reset();
+
+ beginResetModel();
+ endResetModel();
}
int KateCompletionModel::translateColumn( int sourceColumn ) const
@@ -2046,6 +2051,8 @@ void \
KateCompletionModel::removeCompletionModel(CodeCompletionModel * model) if \
(!model || !m_completionModels.contains(model)) return;
+ beginResetModel();
+
m_currentMatch.remove(model);
clearGroups(false);
@@ -2055,11 +2062,11 @@ void \
KateCompletionModel::removeCompletionModel(CodeCompletionModel * model) \
m_completionModels.removeAll(model);
if (!m_completionModels.isEmpty()) {
- // This performs the reset
+ // will call endResetModel for us
createGroups();
- }else{
+ } else {
emit contentGeometryChanged();
- reset();
+ endResetModel();
}
}
diff --git a/part/snippet/snippetcompletionmodel.cpp \
b/part/snippet/snippetcompletionmodel.cpp index 10e5117..ba1d5a5 100644
--- a/part/snippet/snippetcompletionmodel.cpp
+++ b/part/snippet/snippetcompletionmodel.cpp
@@ -98,6 +98,8 @@ void SnippetCompletionModel::initData(KTextEditor::View* \
view) mode = view->document()->highlightingMode();
}
+ beginResetModel();
+
qDeleteAll(m_snippets);
m_snippets.clear();
SnippetStore* store = SnippetStore::self();
@@ -116,7 +118,8 @@ void \
SnippetCompletionModel::initData(KTextEditor::View* view) }
}
}
- reset();
+
+ endResetModel();
}
QModelIndex SnippetCompletionModel::parent(const QModelIndex& index) const \
{
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic