#include "Cursor.h"
-#include "support/FileName.h"
#include "support/strfwd.h"
using lyx::support::FileName;
LinkBackGraphicsType,
EmfGraphicsType,
WmfGraphicsType,
- AnyGraphicsType,
+ AnyGraphicsType
+ };
+
+ enum TextType {
+ AnyTextType,
+ LyXOrPlainTextType,
+ PlainTextType,
+ HtmlTextType,
+ LaTeXTextType,
+ LyXTextType,
};
/**
* clipboard.
*/
virtual std::string const getAsLyX() const = 0;
- /// Get the contents of the window system clipboard in plain text format.
- virtual docstring const getAsText() const = 0;
+ /// Get the contents of the window system clipboard in any text format except LyxTextType.
+ virtual docstring const getAsText(TextType type) const = 0;
/// Get the contents of the window system clipboard as graphics file.
virtual FileName getAsGraphics(Cursor const & cur, GraphicsType type) const = 0;
-
+
/**
* Fill the system clipboard. The format of \p lyx is as written in
* .lyx files, the format of \p text is plain text.
* This should be called when the user requests to cut or copy to
* the clipboard.
*/
- virtual void put(std::string const & lyx, docstring const & text) = 0;
+ virtual void put(std::string const & lyx, docstring const & html, docstring const & text) = 0;
+
+ /// Put a general string on the system clipboard (not LyX text)
+ virtual void put(std::string const & text) const = 0;
- /// Does the clipboard contain LyX contents?
- virtual bool hasLyXContents() const = 0;
+ /// Does the clipboard contain text contents?
+ virtual bool hasTextContents(TextType type = AnyTextType) const = 0;
/// Does the clipboard contain graphics contents of a certain type?
virtual bool hasGraphicsContents(GraphicsType type = AnyGraphicsType) const = 0;
/// state of clipboard.