]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocWidget.cpp
simplify GuiToc / TocWidget interaction. Much can still be simplified...
[lyx.git] / src / frontends / qt4 / TocWidget.cpp
index 7fef1afd3596a4eba4e7a1e0235e0b9106b8fd54..bdc968670b084cb9397bdbffd59b4a706ee65f7d 100644 (file)
 #include "GuiToc.h"
 #include "qt_helpers.h"
 
-#include "debug.h"
+#include "support/debug.h"
 
 #include <QHeaderView>
-#include <QPushButton>
-#include <QTreeWidgetItem>
 
 #include <vector>
 
-using std::endl;
-using std::vector;
-
+using namespace std;
 
 namespace lyx {
 namespace frontend {
@@ -35,9 +31,6 @@ TocWidget::TocWidget(GuiToc & form, QWidget * parent)
        : QWidget(parent), depth_(0), form_(form)
 {
        setupUi(this);
-       setWindowTitle(qt_("Outline"));
-
-       connect(&form_, SIGNAL(modelReset()), SLOT(updateGui()));
 
        moveOutTB->setIcon(QIcon(":/images/promote.png"));
        moveInTB->setIcon(QIcon(":/images/demote.png"));
@@ -64,10 +57,8 @@ TocWidget::TocWidget(GuiToc & form, QWidget * parent)
 void TocWidget::selectionChanged(const QModelIndex & current,
                                  const QModelIndex & /*previous*/)
 {
-       LYXERR(Debug::GUI)
-               << "selectionChanged index " << current.row()
-               << ", " << current.column()
-               << endl;
+       LYXERR(Debug::GUI, "selectionChanged index " << current.row()
+               << ", " << current.column());
 
        form_.goTo(typeCO->currentIndex(), current);
 }
@@ -185,8 +176,7 @@ void TocWidget::on_moveOutTB_clicked()
 void TocWidget::select(QModelIndex const & index)
 {
        if (!index.isValid()) {
-               LYXERR(Debug::GUI)
-                       << "TocWidget::select(): QModelIndex is invalid!" << endl;
+               LYXERR(Debug::GUI, "TocWidget::select(): QModelIndex is invalid!");
                return;
        }
 
@@ -215,12 +205,12 @@ void TocWidget::enableControls(bool enable)
 
 void TocWidget::updateView()
 {
-       LYXERR(Debug::GUI) << "In TocWidget::updateView()" << endl;
+       LYXERR(Debug::GUI, "In TocWidget::updateView()");
        select(form_.currentIndex(typeCO->currentIndex()));
 }
 
 
-void TocWidget::updateGui()
+void TocWidget::updateGui(int selected_type)
 {
        vector<docstring> const & type_names = form_.typeNames();
        if (type_names.empty()) {
@@ -232,20 +222,13 @@ void TocWidget::updateGui()
        }
 
        QString current_text = typeCO->currentText();
-       //lyxerr << "current_text " << fromqstr(current_text) << endl;
        typeCO->blockSignals(true);
        typeCO->clear();
-       int current_type = -1;
        for (size_t i = 0; i != type_names.size(); ++i) {
                QString item = toqstr(type_names[i]);
                typeCO->addItem(item);
-               if (item == current_text)
-                       current_type = i;
        }
-       if (current_type != -1)
-               typeCO->setCurrentIndex(current_type);
-       else
-               typeCO->setCurrentIndex(form_.selectedType());
+       typeCO->setCurrentIndex(selected_type);
        typeCO->blockSignals(false);
 
        setTocModel(typeCO->currentIndex());
@@ -271,17 +254,15 @@ void TocWidget::setTocModel(size_t type)
                depthSL->setValue(depth_);
        }
 
-       LYXERR(Debug::GUI) << "In TocWidget::updateGui()" << endl;
+       LYXERR(Debug::GUI, "In TocWidget::updateGui()");
 
        select(form_.currentIndex(typeCO->currentIndex()));
 
        if (toc_model) {
-               LYXERR(Debug::GUI)
-               << "tocModel()->rowCount "
+               LYXERR(Debug::GUI, "tocModel()->rowCount "
                        << toc_model->rowCount()
                        << "\nform_->tocModel()->columnCount "
-                       << toc_model->columnCount()
-                       << endl;
+                       << toc_model->columnCount());
        }
 }