]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocWidget.cpp
TOC context menu (part 4)
[lyx.git] / src / frontends / qt4 / TocWidget.cpp
index 59bd1df43676f0870b1925a10f8f6e0b9b6d8c05..57b0282d1342052e6b7a0682c121f08309af50bd 100644 (file)
 #include "TocModel.h"
 
 #include "Buffer.h"
+#include "CutAndPaste.h"
 #include "FuncRequest.h"
 #include "LyXFunc.h"
 #include "Menus.h"
+#include "TocBackend.h"
+
+#include "insets/InsetCommand.h"
+#include "insets/InsetRef.h"
 
 #include "support/debug.h"
 #include "support/lassert.h"
@@ -90,12 +95,19 @@ void TocWidget::showContextMenu(const QPoint & pos)
 }
 
 
-void TocWidget::doDispatch(Cursor const & cur, FuncRequest const & cmd)
+void TocWidget::doDispatch(Cursor & cur, FuncRequest const & cmd)
 {
-       switch(cmd.action) {
-       default:
-               break;
-       }
+       QModelIndex const & index = tocTV->currentIndex();
+       TocItem const & item =
+               gui_view_.tocModels().currentItem(current_type_, index);
+       DocIterator const & dit = item.dit();
+       
+       Inset * inset = 0;
+       if (current_type_ == "label")
+               inset = dit.nextInset();
+
+       if (inset)
+               inset->dispatch(cur, FuncRequest(cmd));
 }