fltk/fluid/Fluid_Image.h

29 lines
971 B
C
Raw Normal View History

// 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 *);