Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Fl_Labeltype.h

00001 /*
00002  * $Id: Fl_Labeltype.h,v 1.3 2003/03/15 16:09:55 laza2000 Exp $
00003  *
00004  * Extended Fast Light Toolkit (EFLTK)
00005  * Copyright (C) 2002-2003 by EDE-Team
00006  * WWW: http://www.sourceforge.net/projects/ede
00007  *
00008  * Fast Light Toolkit (FLTK)
00009  * Copyright (C) 1998-2003 by Bill Spitzak and others.
00010  * WWW: http://www.fltk.org
00011  *
00012  * This library is distributed under the GNU LIBRARY GENERAL PUBLIC LICENSE
00013  * version 2. See COPYING for details.
00014  *
00015  * Author : Mikko Lahteenmaki
00016  * Email  : mikko@fltk.net
00017  *
00018  * Please report all bugs and problems to "efltk-bugs@fltk.net"
00019  *
00020  */
00021 
00022 #ifndef _FL_LABELTYPE_H_
00023 #define _FL_LABELTYPE_H_
00024 
00025 #include "Fl_Color.h"
00026 #include "Fl_Flags.h"
00027 
00029 class FL_API Fl_Labeltype_ {
00030 public:
00031     Fl_Labeltype_(const char* n) : name(n), next(first) { first = this; }
00032 
00033     virtual void draw(const char*, int,int,int,int, Fl_Color, Fl_Flags) const;
00034 
00035     const char* name;
00036     const Fl_Labeltype_* next;
00037     static const Fl_Labeltype_* first;
00038     static const Fl_Labeltype_* find(const char* name);
00039 };
00040 
00041 typedef const Fl_Labeltype_* Fl_Labeltype;
00042 
00043 extern FL_API Fl_Labeltype_ fl_normal_label;
00044 #define FL_NORMAL_LABEL (&fl_normal_label)
00045 
00046 class FL_API Fl_No_Label : public Fl_Labeltype_ {
00047 public:
00048     Fl_No_Label(const char * n) : Fl_Labeltype_(n) {}
00049     virtual void draw(const char*, int,int,int,int, Fl_Color, Fl_Flags) const;
00050 };
00051 extern FL_API Fl_No_Label fl_no_label;
00052 #define FL_NO_LABEL (&fl_no_label)
00053 
00054 class FL_API Fl_Symbol_Label : public Fl_Labeltype_ {
00055 public:
00056     Fl_Symbol_Label(const char * n) : Fl_Labeltype_(n) {}
00057     virtual void draw(const char*, int,int,int,int, Fl_Color, Fl_Flags) const;
00058 };
00059 extern FL_API const Fl_Symbol_Label fl_symbol_label;
00060 #define FL_SYMBOL_LABEL (&fl_symbol_label)
00061 
00062 class FL_API Fl_Engraved_Label : public Fl_Labeltype_ {
00063     const int* data;
00064 public:
00065     Fl_Engraved_Label(const char * n, const int p[][3]) : Fl_Labeltype_(n), data((const int*)p) { }
00066     virtual void draw(const char*, int,int,int,int, Fl_Color, Fl_Flags) const;
00067 };
00068 extern FL_API const Fl_Engraved_Label fl_shadow_label;
00069 #define FL_SHADOW_LABEL (&fl_shadow_label)
00070 extern FL_API const Fl_Engraved_Label fl_engraved_label;
00071 #define FL_ENGRAVED_LABEL (&fl_engraved_label)
00072 extern FL_API const Fl_Engraved_Label fl_embossed_label;
00073 #define FL_EMBOSSED_LABEL (&fl_embossed_label)
00074 
00075 #endif

Generated on Thu Jul 31 15:33:44 2003 for eFLTK by doxygen1.2.15