}
-docstring InsetBranch::toolTip(BufferView const &, int, int) const
+docstring InsetBranch::toolTip(BufferView const & bv, int x, int y) const
{
docstring const status = isBranchSelected() ?
_("active") : _("non-active");
- return support::bformat(_("Branch (%1$s): %2$s"),
- status,
- params_.branch);
+ docstring const heading =
+ support::bformat(_("Branch (%1$s): %2$s"), status, params_.branch);
+ docstring const contents = InsetCollapsable::toolTip(bv, x, y);
+ if (isOpen(bv) || contents.empty())
+ return heading;
+ else
+ return heading + from_ascii("\n") + contents;
}
docstring s = _("Branch: ") + params_.branch;
Buffer const & realbuffer = *buffer().masterBuffer();
BranchList const & branchlist = realbuffer.params().branchlist();
- if (!branchlist.find(params_.branch))
+ if (!branchlist.find(params_.branch)
+ && buffer().params().branchlist().find(params_.branch))
s = _("Branch (child only): ") + params_.branch;
+ else if (!branchlist.find(params_.branch))
+ s = _("Branch (undefined): ") + params_.branch;
if (!params_.branch.empty()) {
// FIXME UNICODE
ColorCode c = lcolor.getFromLyXName(to_utf8(params_.branch));
InsetBranchParams params;
InsetBranch::string2params(to_utf8(cmd.argument()), params);
params_.branch = params.branch;
- setLayout(cur.buffer()->params());
+ setLayout();
break;
}
- case LFUN_MOUSE_PRESS:
- if (cmd.button() != mouse_button::button3)
- InsetCollapsable::doDispatch(cur, cmd);
- else
- cur.undispatched();
- break;
-
case LFUN_INSET_DIALOG_UPDATE:
cur.bv().updateDialog("branch", params2string(params()));
break;
Buffer const * buf = buffer().masterBuffer();
BranchList const & branchlist = buf->params().branchlist();
Branch * our_branch = const_cast<Branch *>(branchlist.find(params_.branch));
- if (!our_branch)
- break;
+ if (!our_branch) {
+ // child only?
+ our_branch = buffer().params().branchlist().find(params_.branch);
+ if (!our_branch)
+ break;
+ }
our_branch->setSelected(cmd.action == LFUN_BRANCH_ACTIVATE);
break;
}
Buffer const & realbuffer = *buffer().masterBuffer();
BranchList const & branchlist = realbuffer.params().branchlist();
Branch const * ourBranch = branchlist.find(params_.branch);
- if (!ourBranch)
- return false;
+
+ if (!ourBranch) {
+ // this branch is defined in child only
+ ourBranch = buffer().params().branchlist().find(params_.branch);
+ if (!ourBranch)
+ return false;
+ }
return ourBranch->isSelected();
}
}
+docstring InsetBranch::xhtml(odocstream & os, OutputParams const & rp) const
+{
+ if (isBranchSelected())
+ return InsetText::xhtml(os, rp);
+ return docstring();
+}
+
+
void InsetBranch::tocString(odocstream & os) const
{
if (isBranchSelected())