/* This file is part of*
- * ======================================================
+ * ======================================================
*
* LyX, The Document Processor
*
- * Copyright (C) 1997-1998 LyX Team
+ * Copyright 1997-2000 The LyX Team.
*
- *======================================================*/
+ * ====================================================== */
// Created by asierra 970813
#include "LyXView.h"
#include "lyxfunc.h"
#include "commandtags.h"
+#include "buffer.h"
+#include "gettext.h"
+using std::ostream;
-extern BufferView *current_view;
+InsetParent::InsetParent(InsetCommandParams const & p, Buffer * bf)
+ : InsetCommand(p)
+{
+ string fn = p.getContents();
+ if (bf)
+ setContents(MakeAbsPath(fn, OnlyPath(bf->fileName())));
+ else
+ setContents(fn);
+}
-InsetParent::InsetParent(string fn, Buffer* owner): InsetCommand("lyxparent")
+
+string const InsetParent::getScreenLabel() const
{
- if (owner)
- setContents(MakeAbsPath(fn, OnlyPath(owner->getFileName())));
- else
- setContents(fn);
+ return string(_("Parent:")) + getContents();
}
-void InsetParent::Edit(int, int)
+
+void InsetParent::Edit(BufferView * bv, int, int, unsigned int)
{
- current_view->getOwner()->getLyXFunc()->Dispatch(LFUN_CHILDOPEN,
- getContents().c_str());
+ bv->owner()->getLyXFunc()->
+ Dispatch(LFUN_CHILDOPEN, getContents());
}
-// LaTeX must just ignore this command
-int InsetParent::Latex(FILE *file, signed char fragile)
-{
- fprintf(file, "%%#{lyx}");
- InsetCommand::Latex(file, fragile);
- return 0;
-}
// LaTeX must just ignore this command
-int InsetParent::Latex(string &file, signed char fragile)
+int InsetParent::Latex(Buffer const * buf, ostream & os,
+ bool fragile, bool free_spc) const
{
- file += "%%#{lyx}";
- InsetCommand::Latex(file, fragile);
- return 0;
+ os << "%%#{lyx}";
+ InsetCommand::Latex(buf, os, fragile, free_spc);
+ return 0;
}