2017-07-26 09:25:56 +03:00
/*
* Copyright 2016 Smith AR < audoban @ openmailbox . org >
* Michail Vourlakos < mvourlakos @ gmail . com >
*
* This file is part of Latte - Dock
*
* Latte - Dock 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 2 of
* the License , or ( at your option ) any later version .
*
* Latte - Dock 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 INFOVIEW_H
# define INFOVIEW_H
# include "dockcorona.h"
# include <QObject>
# include <QQuickView>
2017-07-26 10:21:37 +03:00
# include <QScreen>
2017-07-26 09:25:56 +03:00
namespace KWayland {
namespace Client {
class PlasmaShellSurface ;
}
}
namespace Latte {
class InfoView : public QQuickView {
Q_OBJECT
2017-07-26 10:21:37 +03:00
Q_PROPERTY ( Plasma : : FrameSvg : : EnabledBorders enabledBorders READ enabledBorders NOTIFY enabledBordersChanged )
2017-07-26 09:25:56 +03:00
public :
InfoView ( DockCorona * corona , QString message , QScreen * screen = qGuiApp - > primaryScreen ( ) , QWindow * parent = nullptr ) ;
~ InfoView ( ) override ;
2017-07-26 10:21:37 +03:00
Plasma : : FrameSvg : : EnabledBorders enabledBorders ( ) const ;
2017-07-26 09:25:56 +03:00
void init ( ) ;
Qt : : WindowFlags wFlags ( ) const ;
public slots :
Q_INVOKABLE void syncGeometry ( ) ;
2017-07-26 10:21:37 +03:00
signals :
void enabledBordersChanged ( ) ;
2017-07-26 09:25:56 +03:00
protected :
void showEvent ( QShowEvent * ev ) override ;
bool event ( QEvent * e ) override ;
private :
void setupWaylandIntegration ( ) ;
private :
QString m_message ;
QScreen * m_screen ;
2017-07-26 10:21:37 +03:00
Plasma : : FrameSvg : : EnabledBorders m_borders { Plasma : : FrameSvg : : TopBorder | Plasma : : FrameSvg : : BottomBorder } ;
2017-07-26 09:25:56 +03:00
KWayland : : Client : : PlasmaShellSurface * m_shellSurface { nullptr } ;
DockCorona * m_corona ;
} ;
}
# endif //DOCKCONFIGVIEW_H
// kate: indent-mode cstyle; indent-width 4; replace-tabs on;