PieDock  1.6.3
Icon.h
1 /*
2  * O ,-
3  * ° o . -´ ' ,-
4  * ° .´ ` . ´,´
5  * ( ° )) . (
6  * `-;_ . -´ `.`.
7  * `._' ´
8  *
9  * Copyright (c) 2007-2010 Markus Fisch <mf@markusfisch.de>
10  *
11  * Licensed under the MIT license:
12  * http://www.opensource.org/licenses/mit-license.php
13  */
14 #ifndef _PieDock_Icon_
15 #define _PieDock_Icon_
16 
17 #include "ArgbSurfaceSizeMap.h"
18 
19 namespace PieDock
20 {
26  class Icon : public ArgbSurfaceSizeMap
27  {
28  public:
29  enum Type
30  {
31  Missing,
32  Filler,
33  File,
34  Window
35  };
36 
37  Icon( const ArgbSurface *s, Type t = File ) :
38  ArgbSurfaceSizeMap( s ),
39  type( t ) {}
40  virtual ~Icon() {}
41  inline const Type &getType() const { return type; }
42  inline void setType( Type t ) { type = t; }
43 
44  private:
45  Type type;
46  };
47 }
48 
49 #endif