]> git.lyx.org Git - lyx.git/blobdiff - src/insets/inseturl.h
* src/LyXAction.C: mark goto-clear-bookmark as working without buffer
[lyx.git] / src / insets / inseturl.h
index ad955e26ea288a9588ab2b4c54e63d4ffe41268a..124600e091507125c60eaf27c6a2e02cf538002d 100644 (file)
@@ -1,95 +1,61 @@
 // -*- 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 1997-2000 The LyX Team.
- * 
- * ====================================================== */
+ * \author José Matos
+ *
+ * Full author contact details are available in file CREDITS.
+ */
 
 #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  
+namespace lyx {
+
+class LaTeXFeatures;
+
+/** The url inset
  */
 class InsetUrl : public InsetCommand {
 public:
-        ///
-        enum Url_Flags {
-               ///
-               URL,
-               ///
-               HTML_URL
-       };
-       
        ///
-       InsetUrl() : InsetCommand("url"), fd_form_url(0) {
-               flag = InsetUrl::URL;
-       }
+       explicit
+       InsetUrl(InsetCommandParams const &);
        ///
-       InsetUrl(string const &);
+       InsetBase::Code lyxCode() const { return InsetBase::URL_CODE; }
        ///
-       InsetUrl(InsetCommand const &);
+       void validate(LaTeXFeatures &) const;
        ///
-       InsetUrl(string const &, string const &, string const &);
+       docstring const getScreenLabel(Buffer const &) const;
        ///
-       ~InsetUrl();
-        ///
-        Inset * Clone() const { return new InsetUrl(getCommand()); }
-       ///
-       Inset::Code LyxCode() const { return Inset::URL_CODE; }
-       ///
-       void Validate(LaTeXFeatures &) const;
-       ///
-       void Edit(BufferView *, int, int, unsigned int);
-       ///
-       EDITABLE Editable() const {
-               return IS_EDITABLE;
-       }
+       EDITABLE editable() const { return IS_EDITABLE; }
        ///
-       const char * EditMessage() const {return _("Opened Url");}
-        ///
        bool display() const { return false; }
        ///
-       string getScreenLabel() const;
+       int latex(Buffer const &, odocstream &,
+                 OutputParams const &) const;
        ///
-       InsetUrl::Url_Flags getFlag() const { return flag; }
+       int plaintext(Buffer const &, odocstream &,
+                 OutputParams const &) const;
        ///
-       void setFlag(InsetUrl::Url_Flags f) { flag = f; }
-        ///
-        void gotoLabel();
-       ///
-       int Latex(ostream &, signed char fragile, bool free_spc) const;
-       ///
-       int Linuxdoc(ostream &) const;
-       ///
-       int DocBook(ostream &) const;
-       ///
-       static void CloseUrlCB(FL_OBJECT *, long data);
+       int docbook(Buffer const &, odocstream &,
+                   OutputParams const &) const;
+       /// the string that is passed to the TOC
+       virtual int textString(Buffer const &, odocstream &,
+               OutputParams const &) const;
 private:
-       ///
-       struct Holder {
-               InsetUrl * inset;
-               BufferView * view;
-       };
-       ///
-       Holder holder;
-       
-       ///
-        Url_Flags flag;
-       ///
-        FD_form_url * fd_form_url;
+       virtual std::auto_ptr<InsetBase> doClone() const {
+               return std::auto_ptr<InsetBase>(new InsetUrl(params()));
+       }
 };
 
+
+} // namespace lyx
+
 #endif