-/* This file is part of*
- * ======================================================
+/**
+ * \file insetparent.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * LyX, The Document Processor
- *
- * Copyright 1997-2000 The LyX Team.
- *
- * ====================================================== */
+ * \author Alejandro Aguilar Sierra
+ *
+ * Full author contact details are available in file CREDITS
+ */
// Created by asierra 970813
#include <config.h>
-
-#ifdef __GNUG__
-#pragma implementation
-#endif
-
#include "insetparent.h"
-#include "support/filetools.h"
#include "BufferView.h"
-#include "LyXView.h"
-#include "lyxfunc.h"
-#include "commandtags.h"
+#include "frontends/LyXView.h"
+#include "support/LOstream.h"
+#include "funcrequest.h"
+#include "buffer.h"
+#include "gettext.h"
+
+#include "support/filetools.h"
+#include "support/lstrings.h"
+using std::ostream;
-InsetParent::InsetParent(string const & fn, Buffer * owner)
- : InsetCommand("lyxparent")
+
+InsetParent::InsetParent(InsetCommandParams const & p, Buffer const & bf, bool)
+ : InsetCommand(p)
+{
+ string const fn = p.getContents();
+ setContents(MakeAbsPath(fn, bf.filePath()));
+}
+
+
+string const InsetParent::getScreenLabel(Buffer const *) const
{
- if (owner)
- setContents(MakeAbsPath(fn, OnlyPath(owner->fileName())));
- else
- setContents(fn);
+ return bformat(_("Parent: %1$s"), getContents());
}
-void InsetParent::Edit(BufferView * bv, int, int, unsigned int)
-{
- bv->owner()->getLyXFunc()->
- Dispatch(LFUN_CHILDOPEN, getContents().c_str());
+dispatch_result InsetParent::localDispatch(FuncRequest const & cmd)
+{
+ switch (cmd.action) {
+ case LFUN_INSET_EDIT:
+ cmd.view()->owner()->dispatch(FuncRequest(LFUN_CHILDOPEN, getContents()));
+ return DISPATCHED;
+ default:
+ return UNDISPATCHED;
+ }
}
// LaTeX must just ignore this command
-int InsetParent::Latex(ostream & os,
- signed char fragile, bool free_spc) const
+int InsetParent::latex(Buffer const * buf, ostream & os,
+ bool fragile, bool free_spc) const
{
os << "%%#{lyx}";
- InsetCommand::Latex(os, fragile, free_spc);
+ InsetCommand::latex(buf, os, fragile, free_spc);
return 0;
}