f9039b2ae2
git-svn-id: file:///fltk/svn/fltk/trunk@2 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
29 lines
971 B
C++
29 lines
971 B
C++
// Fluid_Image.H
|
|
|
|
// This class stores the image labels for widgets in fluid. This is
|
|
// not a class in fltk itself, and this will produce different types of
|
|
// code depending on what the image type is. There are private subclasses
|
|
// in Fluid_Image.C for each type of image format. Right now only xpm
|
|
// files are supported.
|
|
|
|
class Fluid_Image {
|
|
const char *name_;
|
|
int refcount;
|
|
protected:
|
|
Fluid_Image(const char *name); // no public constructor
|
|
virtual ~Fluid_Image(); // no public destructor
|
|
public:
|
|
int written;
|
|
static Fluid_Image* find(const char *);
|
|
void decrement(); // reference counting & automatic free
|
|
void increment();
|
|
virtual void label(Fl_Widget *) = 0; // set the label of this widget
|
|
virtual void write_static() = 0;
|
|
virtual void write_code() = 0;
|
|
const char *name() const {return name_;}
|
|
};
|
|
|
|
// pop up file chooser and return a legal image selected by user,
|
|
// or zero for any errors:
|
|
Fluid_Image *ui_find_image(const char *);
|