1999-09-27 18:44:28 +00:00
|
|
|
// -*- C++ -*-
|
|
|
|
/* This file is part of*
|
1999-11-15 10:58:38 +00:00
|
|
|
* ======================================================
|
1999-09-27 18:44:28 +00:00
|
|
|
*
|
|
|
|
* LyX, The Document Processor
|
|
|
|
*
|
2000-02-10 17:53:36 +00:00
|
|
|
* Copyright 1995 Matthias Ettrich
|
|
|
|
* Copyright 1995-2000 The LyX Team.
|
1999-09-27 18:44:28 +00:00
|
|
|
*
|
1999-11-15 10:58:38 +00:00
|
|
|
* ====================================================== */
|
1999-09-27 18:44:28 +00:00
|
|
|
|
1999-11-04 01:40:20 +00:00
|
|
|
#ifndef INSET_ERROR_H
|
|
|
|
#define INSET_ERROR_H
|
1999-09-27 18:44:28 +00:00
|
|
|
|
|
|
|
#ifdef __GNUG__
|
|
|
|
#pragma interface
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include "lyxinset.h"
|
|
|
|
#include "LString.h"
|
2000-09-22 15:09:51 +00:00
|
|
|
#include <sigc++/signal_system.h>
|
|
|
|
|
|
|
|
#ifdef SIGC_CXX_NAMESPACES
|
|
|
|
using SigC::Signal0;
|
|
|
|
#endif
|
1999-09-27 18:44:28 +00:00
|
|
|
|
|
|
|
/** Used for error messages from LaTeX runs.
|
|
|
|
|
|
|
|
The edit-operation opens a
|
|
|
|
dialog with the text of the error-message. The inset is displayed as
|
|
|
|
"Error" in a box, and automatically deleted. */
|
2000-07-15 23:51:46 +00:00
|
|
|
class InsetError : public Inset {
|
1999-09-27 18:44:28 +00:00
|
|
|
public:
|
|
|
|
///
|
2000-04-08 17:02:02 +00:00
|
|
|
explicit
|
2000-09-22 15:09:51 +00:00
|
|
|
InsetError(string const &);
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
~InsetError() { hide(); }
|
2000-02-10 17:53:36 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int ascent(BufferView *, LyXFont const &) const;
|
2000-02-10 17:53:36 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int descent(BufferView *, LyXFont const &) const;
|
2000-02-10 17:53:36 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int width(BufferView *, LyXFont const &) const;
|
2000-02-10 17:53:36 +00:00
|
|
|
///
|
2000-06-23 15:02:46 +00:00
|
|
|
void draw(BufferView *, LyXFont const &, int, float &, bool) const;
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
void Write(Buffer const *, std::ostream &) const {}
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
void Read(Buffer const *, LyXLex &) {}
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int Latex(Buffer const *, std::ostream &, bool, bool) const { return 0; }
|
2000-03-06 02:42:40 +00:00
|
|
|
///
|
2000-09-26 15:25:14 +00:00
|
|
|
int Ascii(Buffer const *, std::ostream &, int) const { return 0; }
|
2000-04-24 20:58:23 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int Linuxdoc(Buffer const *, std::ostream &) const { return 0; }
|
2000-03-06 02:42:40 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
int DocBook(Buffer const *, std::ostream &) const { return 0; }
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
bool AutoDelete() const { return true; }
|
1999-09-27 18:44:28 +00:00
|
|
|
/// what appears in the minibuffer when opening
|
2000-09-14 17:53:12 +00:00
|
|
|
string const EditMessage() const;
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
void Edit(BufferView *, int, int, unsigned int);
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
EDITABLE Editable() const { return IS_EDITABLE; }
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2000-10-10 11:50:43 +00:00
|
|
|
Inset * Clone(Buffer const &) const { return new InsetError(contents); }
|
1999-09-27 18:44:28 +00:00
|
|
|
///
|
2001-01-15 18:54:31 +00:00
|
|
|
Inset::Code LyxCode() const { return Inset::ERROR_CODE; }
|
1999-09-27 18:44:28 +00:00
|
|
|
/// We don't want "begin" and "end inset" in lyx-file
|
|
|
|
bool DirectWrite() const { return true; };
|
1999-10-19 15:06:30 +00:00
|
|
|
///
|
2000-09-22 15:09:51 +00:00
|
|
|
string const & getContents() const { return contents; }
|
|
|
|
///
|
|
|
|
Signal0<void> hide;
|
1999-09-27 18:44:28 +00:00
|
|
|
private:
|
|
|
|
///
|
1999-10-02 16:21:10 +00:00
|
|
|
string contents;
|
1999-09-27 18:44:28 +00:00
|
|
|
};
|
|
|
|
#endif
|