summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKazumasa Mitsunari <knimitz@witz-inc.co.jp>2018-10-22 17:17:51 +0900
committerKazumasa Mitsunari <knimitz@witz-inc.co.jp>2018-10-22 17:22:18 +0900
commit61eeae42caf53ab93a6270a13ad4c4f2e590bc8a (patch)
tree5d06c91154c8e29ac83aec6b06444cfb60134fad
parentfb789685b64870867c3c97e04e6a0a0a090342b4 (diff)
Inherit LibWindowmanager to provide libwindowmanager functionsandbox/knimitz/set_render_order
Change-Id: I14a679e240efaf8956c9d527c87aa04fcb70ab29 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
-rw-r--r--src/qlibwindowmanager.cpp22
-rw-r--r--src/qlibwindowmanager.h3
2 files changed, 11 insertions, 14 deletions
diff --git a/src/qlibwindowmanager.cpp b/src/qlibwindowmanager.cpp
index 4d32aab..fba1634 100644
--- a/src/qlibwindowmanager.cpp
+++ b/src/qlibwindowmanager.cpp
@@ -24,12 +24,12 @@ using namespace std;
int QLibWindowmanager::init(int port, const QString &token) {
string ctoken = token.toStdString();
- int ret_init = this->wm->init(port, ctoken);
+ int ret_init = LibWindowmanager::init(port, ctoken);
this->screen_info = new AGLScreenInfoPrivate;
if(ret_init == 0) {
- struct Screen scrn = this->wm->getScreenInfo();
+ struct Screen scrn = LibWindowmanager::getScreenInfo();
this->screen_info->set_width_dp(scrn.width_dp);
this->screen_info->set_height_dp(scrn.height_dp);
this->screen_info->set_width_mm(scrn.width_mm);
@@ -43,7 +43,7 @@ int QLibWindowmanager::init(int port, const QString &token) {
int QLibWindowmanager::setRole(const QString &role, bool request) {
this->graphic_role = role.toStdString();
int ret = -1;
- int surface_id = this->wm->setRole(this->graphic_role.c_str(), request);
+ int surface_id = LibWindowmanager::setRole(this->graphic_role.c_str(), request);
if(request)
{
if(surface_id < 0){
@@ -66,7 +66,7 @@ int QLibWindowmanager::setRole(const QString &role, bool request) {
int QLibWindowmanager::requestSurface(const QString &role) {
this->graphic_role = role.toStdString();
- int surface_id = this->wm->requestSurface(this->graphic_role.c_str());
+ int surface_id = LibWindowmanager::requestSurface(this->graphic_role.c_str());
if(surface_id < 0){
qDebug("failed to get surfaceID");
return -1;
@@ -83,18 +83,18 @@ int QLibWindowmanager::requestSurface(const QString &role) {
int QLibWindowmanager::activateWindow(const QString &role) {
string srole = role.toStdString();
// Request default drawing area "normal.full" in libwindowmanager
- return this->wm->activateWindow(srole.c_str());
+ return LibWindowmanager::activateWindow(srole.c_str());
}
int QLibWindowmanager::activateWindow(const QString &role, const QString &area) {
string srole = role.toStdString();
string sarea = area.toStdString();
- return this->wm->activateWindow(srole.c_str(), sarea.c_str());
+ return LibWindowmanager::activateWindow(srole.c_str(), sarea.c_str());
}
int QLibWindowmanager::deactivateWindow(const QString &role) {
string srole = role.toStdString();
- return this->wm->deactivateWindow(srole.c_str());
+ return LibWindowmanager::deactivateWindow(srole.c_str());
}
// This API is deprecated, please use new API
@@ -114,7 +114,7 @@ int QLibWindowmanager::deactivateSurface(const QString &role) {
int QLibWindowmanager::endDraw(const QString &role) {
string srole = role.toStdString();
- return this->wm->endDraw(srole.c_str());
+ return LibWindowmanager::endDraw(srole.c_str());
}
int QLibWindowmanager::setRenderOrder(const QVector<QString>& render_order)
@@ -124,13 +124,13 @@ int QLibWindowmanager::setRenderOrder(const QVector<QString>& render_order)
std::string elem = itr->toStdString();
vec.emplace_back(elem);
}
- return this->wm->setRenderOrder(vec);
+ return LibWindowmanager::setRenderOrder(vec);
}
void QLibWindowmanager::set_event_handler(enum QEventType et,
handler_fun f) {
LibWindowmanager::EventType wet = (LibWindowmanager::EventType)et;
- return this->wm->set_event_handler(wet, std::move(f));
+ return LibWindowmanager::set_event_handler(wet, std::move(f));
}
void QLibWindowmanager::slotActivateWindow(){
@@ -159,11 +159,9 @@ void QLibWindowmanager::slotActivateSurface(){
QLibWindowmanager::QLibWindowmanager(QObject *parent)
:QObject(parent), isActive(false), screen_info(nullptr)
{
- wm = new LibWindowmanager();
}
QLibWindowmanager::~QLibWindowmanager()
{
- delete wm;
delete screen_info;
} \ No newline at end of file
diff --git a/src/qlibwindowmanager.h b/src/qlibwindowmanager.h
index aad9630..cd002a0 100644
--- a/src/qlibwindowmanager.h
+++ b/src/qlibwindowmanager.h
@@ -58,7 +58,7 @@ class AGLScreenInfoPrivate
double _scale = 1.0;
};
-class QLibWindowmanager : public QObject{
+class QLibWindowmanager : public QObject, LibWindowmanager{
Q_OBJECT
public:
explicit QLibWindowmanager(QObject *parent = nullptr);
@@ -115,7 +115,6 @@ public slots:
THIS_FUNCTION_IS_DEPRECATED(void slotActivateSurface());
private:
- LibWindowmanager* wm;
std::string graphic_role;
bool isActive;
AGLScreenInfoPrivate* screen_info;