#endif
#include "insetcommand.h"
-#include "buffer.h"
-#include "form_url.h"
+#include "support/utility.hpp"
struct LaTeXFeatures;
/** The url inset
*/
-class InsetUrl : public InsetCommand {
+class InsetUrl : public InsetCommand, public noncopyable {
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 &);
- ///
- ~InsetUrl();
+ explicit
+ InsetUrl(InsetCommandParams const &);
///
- Inset * Clone() const { return new InsetUrl(getCommand()); }
+ Inset * Clone() const { return new InsetUrl(params()); }
///
Inset::Code LyxCode() const { return Inset::URL_CODE; }
///
void Validate(LaTeXFeatures &) const;
///
- void Edit(BufferView *, int, int, unsigned int);
- ///
- unsigned char Editable() const {
- return 1;
- }
- ///
- const char * EditMessage() const {return _("Opened Url");}
- ///
- bool display() const { return false; }
- ///
string getScreenLabel() const;
///
- InsetUrl::Url_Flags getFlag() const { return flag; }
+ EDITABLE Editable() const { return IS_EDITABLE; }
///
- void setFlag(InsetUrl::Url_Flags f) { flag = f; }
+ void Edit(BufferView *, int, int, unsigned int);
///
- void gotoLabel();
- ///
- int Latex(ostream &, signed char fragile) const;
-#ifndef USE_OSTREAM_ONLY
- ///
- int Latex(string & file, signed char fragile) const;
- ///
- int Linuxdoc(string & file) const;
- ///
- int DocBook(string & file) const;
-#else
- ///
- int Linuxdoc(ostream &) const;
- ///
- int DocBook(ostream &) const;
-#endif
- ///
- static void CloseUrlCB(FL_OBJECT *, long data);
-private:
+ bool display() const { return false; }
///
- struct Holder {
- InsetUrl * inset;
- BufferView * view;
- };
+ int Latex(Buffer const *, std::ostream &,
+ bool fragile, bool free_spc) const;
///
- Holder holder;
-
+ int Ascii(Buffer const *, std::ostream &) const;
///
- Url_Flags flag;
+ int Linuxdoc(Buffer const *, std::ostream &) const;
///
- FD_form_url * fd_form_url;
+ int DocBook(Buffer const *, std::ostream &) const;
};
#endif