dde-dock/frame/xcb/xcb_misc.h
石博文 133b711d1f update license
Change-Id: I9df92e43b79f7c2b3688b595f80df7b3a7bb7ed2
2018-02-07 11:52:47 +08:00

61 lines
1.5 KiB
C++

/*
* Copyright (C) 2015 ~ 2018 Deepin Technology Co., Ltd.
*
* Author: sbw <sbw@sbw.so>
*
* Maintainer: sbw <sbw@sbw.so>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef XCB_MISC_H
#define XCB_MISC_H
#include <QtCore>
#include <xcb/xcb_ewmh.h>
class XcbMisc
{
public:
enum Orientation {
OrientationLeft,
OrientationRight,
OrientationTop,
OrientationBottom
};
enum WindowType {
Dock,
Desktop
};
virtual ~XcbMisc();
static XcbMisc * instance();
void set_window_type(xcb_window_t winId, WindowType winType);
void clear_strut_partial(xcb_window_t winId);
void set_strut_partial(xcb_window_t winId, Orientation orientation, uint strut, uint start, uint end);
void set_window_icon_geometry(xcb_window_t winId, QRect geo);
private:
XcbMisc();
xcb_ewmh_connection_t m_ewmh_connection;
};
#endif // XCB_MISC_H