- string const cmdname(getCmdName());
- if (cmdname == "tableofcontents")
- return InsetOld::TOC_CODE;
- return InsetOld::NO_CODE;
-}
-
-
-void InsetTOC::metrics(MetricsInfo & mi, Dimension & dim) const
-{
- InsetCommand::metrics(mi, dim);
- int center_indent = (mi.base.textwidth - dim.wid) / 2;
- Box b(center_indent, center_indent + dim.wid, -dim.asc, dim.des);
- button().setBox(b);
-
- dim.wid = mi.base.textwidth;
- dim_ = dim;
-}
-
-
-void InsetTOC::draw(PainterInfo & pi, int x, int y) const
-{
- InsetCommand::draw(pi, x + button().box().x1, y);
-}
-
-
-dispatch_result InsetTOC::localDispatch(FuncRequest const & cmd)
-{
- switch (cmd.action) {
- case LFUN_MOUSE_RELEASE:
- if (button().box().contains(cmd.x, cmd.y))
- InsetCommandMailer("toc", *this).showDialog(cmd.view());
- return DISPATCHED;
-
- case LFUN_INSET_DIALOG_SHOW:
- InsetCommandMailer("toc", *this).showDialog(cmd.view());
- return DISPATCHED;
-
- default:
- return InsetCommand::localDispatch(cmd);
- }