diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-10-06 18:21:25 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 1998-10-06 18:21:25 +0000 |
| commit | f9039b2ae21988783feae9b362818e7923e82d14 (patch) | |
| tree | 6d6fe3679d73448758f9794e7d4d4f6b22a4adad /fluid/Fluid_Image.h | |
| parent | 67e89232f9ba067825a158734a09e0fa21aacbe3 (diff) | |
Initial revision
git-svn-id: file:///fltk/svn/fltk/trunk@2 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'fluid/Fluid_Image.h')
| -rw-r--r-- | fluid/Fluid_Image.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/fluid/Fluid_Image.h b/fluid/Fluid_Image.h new file mode 100644 index 000000000..fdc7937bc --- /dev/null +++ b/fluid/Fluid_Image.h @@ -0,0 +1,28 @@ +// 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 *); |
