]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocModel.C
enable Font cache only for MacOSX and inline width() for other platform.
[lyx.git] / src / frontends / qt4 / TocModel.C
index 24e51a749b8225adaf9d3ee02595653330412a4e..72fce8f1a6011f5cf66c36d4299906fa5e9538c6 100644 (file)
@@ -9,6 +9,8 @@
  * Full author contact details are available in file CREDITS.
  */
 
+#include <config.h>
+
 #include "TocModel.h"
 
 #include "debug.h"
@@ -25,7 +27,7 @@ using std::make_pair;
 
 namespace lyx {
 namespace frontend {
-\r
+
 
 TocModel::TocModel(TocBackend::Toc const & toc)
 {
@@ -38,7 +40,7 @@ TocModel const & TocModel::operator=(TocBackend::Toc const & toc)
        populate(toc);
        return *this;
 }
-\r
+
 
 TocIterator const TocModel::tocIterator(QModelIndex const & index) const
 {
@@ -46,7 +48,7 @@ TocIterator const TocModel::tocIterator(QModelIndex const & index) const
        BOOST_ASSERT(map_it != toc_map_.end()); 
        return map_it->second;
 }
-\r
+
 
 QModelIndex const TocModel::modelIndex(TocIterator const & it) const
 {
@@ -58,7 +60,7 @@ QModelIndex const TocModel::modelIndex(TocIterator const & it) const
        
        return map_it->second;
 }
-\r
+
 
 void TocModel::clear()
 {
@@ -83,19 +85,19 @@ void TocModel::populate(TocBackend::Toc const & toc)
        TocIterator iter = toc.begin();
        TocIterator end = toc.end();
 
-    insertColumns(0, 1);
+       insertColumns(0, 1);
 
        while (iter != end) {
 
-               if (iter->depth() >= 0) {
+               if (iter->isValid()) {
 
                        current_row = rowCount();
                        insertRows(current_row, 1);
                        top_level_item = QStandardItemModel::index(current_row, 0);
                        //setData(top_level_item, toqstr(iter->str()));
                        setData(top_level_item, toqstr(iter->str()), Qt::DisplayRole);
-                       toc_map_.insert(make_pair(top_level_item, iter));
-                       model_map_.insert(make_pair(iter, top_level_item));
+                       toc_map_[top_level_item] = iter;
+                       model_map_[iter] = top_level_item;
 
                        lyxerr[Debug::GUI]
                                << "Toc: at depth " << iter->depth()
@@ -124,7 +126,7 @@ void TocModel::populate(TocIterator & iter,
        int current_row;
        QModelIndex child_item;
 
-    insertColumns(0, 1, parent);
+       insertColumns(0, 1, parent);
        while (iter != end) {
 
                ++iter;
@@ -136,27 +138,20 @@ void TocModel::populate(TocIterator & iter,
                        --iter;
                        return;
                }
-//             if (iter->depth() > curdepth) {
-//                     return;
-//             }
                
                current_row = rowCount(parent);
                insertRows(current_row, 1, parent);
                child_item = QStandardItemModel::index(current_row, 0, parent);
                //setData(child_item, toqstr(iter->str()));
                setData(child_item, toqstr(iter->str()), Qt::DisplayRole);
-               toc_map_.insert(make_pair(child_item, iter));
-               model_map_.insert(make_pair(iter, child_item));
-
-//             lyxerr[Debug::GUI]
-//                     << "Toc: at depth " << iter->depth()
-//                     << ", added item " << iter->str()
-//                     << endl;
-
+               toc_map_[child_item] = iter;
+               model_map_[iter] = child_item;
                populate(iter, end, child_item);
        }
 }
-\r
+
 
 } // namespace frontend
 } // namespace lyx
+
+#include "TocModel_moc.cpp"