lyx_mirror/src/insets/insetbutton.h
Angus Leeming cda53633ff Hold on to your hats.
Qt users should autogen.sh
Gnome users --- you're on your own ;-)
Happy recompiling.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6253 a592a061-630c-0410-9148-cb99ea01b6c8
2003-02-25 14:51:38 +00:00

47 lines
1.0 KiB
C++

// -*- C++ -*-
/**
* \file insetbutton.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Asger Alstrup Nielsen
* \author Jürgen Vigna
* \author Lars Gullik Bjønnes
*
* Full author contact details are available in file CREDITS
*/
#ifndef INSET_BUTTON_H
#define INSET_BUTTON_H
#include "inset.h"
#include "LString.h"
#include <boost/weak_ptr.hpp>
/** Used to provide an inset that looks like a button.
*/
class InsetButton: public Inset {
public:
///
int ascent(BufferView *, LyXFont const &) const;
///
int descent(BufferView *, LyXFont const &) const;
///
int width(BufferView *, LyXFont const &) const;
///
void draw(BufferView *, LyXFont const &, int, float &, bool) const;
protected:
///
virtual void cache(BufferView *) const;
///
virtual BufferView * view() const;
/// This should provide the text for the button
virtual string const getScreenLabel(Buffer const *) const = 0;
private:
mutable boost::weak_ptr<BufferView> view_;
};
#endif