FLTK 1.3.3

- Main Page
- Related Pages
- Modules
- Classes
- Files

- File List
- File Members

Fl_Image_Surface.H
1 //
2 // "$Id: Fl_Image_Surface.H 10407 2014-10-29 20:01:44Z cand $"
3 //
4 // Draw-to-image code for the Fast Light Tool Kit (FLTK).
5 //
6 // Copyright 1998-2014 by Bill Spitzak and others.
7 //
8 // This library is free software. Distribution and use rights are outlined in
9 // the file "COPYING" which should have been included with this file. If this
10 // file is missing or damaged, see the license at:
11 //
12 // http://www.fltk.org/COPYING.php
13 //
14 // Please report all bugs and problems on the following page:
15 //
16 // http://www.fltk.org/str.php
17 //
18
19 #ifndef Fl_Image_Surface_H
20 #define Fl_Image_Surface_H
21
22 #include <FL/Fl_Copy_Surface.H>
23 #include <FL/Fl_Image.H>
24
25
46 class FL_EXPORT Fl_Image_Surface : public Fl_Surface_Device {
47 private:
48 Fl_Offscreen offscreen;
49 int width;
50 int height;
51 Fl_Paged_Device *helper;
52 #ifdef __APPLE__
53 #elif defined(WIN32)
54 HDC _sgc;
55 Window _sw;
56 Fl_Surface_Device *_ss;
57 int _savedc;
58 #else
59 Fl_Surface_Device *previous;
60 Window pre_window;
61 GC gc;
62 #endif
63 public:
64 static const char *class_id;
65 const char *class_name() {return class_id;};
66 Fl_Image_Surface(int w, int h);
67 ~Fl_Image_Surface();
68 void set_current();
69 void draw(Fl_Widget*, int delta_x = 0, int delta_y = 0);
70 Fl_RGB_Image *image();
71 };
72
73 #ifdef __APPLE__
74 /* Mac class to implement translate()/untranslate() for a flipped bitmap graphics context */
75 class FL_EXPORT Fl_Quartz_Flipped_Surface_ : public Fl_Quartz_Surface_ {
76 public:
77 static const char *class_id;
78 const char *class_name() {return class_id;};
79 Fl_Quartz_Flipped_Surface_(int w, int h);
80 void translate(int x, int y);
81 void untranslate();
82 virtual ~Fl_Quartz_Flipped_Surface_() {};
83 };
84 #endif
85
86 #endif // Fl_Image_Surface_H
87
88 //
89 // End of "$Id: Fl_Image_Surface.H 10407 2014-10-29 20:01:44Z cand $".
90 //
Fl_Widget
Fl_Widget is the base class for all widgets in FLTK.
Definition: Fl_Widget.H:100
Fl_Paged_Device
Represents page-structured drawing surfaces.
Definition: Fl_Paged_Device.H:38
Fl_Surface_Device
A surface that's susceptible to receive graphical output.
Definition: Fl_Device.H:523
Fl_Surface_Device::set_current
virtual void set_current(void)
Use this drawing surface for future graphics requests.
Definition: Fl_Device.cxx:40
Fl_Image.H
Fl_Image, Fl_RGB_Image classes.
Fl_RGB_Image
The Fl_RGB_Image class supports caching and drawing of full-color images with 1 to 4 channels of colo...
Definition: Fl_Image.H:183
Fl_Image_Surface
Directs all graphics requests to an Fl_Image.
Definition: Fl_Image_Surface.H:46
Fl_Image_Surface::class_name
const char * class_name()
Returns the name of the class of this object.
Definition: Fl_Image_Surface.H:65
- © 1998-2014 by Bill Spitzak and others.