// -*- C++ -*-
-/* This file is part of*
- * ======================================================
+/**
+ * \file inseturl.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * LyX, The Document Processor
- *
- * Copyright (C) 1997 LyX Team (this file was created this year)
- *
- *======================================================*/
+ * \author José Matos
+ *
+ * Full author contact details are available in file CREDITS
+ */
-#ifndef _INSET_URL_H
-#define _INSET_URL_H
+#ifndef INSET_URL_H
+#define INSET_URL_H
-#ifdef __GNUG__
-#pragma interface
-#endif
#include "insetcommand.h"
-#include "buffer.h"
-#include "form_url.h"
struct LaTeXFeatures;
-/** The url inset
+/** The url inset
*/
-class InsetUrl: public InsetCommand {
+class InsetUrl : public InsetCommand {
public:
- ///
- enum Url_Flags {
- ///
- URL,
- ///
- HTML_URL
- };
-
- ///
- InsetUrl(): InsetCommand("url"), fd_form_url(0) { flag = InsetUrl::URL; }
- ///
- InsetUrl(string const &);
///
- InsetUrl(InsetCommand const&);
- ///
- InsetUrl(string const &,string const &,string const &);
+ explicit
+ InsetUrl(InsetCommandParams const &);
///
~InsetUrl();
- ///
- Inset* Clone() { return new InsetUrl(getCommand()); }
- ///
- Inset::Code LyxCode() const { return Inset::URL_CODE; }
- ///
- void Validate(LaTeXFeatures &) const;
///
- void Edit(int, int);
- ///
- unsigned char Editable() const {
- return 1;
+ virtual std::auto_ptr<InsetBase> clone() const {
+ return std::auto_ptr<InsetBase>(new InsetUrl(params()));
}
///
- char const* EditMessage() {return "Opened Url";}
- ///
- bool Display() const { return false; }
- ///
- string getScreenLabel() const;
+ dispatch_result localDispatch(FuncRequest const & cmd);
///
- InsetUrl::Url_Flags getFlag() { return flag; }
+ InsetOld::Code lyxCode() const { return InsetOld::URL_CODE; }
///
- void setFlag(InsetUrl::Url_Flags f) { flag = f; }
- ///
- void gotoLabel();
+ void validate(LaTeXFeatures &) const;
///
- int Latex(FILE *file, signed char fragile);
+ string const getScreenLabel(Buffer const *) const;
///
- int Latex(string &file, signed char fragile);
+ EDITABLE editable() const { return IS_EDITABLE; }
///
- int Linuxdoc(string &file);
+ bool display() const { return false; }
///
- int DocBook(string &file);
+ int latex(Buffer const *, std::ostream &,
+ LatexRunParams const &) const;
///
- static void CloseUrlCB(FL_OBJECT *, long data);
-private:
+ int ascii(Buffer const *, std::ostream &, int linelen) const;
///
- Url_Flags flag;
+ int linuxdoc(Buffer const *, std::ostream &) const;
///
- FD_form_url *fd_form_url;
+ int docbook(Buffer const *, std::ostream &, bool mixcont) const;
};
#endif