X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Ffiginset.h;h=02000371d9d5a224e689cc5fb3666ab50f025ed8;hb=4a5b7a5952ad2381fcdf4830511293e184c7c5a1;hp=7245dc1405f37901374ccf39c19bdd476b87158c;hpb=1d7d3cc4afa2205c801ccc2aa71c7ac59359dc5f;p=lyx.git diff --git a/src/insets/figinset.h b/src/insets/figinset.h index 7245dc1405..02000371d9 100644 --- a/src/insets/figinset.h +++ b/src/insets/figinset.h @@ -1,82 +1,90 @@ // -*- C++ -*- /* figinset.h - Figure inset header - part of LyX project - (C)1996 by Ivan Schreter + Copyright 1996 by Ivan Schreter */ -#ifndef _FIGINSET_H -#define _FIGINSET_H +#ifndef FIGINSET_H +#define FIGINSET_H -#include "form1.h" -#include "buffer.h" +#include FORMS_H_LOCATION +#include "figure_form.h" #include "LString.h" +#include "buffer.h" #include "LaTeXFeatures.h" - +#include "insets/inset.h" +#include /* the rest is figure stuff */ struct Figref; /// -class InsetFig: public Inset { +class InsetFig: public Inset, public SigC::Object { public: /// - InsetFig(int tmpx, int tmpy, Buffer *); + InsetFig(int tmpx, int tmpy, Buffer const &); /// ~InsetFig(); /// - int Ascent(LyXFont const &font) const; + int ascent(BufferView *, LyXFont const & font) const; /// - int Descent(LyXFont const &font) const; + int descent(BufferView *, LyXFont const & font) const; /// - int Width(LyXFont const &font) const; + int width(BufferView *, LyXFont const & font) const; /// - void Draw(LyXFont font, LyXScreen &scr, int baseline, float &x); + void draw(BufferView *, LyXFont const &, int, float &, bool) const; /// - void Write(FILE *file); + void write(Buffer const *, std::ostream &) const; /// - void Read(LyXLex &lex); + void read(Buffer const *, LyXLex & lex); /// - int Latex(FILE *file, signed char fragile); + int latex(Buffer const *, std::ostream &, bool fragile, bool free_space) const; /// - int Latex(string &file, signed char fragile); + int ascii(Buffer const *, std::ostream &, int linelen) const; /// - int Linuxdoc(string &file); + int linuxdoc(Buffer const *, std::ostream &) const; /// - int DocBook(string &file); + int docbook(Buffer const *, std::ostream &) const; /// Updates needed features for this inset. - void Validate(LaTeXFeatures &features) const; + void validate(LaTeXFeatures & features) const; /// what appears in the minibuffer when opening - char const* EditMessage() {return "Opened figure";} + string const editMessage() const; + /// - void Edit(int, int); + void edit(BufferView *, int, int, unsigned int); /// - unsigned char Editable() const; + void edit(BufferView * bv, bool front = true); /// - bool Deletable() const; + EDITABLE editable() const; /// - Inset::Code LyxCode() const; + bool deletable() const; /// - InsetFig * Clone() const; + Inset::Code lyxCode() const; /// - void CallbackFig(long arg); + Inset * clone(Buffer const &, bool same_id = false) const; /// - void Preview(char const *p); + void callbackFig(long arg); + /// + void preview(string const & p); /// browse for file - void BrowseFile(); + void browseFile(); /// form for user input - FD_Figure *form; + FD_Figure * form; /// width and height in pixels on screen - int wid, hgh; + int wid; + int hgh; /// width and height in postscript units (1/72 inch) - int pswid, pshgh; + int pswid; + int pshgh; /// width of raw figure w/o rotation int raw_wid; /// heigt of raw figure w/o rotation int raw_hgh; /// x and y coordinate in ps units - int psx, psy; + int psx; + int psy; /// .eps file name string fname; @@ -109,39 +117,48 @@ public: HWTYPE thtype; /// width and height - float xwid, xhgh; + float xwid; + float xhgh; /// rotation angle float angle; /// graphics command, latex version - string cmd; + mutable string cmd; /// Caption for subfigure package string subcaption; /// various flags int flags; - bool subfigure : 1; + /// + bool subfigure; /// figure reference - Figref *figure; + Figref * figure; /// temporary flags int pflags; - bool psubfigure : 1; + /// + bool psubfigure; private: + /** Redraw the form (on receipt of a Signal indicating, for example, + that the xform colors have been re-mapped). + */ + void redraw(); /// - Buffer *owner; + Buffer const * owner; /// restore values on the form - void RestoreForm(); + void restoreForm(); /// recompute screen params - void Recompute(); + void recompute(); /// regenerate \includegraphics{} command - void Regenerate(); + void regenerate() const; /// regenerate \inlcudegraphics{} command in temporary buffer - void TempRegenerate(); + void tempRegenerate(); /// get sizes from .eps file - void GetPSSizes(); + void getPSSizes(); + /// Redraw connection. + SigC::Connection r_; }; @@ -177,9 +194,9 @@ struct figdata { /// struct Figref { /// figure data (image) - figdata *data; + figdata * data; /// inset of this figure - InsetFig *inset; + InsetFig * inset; }; #endif