]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocModel.cpp
On Linux show in crash message box the backtrace
[lyx.git] / src / frontends / qt4 / TocModel.cpp
index 4b8f41c0cb3a7f9b8d5c7262b30dfd5957004309..cd1189b49b473371c2e2b6ce53ee76147dfe8c18 100644 (file)
 #include "DocIterator.h"
 #include "FuncRequest.h"
 #include "LyX.h"
+#include "qt_helpers.h"
 #include "TocBackend.h"
 
 #include "support/debug.h"
 #include "support/lassert.h"
 
 #include <QSortFilterProxyModel>
+#include <QStandardItemModel>
+
 
 #include <climits>
 
@@ -44,7 +47,11 @@ public:
        ///
        void reset()
        {
+#if (QT_VERSION < 0x050000)
                QStandardItemModel::reset();
+#else
+               QStandardItemModel::endResetModel();
+#endif
        }
        ///
        void beginResetModel()
@@ -76,9 +83,7 @@ TocModel::TocModel(QObject * parent)
        sorted_model_(new QSortFilterProxyModel(parent)),
        is_sorted_(false), maxdepth_(0), mindepth_(0)
 {
-#if QT_VERSION >= 0x040300
        sorted_model_->setSortLocaleAware(true);
-#endif
        sorted_model_->setSourceModel(model_);
 }
 
@@ -189,6 +194,7 @@ void TocModel::reset(Toc const & toc)
        }
 
        model_->setHeaderData(0, Qt::Horizontal, QVariant("title"), Qt::DisplayRole);
+       sorted_model_->setSourceModel(model_);
        if (is_sorted_)
                sorted_model_->sort(0);
        model_->blockSignals(false);
@@ -247,9 +253,7 @@ TocModels::TocModels()
        names_ = new TocTypeModel(this);
        names_sorted_ = new TocModelSortProxyModel(this);
        names_sorted_->setSourceModel(names_);
-#if QT_VERSION >= 0x040300
        names_sorted_->setSortLocaleAware(true);
-#endif
        names_sorted_->sort(0);
 }
 
@@ -329,13 +333,6 @@ TocItem const TocModels::currentItem(QString const & type,
 }
  
 
-void TocModels::updateBackend() const
-{
-       bv_->buffer().masterBuffer()->tocBackend().update();
-       bv_->buffer().structureChanged();
-}
-
-
 void TocModels::updateItem(QString const & type, DocIterator const & dit)
 {
        models_[type]->updateItem(dit);