Laxkit  0.0.7.1
filepreviewer.h
1 //
2 //
3 // The Laxkit, a windowing toolkit
4 // Please consult http://laxkit.sourceforge.net about where to send any
5 // correspondence about this software.
6 //
7 // This library is free software; you can redistribute it and/or
8 // modify it under the terms of the GNU Library General Public
9 // License as published by the Free Software Foundation; either
10 // version 2 of the License, or (at your option) any later version.
11 //
12 // This library is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 // Library General Public License for more details.
16 //
17 // You should have received a copy of the GNU Library General Public
18 // License along with this library; if not, write to the Free Software
19 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 //
21 // Copyright (c) 2004-2010,2012 Tom Lechner
22 //
23 #ifndef _LAX_FILEPREVIEWER_H
24 #define _LAX_FILEPREVIEWER_H
25 
26 #include <lax/messagebar.h>
27 
28 #ifdef LAX_USES_IMLIB
29 #include <Imlib2.h>
30 #endif
31 
32 namespace Laxkit {
33 
34 
35 #define FILEPREV_SHOW_DIMS (1<<28)
36 
37 class FilePreviewer : public MessageBar
38 {
39  protected:
40  char *filename;
41  long sizelimit;
42  int state;
43 #ifdef LAX_USES_IMLIB
44  Imlib_Image image;
45 #endif
46 
47 
48  public:
49  int pad;
50  FilePreviewer(anXWindow *pwindow,const char *nname,const char *ntitle,unsigned long nstyle,
51  int nx,int ny,int nw,int nh,int brder,
52  const char *file=NULL,int sz=5000);
53  virtual ~FilePreviewer();
54  virtual const char *tooltip() { return filename; }
55 // virtual int init();
56  virtual void Refresh();
57  virtual const char *whattype() { return "FilePreviewer"; }
58 // virtual int LBDown(int x,int y,unsigned int state,int count);
59 // virtual int RBDown(int x,int y,unsigned int state,int count);
60 // virtual int LBUp(int x,int y,unsigned int state);
61 // virtual int RBUp(int x,int y,unsigned int state);
62 // virtual int MouseMove(int x,int y,unsigned int state);
63 // virtual int MoveResize(int nx,int ny,int nw,int nh);
64 // virtual int Resize(int nw,int nh);
65  virtual int SetText(const char *newtext) { return MessageBar::SetText(newtext); }
66  virtual int Preview(const char *file);
67  virtual const char *Preview() { return filename; }
68 };
69 
70 } // namespace Laxkit
71 
72 #endif
73 

Mon Feb 17 2014 11:52:56, Laxkit