]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/panelstack.C
enable Font cache only for MacOSX and inline width() for other platform.
[lyx.git] / src / frontends / qt4 / panelstack.C
index 3a853d0d3da27fc92413f7d6fad44a79c21afa41..1ca8ada1c304783b395e69c10eaf88986db7cbc5 100644 (file)
@@ -51,7 +51,7 @@ PanelStack::PanelStack(QWidget * parent)
        list_->setHeaderLabels(HeaderLabels);
 
        connect(list_, SIGNAL(currentItemChanged (QTreeWidgetItem*, QTreeWidgetItem*)),
-               this, SLOT(switchPanel(QTreeWidgetItem *, QTreeWidgetItem*)));
+               this, SLOT(switchPanel(QTreeWidgetItem *, QTreeWidgetItem*)));
 
        QHBoxLayout * layout = new QHBoxLayout(this);
        layout->addWidget(list_, 0);
@@ -74,7 +74,13 @@ void PanelStack::addCategory(string const & n, string const & parent)
        }
        else {
                PanelMap::iterator it = panel_map_.find(parent);
+               //BOOST_ASSERT(it != panel_map_.end());
+               if (it == panel_map_.end()) {
+                       addCategory(parent);
+                       it = panel_map_.find(parent);
+               }
                BOOST_ASSERT(it != panel_map_.end());
+
                item = new QTreeWidgetItem(it->second);
                item->setText(0, name);
                //it->second->addChild(item);
@@ -124,7 +130,8 @@ void PanelStack::setCurrentPanel(string const & name)
 }
 
 
-void PanelStack::switchPanel(QTreeWidgetItem * item, QTreeWidgetItem* previous)
+void PanelStack::switchPanel(QTreeWidgetItem * item,
+                            QTreeWidgetItem * /*previous*/)
 {
        WidgetMap::const_iterator cit = widget_map_.find(item);
        if (cit == widget_map_.end())
@@ -132,3 +139,5 @@ void PanelStack::switchPanel(QTreeWidgetItem * item, QTreeWidgetItem* previous)
 
        stack_->setCurrentWidget(cit->second);
 }
+
+#include "panelstack_moc.cpp"