2007-06-18 18:18:35 +04:00
|
|
|
/*
|
|
|
|
* $Id$
|
|
|
|
*
|
|
|
|
* Eiconman, desktop and icon manager
|
|
|
|
* Part of Equinox Desktop Environment (EDE).
|
|
|
|
* Copyright (c) 2000-2007 EDE Authors.
|
|
|
|
*
|
|
|
|
* This program is licensed under terms of the
|
|
|
|
* GNU General Public License version 2 or newer.
|
|
|
|
* See COPYING for details.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __WALLPAPER_H__
|
|
|
|
#define __WALLPAPER_H__
|
|
|
|
|
|
|
|
#include <FL/Fl_Box.h>
|
|
|
|
|
2007-06-20 14:58:07 +04:00
|
|
|
#include <X11/Xlib.h> // XImage, Pixmap
|
|
|
|
|
2007-06-18 18:18:35 +04:00
|
|
|
/*
|
|
|
|
* Class responsible for displaying images at background
|
|
|
|
* their scaling (TODO), caching(TODO) and making coffee at spear time.
|
|
|
|
*/
|
|
|
|
class Wallpaper : public Fl_Box {
|
|
|
|
private:
|
2007-06-20 14:58:07 +04:00
|
|
|
XImage* rootpmap_image;
|
|
|
|
Pixmap rootpmap_pixmap;
|
2007-06-18 18:18:35 +04:00
|
|
|
bool tiled;
|
2007-06-20 14:58:07 +04:00
|
|
|
void set_rootpmap(void);
|
2007-06-18 18:18:35 +04:00
|
|
|
|
|
|
|
public:
|
|
|
|
Wallpaper(int X, int Y, int W, int H);
|
|
|
|
~Wallpaper();
|
|
|
|
|
|
|
|
bool set(const char* path);
|
|
|
|
bool set_tiled(const char* path);
|
|
|
|
virtual void draw(void);
|
2007-06-23 15:31:36 +04:00
|
|
|
virtual int handle(int event);
|
2007-06-18 18:18:35 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|