/* * $Id$ * * Desktop icons manager * Part of Equinox Desktop Environment (EDE). * Copyright (c) 2000-2006 EDE Authors. * * This program is licenced under terms of the * GNU General Public Licence version 2 or newer. * See COPYING for details. */ #ifndef EICONMAN_H #define EICONMAN_H #include #include #include #include #include #include #include #include #include #include #include #include //#include #include //#include //#include #include //#include /*#include #include #include #include #include #include */ #include //#include /*#include #include */ #include //#include /*#include #include #include #include #include #include #include #include #include */ #include // for PATH_MAX #include //#include #include #include #include #include "../edelib2/NLS.h" //#include #include "../edelib2/EDE_Run.h" //#include class WPaper; class Desktop : public fltk::DoubleBufferWindow { public: Desktop(); ~Desktop(); virtual int handle(int); virtual void hide() {} virtual void draw(); void update_bg(); void update_icons(); void update_workarea(); void auto_arrange(); WPaper *wpaper; //Generated image fltk::Color bg_color; bool bg_use; int bg_opacity, bg_mode; char* bg_filename; fltk::PopupMenu *popup; }; class WPaper : public fltk::SharedImage { public: WPaper(int W, int H); // WPaper(int W, int H, Fl_PixelFormat *fmt); ~WPaper(); void _draw(int dx, int dy, int dw, int dh, int sx, int sy, int sw, int sh, fltk::Flags f); }; extern Desktop *desktop; extern int label_background; extern int label_foreground; extern int label_fontsize; extern bool label_trans; extern int label_maxwidth; extern int label_gridspacing; extern bool one_click_exec; #endif