Changes to org.agl.homescreen interface
[staging/HomeScreen.git] / HomeScreen / src / homescreencontrolinterface.h
1 #ifndef HOMESCREENCONTROLINTERFACE_H
2 #define HOMESCREENCONTROLINTERFACE_H
3
4 #include <QObject>
5 #include "include/homescreen.hpp"
6 #include "homescreen_adapter.h"
7 #include <include/appframework.hpp>
8 #include <appframework_proxy.h>
9
10 class HomeScreenControlInterface : public QObject
11 {
12     Q_OBJECT
13 public:
14     explicit HomeScreenControlInterface(QObject *parent = 0);
15     ~HomeScreenControlInterface();
16
17 signals:
18     void newRequestsToBeVisibleApp(int pid);
19
20     QList<int> newRequestGetAllSurfacesOfProcess(int pid);
21     int newRequestGetSurfaceStatus(int surfaceId);
22     void newRequestRenderSurfaceToArea(int surfaceId, const QRect &renderArea);
23     void newRequestSurfaceIdToFullScreen(int surfaceId);
24
25 //from homescreen_adapter.h
26 public Q_SLOTS: // METHODS
27     QList<int> getAllSurfacesOfProcess(int pid);
28     int getSurfaceStatus(int surfaceId);
29     void hardKeyPressed(int key);
30     void renderSurfaceToArea(int surfaceId, const QRect &renderArea);
31     void requestSurfaceIdToFullScreen(int surfaceId);
32
33 private:
34     HomescreenAdaptor *mp_homeScreenAdaptor;
35     org::agl::appframework *mp_dBusAppFrameworkProxy;
36 };
37
38 #endif // HOMESCREENCONTROLINTERFACE_H