~bitshifternz/unity/bug-750349-restore-state

« back to all changes in this revision

Viewing changes to src/LauncherModel.h

Import the work done so far with Compiz

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef LAUNCHERMODEL_H
 
2
#define LAUNCHERMODEL_H
 
3
 
 
4
#include "LauncherIcon.h"
 
5
 
 
6
#include <sigc++/sigc++.h>
 
7
 
 
8
class LauncherModel : public sigc::trackable
 
9
{
 
10
 
 
11
public:
 
12
    typedef std::list<LauncherIcon*> Base;
 
13
    typedef Base::iterator iterator; 
 
14
    typedef Base::reverse_iterator reverse_iterator; 
 
15
    typedef bool (*SortFunc) (LauncherIcon *first, LauncherIcon *second);
 
16
    
 
17
    LauncherModel();
 
18
    ~LauncherModel();
 
19
 
 
20
    void AddIcon (LauncherIcon *icon);
 
21
    void RemoveIcon (LauncherIcon *icon);
 
22
    void Sort (SortFunc func);
 
23
    int  Size ();
 
24
    
 
25
    iterator begin ();
 
26
    iterator end ();
 
27
    reverse_iterator rbegin ();
 
28
    reverse_iterator rend ();
 
29
    
 
30
    sigc::signal<void, void *> icon_added;
 
31
    sigc::signal<void, void *> icon_removed;
 
32
    sigc::signal<void> order_changed;
 
33
    
 
34
private:
 
35
    Base _inner;
 
36
};
 
37
 
 
38
#endif // LAUNCHERMODEL_H